Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real...

34
Solving polynomial systems over the reals exactly: why and how? Mohab Safey El Din UPMC/INRIA/CNRS 2015

Transcript of Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real...

Page 1: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

Solving polynomial systems over thereals exactly: why and how?

Mohab Safey El DinUPMC/INRIA/CNRS

2015

Page 2: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

Polynomial systems and real geometry

Real solution set S ⊂ Rn to

F1 = · · · = Fp = 0, G1 > 0 . . . ,Gs > 0

with Fi and Gj in Q[X1, . . . ,Xn]

Algorithmic specifications.I Decide the non-emptiness of S and compute sample points in S;I Answer connectivity queries on S;I “Compute” the projection of S on some given linear space

∃X ∈ R X 2 + bX + c = 0⇐⇒ b2 − 4c ≥ 0

Page 3: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

Symbolic/Exact computation

I General software (among many others)

among many others...

I Symbolic computation / computer algebra.I Efficient tools for basic algebraic/exact computationsI Large algorithmic scope (arithmetics → differential algebra)I BUT algebraic manipulations on polynomial expressions give information on

complex roots

I Reliability issues – crucial for decision problems/algebraic nature

I Efficiency issues – complexity may be exponential in n

Goal of this talkShow how to use specialized software tools to solve “hard” problems

Page 4: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

Symbolic/Exact computation

I General software (among many others)

among many others...

I Symbolic computation / computer algebra.I Efficient tools for basic algebraic/exact computationsI Large algorithmic scope (arithmetics → differential algebra)I BUT algebraic manipulations on polynomial expressions give information on

complex roots

I Reliability issues – crucial for decision problems/algebraic nature

I Efficiency issues – complexity may be exponential in n

Goal of this talkShow how to use specialized software tools to solve “hard” problems

Page 5: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

Symbolic/Exact computation

I General software (among many others)

among many others...

I Symbolic computation / computer algebra.I Efficient tools for basic algebraic/exact computationsI Large algorithmic scope (arithmetics → differential algebra)I BUT algebraic manipulations on polynomial expressions give information on

complex roots

I Reliability issues – crucial for decision problems/algebraic nature

I Efficiency issues – complexity may be exponential in n

Goal of this talkShow how to use specialized software tools to solve “hard” problems

Page 6: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

Symbolic/Exact computation

I General software (among many others)

among many others...

I Symbolic computation / computer algebra.I Efficient tools for basic algebraic/exact computationsI Large algorithmic scope (arithmetics → differential algebra)I BUT algebraic manipulations on polynomial expressions give information on

complex roots

I Reliability issues – crucial for decision problems/algebraic nature

I Efficiency issues – complexity may be exponential in n

Goal of this talkShow how to use specialized software tools to solve “hard” problems

Page 7: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

Real root classification problemThe dream team

Two View Geometry

C C /

π

x x

X

epipolar plane

/

X,x,y, C, C 0 all coplanar)

rank(F ) = 2 s.t.

epipolar equation

, 9 a 3 ⇥ 3 matrix F

F fundamental matrix 7 degrees of freedom

if cameras are calibrated get essential matrix5 degrees of freedom

F1(X,Y) = · · · = Fp(X,Y) = 0

with X = (X1, . . . ,Xn) and Y = (Y1, . . . ,Yt)

I Generic finite number of complex rootsw.r.t Y

I To have more fun, we also may consider

G1(X,Y) > 0, . . . ,Gs(X,Y) > 0

Page 8: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

How to solve real root classification problems?

1. Compute a set containing the boundary

Projection Elimination

Grobner bases

2. Compute sample points outside the boundary

Polynomial Optimization

3. Lift and count the number of solutions

Grobner bases

Many other tools are available: geometric resolution, triangular sets, resultants, etc.

Page 9: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

How to solve real root classification problems?

1. Compute a set containing the boundary

Projection Elimination

Grobner bases

2. Compute sample points outside the boundary

Polynomial Optimization

3. Lift and count the number of solutions

Grobner bases

