I've been working off-and-on the past two years to implement 
finitely-generated abelian groups in a unified way that makes it easy to 
create and maintain specialized versions of these groups (in large part for 
instructional purposes).

We have the multiplicative AbelianGroup() which seems hard-coded to use 
powers of symbols as its elements.  We also have AdditiveAbelianGroup() 
which works well, but does not allow for subgroups.  Loeffler, Cremona, 
Stankewicz, Palmieri and Bradshaw built AdditiveAbelianGroup on top of 
Stein's code for finitely-generated modules over PIDs, which is an 
excellent approach, and the one I'd like to extend, but in a more general 
fashion.  I'd like to eventually propose a working alternative that we 
could transition to gradually and smoothly.

The code for categories, parents and elements, along with Simon King's 
excellent tutorials make this much easier than it was a couple years ago.  
However, I've reached the head-banging stage on a couple sticky points, 
primarily the element constructor and trying to override the additive 
operations in the modules to create multiplicative groups that pass the 
TestSuite().

So I'm trolling for some knowledgeable help with getting over a couple 
humps on this one.  Suppose you know the parent/element, category, 
coercion/conversion, and morphism concepts well but hate writing doctests.  
Here's the deal: advise me and I'll happily do the dirty work.

More details on the ticket, plus a heavily documented patch containing many 
functional doctests.

http://trac.sagemath.org/sage_trac/ticket/9773

Thanks,
Rob

-- 
-- 
To post to this group, send an email to [email protected]
To unsubscribe from this group, send an email to 
[email protected]
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org

Reply via email to