Top
Back: factorH
Forward: grobcov
FastBack: general_lib
FastForward: inout_lib
Up: General purpose
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document

D.2.4 grobcov_lib

Library:
grobcov.lib
Purpose:
Groebner Cover for parametric ideals.
Purpose:
Comprehensive Groebner Systems, Groebner Cover, Canonical Forms. The library contains Montes's algorithms to compute the canonical Groebner cover of a parametric ideal as described in the paper:

Montes A., Wibmer M.,
Groebner Bases for Polynomial Systems with parameters. Journal of Symbolic Computation 45 (2010) 1391-1425.

The central routine is grobcov. Given a parametric
ideal, grobcov outputs its canonical Groebner cover, consisting of a set of pairs of (basis, segment). The basis (after normalization) is the reduced Groebner basis for each point of the segment. The segments are disjoint, locally closed and correspond to constant lpp (leading power product) of the basis, and are represented in canonical prime representation. The segments are disjoint and cover the whole parameter space. The output is canonical, it only depends on the given parametric ideal and the monomial order. This is much more than a simple comprehensive Groebner system. The algorithm grobcov allows options to solve partially the problem when the whole automatic algorithm does not finish in reasonable time.

grobcov uses a first algorithm cgsdr that outputs a disjoint reduced comprehensive Groebner system with constant lpp. cgsdr can be called directly if only a disjoint reduced comprehensive Groebner system is required.

Two other routines: gencase1 and multigrobcov can be used in problems with basis of the generic case equal to 1 (for example in automatic geometric theorem discovering) that allow to obtain partial results even when grobcov does not finish in reasonable time.

For completeness, the library also contains the algorithms with similar purposes contained in the old library redcgs.lib. These algorithms are, in general, do not ensure canonical results, even if they are similar to the results obtained with grobcov.
The old routines remain in this library for didactical purposes, but when the new routines fail to finish it is recommended to try with the old ones. They also can give useful results and tests when the new routines fail to answer.
The old routines are mcgs, buildtree,
buildtreetoMaple, cantreetoMaple.

Authors:
Antonio Montes , Hans Schoenemann.

Overview:
see "Groebner Bases for Polynomial Systems with parameters" Montes A., Wibmer M.,
Journal of Symbolic Computation 45 (2010) 1391-1425. (http://www-ma2.upc.edu/~montes/).

Notations:
All given and determined polynomials and ideals are in the
basering Q[a][x]; (a=parameters, x=variables)
After defining the ring, the main routines
grobcov, cgsdr, gencase1, multigrobcov
generate the global rings
@R (Q[a][x]),
@P (Q[a]),
@RP (Q[x,a])
that are used inside and killed before the output.
If you want to use some internal routine you must
create before the above rings by calling setglobalrings();
because most of the internal routines use these rings.
The call to the basic routines grobcov, cgsdr, gencase1,
multigrobcov, or even the older through mcgs will
kill these rings.

Procedures:

D.2.4.1 grobcov  Is the basic routine giving the canonical Groebner cover of the parametric ideal F. This routine accepts many options, that allow to obtain results even when the canonical computation does not finish in reasonable time.
D.2.4.2 cgsdr  Is the procedure for obtaining a first disjoint, reduced comprehensive Groebner system that is used in grobcov, but that can be used independently if only the CGS is required. It is a more efficient version of buildtree that does not output the complete discussion tree but only the terminal vertices giving the disjoint reduced comprehensive Groebner system. The similar old version is obtained calling cgsdr with the option ('cgs',0).
D.2.4.3 gencase1  Returns the segment of the generic case when his basis is 1. This is useful for automatic discovering of geometrical theorems, as it gives the components where a solution exists and is much more efficient than the complete computation of grobcov.
D.2.4.4 multigrobcov  In problems like automatic discovery of theorems, when grobcov does not give the answer in reasonable time, and the generic case is expected to have basis 1, one can try with multigrobcov procedure to obtain an answer over the different irreducible components: the generic case with basis 1, and the components not corresponding to the generic case. To deduce from its result the true Groebner cover one must discuss theoretically in which segment must be located the intersecting parts in the different irreducible components. This can be tested by computing homogenizing the ideal using the routine homogpideal (see help) and computing the cgsdr of the hompenized ideal.
D.2.4.5 setglobalrings  Generates the global rings @R, @P and @PR that are respectively the rings Q[a][x], Q[a], Q[x,a]. It is called inside each of the fundamental routines of the library: grobcov, cgsdr, gencase1, multigrobcov, mcgs, buildtree, and killed before the output. If the user want to use some other internal routine, then setglobalrings() is to be called before, as the rings @R, @P and @RP are needed in most of them. globally, and more internal routines can be used, but These rings are killed by the call to any of the basic routines.
D.2.4.6 pdivi  Performs a pseudodivision of a parametric polynomial by a parametric ideal.
D.2.4.7 pnormalform  Reduces a parametric polynomial f by a reduced-representation (N,W) of null and non-null conditions over the parameters. Before using it setglobalrings() must be called. Also included from the old library redcgs.lib the following routines
D.2.4.8 mcgs  Similar to grobcov with the algorithms of the old library.
D.2.4.9 buildtreetoMaple  Writes into a file the output of cgsdr called with options ('cgs',1,'out',1) into a text file that is Maple readable and can be plotted in Maple using the tplot routine of the library dpgb.
D.2.4.10 cantreetoMaple  Writes into a text file the output of mcgs called with options ('cgs',1,'out',1), that is readable in Maple and can be plotted using the routine plotcantree of the Maple library dpgb.
See also: compregb_lib.


Top Back: factorH Forward: grobcov FastBack: general_lib FastForward: inout_lib Up: General purpose Top: Singular Manual Contents: Table of Contents Index: Index About: About this document
            User manual for Singular version 3-1-5, Jul 2012, generated by texi2html.