|  |  D.6.7.3 lift_kbase Procedure from librarydeform.lib(see  deform_lib).
 
Example:Usage:
lift_kbase(N,M); N,M=poly/ideal/vector/module
Return:
matrix A, coefficient matrix expressing N as linear combination of
k-basis of M. Let the k-basis have k elements and size(N)=c columns.
Then A satisfies:
matrix(reduce(N,std(M)),k,c) = matrix(kbase(std(M)))*A
 
Assume:
dim(M)=0 and the monomial ordering is a well ordering or the last
block of the ordering is c or C
 |  | LIB "deform.lib";
ring R=0,(x,y),ds;
module M=[x2,xy],[y2,xy],[0,xx],[0,yy];
module N=[x3+xy,x],[x,x+y2];
print(M);
==> x2,y2,0, 0,
==> xy,xy,x2,y2
module kb=kbase(std(M));
print(kb);
==> y2,xy,y,x,1,0,0,0,
==> 0, 0, 0,0,0,y,x,1 
print(N);
==> xy+x3,x,  
==> x,    x+y2
matrix A=lift_kbase(N,M);
print(A);
==> 0,0,
==> 1,0,
==> 0,0,
==> 0,1,
==> 0,0,
==> 0,0,
==> 1,1,
==> 0,0 
matrix(reduce(N,std(M)),nrows(kb),ncols(A)) - matrix(kbase(std(M)))*A;
==> _[1,1]=0
==> _[1,2]=0
==> _[2,1]=0
==> _[2,2]=0
 | 
 
 |