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

 


Module

Creates a module over an order.

Syntax:

M1 := Module([IL,] M);
M1 := Module(EL);

module
  M1  
list
  IL  
of ideals over a maximal order O
matrix
  M  
of algebraic elements over O
list
  EL  
of relative algebraic elements of o

See also:  ModuleIdeals, ModuleMatrix, ModuleOrder

Description:

Let \a|1, … ,\a|m be fractional O-ideals (the list IL, they are called the coefficient ideals) and A|1, … ,A|m be the columns of the matrix M of dimension n over the quotient field of O. This function creates a pseudomatrix which is a representation of the O-module M|1 = A|1 \a|1 + cdots + A|m \a|m. If the list of coefficient ideals ( IL) is omitted, the module with trivial coefficient ideals ( 1O) will be created. If Module is invoked with a list of relative algebraic elements, the representations of those in a relative order o as column vectors over O, the coefficient order of o. Again the ideals are assumed to be trivial.


Example:


kash> O:=OrderMaximal(Poly(Zx,[1, 5, -6, -53, 3, 206, 244]));;
kash> IL:=List(Factor(2*O),f->f[1]);;
kash> List(IL,IdealGenerators);
[ [ 2, [0, 2, 0, 3, 0, 2] ], [ 2, [0, 0, 3, 0, 1, 2] ], 
  [ 2, [3, 3, 1, 2, 0, 0] ] ]
kash> EL1:=List(Factor(5*O),f->IdealGen(f[1],2));
[ [12, 17, 15, 7, 9, 5], [19, 18, 15, 1, 10, 24], [4, 22, 4, 10, 23, 4] ]
kash> EL2:=List(Factor(13*O),f->IdealGen(f[1],2));
[ [10, 8, 0, 1, 0, 0], [1, 12, 5, 1, 0, 0] ]
kash> EL2[3]:=IdealGen(Factor(7*O)[1][1],2);
[1, 1, 0, 0, 0, 0]
kash> EL3:=List(Factor(3*O),f->IdealGen(f[1],2));
[ [1, 1, 0, 0, 0, 0], [1, 0, 1, 0, 0, 0] ]
kash> EL3[3]:=IdealGen(Factor(7*O)[2][1],2);
[3, 1, 0, 0, 0, 0]
kash> M:=Module(IL,Mat(O,[EL1,EL2,EL3]));
> {<2, [0, 2, 0, 3, 0, 2]><2, [0, 0, 3, 0, 1, 2]><2, [3, 3, 1, 2, 0, 0]>
[[12, 17, 15, 7, 9, 5] [19, 18, 15, 1, 10, 24] [4, 22, 4, 10, 23, 4]]
[[10, 8, 0, 1, 0, 0] [1, 12, 5, 1, 0, 0] [1, 1, 0, 0, 0, 0]]
[[1, 1, 0, 0, 0, 0] [1, 0, 1, 0, 0, 0] [3, 1, 0, 0, 0, 0]]
}



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