Discrete Volume Computations for Polyhedramath.sfsu.edu/beck/papers/nantes.pdf · Discrete Volume...

Preview:

Citation preview

Discrete Volume Computations

for Polyhedra

x

y

z

5

20

2

Matthias Beck

San Francisco State University

math.sfsu.edu/beck

DGCI 2016

Digital

“Science is what we understand well enough to explain to a computer, artis all the rest.”

Donald Knuth

Discrete Volume Computations for Polyhedra Matthias Beck 2

Themes

Discrete-geometricpolynomials

Generatingfunctions

Discrete Fourieranalysis

Combinatorialstructures

Computation(complexity)

(0, 1, 2, 3)

(1, 0, 2, 3)

(1, 0, 3, 2)

(0, 1, 3, 2)

(0, 2, 1, 3)

(2, 0, 1, 3)

(2, 1, 0, 3)

(1, 2, 0, 3)

(0, 2, 3, 1)

(0, 3, 2, 1)

(0, 3, 1, 2)

(3, 0, 1, 2)

(3, 1, 0, 2)

(1, 3, 0, 2)

(1, 3, 2, 0)

(1, 2, 3, 0)

(2, 0, 3, 1)

(2, 3, 0, 1)

(2, 3, 1, 0)

(2, 1, 3, 0)

(3, 2, 0, 1)

(3, 0, 2, 1)

(3, 2, 1, 0)

(3, 1, 2, 0)

Discrete Volume Computations for Polyhedra Matthias Beck 3

A Sample Problem: Birkhoff–von Neumann Polytope

Bn =

x11 · · · x1n

... ...xn1 . . . xnn

∈ Rn2

≥0 :

∑j xjk = 1 for all 1 ≤ k ≤ n∑k xjk = 1 for all 1 ≤ j ≤ n

Discrete Volume Computations for Polyhedra Matthias Beck 4

Discrete Volumes

Rational polyhedron P ⊂ Rd – solution set of a system of linear equalities& inequalities with integer coefficients

Goal: understand P ∩ Zd . . .

I (list)∑

m∈P∩Zdzm1

1 zm22 · · · z

mdd

I (count)∣∣P ∩ Zd

∣∣

Discrete Volume Computations for Polyhedra Matthias Beck 5

Discrete Volumes

Rational polyhedron P ⊂ Rd – solution set of a system of linear equalities& inequalities with integer coefficients

Goal: understand P ∩ Zd . . .

I (list)∑

m∈P∩Zdzm1

1 zm22 · · · z

mdd

I (count)∣∣P ∩ Zd

∣∣I (volume) vol(P) = lim

t→∞

1

td

∣∣∣∣P ∩ 1

tZd∣∣∣∣

Discrete Volume Computations for Polyhedra Matthias Beck 5

Discrete Volumes

Rational polyhedron P ⊂ Rd – solution set of a system of linear equalities& inequalities with integer coefficients

Goal: understand P ∩ Zd . . .

I (list)∑

m∈P∩Zdzm1

1 zm22 · · · z

mdd

I (count)∣∣P ∩ Zd

∣∣I (volume) vol(P) = lim

t→∞

1

td

∣∣∣∣P ∩ 1

tZd∣∣∣∣

Ehrhart function LP(t) :=

∣∣∣∣P ∩ 1

tZd∣∣∣∣ =

∣∣tP ∩ Zd∣∣ for t ∈ Z>0

Discrete Volume Computations for Polyhedra Matthias Beck 5

Some Motivation

I Linear systems are everywhere, and so polyhedra are everywhere.

Discrete Volume Computations for Polyhedra Matthias Beck 6

Some Motivation

I Linear systems are everywhere, and so polyhedra are everywhere.

I In applications, the volume of the polytope represented by a linearsystem measures some fundamental data of this system (“average”).

Discrete Volume Computations for Polyhedra Matthias Beck 6

Some Motivation

I Linear systems are everywhere, and so polyhedra are everywhere.

I In applications, the volume of the polytope represented by a linearsystem measures some fundamental data of this system (“average”).

I Polytopes are basic geometric objects, yet even for these basic objectsvolume computation is hard and there remain many open problems.

Discrete Volume Computations for Polyhedra Matthias Beck 6

Some Motivation

I Linear systems are everywhere, and so polyhedra are everywhere.

I In applications, the volume of the polytope represented by a linearsystem measures some fundamental data of this system (“average”).

I Polytopes are basic geometric objects, yet even for these basic objectsvolume computation is hard and there remain many open problems.

I Many discrete problems in various mathematical areas are linearproblems, thus they ask for the discrete volume of a polytope indisguise.

