Decomposition Theorem for Polyhedra

Seminar on Automated Reasoning 2010
Lecture 8:
Decomposition Theorem for Polyhedra
Ax ≤ b =
+
Swen Jacobs
12. November 2010
Cones
A cone is a set C ⊆ Qn with x, y ∈ C , λ, µ ≤ 1 ∈ Q ⇒ λx + µy ∈ C
A polyhedral cone is an intersection of finitely many linear halfspaces,
defined by an m × n-matrix A:
C = {x | Ax ≤ 0}
A finitely generated cone is defined by a finite number of vectors
bi :
n
X
λi b i | λi ≥ 0} = {Bλ | λ ≥ 0}
cone{b 1 , . . . , b n } = {
i=1
Seminar on Automated Reasoning, L8
2
Weyl’s Theorem
Theorem: A non-empty finitely generated cone is polyhedral.
Seminar on Automated Reasoning, L8
3
Weyl’s Theorem
Theorem: A non-empty finitely generated cone is polyhedral.
Proof: Let C = {Bλ | λ ≥ 0} be a finitely generated cone, where B
is an n × r -matrix. Then
E
C
= {x ∈ Qn | λ ∈ Qr : x = Bλ, λ ≥ 0}
E
= {x ∈ Qn | λ ∈ Qr : x − Bλ ≤ 0, −x + Bλ ≤ 0, −λ ≤ 0}.
Seminar on Automated Reasoning, L8
3
Weyl’s Theorem
Theorem: A non-empty finitely generated cone is polyhedral.
Proof: Let C = {Bλ | λ ≥ 0} be a finitely generated cone, where B
is an n × r -matrix. Then
E
C
= {x ∈ Qn | λ ∈ Qr : x = Bλ, λ ≥ 0}
E
= {x ∈ Qn | λ ∈ Qr : x − Bλ ≤ 0, −x + Bλ ≤ 0, −λ ≤ 0}.
This is the projection onto the first n coordinates of
x
′
∈ Qn+r | x − Bλ ≤ 0, −x + Bλ ≤ 0, −λ ≤ 0 .
C =
λ
Seminar on Automated Reasoning, L8
3
Weyl’s Theorem
C′
x
∈ Qn+r | x − Bλ ≤ 0, −x + Bλ ≤ 0, −λ ≤ 0
=
λ
We can use Fourier-Motzkin elimination to eliminate variables
λ1 , . . . , λr from the system of inequations defining C ′ , obtaining a
new system of inequations defined by matrix A. Then we can write C
as
C = {x ∈ Qn | Ax ≤ 0}.
Thus, C is polyhedral.
Seminar on Automated Reasoning, L8
4
Dual Cones
The (polar) dual C ∗ of a cone C is defined as
C ∗ = {a ∈ Qn | aT x ≤ 0 for all x ∈ C }.
Seminar on Automated Reasoning, L8
5
Dual Cones
The (polar) dual C ∗ of a cone C is defined as
C ∗ = {a ∈ Qn | aT x ≤ 0 for all x ∈ C }.
Proposition 1: If C = {Bλ | λ ≥ 0} then C ∗ = {a ∈ Qn | aT B ≤ 0}.
Seminar on Automated Reasoning, L8
5
Dual Cones
The (polar) dual C ∗ of a cone C is defined as
C ∗ = {a ∈ Qn | aT x ≤ 0 for all x ∈ C }.
Proposition 1: If C = {Bλ | λ ≥ 0} then C ∗ = {a ∈ Qn | aT B ≤ 0}.
Proof: aT x ≤ 0 for all x ∈ C ⇔ aT Bλ ≤ 0, λ ≥ 0 ⇔ aT B ≤ 0
Seminar on Automated Reasoning, L8
5
Dual Cones
The (polar) dual C ∗ of a cone C is defined as
C ∗ = {a ∈ Qn | aT x ≤ 0 for all x ∈ C }.
Proposition 1: If C = {Bλ | λ ≥ 0} then C ∗ = {a ∈ Qn | aT B ≤ 0}.
Proof: aT x ≤ 0 for all x ∈ C ⇔ aT Bλ ≤ 0, λ ≥ 0 ⇔ aT B ≤ 0
n
T
Proposition 2: If C = {x ∈ Q | Ax ≤ 0}, then C = {λ A | λ ≥ 0}
and C ∗ is finitely generated.
Seminar on Automated Reasoning, L8
∗
5
Dual Cones
The (polar) dual C ∗ of a cone C is defined as
C ∗ = {a ∈ Qn | aT x ≤ 0 for all x ∈ C }.
Proposition 1: If C = {Bλ | λ ≥ 0} then C ∗ = {a ∈ Qn | aT B ≤ 0}.
Proof: aT x ≤ 0 for all x ∈ C ⇔ aT Bλ ≤ 0, λ ≥ 0 ⇔ aT B ≤ 0
n
T
Proposition 2: If C = {x ∈ Q | Ax ≤ 0}, then C = {λ A | λ ≥ 0}
and C ∗ is finitely generated.
∗
T
Proof: Let D = {λ A | λ ≥ 0} = {AT λ | λ ≥ 0}.
Seminar on Automated Reasoning, L8
5
Dual Cones
The (polar) dual C ∗ of a cone C is defined as
C ∗ = {a ∈ Qn | aT x ≤ 0 for all x ∈ C }.
Proposition 1: If C = {Bλ | λ ≥ 0} then C ∗ = {a ∈ Qn | aT B ≤ 0}.
Proof: aT x ≤ 0 for all x ∈ C ⇔ aT Bλ ≤ 0, λ ≥ 0 ⇔ aT B ≤ 0
n
T
Proposition 2: If C = {x ∈ Q | Ax ≤ 0}, then C = {λ A | λ ≥ 0}
and C ∗ is finitely generated.
∗
T
Proof: Let D = {λ A | λ ≥ 0} = {AT λ | λ ≥ 0}. By Prop. 1,
D ∗ = {x ∈ Qn | x T AT ≤ 0} = {x ∈ Qn | Ax ≤ 0} = C .
Seminar on Automated Reasoning, L8
5
Dual Cones
The (polar) dual C ∗ of a cone C is defined as
C ∗ = {a ∈ Qn | aT x ≤ 0 for all x ∈ C }.
Proposition 1: If C = {Bλ | λ ≥ 0} then C ∗ = {a ∈ Qn | aT B ≤ 0}.
Proof: aT x ≤ 0 for all x ∈ C ⇔ aT Bλ ≤ 0, λ ≥ 0 ⇔ aT B ≤ 0
n
T
Proposition 2: If C = {x ∈ Q | Ax ≤ 0}, then C = {λ A | λ ≥ 0}
and C ∗ is finitely generated.
∗
T
Proof: Let D = {λ A | λ ≥ 0} = {AT λ | λ ≥ 0}. By Prop. 1,
D ∗ = {x ∈ Qn | x T AT ≤ 0} = {x ∈ Qn | Ax ≤ 0} = C .
Since C ∗ = D = {AT λ | λ ≥ 0}, C ∗ is finitely generated.
Seminar on Automated Reasoning, L8
5
Minkowski’s Theorem
Theorem: A polyhedral cone is non-empty and finitely generated.
Seminar on Automated Reasoning, L8
6
Minkowski’s Theorem
Theorem: A polyhedral cone is non-empty and finitely generated.
Proof: Let C = {x | Ax ≤ 0}. Then 0 ∈ C , i.e. C 6= ∅.
Seminar on Automated Reasoning, L8
6
Minkowski’s Theorem
Theorem: A polyhedral cone is non-empty and finitely generated.
Proof: Let C = {x | Ax ≤ 0}. Then 0 ∈ C , i.e. C 6= ∅.
T
Let D = {λ A | λ ≥ 0}. By Weyl’s Theorem, D is polyhedral.
Seminar on Automated Reasoning, L8
6
Minkowski’s Theorem
Theorem: A polyhedral cone is non-empty and finitely generated.
Proof: Let C = {x | Ax ≤ 0}. Then 0 ∈ C , i.e. C 6= ∅.
T
Let D = {λ A | λ ≥ 0}. By Weyl’s Theorem, D is polyhedral.
Then, by Prop. 2, D ∗ = C and D ∗ is finitely generated.
Seminar on Automated Reasoning, L8
6
Decomposition Theorem for Polyhedra
A polyhedron is a finite intersection of affine half-spaces, defined by
P = {x ∈ Qn | Ax ≤ b}
A polytope is the convex hull of a finite set of vectors, i.e.
Q = hull{x 1 , . . . , x n }
Theorem: A set P ⊆ Qn is a polyhedron if and only if there is a
polytope Q and a polyhedral cone C such that P = Q + C .
Seminar on Automated Reasoning, L8
7
Decomposition Theorem for Polyhedra
Proof: ⇒: Let P = {x ∈ Qn | Ax ≤ b}. Consider the polyhedral
cone
x
n+1
∈
Q
| λ ≥ 0, Ax − λb ≤ 0 .
C1 =
λ
Seminar on Automated Reasoning, L8
8
Decomposition Theorem for Polyhedra
Proof: ⇒: Let P = {x ∈ Qn | Ax ≤ b}. Consider the polyhedral
cone
x
n+1
∈
Q
| λ ≥ 0, Ax − λb ≤ 0 .
C1 =
λ
By Minkowski’s
C1 is generated by finitely many vectors,
Theorem,
x
x
say λ1 , . . . , λm . Assume that all λi are either 0 or 1 (otherwise
1
m
scale vectors).
Seminar on Automated Reasoning, L8
8
Decomposition Theorem for Polyhedra
Proof: ⇒: Let P = {x ∈ Qn | Ax ≤ b}. Consider the polyhedral
cone
x
n+1
∈
Q
| λ ≥ 0, Ax − λb ≤ 0 .
C1 =
λ
By Minkowski’s
C1 is generated by finitely many vectors,
Theorem,
x
x
say λ1 , . . . , λm . Assume that all λi are either 0 or 1 (otherwise
1
m
scale vectors). Let Q be the convex hull of those x i with λi = 1,
λi =0. Then
∈ P iff
andC2 the cone generated by
x
the
x i with
x
x
x1
xm
.
λ1 , . . . , λm
1 ∈ C1 , and therefore iff 1 ∈ cone
Seminar on Automated Reasoning, L8
8
Decomposition Theorem for Polyhedra
Proof: ⇒: Let P = {x ∈ Qn | Ax ≤ b}. Consider the polyhedral
cone
x
n+1
∈
Q
| λ ≥ 0, Ax − λb ≤ 0 .
C1 =
λ
By Minkowski’s
C1 is generated by finitely many vectors,
Theorem,
x
x
say λ1 , . . . , λm . Assume that all λi are either 0 or 1 (otherwise
1
m
scale vectors). Let Q be the convex hull of those x i with λi = 1,
λi =0. Then
∈ P iff
andC2 the cone generated by
x
the
x i with
x
x
x1
xm
. I.e.,
λ1 , . . . , λm
1 ∈ C1 , and therefore iff 1 ∈ cone
Pm
Pm
x ∈ P iff x = i=1 µi x i and i=1 µi λi = 1. Since λi = 1 for vertices
of Q and λi = 0 for defining vectors of C , we have P = Q + C .
Seminar on Automated Reasoning, L8
8
Decomposition Theorem for Polyhedra
⇐: Let P = Q + C for some polytope P = hull{x 1 , . . . , x n } and
polyhedral cone C = cone{y 1 , . . . , y m }.
Seminar on Automated Reasoning, L8
9
Decomposition Theorem for Polyhedra
⇐: Let P = Q + C for some polytope P = hull{x 1 , . . . , x n } and
polyhedral cone C =cone{y 1
, . . . , ym }. x
x1
xn
y1
ym
Then x 0 ∈ P iff 10 ∈ cone
,
.
.
.
,
.
,
.
.
.
,
,
1
1
0
0
Seminar on Automated Reasoning, L8
9
Decomposition Theorem for Polyhedra
⇐: Let P = Q + C for some polytope P = hull{x 1 , . . . , x n } and
polyhedral cone C =cone{y 1
, . . . , ym }. x
x1
xn
y1
ym
Then x 0 ∈ P iff 10 ∈ cone
,
.
.
.
,
.
,
.
.
.
,
,
1
1
0
0
By Weyl’s Theorem, this cone is polyhedral, i.e. it is equal to
x
λ | Ax + λb ≤ 0
for some A and b.
Seminar on Automated Reasoning, L8
9
Decomposition Theorem for Polyhedra
⇐: Let P = Q + C for some polytope P = hull{x 1 , . . . , x n } and
polyhedral cone C =cone{y 1
, . . . , ym }. x
x1
xn
y1
ym
Then x 0 ∈ P iff 10 ∈ cone
,
.
.
.
,
.
,
.
.
.
,
,
1
1
0
0
By Weyl’s Theorem, this cone is polyhedral, i.e. it is equal to
x
λ | Ax + λb ≤ 0
for some A and b. Then, x 0 ∈ P iff Ax 0 ≤ −b, and therefore P is a
polyhedron.
Seminar on Automated Reasoning, L8
9