Currently in Sage, AbelianGroups are all multiplicative.  There's a
TODO in abelian_groups.py which asks to implement additive groups.

As I got fed up with this sort of thing:

sage: E=EllipticCurve('11a1')
sage: T=E.torsion_subgroup()
sage: list(T)
[1, P, P^2, P^3, P^4]

(where it should be something like [0,P,2*P,3*P,4*P] ),  I started to
try to adapt abelian_group.py to allow for multiplicative groups.
I had some success (after changing just that file, all the original
doctests still passed, since I had it take the group operation to be
multiplication by default).

But then I found that AbelianGroupElement was derived from
MultiplicativeGroupElement which in turn is derived from
MonoidElement, while AdditiveGroupElement is derived from
ModuleElement.  These two do  have a common ancestor, plain Element.
I think will make it hard to write common code for additive group
elements and multiplicative group elements.

I think it might work to use MultiplicativeGroupElement even when the
operation is addition, but that would seem rather perverse.  But it is
perhaps notable that AdditiveGroupElement is hardly ever used in Sage:
the only places are ine the definition of EllipticCurvePoint_field and
 JacobianMorphism_divisor_class_field.

I would welcome some comments on what we might do about this.  In the
meantime I'll try to get AbelianGroupElements to behave additively
even though they are derived from MultiplicativeGroupElements.

Relevant still-open tickets are:

#1849: [with patch (part 1 of 2); not ready for review] rewrite abelian groups
 -- showing that William did a whole lot of work on this back in
January/February (I remember, we were working in the same room at the
time) which was not completed;

and

#3127: [duplicate] abelian groups (are lame?) -- bug in comparison of
subgroups ...
-- which is closed, but contains the comment from William:
WARNINGS:

   1. David Roe is recently rumored to be rewriting abelian groups.
   2. I recently rewrote abelian groups but my patch rotted: #1849
   3. There are other known problems with subgroups of abelian groups: #2272


John

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
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
-~----------~----~----~----~------~----~------~--~---

Reply via email to