[back] [prev] [next] [index] [root]

 


AbelianGroupDiscreteLog

Returns the representation of an object in a group.

Syntax:

a := AbelianGroupDiscreteLog(g, b);

group
  g  
group element
  a  
representation of b in the abstract group g
object
  b  

See also:  AbelianGroupDiscreteExp

Description:

Returns the abstract representation a (exponent vector corresponding to the generators of g) of an element b in the group g. For example if g represents a class group of a number field, then a given ideal is represented by AbelianGroupDiscreteLog(g,a) as an abstract element of this group.


Example:


kash> O := OrderMaximal(x^2-10);
Generating polynomial: x^2 - 10
Discriminant: 40 

kash> g := RayResidueRingToAbelianGroup(27*O, [2]);
Group with relations:
[2 0 0 0 0]
[0 9 0 0 0]
[0 0 2 0 0]
[0 0 0 9 0]
[0 0 0 0 2]
kash> a := AbelianGroupEltCreate(g, [1, 2, 3, 0, 0]);
[1 2 3 0 0]
kash> b := AbelianGroupDiscreteExp(a);
[-174350479000, 82373763000]
kash> a := AbelianGroupDiscreteLog(g, b);
[1 2 1 0 0]



Example:


kash> g := RayClassGroupToAbelianGroup(1*O);
RayClassGroupToAbelianGroup(<1>, [  ])
Group with relations:
[2]
kash> I := Ideal(2,Elt(O,[0,1]));
<2, [0, 1]>
kash> b := AbelianGroupDiscreteLog(g,I);
> [1]


<- back[back] [prev] [next] [index] [root]