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

 


ModuleMember

Tests if a column vector is element of the given module.

Syntax:

L:=ModuleMember(M,V|EL);

list
  L  
see below
module
  M  
vector
  V  
list
  EL  
of n algebraic elements of O

Description:

The column vector v is a member of the module iff it is a linear combination of the columns of the matrix of M with coefficients in the corresponding coefficient ideals. This function returns a list of a boolean value (if the element is indeed a member of the module) and a representation column vector x where M x = v. x is returned even if its entries are not members of the corresponding ideals of the module.


Example:


kash> O:=OrderMaximal(Poly(Zx,[1,-10,-3,-2]));;
kash> M:=Module([2*O,2*O,1*O],Mat(O,[[1,0,1],[0,1,1],[0,0,1]]));
{<2><2><1>
[1 0 1]
[0 1 1]
[0 0 1]
}

kash> V:=MatTrans(O,[[1,3,1]]);
[1]
[3]
[1]
kash> L:=ModuleMember(M,V);
[ true, [0]
    [2]
    [1] ]
kash> ModuleMatrix(M)*L[2];
> [1]
[3]
[1]


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