Home Online Manual
Top
Back: intersect (plural)
Forward: lift (plural)
FastBack:
FastForward:
Up: Functions (plural)
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document

7.3.10 kbase (plural)

Syntax:
kbase ( ideal_expression )
kbase ( module_expression )
kbase ( ideal_expression, int_expression)
kbase ( module_expression, int_expression)
Type:
the same as the input type of the first argument
Purpose:
with one argument: computes the vector space basis of the factor-module that equals ring (resp. free module) modulo the ideal (resp. submodule), generated by the initial terms of the given generators.
If the factor-module is not of finite dimension, -1 is returned.

If the generators form a Groebner basis, this is the same as the vector space basis of the factor-module.

when called with two arguments: computes the part of a vector space basis of the respective quotient with degree (of monomials) equal to the second argument. Here, the quotient does not need to be finite dimensional.

Note:
in the non-commutative case, a ring modulo an ideal has a ring stucture if and only if the ideal is two-sided. kbase respects module-grading given by the isHomog attribute of input modules.
Example:
 
ring r=0,(x,y,z),dp;
matrix d[3][3];
d[1,2]=-z;  d[1,3]=2x;  d[2,3]=-2y;
def R=nc_algebra(1,d); // this algebra is U(sl_2)
setring R;
ideal i=x2,y2,z2-1;
i=std(i);
print(matrix(i));  // print a compact presentation of i
==> z2-1,yz-y,xz+x,y2,2xy-z-1,x2
kbase(i);
==> _[1]=z
==> _[2]=y
==> _[3]=x
==> _[4]=1
vdim(i);
==> 4
ideal j=x,z-1;
j=std(j);
kbase(j,3);
==> _[1]=y3
See ideal (plural); module (plural); vdim (plural).