Discrete Volume Computations for Polyhedra Matthias Beck 6

A Warm-Up Ehrhart Function

Lattice polytope P ⊂ Rd – convex hull of finitely points in Zd

For t ∈ Z>0 let LP(t) := #(tP ∩ Zd

)Example:

∆ = conv {(0, 0), (1, 0), (0, 1)}

={

(x, y) ∈ R2≥0 : x+ y ≤ 1

}

Discrete Volume Computations for Polyhedra Matthias Beck 7

A Warm-Up Ehrhart Function

Lattice polytope P ⊂ Rd – convex hull of finitely points in Zd

For t ∈ Z>0 let LP(t) := #(tP ∩ Zd

)Example:

∆ = conv {(0, 0), (1, 0), (0, 1)}

={

(x, y) ∈ R2≥0 : x+ y ≤ 1

}

L∆(t) =

(t+ 2

2

)= 1

2(t+ 1)(t+ 2)

Discrete Volume Computations for Polyhedra Matthias Beck 7

A Warm-Up Ehrhart Function

Lattice polytope P ⊂ Rd – convex hull of finitely points in Zd

For t ∈ Z>0 let LP(t) := #(tP ∩ Zd

)Example:

∆ = conv {(0, 0), (1, 0), (0, 1)}

={

(x, y) ∈ R2≥0 : x+ y ≤ 1

}

L∆(t) =

(t+ 2

2

)= 1

2(t+ 1)(t+ 2) ,

a polynomial in t with leading coefficient vol (∆) =1

2

Discrete Volume Computations for Polyhedra Matthias Beck 7

A Warm-Up Ehrhart Function

Lattice polytope P ⊂ Rd – convex hull of finitely points in Zd

For t ∈ Z>0 let LP(t) := #(tP ∩ Zd

)Example:

∆ = conv {(0, 0), (1, 0), (0, 1)}

={

(x, y) ∈ R2≥0 : x+ y ≤ 1

}

L∆(t) =

(t+ 2

2

)= 1

2(t+ 1)(t+ 2)

comes with the friendly generating function∑t≥0

(t+ 2

2

)zt =

1

(1− z)3

Discrete Volume Computations for Polyhedra Matthias Beck 7

Ehrhart Polynomials

Theorem (Ehrhart 1962) For any lattice polytope P,LP(t) is a polynomial in t of degree dimP withleading coefficient volP and constant term 1.

Equivalently, EhrP(z) := 1 +∑t≥1

LP(t) zt is rational:

EhrP(z) =h(z)

(1− z)dimP+1

where the Ehrhart h-vector h(z) satisfies h(0) = 1 andh(1) = (dimP)! vol(P).

Discrete Volume Computations for Polyhedra Matthias Beck 8

Ehrhart Polynomials

Theorem (Ehrhart 1962) For any lattice polytope P,LP(t) is a polynomial in t of degree dimP withleading coefficient volP and constant term 1.

Equivalently, EhrP(z) := 1 +∑t≥1

LP(t) zt is rational:

EhrP(z) =h(z)

(1− z)dimP+1

where the Ehrhart h-vector h(z) satisfies h(0) = 1 andh(1) = (dimP)! vol(P).

Seeming dichotomy: vol(P) = limt→∞

1

tdimPLP(t) can be computed discretely

via a finite amount of data.

Discrete Volume Computations for Polyhedra Matthias Beck 8

Ehrhart Polynomials

Theorem (Ehrhart 1962) For any lattice polytope P,LP(t) is a polynomial in t of degree d := dimP withleading coefficient volP and constant term 1.

EhrP(z) := 1 +∑t≥1

LP(t) zt =h(z)

(1− z)d+1

Equivalent descriptions of an Ehrhart polynomial:

I LP(t) = cd td + cd−1 t

d−1 + · · ·+ c0

I via roots of LP(t)

I EhrP(z) −→ LP(t) = h0

(t+dd

)+ h1

(t+d−1d

)+ · · ·+ hd

(td

)

Discrete Volume Computations for Polyhedra Matthias Beck 8

Ehrhart Polynomials

Theorem (Ehrhart 1962) For any lattice polytope P,LP(t) is a polynomial in t of degree d := dimP withleading coefficient volP and constant term 1.

EhrP(z) := 1 +∑t≥1

LP(t) zt =h(z)

(1− z)d+1

−→ LP(t) = h0

(t+dd

)+ h1

(t+d−1d

)+ · · ·+ hd

(td

)Theorem (Macdonald 1971) (−1)dLP(−t) enumerates the interior latticepoints in tP. Equivalently,

