Discriminant Variety Maple Package

 by

 G. Moroz with F. Rouillier and J.-C. Faugère INRIA SALSA Project LIP6 CALFOR Team 8, rue du Capitaine Scott 75015 Paris, France

DV is a package for solving parametric polynomial systems of equations, inequalities and/or inequations. The current version is a beta version and only few functions are exported. DV stands for Discriminant Variety. Given any constructible set defined by equations and inequations depending on parameters, DV basically computes a so called Discriminant Variety.

## I- Parametric polynomial system and Discriminant Variety

A system of polynomial equations and inequations is said parametric when it has a finite number of solutions under a generic choice of the assignation for the parameters.

A Discriminant Variety of a parametric polynomial system S is an algebraic subset of the parameter's space such that over each neightborhood of the parameter's space which do not meet the discriminant variety, the constructible set defined by S is an analytic covering of this neightborhood for the projection on the parameter's space. In particular, for parameters in such a neightborhood, the number of solutions of the system after specializing to these values is constant.

 Figure 1. The discriminant variety of a system with 1 parameter and 1 unknown

 Figure 2. The discriminant variety of this space curve with 1 parameter (T) and 2 unknowns (x,y) is reduced to only 1 point in the parameter space

## II- The package

DV Maple package is fully written in Maple language but uses Gb,FGb and RS Software.

### 1. General overview

In the package DV, the varieties are represented by the list of polynomials that defined them. An union of varieties is thus naturally represented by the list of the lists of polynomials defining each variety of the union.

The functions provided by the package DV are:

• DV_solve (eqns, ineqns, pars, vars, options): computes a discriminant variety of the constructible set defined by:

f1=0 , ... , fs= 0 ,  g1≠0, ... , gr≠0

with f1,..,fs in eqns and g1,..,gr in ineqns, pars are the parameters vars are the other variables. The function may also compute a discriminant variety of a constructible set defined by:

Uj=1, ... ,t (fj,1= 0 , ... , fj,sj= 0) ,  g1≠0, ... , gr≠0

• DV_verbose ( int ): sets the level of verbosity, from 0 to 2.

### 2. DV_solve options

Keywords in the options sequence allow some control on the strategy used by the algorithm to find the Discriminant Variety.

• When 'factorize' is specified in options, the algorithm will use as many polynomial factorization as possible. This can sometime slow down the computation when polynomials hard to factorize appear during the process.
• When 'char= i ' is specified in options, with i being an integer, the coefficients of the polynomials are seen modulo i .
• When 'localize' is specified (for advanced users), the variety defined by eqns or eqnsList will be localized by the hypersurfaces defined by each polynomial of ineqns before the computation of the Discriminant Variety.
• When 'localize_critical' is specified (for advanced users), the variety of the critical points is localized by the hypersurfaces defined by each polynomial of ineqns before being projected on the parameters space.
• When 'detailed' is specified, the output contains 3 lists of lists of polynomials defining the Discriminant Variety. They define respectively the varities Wf, Winf, Wc [ 1 ].

The keywords may increase the computation speed for some systems but they also may decrease it for others. They are to be used very carefully!

### 3. Example

Here is how we compute the discriminant variety of the variety in Fig. 2, whose equation system is:

 T - (x + y)2 = 0 x - y - (x + y) ((x + y)2 - 4) = 0

with T being a parameter, and x,y being unknowns.

`> DV_solve([T-(x+y)^2,x-y-(x+y)*((x+y)^2-4)],[],[T],[x,y],'factorize');[[T]], "Minimal"`

## Bibliography

[1] D.Lazard, F.Rouillier, "Solving parametric polynomial systems", Technical Report RR-5322, INRIA, October 2004