Ralf Hemmecke wrote: > > > Concerning problems with compilation: I would like to look > > more carefully at what happens, but unfortunately, I had > > (and still have) a lot of distractions so did not have > > time to do this. > > OK, even when I move totalDegree to some other place, it would be nice > to know why I had problems in the first place. > > > BTW: It makes sense to reorganize IndexedDirectProductCategory, > > FreeModuleCategory, AbelianMonoidRing, FiniteAbelianMonoidRing. > > One possiblity is to inherit FiniteAbelianMonoidRing also > > from FreeModuleCategory > > Yes, we should carefully craft an appropriate hierarchy and remove any > unwanted stuff. > > I quickly looked over the code and it seems Franz Lehner was involved in > the IndexedDirectProduct* stuff. I hope I will also comment here. > > Since you spoke of a FiniteSupport category. Yes, I think that would be > a good idea, but before introducing it, let's look over what we have now. > > According to documentation of IndexedDirectProductCategory, elements of > the respective domains must have finite support.
I see nothing like this. In IndexedDirectProductObject there is assumption that supports are finite, but category is more general. Note: text between IndexedDirectProductCategory and IndexedDirectProductObject applies to IndexedDirectProductObject. > In contrast, > AbelianMonoidRing explicitly states that its elements need not have > finite support, while MonoidRing claims finite support. Again, I see no _explicit_ assumption of finite support in MonoidRingCategory. There is 'terms' which makes sense only if support is finite, but we can either make is conditional or allow infinie loop (or error) in case of infinite support. There is some inconsistency, AbelianMonoidRing is a category while MonoidRing is a domain and category is called MonoidRingCategory. > Given that (https://en.wikipedia.org/wiki/Monoid_ring) a monoid ring is > defined with element of finite support. I tend to change to that meaning > in our Algebra library. Otherwise we confuse mathematicians. I do not thing so. While in algebra usually one assumes finite support in other branches of math one uses more general functions. And there is long tradition in math of generalizing definitions. At first such generalized definition may use word 'generalized' but with time it gets dropped... > A monoid ring is more like a direct sum over the index set while I would > more naturally think of elements of a direct product indexed by some set > having infinite support. > > I'd rather think we should have > > IndexedDirectProductCategory with possibly infinite support, > MonoidRing and AbelianMonoidRing with finite support. > > That means that FiniteMonoidRing should go away. AFAICS current MonoidRing and AbelianMonoidRing allowing infinite support are fundamental. We will modify them, but the essence will stay. So it looks that you want just to rename them. I think that current names are actually quite good. And renaming means that everybody using them must adjust to new names. This is pain, and for that reason I tried to keep renaming to minimum. -- Waldek Hebisch -- You received this message because you are subscribed to the Google Groups "FriCAS - computer algebra system" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/fricas-devel. For more options, visit https://groups.google.com/d/optout.
