Some 0/1 polytopes need exponential size extended formulations Thomas Rothvoß Department of Mathematics, M.I.T.
0/1 polytopes P
=
conv(X) with X ⊆ {0, 1}n
(1, 1) b
P b
b
(0, 0)
(1, 0)
0/1 polytopes P
=
conv(X) with X ⊆ {0, 1}n → exponential!
(1, 1) b
P b
b
(0, 0)
(1, 0)
0/1 polytopes P
= =
conv(X) with X ⊆ {0, 1}n → exponential! {x ∈ Rn | Ax ≤ b}
(1, 1) b
P b
b
(0, 0)
(1, 0)
0/1 polytopes P
= =
conv(X) with X ⊆ {0, 1}n → exponential! {x ∈ Rn | Ax ≤ b} → exponential!
(1, 1) b
P b
b
(0, 0)
(1, 0)
0/1 polytopes P
= =
conv(X) with X ⊆ {0, 1}n → exponential! {x ∈ Rn | Ax ≤ b} → exponential!
b
b
(0, 0)
P b (1, 0)
(1, 1)
0/1 polytopes P
◮ ◮
= = =
conv(X) with X ⊆ {0, 1}n → exponential! {x ∈ Rn | Ax ≤ b} → exponential! p(Q) → can be polynomial
p : Rn+k → Rn linear projection Q = {(x, y) | Bx + Cy ≤ c} b
b
Q b b b
b b b
(0, 0)
b
P b (1, 0)
(1, 1)
Extension complexity Definition Extension complexity: Q polyhedron xc(P ) := min #facets of Q | p linear projection p(Q) = P b
b
Q b b
p b
b b b
b
P b
Extension complexity Definition Extension complexity: Q polyhedron xc(P ) := min #facets of Q | p linear projection p(Q) = P
If xc(P ) ≤ poly(n) ⇒ (Q, p) compact formulation of P . b
b
Q b b
p b
b b b
b
P b
Example: Parity Polytope P
=
conv{x ∈ {0, 1}n | # ones in x is odd}
(0, 1, 1)
(0, 0, 1) b
(1, 1, 1) b
(1, 0, 1)
(0, 1, 0) b
(1, 1, 0)
b
(0, 0, 0)
(1, 0, 0)
Example: Parity Polytope P
= =
conv{x ∈ {0, 1}n | # ones in x is odd}
{0 ≤ x ≤ 1 | x(A) − x([n]\A) ≤ |A| − 1 ∀A ⊆ [n] : |A| even}
(0, 1, 1)
(0, 0, 1) b
(1, 1, 1) b
(1, 0, 1)
(0, 1, 0) b
(1, 1, 0)
b
(0, 0, 0)
(1, 0, 0)
Example: Parity Polytope P
= =
conv{x ∈ {0, 1}n | # ones in x is odd}
{0 ≤ x ≤ 1 | x(A) − x([n]\A) ≤ |A| − 1 ∀A ⊆ [n] : |A| even}
(0, 1, 1)
1T z k
=
k
0 ≤ zk
≤
1
(k odd)
k(0,= 1 0, 1) b
(1, 1, 1) b
(1, 0, 1)
(0, 1, 0) b
(1, 1, 0)
b
(0, 0, 0)
k=3
(1, 0, 0)
Example: Parity Polytope P
conv{x ∈ {0, 1}n | # ones in x is odd}
= =
{0 ≤ x ≤ 1 | x(A) − x([n]\A) ≤ |A| − 1 ∀A ⊆ [n] : |A| even}
x
=
1T z k
=
0 ≤ zk
≤
X
(0, 1, 1)
zk
k odd
T
k · λk
1 · λk
1 λ
=
1
λ
≥
0
(k odd)
k(0,= 1 0, 1) b
(1, 1, 1) b
(1, 0, 1)
(0, 1, 0) b
(1, 1, 0)
b
(0, 0, 0)
k=3
(1, 0, 0)
What’s known? Compact formulations: ◮ Perfect Matching in planar graphs [Barahona ’93] ◮ Perfect Matching in bounded genus graphs [Gerards ’91] ◮ O(n log n)-size for Permutahedron [Goemans ’10] (→ tight) ◮ nO(1/ε) -size ε-apx for Knapsack Polytope [Bienstock ’08] ◮ ...
What’s known? Compact formulations: ◮ Perfect Matching in planar graphs [Barahona ’93] ◮ Perfect Matching in bounded genus graphs [Gerards ’91] ◮ O(n log n)-size for Permutahedron [Goemans ’10] (→ tight) ◮ nO(1/ε) -size ε-apx for Knapsack Polytope [Bienstock ’08] ◮ ...
Theorem (Yannakakis) No symmetric compact formulation for TSP Polytope and Perfect Matching Polytope.
What’s known? Compact formulations: ◮ Perfect Matching in planar graphs [Barahona ’93] ◮ Perfect Matching in bounded genus graphs [Gerards ’91] ◮ O(n log n)-size for Permutahedron [Goemans ’10] (→ tight) ◮ nO(1/ε) -size ε-apx for Knapsack Polytope [Bienstock ’08] ◮ ...
Theorem (Yannakakis) No symmetric compact formulation for TSP Polytope and Perfect Matching Polytope.
Theorem (Kaibel, Pashkovich & Theis ’10) Compact formulation for log n size matchings, but no symmetric one.
1st Carg` ese Workshop on Combinatorial Optim.
1st Carg` ese Workshop on Combinatorial Optim.
1st Carg` ese Workshop on Combinatorial Optim.
1st Carg` ese Workshop on Combinatorial Optim.
1st Carg` ese Workshop on Combinatorial Optim. Open problem I Does the matching polytope have a compact formulation?
1st Carg` ese Workshop on Combinatorial Optim.
ea !
Open problem I
N
o
id
Does the matching polytope have a compact formulation?
1st Carg` ese Workshop on Combinatorial Optim.
ea !
Open problem I
N
o
id
Does the matching polytope have a compact formulation?
1st Carg` ese Workshop on Combinatorial Optim.
ea !
Open problem I
N
o
id
Does the matching polytope have a compact formulation?
Open problem II (V. Kaibel) Is there any 0/1 polytope without a compact formulation?
1st Carg` ese Workshop on Combinatorial Optim.
ea !
Open problem I
N
o
id
Does the matching polytope have a compact formulation?
Open problem II (V. Kaibel)
Ye s!
Is there any 0/1 polytope without a compact formulation?
Theorem For every n there exists X ⊆ {0, 1}n s.t. xc(conv(X)) ≥ 2n/2·(1−o(1)) .
Proof strategy
X ⊆ {0, 1}n
Proof strategy
X ⊆ {0, 1}n
z
x | ∃y :
conv(X) }|
A
x+
B
y≤
b
{
Proof strategy injective map
X ⊆ {0, 1}n
z
x | ∃y :
conv(X) }|
A
x+
B
y≤
b
{
Proof strategy injective map
X ⊆ {0, 1}n #0/1 polytopes
z
≤
x | ∃y :
conv(X) }|
A
x+
B
y≤
# extended form.
b
{
Proof strategy injective map
X ⊆ {0, 1}n #0/1 polytopes = 22
n
z
≤
x | ∃y :
conv(X) }|
A
x+
B
y≤
# extended form.
b
{
Proof strategy
irrational entries injective map
X ⊆ {0, 1}n #0/1 polytopes = 22
n
z
≤
x | ∃y :
conv(X) }|
A
B
x+ √
2
y≤
# extended form. = ∞
b
{
Proof strategy
irrational entries
X ⊆ {0, 1}n
n
≤
n’ es Do
22
x | ∃y :
tw or k
#0/1 polytopes =
z
conv(X) }|
A
!
injective map
B
x+ √
2
y≤
# extended form. = ∞
b
{
Slack-matrix Write: P = conv({x1 , . . . , xv }) = {x ∈ Rn | Ax ≤ b} {z } | non-redundant # vertices
Slack-matrix
# facets
S Sij
Sij = bi − ATi xj
Slack-matrix Write: P = conv({x1 , . . . , xv }) = {x ∈ Rn | Ax ≤ b} {z } | non-redundant # vertices vertex j
# facets
facet i
S
Slack-matrix
Sij
Sij = bi − ATi xj
Slack-matrix Write: P = conv({x1 , . . . , xv }) = {x ∈ Rn | Ax ≤ b} {z } | non-redundant # vertices
r r
# facets
U ≥ 0
V ≥0
S
Slack-matrix
Sij
Sij = bi − ATi xj
Non-negative rank: ×r r×v : S = UV } , V ∈ R≥0 rk+ (S) = min{r | ∃U ∈ Rf≥0
Example for slack-matrix
(1, 1) x1 − x2 ≥ 0 (0, 0)
P
x2 ≥ 0
2x1 ≤ 2 (1, 0)
0 1 0 2 0 0 0 0 1
S
Yannakakis’ Theorem Theorem (Yannakakis ’91) Let S be slackmatrix for P : ◮
xc(P ) = rk+ (S).
◮
For any non-neg. factorization S = U V : P = {x ∈ Rn | ∃y ≥ 0 : Ax + U y = b}
Yannakakis’ Theorem Theorem (Yannakakis ’91) Let S be slackmatrix for P : ◮
xc(P ) = rk+ (S).
◮
For any non-neg. factorization S = U V : P = {x ∈ Rn | ∃y ≥ 0 : Ax + U y = b}
◮
For vertex xj : Ai xj + Ui V j = bi .
Yannakakis’ Theorem Theorem (Yannakakis ’91) Let S be slackmatrix for P : ◮
xc(P ) = rk+ (S).
◮
For any non-neg. factorization S = U V : P = {x ∈ Rn | ∃y ≥ 0 : Ax + U y = b}
◮ ◮
For vertex xj : Ai xj + Ui V j = bi . Ai x > bi =⇒ Ai x + Ui y > bi . |{z} ≥0
Yannakakis’ Theorem Theorem (Yannakakis ’91) Let S be slackmatrix for P : ◮
xc(P ) = rk+ (S).
◮
For any non-neg. factorization S = U V : P = {x ∈ Rn | ∃y ≥ 0 : Ax + U y = b}
◮ ◮
For vertex xj : Ai xj + Ui V j = bi . Ai x > bi =⇒ Ai x + Ui y > bi . |{z} ≥0
◮
“≥” follows from an application of duality.
Controlling the coefficients Fix X ⊆ {0, 1}n , P := conv(X) = {x ∈ Rn | Ax ≤ b} and Slack-matrix S = U V Valid assumption: ◮ A, b integral with kAk∞ , kbk∞ ≤ 2n log(2n) ◮
Controlling the coefficients Fix X ⊆ {0, 1}n , P := conv(X) = {x ∈ Rn | Ax ≤ b} and Slack-matrix S = U V Valid assumption: ◮ A, b integral with kAk∞ , kbk∞ ≤ 2n log(2n) ◮ xc(P ) ≤ 2n . ◮
Controlling the coefficients Fix X ⊆ {0, 1}n , P := conv(X) = {x ∈ Rn | Ax ≤ b} and Slack-matrix S = U V Valid assumption: ◮ A, b integral with kAk∞ , kbk∞ ≤ 2n log(2n) ◮ xc(P ) ≤ 2n . 2 ◮ |Sij | = |bi − Ai xj | ≤ (n + 1) · 2n log(2n) ≤ 2n ◮
Controlling the coefficients Fix X ⊆ {0, 1}n , P := conv(X) = {x ∈ Rn | Ax ≤ b} and Slack-matrix S = U V Valid assumption: ◮ A, b integral with kAk∞ , kbk∞ ≤ 2n log(2n) ◮ xc(P ) ≤ 2n . 2 ◮ |Sij | = |bi − Ai xj | ≤ (n + 1) · 2n log(2n) ≤ 2n 2 ◮ kU k∞ , kV k∞ ≤ 2n ◮
V U
S
Slack-matrix
Controlling the coefficients Fix X ⊆ {0, 1}n , P := conv(X) = {x ∈ Rn | Ax ≤ b} and Slack-matrix S = U V Valid assumption: ◮ A, b integral with kAk∞ , kbk∞ ≤ 2n log(2n) ◮ xc(P ) ≤ 2n . 2 ◮ |Sij | = |bi − Ai xj | ≤ (n + 1) · 2n log(2n) ≤ 2n 2 ◮ kU k∞ , kV k∞ ≤ 2n ◮
◮
Scale s.t. kU ℓ k∞ = kVℓ k∞ .
V U col ℓ
row ℓ
S
Slack-matrix
Controlling the coefficients Fix X ⊆ {0, 1}n , P := conv(X) = {x ∈ Rn | Ax ≤ b} and Slack-matrix S = U V Valid assumption: ◮ A, b integral with kAk∞ , kbk∞ ≤ 2n log(2n) ◮ xc(P ) ≤ 2n . 2 ◮ |Sij | = |bi − Ai xj | ≤ (n + 1) · 2n log(2n) ≤ 2n 2 ◮ kU k∞ , kV k∞ ≤ 2n ◮
◮ ◮
Scale s.t. kU ℓ k∞ = kVℓ k∞ . But kSk∞ ≥ kU ℓ k∞ · kVℓ k∞
largest entry in row/col
U col ℓ
V
row ℓ
S
Slack-matrix
≤ 2n
2
Rounding entries b b
Q b
b b
b
b
X=
(
x∈
{0, 1}n
| ∃0 ≤ y ≤ ∞ :
A
·x+
b
P
U b ·y =
b
)
b
Rounding entries b b
Q b
b b
b
b
X=
(
x∈
{0, 1}n
| ∃0 ≤ y ≤
2 2n
:
A
·x+
b
P
U b ·y =
b
)
b
Rounding entries b b
Pick rows I max. | det([AI , UI ])|
◮
Q b
b b
b
b
X=
(
x∈
{0, 1}n
| ∃0 ≤ y ≤
2 2n
:
A
·x+
b
P
U b ·y =
b
)
b
Rounding entries b b
Pick rows I max. | det([AI , UI ])|
◮
Q b
b b
b
b
X=
(
x∈
{0, 1}n
| ∃0 ≤ y ≤
2 2n
:
A
·x+
b
P
U b ·y =
√
2
b
)
b
Rounding entries b b
Q
Pick rows I max. | det([AI , UI ])|
◮
Round Uij → Uij′ ∈ Z · ( 12 )n
◮
b
3
b
b
b
b
X=
(
x∈
{0, 1}n
| ∃0 ≤ y ≤
2 2n
:
A
·x+
b b
P
U b ·y =
1.41
b
b
)
b
b
Rounding entries b b
Pick rows I max. | det([AI , UI ])|
◮
Round Uij →
◮
Uij′
∈Z
Q b
3 · ( 12 )n
b b
b b b b b
X=
(
x∈
{0, 1}n
| ∃0 ≤ y ≤
2 2n
:
A
·x+
b
P
U b ·y =
b
±
b
1
2n2
)
Rounding entries b b
Pick rows I max. | det([AI , UI ])|
◮
Round Uij →
◮
Uij′
∈Z
b
3 · ( 12 )n
b b
Consider vertex x ∈ X: rounding error 2 ≤ kU − U ′ k∞ · kyk1 ≤ . . . ≤ ( 12 )n
◮
b b
X=
x∈
{0, 1}n
| ∃0 ≤ y ≤
2 2n
:
A
·x+
b b
b
(
Q
b
x
P
U b ·y =
b
±
b
1
2n2
)
Rounding entries b
Consider x ∈ / X.
◮
b
Q b
b b
xb b
X=
(
x∈
{0, 1}n
| ∃0 ≤ y ≤
2 2n
:
A
·x+
b
b b b b
P
U b ·y =
b
±
b
1
2n2
)
Rounding entries b
Consider x ∈ / X.
◮
b
Q
∃ violated constraint: Aℓ x ≥ bℓ + 1
◮
b b b
xb b
b
b b b b
P b
b
Aℓ x ≤ bℓ
ℓ X=
(
x∈
{0, 1}n
| ∃0 ≤ y ≤
2 2n
:
A
·x+
U b ·y =
±
1
2n2
)
Rounding entries b
Consider x ∈ / X.
◮
b
Q
∃ violated constraint: Aℓ x ≥ bℓ + 1
◮
(Aℓ , Uℓ ) =
◮
P
i∈I
det
det
·
b b
(Ai , Ui )
b
xb b
b
b b b b
P b
b
Aℓ x ≤ bℓ
ℓ X=
(
x∈
{0, 1}n
| ∃0 ≤ y ≤
2 2n
:
A
·x+
U b ·y =
±
1
2n2
)
Rounding entries b
Consider x ∈ / X.
◮
b
∃ violated constraint: Aℓ x ≥ bℓ + 1 P (Aℓ , Uℓ ) = i∈I [−1, 1]· (Ai , Ui )
◮ ◮
Q b
b b
xb b
b
b b b b
P b
b
Aℓ x ≤ bℓ
ℓ X=
(
x∈
{0, 1}n
| ∃0 ≤ y ≤
2 2n
:
A
·x+
U b ·y =
±
1
2n2
)
Rounding entries b
Consider x ∈ / X.
◮
b
∃ violated constraint: Aℓ x ≥ bℓ + 1 P ◮ (Aℓ , Uℓ ) = i∈I [−1, 1]· (Ai , Ui ) P ◮ violation in ℓ ≤ i∈I violation in i : X |Ai x + Ui y − bi | 1 ≤ |Aℓ x + Uℓ y − b| ≤
Q
◮
b b b
xb
i∈I
b
b
b b b b
P b
b
Aℓ x ≤ bℓ
ℓ X=
(
x∈
{0, 1}n
| ∃0 ≤ y ≤
2 2n
:
A
·x+
U b ·y =
±
1
2n2
)
Rounding entries b
Consider x ∈ / X.
◮
b
∃ violated constraint: Aℓ x ≥ bℓ + 1 P ◮ (Aℓ , Uℓ ) = i∈I [−1, 1]· (Ai , Ui ) P ◮ violation in ℓ ≤ i∈I violation in i : X |Ai x + Ui y − bi | 1 ≤ |Aℓ x + Uℓ y − b| ≤
Q
◮
b b b
xb
i∈I
One i ∈ I violated by 1 1 n2 ′ |I| − kU − U k∞ · kyk1 ≫ ( 2 ) ⇒ x not feasible!
◮
b
b
b b b b
P b
b
Aℓ x ≤ bℓ
ℓ X=
(
x∈
{0, 1}n
| ∃0 ≤ y ≤
2 2n
:
A
·x+
U b ·y =
±
1
2n2
)
Conclusion
◮
Let R :=
max {xc(conv(X))}.
X⊆{0,1}n
Conclusion
b b
RR
Q b
b
◮
Let R :=
max {xc(conv(X))}.
X⊆{0,1}n
X ⊆ {0, 1}n
b
b b
A U ′b
b
b
P bb
b
b
Rn
Conclusion
b b
RR
Q b
b
◮
Let R :=
max {xc(conv(X))}.
X⊆{0,1}n
injective X ⊆ {0, 1}n
b
b b
A U ′b
b
b
P bb
b
b
Rn
Conclusion
b b
RR
Q b
b
◮
Let R :=
max {xc(conv(X))}.
X⊆{0,1}n
injective X ⊆ {0, 1}n
22
n
≤
b
b b
A U ′b
b
b
P bb
b
b
Rn
Conclusion
b b
RR
Q b
b
◮
Let R :=
max {xc(conv(X))}.
b
X⊆{0,1}n
b
n
injective X ⊆ {0, 1}n
22
n
≤
b
b
b
P bb
R
A U ′b
n+R
b
b
Rn
Conclusion
b b
RR
Q b
b
◮
Let R :=
max {xc(conv(X))}.
b
X⊆{0,1}n
b
n
injective X ⊆ {0, 1}n
b
b
b
P bb
R
A U ′b
n+R
poly(n) bits
22
n
≤
b
b
Rn
Conclusion
b b
RR
Q b
b
◮
Let R :=
max {xc(conv(X))}.
b
X⊆{0,1}n
b
n
injective X ⊆ {0, 1}n
b
b
b
P bb
R
A U ′b
n+R
poly(n) bits
22
n
≤
2poly(n)·R
2
b
b
Rn
Conclusion
b b
RR
Q b
b
◮
Let R :=
max {xc(conv(X))}.
b
X⊆{0,1}n
b
n
injective X ⊆ {0, 1}n
b
b
b
P bb
R
A U ′b
n+R
poly(n) bits
22
n
≤ ⇒ R ≥ 2n/2·(1−o(1))
2poly(n)·R
2
b
b
Rn
Conclusion
b b
RR
Q b
b
◮
Let R :=
max {xc(conv(X))}.
b
X⊆{0,1}n
b
n
injective X ⊆ {0, 1}n
b
b
b
P bb
R
A U ′b
n+R
poly(n) bits
22
n
≤
2poly(n)·R
2
⇒ ∃X ⊆ {0, : xc(conv(X)) ⇒1} Rn ≥ 2n/2·(1−o(1)) ≥ 2n/2·(1−o(1))
b
b
Rn
Consequences for matroids ◮
Fact: There are 22 [Duke ’03].
n /poly(n)
many matroids on n elements
Consequences for matroids ◮
Fact: There are 22 [Duke ’03].
n /poly(n)
many matroids on n elements
Theorem For every n there exists a matroid M = ([n], I) such that xc(conv(χ(I)) ≥ 2n/2·(1−o(1)) .
Consequences for TSP Theorem (Folkore) NP 6⊆ P/poly ⇒ no compact formulation for PT SP = conv{χ(C) | C is Hamiltonian in complete graph} with polynomially encodable coefficients.
Consequences for TSP Theorem NP 6⊆ P/poly ⇒ no compact formulation for PT SP = conv{χ(C) | C is Hamiltonian in complete graph} with polynomially encodable coefficients. Rxc(P )
P
Rn
Consequences for TSP Theorem NP 6⊆ P/poly ⇒ no compact formulation for PT SP = conv{χ(C) | C is Hamiltonian in complete graph} with polynomially encodable coefficients. b
Given instance G = (V, E) for Hamiltonian Cycle. Optimize ( 1 e∈E ce := 0 otherwise
b
Rxc(P )
Q b
b b
b b
over rounded polytope. b
P
b
Rn b
projx (Q)
Consequences for TSP Theorem NP 6⊆ P/poly ⇒ no compact formulation for PT SP = conv{χ(C) | C is Hamiltonian in complete graph} with polynomially encodable coefficients. b
Given instance G = (V, E) for Hamiltonian Cycle. Optimize ( 1 e∈E ce := 0 otherwise
b b
b b b
◮
∃HC ⇒ OP T ≥ n NO HC ⇒ OP T ≤ n − 1 + εn ≤ n −
Q
b
over rounded polytope. ◮
b
Rxc(P )
1 2
P
b
Rn b
P + ε projx (Q)
Open problems Open Problem Can one prove a super-polynomial lower bound for any explicit 0/1 polytope???
Open problems Open Problem Can one prove a super-polynomial lower bound for any explicit 0/1 polytope???
Thanks for your attention