On Thu, Oct 29, 2009 at 02:33:04AM -0700, javier wrote: > > > > On Oct 29, 12:38 am, "Nicolas M. Thiery" <nicolas.thi...@u-psud.fr> > wrote: > > Again, that's just how it used to be. Do we have an agreement for > > having both: > > > > PartiallyOrderedSets() > > TotallyOrderedSets() > > > > I haven't Wikipedia under hand. But since an OrderedMonoid is a > > partially ordered set there, I assume that OrderedSets could be an > > alias for PartiallyOrderedSets. > > > > Please everybody vote! > > If I have to choose, my vote goes for PartiallyOrderedSets() (and > would add the frequently used alias "poset"). I don't see the need for > TotallyOrderedSets() at the moment, but someone might think > differently and it probably won't hurt to have both of them.
Ok. Anyone else comments? Franco? > > > vector_spaces.py > > > Concerning the super_categories, why to return Modules(R)? It is not > > > a different category. IMO we should return Sets() or something like > > > that. > > > > Yes, they are equal. However, as in a previous similar situation > > (CommutativeRingIdeals w.r.t. RingIdeals), keeping them separate > > allows for putting in Modules(R) all the mathematical information and > > code that is generic to any module, and in VectorSpaces(R) those which > > are specific to vector spaces. At the same time, from the callers > > point of view, typing Modules(QQ) could automatically return > > VectorSpaces(QQ). > > I agree with keeping the code separate, what I don't think is that > Modules(QQ) should be the output of supercategories for VectorSpaces > (QQ) since they are the same one. If Modules(QQ) returns automatically > VectorSpaces(QQ) then one would have something like this: > > sage: C = VectorSpacess(QQ); C > Vector spaces over rational field > C.supercategories() > [Vector spaces over rational fields] Sure. I should have mentioned that this requires a little technical trick so that VectorSpaces(QQ).super_categories() can call the actual Modules(QQ), bypassing the automatic rewriting to VectorSpaces(QQ). Typically, we could recycle the former RingModules to be the actual category, and Modules be a function returning either RingModules or VectorSpaces. Or put an option like Modules(QQ, rewrite = False). That technical decision is the main reason why I wanted to postpone this feature. And implement all similar features at the same time to ensure consistency. > i.e supercatergories returning exactly the same category. My proposal > is just to return as supercategories Modules(R).supercategories() > instead of Modules(R). But then (at least with the current architecture), VectorSpaces(QQ) would not inherit from all the code that is implemented in Modules(QQ). Cheers, Nicolas -- Nicolas M. Thiéry "Isil" <nthi...@users.sf.net> http://Nicolas.Thiery.name/ --~--~---------~--~----~------------~-------~--~----~ To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---