RootFinding[Parametric][CellDecomposition]  decompose parameter space into open cells

Calling Sequence


CellDecomposition(sys, vars, pars, options)
CellDecomposition(eqs, posineqs, vars, pars, options)
CellDecomposition(eqs, posineqs, nzineqs, vars, pars, options)


Parameters


sys



list of equations, strict inequalities, and inequations between polynomials with rational coefficients

vars



list of names; the indeterminates

pars



(optional in the first two calling sequences) list of names; the parameters

eqs



list of polynomials with rational coefficients, representing the equations of the form

posineqs



list of polynomials with rational coefficients, representing constraint inequalities of the form

nzineqs



list of polynomials with rational coefficients, representing constraint inequations of the form

options



sequence of optional equations of the form keyword=value, where keyword is either output or method





Options



output=cad or witnesspoints: type of decomposition

•

If output=cad, the command computes an open Cylindrical Algebraic Decomposition (CAD) of the parameter space. In addition, the record contains the projection polynomials describing the CAD of the parameter space such that the number of solutions of the input system is constant on each fulldimensional open cell of the decomposition.

•

The option output is set to cad by default.

•

The option output=witnesspoints avoids the computation of a CAD by using the command RootFinding[WitnessPoints] internally. When output=witnesspoints, the output does not include the field ProjectionPolynomials.


method=GB or RC: algorithm to use

•

By default, the Groebner basis method (GB) is used. The RegularChains method can be accessed by specifying method=RC.

•

When output=witnesspoints is specified, the Groebner basis method will be used even if method=RC.



Description


•

The CellDecomposition command decomposes the parameter space of a parametric polynomial system into cells in which the original system has a constant number of solutions.

•

The command returns a data structure that can be used for (for example):

–

Plotting the regions of the parameter space for which the system has a given number of solutions (see CellPlot)

–

Extracting sample points in the parameter space for which the system has a given number of solutions (see SampleSolutions)

–

Extracting boxes in the parameter space in which the system has a given number of solutions (see EnclosingBox)

•

The type of the output is a solution record with the following fields: Equations, Inequalities, Filter, Variables, Parameters, DiscriminantVariety, ProjectionPolynomials (sometimes present), and SamplePoints. The field Boxes is not initially present, but is added if you call EnclosingBox on a solution from CellDecomposition, as shown in the Examples section below.

•

The record returned captures information about the solutions of the system depending on the parameter values, including:

–

For each fulldimensional open cell, a sample point strictly in the interior of the cell; if possible, the coordinates of the sample point are chosen to be integers

•

The input system must satisfy the following properties:

–

The number of equations is equal to or greater than the number of indeterminates

–

At most finitely many complex solutions exist for almost all complex parameter values (that is, the system is generically zerodimensional)

–

For almost all complex parameter values, there are no solutions of multiplicity greater than (that is, the system is generically radical); in particular, the input equations are squarefree


An error occurs if one of these conditions is violated.

•

If pars is not specified, it defaults to all the names in sys that are not indeterminates.

•

This command is part of the RootFinding[Parametric] package, so it can be used in the form CellDecomposition(..) only after executing the command with(RootFinding[Parametric]). However, it can always be accessed through the long form of the command by using RootFinding[Parametric][CellDecomposition](..).



Compatibility


•

The method option was introduced in Maple 15.



Examples


In the following univariate example, obtain the wellknown discriminant of a quadratic polynomial.
>


>


 (1) 
Thus, there are fulldimensional open cells, which you can illustrate graphically:
>


The number of solutions for on each of these cells can be computed using the following command:
>


 (2) 
So, the univariate equation has exactly two solutions in the yellow and pink cells, below the parabola, and no solution in the blue cell, above the parabola. In fact, it has one solution of multiplicity exactly on the parabola, but this is a lowerdimensional submanifold, which is not considered by this command.
The next two examples illustrate the alternate calling sequences. Since the output of the assignment is the same for m2 and m3, they will each produce the same image using the CellPlot command.
>


 (3) 
>


>


 (4) 
Sample points lying entirely in a negative octant are omitted. For example, the open cells represented by the sample points and from m4:SamplePoints are not included in m3:SamplePoints.
>


 (5) 
>


The following system has no solutions for almost all parameters values.
>


 (6) 
>


 (7) 
>


In this example, we use two different strategies to compute the sample points.
>


 (8) 
>


 (9) 
When we use the strategy witnesspoints, the record m7 contains no ProjectionPolynomials.
m6 and m7 can be visualized with CellPlot.
>


>


When EnclosingBox has been applied to the solutions, the enclosing boxes are also displayed by CellPlot.
>


>


>


The option output=witnesspoints usually returns fewer points.
>


 (10) 
>


>


>


 (11) 
>


 (12) 
The option method=RC computes the equivalent solution record as the default GB method, but usually gives different sample points.
>


 (13) 
>


 (14) 
>


 (15) 
>


 (16) 
The following examples illustrate invalid inputs:
This system has solutions of multiplicity greater than for all parameter values.
>


This system has infinitely many solutions for all parameter values.
>