LP◦(t) = hd(t+d−1d

)+ hd−1

(t+d−2d

)+ · · ·+ h0

(t−1d

)

Discrete Volume Computations for Polyhedra Matthias Beck 9

Ehrhart Polynomials

Theorem (Ehrhart 1962) For any lattice polytope P,LP(t) is a polynomial in t of degree d := dimP withleading coefficient volP and constant term 1.

EhrP(z) := 1 +∑t≥1

LP(t) zt =h(z)

(1− z)d+1

−→ LP◦(t) = hd(t+d−1d

)+ hd−1

(t+d−2d

)+ · · ·+ h0

(t−1d

)Theorem (Stanley 1980) h0, h1, . . . , hd are nonnegative integers.

Discrete Volume Computations for Polyhedra Matthias Beck 9

Ehrhart Polynomials

Theorem (Ehrhart 1962) For any lattice polytope P,LP(t) is a polynomial in t of degree d := dimP withleading coefficient volP and constant term 1.

EhrP(z) := 1 +∑t≥1

LP(t) zt =h(z)

(1− z)d+1

−→ LP◦(t) = hd(t+d−1d

)+ hd−1

(t+d−2d

)+ · · ·+ h0

(t−1d

)Theorem (Stanley 1980) h0, h1, . . . , hd are nonnegative integers.

Corollary If hd+1−k > 0 then kP◦ contains an integer point.

Discrete Volume Computations for Polyhedra Matthias Beck 9

Interlude: Graph Coloring a la Ehrhart

χK2(k) = 2

(k

2

)...

1k +

1k +

1 = x 2x

2K

(Blass–Sagan)

Discrete Volume Computations for Polyhedra Matthias Beck 10

Interlude: Graph Coloring a la Ehrhart

χK2(k) = 2

(k

2

)...

1k +

1k +

1 = x 2x

2K

(Blass–Sagan)Similarly, for any given graphG on n nodes, we can write

χG(k) = a0

(k + n

n

)+ a1

(k + n− 1

n

)+ · · ·+ an

(k

n

)for some (meaningful) nonnegative integers a0, . . . , an

Discrete Volume Computations for Polyhedra Matthias Beck 10

Computational Complexity of Integer-Point Transforms

Rational polyhedron P ⊂ Rd – solution set of a system of linear equalities& inequalities with integer coefficients

−→ σP(z) :=∑

m∈P∩Zdzm1

1 zm22 · · · z

mdd is a rational function in z1, z2, . . . , zd

Lenstra (1983) polynomial-time algorithm to decide whether σP(z) = 0

Barvinok (1994) polynomial-time algorithm to compute σP(z)

Discrete Volume Computations for Polyhedra Matthias Beck 11

Computational Complexity of Integer-Point Transforms

Rational polyhedron P ⊂ Rd – solution set of a system of linear equalities& inequalities with integer coefficients

−→ σP(z) :=∑

m∈P∩Zdzm1

1 zm22 · · · z

mdd is a rational function in z1, z2, . . . , zd

Lenstra (1983) polynomial-time algorithm to decide whether σP(z) = 0

Barvinok (1994) polynomial-time algorithm to compute σP(z)

Example P = [0, 1000]

σ[0,1000](z) = 1 + z + · · ·+ z1000 =1− z1001

1− z

Discrete Volume Computations for Polyhedra Matthias Beck 11

Computational Complexity of Integer-Point Transforms

Rational polyhedron P ⊂ Rd – solution set of a system of linear equalities& inequalities with integer coefficients

−→ σP(z) :=∑

m∈P∩Zdzm1

1 zm22 · · · z

mdd is a rational function in z1, z2, . . . , zd

Lenstra (1983) polynomial-time algorithm to decide whether σP(z) = 0

Barvinok (1994) polynomial-time algorithm to compute σP(z)

Given a polytope P we can compute

EhrP(z) = σcone(P)(1, 1, . . . , 1, z)

where cone(P) := R≥0 (P × {1})

Discrete Volume Computations for Polyhedra Matthias Beck 11

Computational Complexity of Integer-Point Transforms

Rational polyhedron P ⊂ Rd – solution set of a system of linear equalities& inequalities with integer coefficients

−→ σP(z) :=∑

m∈P∩Zdzm1

1 zm22 · · · z

mdd is a rational function in z1, z2, . . . , zd

Lenstra (1983) polynomial-time algorithm to decide whether σP(z) = 0

Barvinok (1994) polynomial-time algorithm to compute σP(z)

Implementations:

De Loera, Koppe et al www.math.ucdavis.edu/∼latte

Verdoolaege freshmeat.net/projects/barvinok

