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

 


EltRayResidueRingRep

Returns a representive of the class of an algebraic element in the multiplicative group of the ray residue ring.

Syntax:

r := EltRayResidueRingRep(elt,m0,minf);

matrix
  r  
algebraic element
  elt  
ideal
  m0  
list
  minf  
of integers/infinite primes

See also:  EltCon, RayResidueRing, RayResidueRingRepToElt, RayResidueRingCyclicFactors

Description:

Calculates a representative of an algebraic element elt which is represented by a matrix [a_0, … ,a_k]. If \eta_0, … ,\eta_k is a basis of the residue ring as given by RayResidueRingCyclicFactors, elt \equiv \eta_0^{a_0}cdots\eta_k^{a_k} mod^* {({\goth{m}}_0 {\goth{m}}_\infty)} holds. If the residue ring is not known yet, it will be computed. Infinite primes are represented in the same way as for RayResidueRing. This function uses a mixture of the discrete logarithm algorithms developed in Pau1,Pau2 and CDOants,CDO1.


Example:


kash> O := OrderMaximal(Order(x^2-2*x-5));
Generating polynomial: x^2 - 2*x - 5
Discriminant: 24 

kash> m0 := 27*O;;
kash> minf := [2];;
kash> L := RayResidueRingCyclicFactors(m0,minf);
[ [ [-1, -27], 2 ], [ [1344, 388], 3 ], [ [5, 2], 9 ], [ [1612, 444], 9 ], 
  [ [1, 27], 2 ] ]
kash> elt := L[1][1];
[-1, -27]
kash> EltRayResidueRingRep(elt,m0,minf);
[1 0 0 0 0]


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