| #### D.2.4.2 cgsdr Procedure from library `grobcov.lib` (see grobcov_lib). Return: Returns a list T describing a reduced and disjoint Comprehensive Groebner System (CGS), With option ("out",0) the segments are grouped by leading power products (lpp) of the reduced Groebner basis and given in P-representation. The returned list is of the form: ( (lpp, (num,basis,segment),...,(num,basis,segment),lpp), ..,, (lpp, (num,basis,segment),...,(num,basis,segment),lpp) ) The bases are the reduced Groebner bases (after normalization) for each point of the corresponding segment. The third element of each lpp segment is the lpp of the used ideal in the CGS as a string: with option ("can",0) the homogenized basis is used with option ("can",1) the homogenized ideal is used with option ("can",2) the given basis is used With option ("out",1) (default) only KSW is applied and segments are given as difference of varieties and are not grouped The returned list is of the form: ( (E,N,B),..(E,N,B) ) E is the null variety N is the nonnull variety segment = V(E) \ V(N) B is the reduced Groebner basis Note: The basering R, must be of the form Q[a][x], (a=parameters, x=variables), and should be defined previously, and the ideal defined on R. Example:
    LIB "grobcov.lib";
    // Casas conjecture for degree 4:
    ring R=(0,a0,a1,a2,a3,a4),(x1,x2,x3),dp;
    short=0;
    ideal F=x1^4+(4*a3)*x1^3+(6*a2)*x1^2+(4*a1)*x1+(a0),
    x1^3+(3*a3)*x1^2+(3*a2)*x1+(a1),
    x2^4+(4*a3)*x2^3+(6*a2)*x2^2+(4*a1)*x2+(a0),
    x2^2+(2*a3)*x2+(a2),
    x3^4+(4*a3)*x3^3+(6*a2)*x3^2+(4*a1)*x3+(a0),
    x3+(a3);
    cgsdr(F);
    ==> [1]:
    ==>    [1]:
    ==>       _[1]=0
    ==>    [2]:
    ==>       _[1]=(-a2+a3^2)
    ==>       _[2]=(-a1*a2+a1*a3^2+3*a2^2*a3-5*a2*a3^3+2*a3^5)
    ==>       _[3]=(23*a1^2-138*a1*a2*a3+92*a1*a3^3+25*a2^3+132*a2^2*a3^2-201*a2*\
       a3^4+67*a3^6)
    ==>       _[4]=(a0-4*a1*a3+6*a2*a3^2-3*a3^4)
    ==>    [3]:
    ==>       _[1]=1
    ==> [2]:
    ==>    [1]:
    ==>       _[1]=(a2-a3^2)
    ==>       _[2]=(a1-a3^3)
    ==>       _[3]=(a0-a3^4)
    ==>    [2]:
    ==>       _[1]=1
    ==>    [3]:
    ==>       _[1]=x3+(a3)
    ==>       _[2]=x2^2+(2*a3)*x2+(a3^2)
    ==>       _[3]=x1^3+(3*a3)*x1^2+(3*a3^2)*x1+(a3^3)

User manual for Singular version 4-0-2, 2015, generated by texi2html.