|
3.10 liftstd
Syntax:
liftstd ( ideal_expression, matrix_name )
liftstd ( module_expression, matrix_name )
Type:
- ideal or module
Purpose:
- returns a standard basis of an ideal or module and the transformation
matrix from the given ideal, resp. module, to the standard basis.
That is, if m is the ideal or module, sm the standard
basis returned by liftstd , and T the transformation matrix
then transpose(matrix(sm))=transpose(T)*transpose(matrix(m)) and sm=ideal(transpose(T)*transpose(matrix(m))) ,
resp. sm=module(transpose(transpose(T)*transpose(matrix(m)))) .
Example:
| LIB "ncalg.lib";
def A = sl2();
setring A;
ideal i = e2,f;
option(redSB);
option(redTail);
matrix T;
ideal j = liftstd(i,T);
print(T);
==> 0,f2, -f,1,
==> 1,-e2f+4eh+8e,e2,0
ideal tj = ideal(transpose(T)*transpose(matrix(i)));
std(ideal(j-tj)); // test
==> _[1]=0
|
See
ideal;
@xref{matrix};
option;
ring;
std.
|