
7.5.3.0. centerRed
Procedure from library central.lib (see central_lib).
 Usage:
 centerRed( D[, N] ); D int, N optional int
 Return:
 ideal, generated by computed elements
 Purpose:
 computes subalgebra generators of the center up to degree D
 Note:
 In general, one cannot compute the whole center.
Hence, one has to specify a termination condition via arguments D and/or N.
If D is positive, only central elements up to degree D will be found.
If D is negative, the termination is determined by N only.
If N is given, the computation stops if at least N elements have been found.
Warning: if N is given and bigger than the actual number of generators,
the procedure may not terminate.
Current ordering must be a degree compatible wellordering.
Example:
 LIB "central.lib";
ring AA = 0,(x,y,z),dp;
matrix D[3][3]=0;
D[1,2]=z;
def A = nc_algebra(1,D); setring A; // it is a Heisenberg algebra
// find a basis of the vector space of
// central elements of degree <= 3:
ideal VSZ = centerVS(3);
// There should be 3 degrees of z.
VSZ;
==> VSZ[1]=z
==> VSZ[2]=z2
==> VSZ[3]=z3
inCenter(VSZ); // check the result
==> 1
// find "minimal" central elements of degree <= 3
ideal SAZ = centerRed(3);
// Only 'z' must be computed
SAZ;
==> SAZ[1]=z
inCenter(SAZ); // check the result
==> 1
 See also:
center;
centerVS;
centralizerRed;
inCenter.
