|
5.1.66 lift
-
Syntax:
lift ( ideal_expression, subideal_expression )
lift ( module_expression, submodule_expression )
lift ( ideal_expression, subideal_expression, matrix_name )
lift ( module_expression, submodule_expression, matrix_name )
-
Type:
matrix
-
Purpose:
computes the transformation matrix which expresses the generators of a
submodule in terms of the generators of a module. Uses different
algorithms for modules which are, resp. are not, represented by a
standard basis.
More precisely, if m is the
module (or ideal), sm the submodule (or ideal),
and T the transformation matrix returned by
lift, then matrix(sm)*U = matrix(m)*T
and module(sm*U) = module(matrix(m)*T)
(resp. ideal(sm*U) = ideal(matrix(m)*T) ),
where U is a diagonal matrix of units.
U is always the unity matrix if the basering is a polynomial ring
(not power series ring). U is stored in the optional third argument.
-
Note:
Gives a warning if sm is not a submodule.
-
Example:
| ring r=32003,(x,y,z),(dp,C);
ideal m=3x2+yz,7y6+2x2y+5xz;
poly f=y7+x3+xyz+z2;
ideal i=jacob(f);
matrix T=lift(i,m);
matrix(m)-matrix(i)*T;
→ _[1,1]=0
→ _[1,2]=0
|
See
division;
ideal;
module.
|