# Groups of imaginary elements¶

Note

One main purpose of such groups is in an asymptotic ring's growth group when an element like $$n^z$$ (for some constant $$z$$) is split into $$n^{\Re z + I\Im z}$$. (Note that the first summand in the exponent determines the growth, the second does not influence the growth.)

AUTHORS:

• Daniel Krenn (2018)

## Classes and Methods¶

class sage.groups.misc_gps.imaginary_groups.ImaginaryElement(parent, imag)

An element of ImaginaryGroup.

INPUT:

• parent – a SageMath parent
• imag – an element of parent’s base
imag()

Return the imaginary part of this imaginary element.

EXAMPLES:

sage: from sage.groups.misc_gps.imaginary_groups import ImaginaryGroup
sage: J = ImaginaryGroup(ZZ)
sage: J(I).imag()
1
sage: imag_part(J(I))  # indirect doctest
1

real()

Return the real part ($$=0$$) of this imaginary element.

EXAMPLES:

sage: from sage.groups.misc_gps.imaginary_groups import ImaginaryGroup
sage: J = ImaginaryGroup(ZZ)
sage: J(I).real()
0
sage: real_part(J(I))  # indirect doctest
0

class sage.groups.misc_gps.imaginary_groups.ImaginaryGroup(base, category)

A group whose elements are purely imaginary.

INPUT:

• base – a SageMath parent
• category – a category

EXAMPLES:

sage: from sage.groups.misc_gps.imaginary_groups import ImaginaryGroup
sage: J = ImaginaryGroup(ZZ)
sage: J(0)
0
sage: J(imag=100)
100*I
sage: J(3*I)
3*I
sage: J(1+2*I)
Traceback (most recent call last):
...
ValueError: 2*I + 1 is not in
Imaginary Group over Integer Ring
because it is not purely imaginary

Element

alias of ImaginaryElement