SLIDE 1
New Hardness Results for Diophantine Approximation
Friedrich Eisenbrand & Thomas Rothvoß
Institute of Mathematics EPFL, Lausanne
APPROX’09
SLIDE 2 Simultaneous Diophantine Approximation (SDA)
Given:
◮ α1, . . . , αn ∈ Q ◮ bound N ∈ N ◮ error bound ε > 0
Decide: ∃Q ∈ {1, . . . , N} : max
i=1,...,n
Q
Q
SLIDE 3 Simultaneous Diophantine Approximation (SDA)
Given:
◮ α1, . . . , αn ∈ Q ◮ bound N ∈ N ◮ error bound ε > 0
Decide: ∃Q ∈ {1, . . . , N} : max
i=1,...,n
Q
Q ⇔ ∃Q ∈ {1, . . . , N} : max
i=1,...,n |⌈Qαi⌋ − Qαi| ≤ ε
SLIDE 4 Simultaneous Diophantine Approximation (SDA)
Given:
◮ α1, . . . , αn ∈ Q ◮ bound N ∈ N ◮ error bound ε > 0
Decide: ∃Q ∈ {1, . . . , N} : max
i=1,...,n
Q
Q ⇔ ∃Q ∈ {1, . . . , N} : max
i=1,...,n |⌈Qαi⌋ − Qαi| ≤ ε ◮ Yes, if N ≥ (1/ε)n [Dirichlet]
SLIDE 5 Simultaneous Diophantine Approximation (SDA)
Given:
◮ α1, . . . , αn ∈ Q ◮ bound N ∈ N ◮ error bound ε > 0
Decide: ∃Q ∈ {1, . . . , N} : max
i=1,...,n
Q
Q ⇔ ∃Q ∈ {1, . . . , N} : max
i=1,...,n |⌈Qαi⌋ − Qαi| ≤ ε ◮ Yes, if N ≥ (1/ε)n [Dirichlet] ◮ NP-hard [Lagarias ’85]
SLIDE 6 Simultaneous Diophantine Approximation (SDA)
Given:
◮ α1, . . . , αn ∈ Q ◮ bound N ∈ N ◮ error bound ε > 0
Decide: ∃Q ∈ {1, . . . , N} : max
i=1,...,n
Q
Q ⇔ ∃Q ∈ {1, . . . , N} : max
i=1,...,n |⌈Qαi⌋ − Qαi| ≤ ε ◮ Yes, if N ≥ (1/ε)n [Dirichlet] ◮ NP-hard [Lagarias ’85] ◮ 2O(n)-approximation via LLL-algo [Lagarias ’85]
SLIDE 7 Simultaneous Diophantine Approximation (SDA)
Given:
◮ α1, . . . , αn ∈ Q ◮ bound N ∈ N ◮ error bound ε > 0
Decide: ∃Q ∈ {1, . . . , N} : max
i=1,...,n
Q
Q ⇔ ∃Q ∈ {1, . . . , N} : max
i=1,...,n |⌈Qαi⌋ − Qαi| ≤ ε ◮ Yes, if N ≥ (1/ε)n [Dirichlet] ◮ NP-hard [Lagarias ’85] ◮ 2O(n)-approximation via LLL-algo [Lagarias ’85] ◮ Gap version NP-hard [R¨
Chen & Meng ’07]
SLIDE 8 Inapproximability
Theorem (R¨
- ssner & Seifert ’96, Chen & Meng ’07)
Given α1, . . . , αn, N, ε > 0 it is NP-hard to distinguish
◮ ∃Q ∈ {1, . . . , N} : max i=1,...,n |⌈Qαi⌋ − Qαi| ≤ ε ◮ ∄Q ∈ {1, . . . , n
O(1) log log n N} : max
i=1,...,n |⌈Qαi⌋ − Qαi| ≤ n
O(1) log log n ε
SLIDE 9 Inapproximability
Theorem (R¨
- ssner & Seifert ’96, Chen & Meng ’07)
Given α1, . . . , αn, N, ε > 0 it is NP-hard to distinguish
◮ ∃Q ∈ {1, . . . , N} : max i=1,...,n |⌈Qαi⌋ − Qαi| ≤ ε ◮ ∄Q ∈ {1, . . . , n
O(1) log log n N} : max
i=1,...,n |⌈Qαi⌋ − Qαi| ≤ n
O(1) log log n ε
Theorem
Given α1, . . . , αn, N, ε > 0 it is NP-hard to distinguish
◮ ∃Q ∈ {N/2, . . . , N} : max i=1,...,n |⌈Qαi⌋ − Qαi| ≤ ε ◮ ∄Q ∈ {1, . . . , 2n · N} : max i=1,...,n |⌈Qαi⌋ − Qαi| ≤ n
O(1) log log n · ε
even if ε small.
SLIDE 10 Reduction SDA→ DDA
Theorem (Directed Diophantine Approximation (DDA))
Given α1, . . . , αn, N, ε > 0 it is NP-hard to distinguish
◮ ∃Q ∈ {N/2, . . . , N} : max i=1,...,n |⌈Qαi⌉ − Qαi| ≤ ε ◮ ∄Q ∈ {1, . . . , n
O(1) log log n · N} : max
i=1,...,n |⌈Qαi⌉ − Qαi| ≤ 2n · ε
even if ε small.
SLIDE 11 Reduction SDA→ DDA
Theorem (Directed Diophantine Approximation (DDA))
Given α1, . . . , αn, N, ε > 0 it is NP-hard to distinguish
◮ ∃Q ∈ {N/2, . . . , N} : max i=1,...,n |⌈Qαi⌉ − Qαi| ≤ ε ◮ ∄Q ∈ {1, . . . , n
O(1) log log n · N} : max
i=1,...,n |⌈Qαi⌉ − Qαi| ≤ 2n · ε
even if ε small.
◮ Given SDA instance α1, . . . , αn, ε, N, choose δ := 2ε N
α′
i
:= αi − δ ∀i = 1, . . . , n α′
i+n
:= −(αi + δ) ∀i = 1, . . . , n ε′ := 3ε
SLIDE 12 Reduction SDA→ DDA
Theorem (Directed Diophantine Approximation (DDA))
Given α1, . . . , αn, N, ε > 0 it is NP-hard to distinguish
◮ ∃Q ∈ {N/2, . . . , N} : max i=1,...,n |⌈Qαi⌉ − Qαi| ≤ ε ◮ ∄Q ∈ {1, . . . , n
O(1) log log n · N} : max
i=1,...,n |⌈Qαi⌉ − Qαi| ≤ 2n · ε
even if ε small.
◮ Given SDA instance α1, . . . , αn, ε, N, choose δ := 2ε N
α′
i
:= αi − δ ∀i = 1, . . . , n α′
i+n
:= −(αi + δ) ∀i = 1, . . . , n ε′ := 3ε
◮ Note that |⌈−x⌉ − (−x)| = |⌊x⌋ − x|
SLIDE 13 Reduction SDA→ DDA
Theorem (Directed Diophantine Approximation (DDA))
Given α1, . . . , αn, N, ε > 0 it is NP-hard to distinguish
◮ ∃Q ∈ {N/2, . . . , N} : max i=1,...,n |⌈Qαi⌉ − Qαi| ≤ ε ◮ ∄Q ∈ {1, . . . , n
O(1) log log n · N} : max
i=1,...,n |⌈Qαi⌉ − Qαi| ≤ 2n · ε
even if ε small.
◮ Given SDA instance α1, . . . , αn, ε, N, choose δ := 2ε N
α′
i
:= αi − δ ∀i = 1, . . . , n α′
i+n
:= −(αi + δ) ∀i = 1, . . . , n ε′ := 3ε
◮ Note that |⌈−x⌉ − (−x)| = |⌊x⌋ − x| ◮ Assume ε < 1 6 · (1 2)n
SLIDE 14
Proof: SDA-YES ⇒ DDA-YES
◮ Let Q ∈ {N/2, . . . , N} : max i=1,...,n |⌈Qαi⌋ − Qαi| ≤ ε.
Qαi Z ≤ ε
SLIDE 15
Proof: SDA-YES ⇒ DDA-YES
◮ Let Q ∈ {N/2, . . . , N} : max i=1,...,n |⌈Qαi⌋ − Qαi| ≤ ε.
Qαi Z ≤ ε Q · (αi − δ) Q · (αi + δ) Qδ ∈ [ε, 2ε] Qδ ∈ [ε, 2ε]
SLIDE 16
Proof: SDA-YES ⇒ DDA-YES
◮ Let Q ∈ {N/2, . . . , N} : max i=1,...,n |⌈Qαi⌋ − Qαi| ≤ ε.
Qαi Z ≤ ε Q · (αi − δ) Q · (αi + δ) Qδ ∈ [ε, 2ε] Qδ ∈ [ε, 2ε] round up round down
SLIDE 17 Proof: SDA-YES ⇒ DDA-YES
◮ Let Q ∈ {N/2, . . . , N} : max i=1,...,n |⌈Qαi⌋ − Qαi| ≤ ε.
Qαi Z ≤ ε Q · (αi − δ) Q · (αi + δ) Qδ ∈ [ε, 2ε] Qδ ∈ [ε, 2ε] round up round down
◮ Conclusion: Q is DDA solution
max
j=1,...,2n : |⌈Qα′ j⌉−Qα′ j| = max i=1,...,n
|⌈Q(αi − δ)⌉ − Q(αi − δ)|, |Q(αi + δ) − ⌊Q(αi + δ)⌋|
SLIDE 18
Proof: SDA-NO ⇒ DDA-NO
◮ Show: ¬DDA-NO ⇒ ¬SDA-NO
SLIDE 19 Proof: SDA-NO ⇒ DDA-NO
◮ Show: ¬DDA-NO ⇒ ¬SDA-NO ◮ Let Q ≤ nO(
1 log log n)N with
max
j=1,...,2n(⌈Qα′ j⌉ − Qα′ j) ≤ 2n · 3ε < 1/2
SLIDE 20 Proof: SDA-NO ⇒ DDA-NO
◮ Show: ¬DDA-NO ⇒ ¬SDA-NO ◮ Let Q ≤ nO(
1 log log n)N with
max
j=1,...,2n(⌈Qα′ j⌉ − Qα′ j) ≤ 2n · 3ε < 1/2 ◮ Suppose ∄ integer in [Q(αi − δ), Q(αi + δ)]
Q · (αi − δ) Q · (αi + δ) ∈ Z ∈ Z
SLIDE 21 Proof: SDA-NO ⇒ DDA-NO
◮ Show: ¬DDA-NO ⇒ ¬SDA-NO ◮ Let Q ≤ nO(
1 log log n)N with
max
j=1,...,2n(⌈Qα′ j⌉ − Qα′ j) ≤ 2n · 3ε < 1/2 ◮ Suppose ∄ integer in [Q(αi − δ), Q(αi + δ)]
Q · (αi − δ) Q · (αi + δ) ∈ Z ∈ Z round up round down
SLIDE 22 Proof: SDA-NO ⇒ DDA-NO
◮ Show: ¬DDA-NO ⇒ ¬SDA-NO ◮ Let Q ≤ nO(
1 log log n)N with
max
j=1,...,2n(⌈Qα′ j⌉ − Qα′ j) ≤ 2n · 3ε < 1/2 ◮ Suppose ∄ integer in [Q(αi − δ), Q(αi + δ)]
Q · (αi − δ) Q · (αi + δ) ∈ Z ∈ Z round up round down
◮
max
j=1,...,2n |⌈Qα′ j⌉ − Qα′ j| ≥ 1/2
Contradiction!
SLIDE 23 Proof: SDA-NO ⇒ DDA-NO
◮ Show: ¬DDA-NO ⇒ ¬SDA-NO ◮ Let Q ≤ nO(
1 log log n)N with
max
j=1,...,2n(⌈Qα′ j⌉ − Qα′ j) ≤ 2n · 3ε < 1/2 ◮ Suppose ∄ integer in [Q(αi − δ), Q(αi + δ)]
Q · (αi − δ) Q · (αi + δ) ∈ Z
◮
max
j=1,...,2n |⌈Qα′ j⌉ − Qα′ j| ≥ 1/2
Contradiction!
SLIDE 24 Proof: SDA-NO ⇒ DDA-NO
◮ Show: ¬DDA-NO ⇒ ¬SDA-NO ◮ Let Q ≤ nO(
1 log log n)N with
max
j=1,...,2n(⌈Qα′ j⌉ − Qα′ j) ≤ 2n · 3ε < 1/2 ◮ Suppose ∄ integer in [Q(αi − δ), Q(αi + δ)]
Q · (αi − δ) Q · (αi + δ) ∈ Z Qαi ≤ Qδ
◮
max
j=1,...,2n |⌈Qα′ j⌉ − Qα′ j| ≥ 1/2
Contradiction!
◮ |Qαi − Z| ≤ Qδ ≤ nO(
1 log log n) · ε hence ¬SDA-NO
SLIDE 25
Mixing Set
min css + cT y s + aiyi ≥ bi ∀i = 1, . . . , n s ∈ R≥0 y ∈ Zn
SLIDE 26
Mixing Set
min css + cT y s + aiyi ≥ bi ∀i = 1, . . . , n s ∈ R≥0 y ∈ Zn
◮ Poly-time if ai = 1
[G¨ unl¨ uk & Pochet ’01, Miller & Wolsey ’03]
SLIDE 27
Mixing Set
min css + cT y s + aiyi ≥ bi ∀i = 1, . . . , n s ∈ R≥0 y ∈ Zn
◮ Poly-time if ai = 1
[G¨ unl¨ uk & Pochet ’01, Miller & Wolsey ’03]
◮ Poly-time if a1 | a2 | . . . | an
[Zhao & de Farias ’08, Conforti et al. ’08]
SLIDE 28
Mixing Set
min css + cT y s + aiyi ≥ bi ∀i = 1, . . . , n s ∈ R≥0 y ∈ Zn
◮ Poly-time if ai = 1
[G¨ unl¨ uk & Pochet ’01, Miller & Wolsey ’03]
◮ Poly-time if a1 | a2 | . . . | an
[Zhao & de Farias ’08, Conforti et al. ’08]
◮ Conforti et al. ’08: Poly-time?
SLIDE 29 Mixing Set
min css + cT y s + aiyi ≥ bi ∀i = 1, . . . , n s ∈ R≥0 y ∈ Zn
◮ Poly-time if ai = 1
[G¨ unl¨ uk & Pochet ’01, Miller & Wolsey ’03]
◮ Poly-time if a1 | a2 | . . . | an
[Zhao & de Farias ’08, Conforti et al. ’08]
◮ Conforti et al. ’08: Poly-time? ◮ → NP-hard by reduction from:
∃Q ∈ {1, . . . , N} :
n
|Qαi − ⌊Qαi⌋| ≤ ε
SLIDE 30 Proof
◮ ∃Q ∈ {1, . . . , N} : n
|Qαi − ⌊Qαi⌋| ≤ ε
SLIDE 31 Proof
◮ ∃Q ∈ {1, . . . , N} : n
|Qαi − ⌊Qαi⌋| ≤ ε min
n
(Qαi − yi) (IP) Qαi − yi ≥ ∀i = 1, . . . , n Q ≥ 1 Q ≤ N Q ∈ Z y1, . . . , yn ∈ Z
SLIDE 32 Proof
◮ ∃Q ∈ {1, . . . , N} : n
|Qαi − ⌊Qαi⌋| ≤ ε min
n
(Qαi − yi) (IP) Q − yi/αi ≥ ∀i = 1, . . . , n Q ≥ 1 Q ≤ N Q ∈ Z y1, . . . , yn ∈ Z
SLIDE 33 Proof
◮ ∃Q ∈ {1, . . . , N} : n
|Qαi − ⌊Qαi⌋| ≤ ε min
n
(Qαi − yi) (IP) Q − yi/αi ≥ ∀i = 1, . . . , n Q − 0 · y0 ≥ 1 Q ≤ N Q ∈ Z y1, . . . , yn ∈ Z
SLIDE 34 Proof
◮ ∃Q ∈ {1, . . . , N} : n
|Qαi − ⌊Qαi⌋| ≤ ε min
n
(Qαi − yi) (IP) Q − yi/αi ≥ ∀i = 1, . . . , n Q − 0 · y0 ≥ 1 Q ≤ N Q ∈ Z y1, . . . , yn ∈ Z
Theorem
Polytime optimization ⇔ Polytime optimization over any non-empty face
SLIDE 35
Proof
Theorem
Polytime optimization ⇔ Polytime optimization over any non-empty face
SLIDE 36
Proof
Q ≥ yn+1
Theorem
Polytime optimization ⇔ Polytime optimization over any non-empty face
SLIDE 37 Proof
Q ≥ yn+1
b
c
Theorem
Polytime optimization ⇔ Polytime optimization over any non-empty face
SLIDE 38 Proof
Q ≥ yn+1
b
c M× normal vector
Theorem
Polytime optimization ⇔ Polytime optimization over any non-empty face
SLIDE 39 Proof
Q ≥ yn+1
b
c M× normal vector c
Theorem
Polytime optimization ⇔ Polytime optimization over any non-empty face
SLIDE 40 Proof
Q ≥ yn+1
b
c M× normal vector c c′
Theorem
Polytime optimization ⇔ Polytime optimization over any non-empty face
SLIDE 41 Proof
◮ ∃Q ∈ {1, . . . , N} : n
|Qαi − ⌊Qαi⌋| ≤ ε min
n
(Qαi − yi) (IP) Q − yi/αi ≥ ∀i = 1, . . . , n Q − 0 · y0 ≥ 1 Q ≤ N Q ∈ Z y1, . . . , yn ∈ Z
SLIDE 42 Proof
◮ ∃Q ∈ {1, . . . , N} : n
|Qαi − ⌊Qαi⌋| ≤ ε min
n
(Qαi − yi) (IP) Q − yi/αi ≥ ∀i = 1, . . . , n Q − 0 · y0 ≥ 1 Q ≤ N Q ∈ Z y1, . . . , yn ∈ Z
SLIDE 43 Proof
◮ ∃Q ∈ {1, . . . , N} : n
|Qαi − ⌊Qαi⌋| ≤ ε min
n
(Qαi − yi) + ε
N · (Q − N)
(IP) Q − yi/αi ≥ ∀i = 1, . . . , n Q − 0 · y0 ≥ 1 Q ∈ Z y1, . . . , yn ∈ Z
SLIDE 44 Proof (2)
◮ ∃Q ∈ {1, . . . , N} : n
|Qαi − ⌊Qαi⌋
=:yi
| ≤ ε
SLIDE 45 Proof (2)
◮ ∃Q ∈ {1, . . . , N} : n
|Qαi − ⌊Qαi⌋
=:yi
| ≤ ε (IP) ≤
n
(Qαi − yi) + ε N · (Q − N)
SLIDE 46 Proof (2)
◮ ∃Q ∈ {1, . . . , N} : n
|Qαi − ⌊Qαi⌋
=:yi
| ≤ ε (IP) ≤
n
(Qαi − yi)
+ ε N · (Q − N)
SLIDE 47 Proof (2)
◮ ∃Q ∈ {1, . . . , N} : n
|Qαi − ⌊Qαi⌋
=:yi
| ≤ ε (IP) ≤
n
(Qαi − yi)
+ ε N · (Q − N)
SLIDE 48 Proof (2)
◮ ∃Q ∈ {1, . . . , N} : n
|Qαi − ⌊Qαi⌋
=:yi
| ≤ ε (IP) ≤
n
(Qαi − yi)
+ ε N · (Q − N)
≤ ε
SLIDE 49 Proof (2)
◮ ∃Q ∈ {1, . . . , N} : n
|Qαi − ⌊Qαi⌋
=:yi
| ≤ ε (IP) ≤
n
(Qαi − yi)
+ ε N · (Q − N)
≤ ε
◮ Let (IP) ≤ ε n
n
(Qαi − yi) + ε N · (Q − N) ≤ ε
SLIDE 50 Proof (2)
◮ ∃Q ∈ {1, . . . , N} : n
|Qαi − ⌊Qαi⌋
=:yi
| ≤ ε (IP) ≤
n
(Qαi − yi)
+ ε N · (Q − N)
≤ ε
◮ Let (IP) ≤ ε n
n
(Qαi − yi)
+ ε N · (Q − N) ≤ ε
SLIDE 51 Proof (2)
◮ ∃Q ∈ {1, . . . , N} : n
|Qαi − ⌊Qαi⌋
=:yi
| ≤ ε (IP) ≤
n
(Qαi − yi)
+ ε N · (Q − N)
≤ ε
◮ Let (IP) ≤ ε n
n
(Qαi − yi)
+ ε N · (Q − N)
≤ ε
SLIDE 52 Proof (2)
◮ ∃Q ∈ {1, . . . , N} : n
|Qαi − ⌊Qαi⌋
=:yi
| ≤ ε (IP) ≤
n
(Qαi − yi)
+ ε N · (Q − N)
≤ ε
◮ Let (IP) ≤ ε n
n
(Qαi − yi)
+ ε N · (Q − N)
≤ ε
◮ ε N · (Q − N) ≤ ε ⇒ Q ≤ 2N
SLIDE 53 Proof (2)
◮ ∃Q ∈ {1, . . . , N} : n
|Qαi − ⌊Qαi⌋
=:yi
| ≤ ε (IP) ≤
n
(Qαi − yi)
+ ε N · (Q − N)
≤ ε
◮ Let (IP) ≤ ε n
n
(Qαi − yi) + ε N · (Q − N)
≤ ε
◮ ε N · (Q − N) ≤ ε ⇒ Q ≤ 2N
SLIDE 54 Proof (2)
◮ ∃Q ∈ {1, . . . , N} : n
|Qαi − ⌊Qαi⌋
=:yi
| ≤ ε (IP) ≤
n
(Qαi − yi)
+ ε N · (Q − N)
≤ ε
◮ Let (IP) ≤ ε n
n
(Qαi − yi) + ε N · (Q − N)
≤ ε
◮ ε N · (Q − N) ≤ ε ⇒ Q ≤ 2N
SLIDE 55 Proof (2)
◮ ∃Q ∈ {1, . . . , N} : n
|Qαi − ⌊Qαi⌋
=:yi
| ≤ ε (IP) ≤
n
(Qαi − yi)
+ ε N · (Q − N)
≤ ε
◮ Let (IP) ≤ ε n
n
(Qαi − yi)
+ ε N · (Q − N)
≤ ε
◮ ε N · (Q − N) ≤ ε ⇒ Q ≤ 2N ◮ ∃Q ≤ 2N : n i=1(Qαi − ⌊Qαi⌋) ≤ 2ε
SLIDE 56 Proof (2)
◮ ∃Q ∈ {1, . . . , N} : n
|Qαi − ⌊Qαi⌋
=:yi
| ≤ ε (IP) ≤
n
(Qαi − yi)
+ ε N · (Q − N)
≤ ε
◮ Let (IP) ≤ ε n
n
(Qαi − yi)
+ ε N · (Q − N)
≤ ε
◮ ε N · (Q − N) ≤ ε ⇒ Q ≤ 2N ◮ ∃Q ≤ 2N : n i=1(Qαi − ⌊Qαi⌋) ≤ 2ε ◮ to good for NO-case
SLIDE 57 Proof (2)
◮ ∃Q ∈ {1, . . . , N} : n
|Qαi − ⌊Qαi⌋
=:yi
| ≤ ε (IP) ≤
n
(Qαi − yi)
+ ε N · (Q − N)
≤ ε
◮ Let (IP) ≤ ε n
n
(Qαi − yi)
+ ε N · (Q − N)
≤ ε
◮ ε N · (Q − N) ≤ ε ⇒ Q ≤ 2N ◮ ∃Q ≤ 2N : n i=1(Qαi − ⌊Qαi⌋) ≤ 2ε ◮ to good for NO-case ⇒ YES case of DDA
SLIDE 58 Other applications
Theorem (Submitted to SODA 2010)
Testing EDF-schedulability of n periodic tasks (Ci, Di, Pi) (Ci = running time, Di = deadline, Pi = period), i.e. ∀t ≥ 0 :
n
t − Di Pi
is coNP-hard.
SLIDE 59 Other applications
Theorem (Submitted to SODA 2010)
Testing EDF-schedulability of n periodic tasks (Ci, Di, Pi) (Ci = running time, Di = deadline, Pi = period), i.e. ∀t ≥ 0 :
n
t − Di Pi
is coNP-hard.
Thanks for your attention