On Fri, Aug 22, 2008 at 10:33 AM, John Cremona <[EMAIL PROTECTED]> wrote: > > Forgive the self-reply. > > Looking at factorization.py I was all ready to fix all the problems I > could see -- using Sequence to get a common universe for the bases on > construction, cache this base_ring, only allow operations between > factorizations with the same base_ring, and so on. > > But then I saw what appeared to be a totally weird example: > > sage: F = Factorization([(ZZ^3, 2), (ZZ^2, 5)], cr=True); F > (Ambient free module of rank 2 over the principal ideal > domain Integer Ring)^5 * > (Ambient free module of rank 3 over the principal ideal > domain Integer Ring)^2 > > This bears no relation at all to what I thought the Factorization > class was for. Doing a search_src showed that this is designed in to > support splitting of modular symbols spaces (and similar). > > This leaves a question almost certainly for William: is it really > sensible to have one class serve both as the structure to hold "prime > factorizations" for UFDs and other rings, as well as to hold lists of > subspaces with multiplicities?
I use one word for both: "factorization" :-) > If so, perhaps we need to refactor this to have a base class which > just handles the basics, with (at least) 2 derived classes, one for > rings factorizations and one for additive decompositions? Sure, go for it. As long as I don't have to do the work, it sounds good to me. -- William --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---