Discrete Volume Computations for Polyhedra Matthias Beck 11

Ehrhart Quasipolynomials

Rational polytope P ⊂ Rd – convex hull of finitely points in Qd

Theorem (Ehrhart 1962) LP(t) is a quasipolynomial in t:

LP(t) = cd(t) td + cd−1(t) td−1 + · · ·+ c0(t)

where c0(t), . . . , cd(t) are periodic functions.

Example L[0,12](t) =1

2t+

3 + (−1)t

4

Discrete Volume Computations for Polyhedra Matthias Beck 12

Ehrhart Quasipolynomials

Rational polytope P ⊂ Rd – convex hull of finitely points in Qd

Theorem (Ehrhart 1962) LP(t) is a quasipolynomial in t:

LP(t) = cd(t) td + cd−1(t) td−1 + · · ·+ c0(t)

where c0(t), . . . , cd(t) are periodic functions. Equivalently,

EhrP(z) := 1 +∑t≥1

LP(t) zt =h(z)

(1− zp)dimP+1

for some (minimal) p ∈ Z>0 (the period of LP(t)).

Example Ehr[0,12](z) =∑t≥0

(1

2t+

3 + (−1)t

4

)zt =

1 + z

(1− z2)2

Discrete Volume Computations for Polyhedra Matthias Beck 12

Interlude: Magic Squares joint withThomas ZaslavskyAndrew Van Herick

Mn(t) – number of n× n squares with distinctentries and row, column, and diagonal sums t

4 9 23 5 78 1 6

Similar to graph coloring, this is a polyhedral

problem with forbidden hyperplanes:

inside-out polytopes

Discrete Volume Computations for Polyhedra Matthias Beck 13

Interlude: Magic Squaresjoint withThomas ZaslavskyAndrew Van Herick

Mn(t) – number of n× n squares with distinctentries and row, column, and diagonal sums t

4 9 23 5 78 1 6

Example

M3(t) =

2t2−32t+1449 = 2

9(t2 − 16t+ 72) if t ≡ 0 mod 182t2−32t+78

9 = 29(t− 3)(t− 13) if t ≡ 3 mod 18

2t2−32t+1209 = 2

9(t− 6)(t− 10) if t ≡ 6 mod 182t2−32t+126

9 = 29(t− 7)(t− 9) if t ≡ 9 mod 18

2t2−32t+969 = 2

9(t− 4)(t− 12) if t ≡ 12 mod 182t2−32t+102

9 = 29(t2 − 16t+ 51) if t ≡ 15 mod 18

0 if t 6≡ 0 mod 3

∑t≥0

M3(t) zt =8z15

(2z3 + 1

)(1− z3) (1− z6) (1− z9)

Discrete Volume Computations for Polyhedra Matthias Beck 13

Fourier–Dedekind Sums joint withSinai Robins

Rational polytope P ⊂ Rd – convex hull of finitely points in Qd

−→ EhrP(z) := 1 +∑t≥1

LP(t) zt =h(z)

(1− zp)dimP+1

Natural ingredients of formulas for Ehrhart quasipolynomials:

sn (c1, . . . , cd; c) :=1

c

c−1∑k=1

e2πi n/c(1− e2πi c1/c

) (1− e2πi c2/c

)· · ·(1− e2πi cd/c

)Examples sn(c1; c) ∼

⌊nc

Discrete Volume Computations for Polyhedra Matthias Beck 14

Fourier–Dedekind Sums joint withSinai Robins

Rational polytope P ⊂ Rd – convex hull of finitely points in Qd

−→ EhrP(z) := 1 +∑t≥1

LP(t) zt =h(z)

(1− zp)dimP+1

Natural ingredients of formulas for Ehrhart quasipolynomials:

sn (c1, . . . , cd; c) :=1

c

c−1∑k=1

e2πi n/c(1− e2πi c1/c

) (1− e2πi c2/c

)· · ·(1− e2πi cd/c

)Examples sn(c1; c) ∼

⌊nc

s0(c1, c2; c) ∼c−1∑k=1

⌊k c1c

⌋2

∼ Dedekind sum

Discrete Volume Computations for Polyhedra Matthias Beck 14

Fourier–Dedekind Sums joint withSinai Robins

sn (c1, . . . , cd; c) :=1

c

c−1∑k=1

e2πi n/c(1− e2πi c1/c

) (1− e2πi c2/c

)· · ·(1− e2πi cd/c

)Fun Facts (Dedekind 1880s, Rademacher 1950s)

I sn(a, 1; b) = sn(a mod b, 1; b)

