This is a class for finite group element.
Initialize with group element instance.
>>>GroupElement(element_instance)
You may decide operation type(addtive 0, multiplicative 1).
If you don't decide operation type, it checks and sets proper type.
>>>GroupElement(element_instance, int)
Example
>>>Ge=GroupElement(finitefield.FinitePrimeFieldElement(18, 37), 1)(See finitefield.py)
add | mul | ||
== | Equality | ||
ope | Basic operation | + | * |
ope2 | Ext operation | * | ** |
Operation changes with group type, additive,0(add) or multiplicative,1(mul).
Change group type for additive(0) or multiplicative(1).
>>>Ge.setmain(1)
Return inverse element.
>>>Ge.inverse() FinitPrimeField,FinitePrimeFieldElement(35, 37)
Return group element order. It uses grouporder factorization.
>>>Ge.order() 36
Return group element order.
It uses Terr's baby-step giant-step argorithm.
You can put number of baby-step.(default: 2 times)
>>>Ge.t_order() 36
Return group this element belongs.
>>>Ge.getGroup() FinitePrimeField(37)