Back in 2008 there was a discussion of the elementary_divisors
function for abelian groups.  While it's not universal, most group
theory and algebra books define the elementary divisors of a finite
abelian group G to be a list of prime powers such that G is isomorphic
to the direct product of cyclic groups of order {p_i}^{n_i}, while the
invariants are integers m_1,m_2,...,m_k such that m_i | m_{i+1}, and G
is isomorphic to the direct product of cyclic groups of order m_i.
For example, right now we have this:

sage: G=AbelianGroup([6,10])
sage: G.elementary_divisors()
[2, 30]
sage: G.invariants()
[6, 10]

For additive abelian groups there is no elementary_divisors function,
but invariants does the right thing:

sage: H=AdditiveAbelianGroup([6,10])
sage: H.invariants()
(2, 30)

I'm writing code to implement difference sets, and I would like to
implement elementary_divisors and invariants for both types of abelian
groups, having them behave the same way.  As long as I'm doing this,
I'd like to change the meaning of invariants and elementary_divisors
for AbelianGroup.  Are there objections to doing that?

   Dan Gordon

-- 
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

Reply via email to