I sn(a, 1; b) + sn(b, 1; a) = something simple [reciprocity]

Discrete Volume Computations for Polyhedra Matthias Beck 15

Fourier–Dedekind Sums joint withSinai Robins

sn (c1, . . . , cd; c) :=1

c

c−1∑k=1

e2πi n/c(1− e2πi c1/c

) (1− e2πi c2/c

)· · ·(1− e2πi cd/c

)Fun Facts (Dedekind 1880s, Rademacher 1950s)

I sn(a, 1; b) = sn(a mod b, 1; b)

I sn(a, 1; b) + sn(b, 1; a) = something simple [reciprocity]

Corollary sn (c1, c2; c) can be computed in time log max(c1, c2, c).

Discrete Volume Computations for Polyhedra Matthias Beck 15

Fourier–Dedekind Sums joint withSinai Robins

sn (c1, . . . , cd; c) :=1

c

c−1∑k=1

e2πi n/c(1− e2πi c1/c

) (1− e2πi c2/c

)· · ·(1− e2πi cd/c

)Fun Facts (Dedekind 1880s, Rademacher 1950s)

I sn(a, 1; b) = sn(a mod b, 1; b)

I sn(a, 1; b) + sn(b, 1; a) = something simple [reciprocity]

Corollary sn (c1, c2; c) can be computed in time log max(c1, c2, c).

Corollary The Ehrhart quasipolynomial of any rational polygon P can beexpressed in terms of Fourier–Dedekind sums and computed in linear timein the input size of P.

Discrete Volume Computations for Polyhedra Matthias Beck 15

Dedekind–Carlitz Polynomials joint withChristian HaaseAsia Matthews

Dedekind sum s0(a, 1; b) ∼b−1∑k=1

⌊ka

b

⌋2

∼b−1∑k=1

⌊ka

b

⌋(k − 1)

Dedekind–Carlitz Polynomial c (u, v; a, b) :=

b−1∑k=1

ubkab cvk−1

Discrete Volume Computations for Polyhedra Matthias Beck 16

Dedekind–Carlitz Polynomials joint withChristian HaaseAsia Matthews

Dedekind sum s0(a, 1; b) ∼b−1∑k=1

⌊ka

b

⌋2

∼b−1∑k=1

⌊ka

b

⌋(k − 1)

Dedekind–Carlitz Polynomial c (u, v; a, b) :=

b−1∑k=1

ubkab cvk−1

Theorem (Carlitz 1975) If a and b are relatively prime,

(v − 1) c (u, v; a, b) + (u− 1) c (v, u; b, a) = ua−1vb−1 − 1

Applying u ∂u twice and v ∂v once gives Dedekind’s reciprocity law.

Discrete Volume Computations for Polyhedra Matthias Beck 16

Dedekind–Carlitz Polynomials joint withChristian HaaseAsia Matthews

c (u, v; a, b) :=

b−1∑k=1

ubkab cvk−1

Consider the 2-dimensional cone

K := {λ1(0, 1) + λ2(a, b) : λ1, λ2 ≥ 0}

Fun Fact σK(u, v) :=∑

(m,n)∈K∩Z2

umvn =1 + uv c (v, u; b, a)

(1− v) (1− uavb)

Discrete Volume Computations for Polyhedra Matthias Beck 17

Dedekind–Carlitz Polynomials joint withChristian HaaseAsia Matthews

c (u, v; a, b) :=

b−1∑k=1

ubkab cvk−1

Consider the 2-dimensional cone

K := {λ1(0, 1) + λ2(a, b) : λ1, λ2 ≥ 0}

Fun Fact σK(u, v) :=∑

(m,n)∈K∩Z2

umvn =1 + uv c (v, u; b, a)

(1− v) (1− uavb)

I Carlitz reciprocity = two cones adding up to R2≥0

I Complexity anyone?

Discrete Volume Computations for Polyhedra Matthias Beck 17

A (Small) Bouquet of Open Problems

I Classify Ehrhart polynomials (or, alternatively, Ehrhart h-vectors)

I Find more inside-out polytopes

I Attack existence problems via (discrete-geometric) polynomials

I Study periods of Ehrhart quasipolynomials

I Study complexity of Fourier–Dedekind sums

I Compute vol(B11)

Discrete Volume Computations for Polyhedra Matthias Beck 18

Birkhoff–von Neumann Revisited joint withDennis PixtonJesus De LoeraMike DevelinJulian PfeifleRichard Stanley

For more about roots of

(Ehrhart) polynomials,

see Braun (2008) and

Pfeifle (2010).

Discrete Volume Computations for Polyhedra Matthias Beck 19

Recommended