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

 


OrderInstallHom

Installs an embedding from the first given order into the second given order.

Syntax:

OrderInstallHom(o1,o2,alpha);
OrderInstallHom(o1,o2,b);

order
  o1  
order
  o2  
algebraic element
  alpha  
boolean
  b  

Description:

Installs the embedding given via the image of the primitive element of o|1 in o|2 which is defined to be \alpha in case o|1 is an equation order. If the third argument is a boolean instead of an algebraic element, the corresponding number fields are assumed to be isomorphic, iff the boolean is `true` and this will be used in the sequel.


Example:

Moving of an element from an absolute extension into a relative one.

kash> o1 := Order (Z,2,3);;
kash> o2 := Order (o1,2,2);
      F[1]
        /
       /
   E1[1]
  /
 /
Q
F  [ 1]     x^2 - 2
E 1[ 1]     x^2 - 3

kash> gen1 := OrderBasis (OrderEquationOrder (o1))[2];
[0, 1]
kash> gen2 := OrderBasis (OrderEquationOrder (o2))[2];
[0, 1]
kash> gen := EltMove (gen1, o2) + gen2;
[[0, 1], 1]
kash> o3 := Order (MatMinPoly (EltRepMat(gen, Z)[2]));
Generating polynomial: x^4 - 10*x^2 + 1

kash> OrderInstallHom (o3, o2, gen);
kash> EltMove (Elt (o3, [1,2,3,4]), o2);
[[16, 38], [46, 6]]
kash> EltMove (Elt (o3, [1,2,3,4]/2), o2);
> [[8, 19], [23, 3]]


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