Computing the volume of the discriminant polytope

Computing the volume of the discriminant
polytope
Vissarion Fisikopoulos
Joint work with I.Z. Emiris (UoA), B. Gärtner (ETHZ)
Department of Informatics, University of Athens
ACAC, 28.Aug.2012
Discriminants in high school
Example
f (x) = ax 2 + bx + c = 0
f 0 (x) = 2ax + b = 0
I
∆ vanishes iff f has a multiple root
∆ = b 2 − 4ac
Another example
A degree 5 polynomial on one variable
f (x) = ax 5 + bx 4 + cx 3 + dx 2 + ex + g = 0
f 0 (x) = 5ax 4 + 4bx 3 + 3cx 2 + 2dx + e = 0
I
Elimination theory reduces the computation of ∆ to the
computation of a 9 × 9 determinant.
∆ = −2050a2 g 2 bedc + 356abed 2 c 2 g − 80b 3 ed 2 cg + 18dc 3 b 2 g
e − 746agdcb 2 e 2 + 144ab 2 e 4 c − 6ab 2 e 3 d 2 − 192a2 be 4 d − 4d 2 ac
3 e 2 + 144d 2 a2 ce 3 − 4d 3 b 3 e 2 − 4c 3 e 3 b 2 − 80abe 3 dc 2 + 18b 3 e 3
dc + 18d 3 acbe 2 + d 2 c 2 b 2 e 2 − 27b 4 e 4 − 128a2 e 4 c 2 + 16ac 4 e 3 − 27
a2 d 4 e 2 + 256a3 e 5 + 3125a4 g 4 + 160a2 gbe 3 c + 560a2 gdc 2 e 2 + 1020
a2 gbd 2 e 2 + 160ag 2 b 3 ed + 560ag 2 d 2 cb 2 + 1020ag 2 b 2 c 2 e − 192
b 4 ecg 2 + 24ab 2 ed 3 g + 24abe 2 c 3 g + 144b 4 e 2 dg − 6b 3 e 2 c 2 g + 14
4dc 2 b 3 g 2 − 630dac 3 bg 2 − 630d 3 a2 ceg − 72d 4 acbg − 72dac 4 e
g − 4d 3 c 2 b 2 g − 1600ag 3 cb 3 − 2500a3 g 3 be − 50a2 g 2 b 2 e 2 − 3750a3
g 3 dc + 2000a2 g 3 db 2 + 2000a3 g 2 ce 2 + 825a2 g 2 d 2 c 2 + 2250a2 g 3 b
c 2 + 2250a3 g 2 ed 2 − 900a2 g 2 bd 3 − 900a2 g 2 c 3 e − 36agb 3 e 3 − 1600
a3 ge 3 d + 16d 3 ac 3 g − 128d 2 b 4 g 2 + 16d 4 b 3 g − 27c 4 b 2 g 2 + 108ac 5
g 2 + 108a2 d 5 g + 256b 5 g 3
I
The number of ∆ terms increases exponentially with the degree!
One more example
I
A system of two polynomials on two variables
f1 = ax12 + bx1 x2 + cx22 + dx1 + ex2 + g
f2 = hx12 + ix1 x2 + jx22 + kx1 + lx2 + m
I
The condition of the two quadrics f1 , f2 to be tangent is expressed by
the ∆ of
f =
I
ax12 x3 + bx1 x2 x3 + cx22 x3 + dx1 x3 + ex2 x3 + gx3 + hx12 x4 + ix1 x2 x4
+jx22 x4 + kx1 x4 + lx2 x4 + mx4
∆ is of degree 12 and has 3210 monomials!
One more example
I
A system of two polynomials on two variables
f1 = ax12 + bx1 x2 + cx22 + dx1 + ex2 + g
f2 = hx12 + ix1 x2 + jx22 + kx1 + lx2 + m
I
The condition of the two quadrics f1 , f2 to be tangent is expressed by
the ∆ of
f =
I
ax12 x3 + bx1 x2 x3 + cx22 x3 + dx1 x3 + ex2 x3 + gx3 + hx12 x4 + ix1 x2 x4
+jx22 x4 + kx1 x4 + lx2 x4 + mx4
∆ is of degree 12 and has 3210 monomials!
Instrumental in dark matter
searches at the CERN Large
Hadron Collider
What is the discriminant?
Definition
Given f (x) =
P
a∈A ca x
a
, where A ⊂ Zd , x = (x1 , . . . , xd ) ∈ (C∗ )d .
The discriminant is the unique (up to sign) irreducible polynomial ∆ with
integer coefficients in the unknowns ca which vanishes iff f has a multiple
root, i.e.,
∆=0
⇔
∃x ∗ ∈ (C∗ )d
s.t.
f (x ∗ ) =
∂f ∗
∂f ∗
(x ) = · · · =
(x ) = 0
∂x1
∂xd
What is the discriminant polytope?
Definition
I
The Newton polytope of f , N(f ), is the convex hull of the set of
exponents of its monomials with non-zero coefficient.
I
The discriminant polytope is N(∆).
What is the discriminant polytope?
Definition
I
I
The Newton polytope of f , N(f ), is the convex hull of the set of
exponents of its monomials with non-zero coefficient.
The discriminant polytope is N(∆).
Example
5
f (x1 , x2 ) = 8x2 + x1 x2 − 24x22 − 16x12 +
220x12 x2 − 34x1 x22 − 84x13 x2 + 6x12 x22 −
8x1 x23 + 8x13 x22 + 8x13 + 18x23
3
2
1
1
2
3
5
What is the discriminant polytope?
Definition
I
The Newton polytope of f , N(f ), is the convex hull of the set of
exponents of its monomials with non-zero coefficient.
I
The discriminant polytope is N(∆).
Example
5
f (x1 , x2 ) = 8x2 + x1 x2 − 24x22 − 16x12 +
220x12 x2 − 34x1 x22 − 84x13 x2 + 6x12 x22 −
8x1 x23 + 8x13 x22 + 8x13 + 18x23
3
2
1
1
I
I
2
3
5
We consider d fixed and d > 4. If n := |A|, dim(N(∆)) = n − d + 1.
Knowing N(∆), reduces the computation of ∆ to a linear algebra
problem!
Discriminant polytope: Motivation
I
Geometry: equival. classes of the polytope of all triangulations
I
Algebra: generalizes the notion of degree of the discriminant
I
Applications: discriminant computation, CAD: implicitization of
parametric hypersurfaces
Enneper’s Minimal Surface
Existing work
I
Theory of resultant and discriminant polytopes
[GelfandKapranovZelevinsky’94]
I
TOPCOM [Rambau ’02] computes all vertices of the polytope of all
triangulations.
I
[Emiris, F, Konaxis, Peñaranda SoCG’12] algorithm for computing
resultant polytopes (respol) (extended by [Emiris, F, Dickenstein]
to discriminant polytopes).
I
Complexity of computing N(∆) dominated by convex
hull ([Chazelle’91]) O(|V |bn/2c ), V ={vertices of N(∆)}.
I
Tropical geometry [Sturmfels-Yu ’08]: algorithms for resultant
polytope (GFan) [Jensen-Yu ’11] and discriminant polytope vertices
(TropLi) [Rincón’12].
Polytope oracles
OPT for N (∆A )
OPT oracle [EFKP’12]
VIOL for N (∆A )
Given c ∈ Rn , find y ∈ N(∆) ∈ Rn :
maximize c T y , or assert that N(∆) is
empty.
Complexity: dominated by convex hull
O(nbd/2c )
c
y
N (∆)
VIOL oracle
Given c ∈ Rn , γ ∈ R, does c T x ≤ γ holds
∀x ∈ N(∆)? If not, find y ∈ N(∆) with
c T y > γ.
Polytope duality
I
N(∆)∗ := {(z T , λ)T ∈ Rn+1 : z T x ≤ λ for all x ∈ N(∆)}
N (∆)
I
N(∆)∗∗ = N(∆)
N (∆)∗
Polytope oracles and duality
OPT for N (∆A )
SEP for Q
VIOL for N (∆A )
VIOL oracle
Given c ∈ Rn , γ ∈ R, does c T x ≤ γ holds
∀x ∈ N(∆). If not, find y ∈ N(∆) with
c T y > γ.
c
SEP oracle
y
y0
N (∆)∗
Given y ∈ Rn , does y ∈ N(∆)∗ ? If not,
find c ∈ Rn s.t. c T y > max{c T x | x ∈ P}.
Optimization from Separation
OPT for N (∆A )
VIOL for N (∆A )
SEP for Q
polynomial time optimization algorithms
OPT for Q
I
Ellipsoid [GrötschelLovászSchrijver’88]
I
Vaidya’s [Vaidya’89].
I
Centralized Splitting [Levin’65]
I
random walk [BertsimasVempala’04]
Optimization from Separation
OPT for N (∆A )
polynomial time optimization algorithms
VIOL for N (∆A )
SEP for Q
OPT for Q
SEP for N (∆A )
I
Ellipsoid [GrötschelLovászSchrijver’88]
I
Vaidya’s [Vaidya’89].
I
Centralized Splitting [Levin’65]
I
random walk [BertsimasVempala’04]
VIOL for Q
N(∆)∗∗ = N(∆)
The volume problem
OPT for N (∆A )
I
VIOL for N (∆A )
SEP for Q
I
OPT for Q
SEP for N (∆A )
VOL(N (∆A ))
VIOL for Q
I
Convex polytope Q ⊆ Rn , computing
volume is #P − hard
Given separation oracle for Q, ∃
randomized algorithm s.t. approximate
Q volume (arbitrary accuracy) in
O ∗ (n4 ) [LovászVempala’06].
The implementation by [Lovász et
al.’04] run only with hypercubes in
dimension < 10.
The volume of N(∆)
OPT for N (∆A )
VIOL for N (∆A )
SEP for Q
OPT for Q
SEP for N (∆A )
VIOL for Q
Theorem
Given a polynomial with d variables and n
monomials we can compute an
approximation of the volume of N(∆) in
O ∗ (nb2(d+3)c L).
(where L = log Rr and N(∆) is contained in an
axis-aligned cube of width R and contains a cube
of width r )
VOL(N (∆A ))
Works for every polytope defined by an optimization oracle s.a.
secondary, resultant polytopes . . .
Ongoing and future work
I
Implement the volume computation algorithm for N(∆)
I
Approximation of N(∆)
Ongoing and future work
I
Implement the volume computation algorithm for N(∆)
I
Approximation of N(∆)
Thank You !