Many other tools are available: geometric resolution, triangular sets, resultants, etc.

Page 10: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

How to solve real root classification problems?

1. Compute a set containing the boundary

Projection Elimination

Grobner bases

2. Compute sample points outside the boundary

Polynomial Optimization

3. Lift and count the number of solutions

Grobner bases

Many other tools are available: geometric resolution, triangular sets, resultants, etc.

Page 11: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

First projection step

I Need to characterize tangent spaces

I They are kernels of

jac(F)

under regularity assumptions

I Elimination of the X-variables in thesystem

F,MaxMinors(jac(F,X)).

I Inequalities handled by consideringSols(F) ∩ Sols(Gi)

Page 12: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

The big polynomialI degree 12, 14 variables.I 4251 monomials.

BUTI degree 4 in each variableI other very special property

That’s a bingo !!Tarantino, TIB

Page 13: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

The big polynomialI degree 12, 14 variables.I 4251 monomials.

BUTI degree 4 in each variableI other very special property

That’s a bingo !!Tarantino, TIB

Page 14: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

The big polynomialI degree 12, 14 variables.I 4251 monomials.

BUTI degree 4 in each variableI other very special property

That’s a bingo !!Tarantino, TIB

Page 15: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

Second step: sampling

PolynomialOptimization

Page 16: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

Second step: sampling

F = 0,G > 0

Intuitive ideas underlying the algorithm

Su�cient to find polynomials “capturing” the boundary B of the solution set.

Fact: for all y 2 B, there exists x 2 Rn s.t. G(x) = f(x,y) = 0.

lim"!0

crit(⇡, V (G, f � "))

V (hG,�1i : hG,�i1 + hfi)

Page 17: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

Second step: sampling

F = 0,G = ε

Page 18: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

Second step: sampling

F = 0,G = ε

Page 19: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

Second step: sampling

F = 0,G = ε

Page 20: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

Second step: sampling

F = 0,G = ε

Page 21: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

Second step: sampling

F = 0,G = ε

Page 22: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

Second step: sampling

F = 0,G = ε

Page 23: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

Second step: sampling

F = 0,G = ε

Page 24: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

Second step: sampling

F = 0,G = ε

Page 25: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

Second step: sampling

F = 0,G = ε

Page 26: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

Second step: sampling

F = 0,G = ε

Page 27: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

Second step: sampling

F = 0,G = ε

Page 28: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

Second step: sampling

F = 0,G = ε

Page 29: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

Second step: sampling

F = 0,G = ε

Page 30: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

Second step: sampling

F = 0,G = ε

Page 31: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

The big polynomialI Many critical point loci are actually

empty (!)I All computations done within 12 hours.

I 504 points; number of chambers ≤ 504

That’s a SUPER bingo !!

Page 32: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

2-nd and 3-rd steps: zero-dimensional systemsSystem of equations

Grobner basis

q(T ) = 0, X1 = q1(T ), . . . ,Xn = qn(T )

State-of-the-art algorithms and implementation

FGB (Faugere) ; ' 10 000 complex solutions.

Page 33: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

2-nd and 3-rd steps: zero-dimensional systems

I Variety of computational tools allow to solve large problems exactly(sometimes)

I Particularly useful for decision problems or computing topological informations

I “Fast” computational tools: FGB (Faugere)→ Grobner basesRAGlib: library for real algebraic geometry (built on top of FGB).

I Special algorithms for special structured problems (e.g. LMI’s)

Page 34: Solving polynomial systems over the reals exactly: why and ... · Polynomial systems and real geometry Real solution set S ˆRn to F 1 = = F p = 0; G 1 > 0:::;G s > 0 with F i and

2-nd and 3-rd steps: zero-dimensional systems

I Variety of computational tools allow to solve large problems exactly(sometimes)

I Particularly useful for decision problems or computing topological informations

I “Fast” computational tools: FGB (Faugere)→ Grobner basesRAGlib: library for real algebraic geometry (built on top of FGB).

I Special algorithms for special structured problems (e.g. LMI’s)