|
7.8.5 lift (letterplace)
Syntax:
lift ( ideal_expression, subideal_expression )
lift ( module_expression, submodule_expression )
Type:
- matrix
Purpose:
- computes the transformation matrix which expresses the generators of a
subbimodule in terms of the generators of a bimodule.
More precisely, if m is the
module (or ideal), sm the submodule (or ideal),
and T the transformation matrix returned by
lift, then the substitution of each ncgen(i) in
T by the m[i] delivers a matrix, say N .
The i -th generator of sm is equal to the sum of
elements in the i -th column of N .
Note:
- Gives a warning if
sm is not a submodule.
Note:
- The procedure testLift can be used for testing the result.
Example:
| LIB "freegb.lib";
ring r = 0,(x,y),(c,Dp);
ring R = freeAlgebra(r, 7, 2);
ideal I = std(x*y*x + 1);
print(matrix(I));
==> x*y-y*x,y*x*x+1
ideal SI = x*I[1]*y + y*x*I[2], I[1]*y*x + I[2]*y;
matrix T = lift(I, SI);
print(T);
==> y*ncgen(1)*x*x+x*ncgen(1)*y,y*x*ncgen(1)+y*ncgen(1)*x+ncgen(1)*y*x,
==> y*ncgen(2)*x, y*ncgen(2)
print(matrix(SI)); // the original generators
==> y*x*y*x*x+x*x*y*y-x*y*x*y+y*x,x*y*y*x+y*x*x*y-y*x*y*x+y
print(matrix(testLift(I,T))); // test for the result of lift
==> y*x*y*x*x+x*x*y*y-x*y*x*y+y*x,x*y*y*x+y*x*x*y-y*x*y*x+y
|
See
ideal;
liftstd (letterplace);
syz (letterplace);
twostd (letterplace).
|