Post on 04-Jan-2016
Discrete OptimizationLecture 4 – Part 1
M. Pawan Kumar
pawan.kumar@ecp.fr
Slides available online http://mpawankumar.info
€1000
€400
€700
Steal at most 2 items
Greedy Algorithm
€1000
€400
€700
Steal at most 1 item
Greedy Algorithm
€1000€1700
€400
Steal at most 0 items
Greedy Algorithm
€1700
Success
€1000
€400
€700
2 kg
1 kg
1.5 kg
Steal at most 2.5 kg
Greedy Algorithm (Most Expensive)
€1000
2 kg
€400
€700
1 kg
1.5 kg
Steal at most 0.5 kg
Greedy Algorithm (Most Expensive)
€1000
2 kg
Failure
€1000
€400
€700
2 kg
1 kg
1.5 kg
Steal at most 2.5 kg
Greedy Algorithm (Best Ratio)
€1000
2 kg
€400
€700
1 kg
1.5 kg
Steal at most 0.5 kg
Greedy Algorithm (Best Ratio)
€1000
2 kg
Failure
Why?
• Matroids
• Examples of Matroids
• Dual Matroid
Outline
Subset System
Set S
Non-empty collection of subsets I
Property: If X I and Y X, then Y ⊆ I
(S, I) is a subset system
Hereditary Property
Set S
Non-empty collection of subsets I
Property: If X I and Y X, then Y ⊆ I
(S, I) is a subset system
Example
Set S = {1,2,…,m}
I = Set of all X S such that |X| ≤ k ⊆
Is (S, I) a subset system?
Yes
Example
Set S = {1,2,…,m}, w ≥ 0
I = Set of all X S such that Σ⊆ sX w(s) ≤ W
Is (S, I) a subset system
Yes Not true if w can be negative
Matroid
Subset system (S, I)
Property: If X, Y I and |X| < |Y| then
there exists a s Y\X
M = (S, I) is a matroid
such that X {s} ∪ I
Augmentation/Exchange Property
Subset system (S, I)
Property: If X, Y I and |X| < |Y| then
there exists a s Y\X
M = (S, I) is a matroid
such that X {s} ∪ I
Example
Set S = {1,2,…,m}
I = Set of all X S such that |X| ≤ k ⊆
Is M = (S, I) a matroid? Yes
Uniform matroid
Example
Set S = {1,2,…,m}, w ≥ 0
I = Set of all X S such that Σ⊆ sX w(s) ≤ W
Is M = (S, I) a matroid? No
Coincidence? No
Matroids
(S, I) is a matroid
⟹(S, I) admits an optimal greedy algorithm
Matroids
(S, I) is a matroid
⟹(S, I) admits an optimal greedy algorithm
Why?
We will find out by the end of the lecture
• Matroids– Connection to Linear Algebra– Connection to Graph Theory
• Examples of Matroids
• Dual Matroid
Outline
1
2
3
4
2
4
6
8
1
1
1
1
2
2
2
2
3
3
3
3
1
2
1
2
2
4
2
4
1
2
1
2
2
4
2
4
Matrix A Subset of columns {a1,a2,…,ak}
Linearly independent (LI)?
There exists no α ≠ 0 such that Σi αi ai = 0
✗
1
2
3
4
2
4
6
8
1
1
1
1
2
2
2
2
3
3
3
3
1
2
1
2
2
4
2
4
1
2
1
2
2
4
2
4
Matrix A Subset of columns {a1,a2,…,ak}
Linearly independent (LI)?
There exists no α ≠ 0 such that Σi αi ai = 0
✓
1
2
3
4
2
4
6
8
1
1
1
1
2
2
2
2
3
3
3
3
1
2
1
2
2
4
2
4
1
2
1
2
2
4
2
4
Matrix A Subset of columns {a1,a2,…,ak}
Linearly independent (LI)?
There exists no α ≠ 0 such that Σi αi ai = 0
✓
1
2
3
4
2
4
6
8
1
1
1
1
2
2
2
2
3
3
3
3
1
2
1
2
2
4
2
4
1
2
1
2
2
4
2
4
Matrix A Subset of columns {a1,a2,…,ak}
Linearly independent (LI)?
There exists no α ≠ 0 such that Σi αi ai = 0
✓
1
2
3
4
2
4
6
8
1
1
1
1
2
2
2
2
3
3
3
3
1
2
1
2
2
4
2
4
1
2
1
2
2
4
2
4
Matrix A Subset of columns {a1,a2,…,ak}
Subset of LI columns are LI
Define a subset system
Subset System
Matrix A of size n x m, S = {1,2,…,m}
X S, A(X) = set of columns of A indexed by X⊆
X I if and only if A(X) are linearly independent
Is M = (S, I) a matroid?
Answer
Yes
Matroids connected to Linear Algebra
Inspires some naming conventions
Linear Matroid
Independent Set
Matroid M = (S, I)
X S is independent if X ⊆ I
X S is dependent if X ⊆ ∉ I
Independent Sets of Linear Matroid
X S is independent if⊆
column vectors A(X) are linearly independent
Matrix A of size n x m, S = {1,2,…,m}
X S, A(X) = set of columns of A indexed by X⊆
Independent Sets of Uniform Matroid
X S is independent if⊆
|X| ≤ k
S = {1,2,…,m}
X S⊆
Base of a Subset
Matroid M = (S, I)
X is a base of U S if it satisfies three properties⊆
(i) X U⊆ (ii) X ∈ I
(iii) There exists no U’∈I, such that X U’ U⊂ ⊆
subset of Uindependent
Inclusionwise maximal
Base of a Subset (Linear Matroid)
1
2
3
4
2
4
6
8
1
1
1
1
2
2
2
2
3
3
3
3
1
2
1
2
2
4
2
4
1
2
1
2
2
4
2
4
U
Is X a base of U? ✗
Base of a Subset (Linear Matroid)
1
2
3
4
2
4
6
8
1
1
1
1
2
2
2
2
3
3
3
3
1
2
1
2
2
4
2
4
1
2
1
2
2
4
2
4
U
✗Is X a base of U?
Base of a Subset (Linear Matroid)
1
2
3
4
2
4
6
8
1
1
1
1
2
2
2
2
3
3
3
3
1
2
1
2
2
4
2
4
1
2
1
2
2
4
2
4
U
✓Is X a base of U?
Base of a Subset (Linear Matroid)
1
2
3
4
2
4
6
8
1
1
1
1
2
2
2
2
3
3
3
3
1
2
1
2
2
4
2
4
1
2
1
2
2
4
2
4
U
✗Is X a base of U?
Base of a Subset (Linear Matroid)
1
2
3
4
2
4
6
8
1
1
1
1
2
2
2
2
3
3
3
3
1
2
1
2
2
4
2
4
1
2
1
2
2
4
2
4
U
✓Is X a base of U?
Base of a Subset (Linear Matroid)
1
2
3
4
2
4
6
8
1
1
1
1
2
2
2
2
3
3
3
3
1
2
1
2
2
4
2
4
1
2
1
2
2
4
2
4
U
Is X a base of U? ✓
Base of a Subset (Linear Matroid)
1
2
3
4
2
4
6
8
1
1
1
1
2
2
2
2
3
3
3
3
1
2
1
2
2
4
2
4
1
2
1
2
2
4
2
4
U
Base of U?
Base of a Subset (Linear Matroid)
X S is base of U if⊆
A(X) is a base of A(U)
Matrix A of size n x m, S = {1,2,…,m}
X S, A(X) = set of columns of A indexed by X⊆
X I if and only if A(X) are linearly independent
Base of a Subset (Uniform Matroid)
X S is base of U if⊆
X U and |X| = min{|U|,k}⊆
S = {1,2,…,m}
X S⊆
I = Set of all X S such that |X| ≤ k ⊆
An Interesting Property
M = (S, I) is a subset system
M is a matroid
For all U S, all bases of U have same size⊆⟹
Proof?
An Interesting Property
M = (S, I) is a subset system
M is a matroid
For all U S, all bases of U have same size⊆⟹
Proof?
An Interesting Property
M = (S, I) is a subset system
M is a matroid
For all U S, all bases of U have same size⊆
An alternate definition for matroids
⟺
Rank of a Subset
Matroid M = (S, I)
U S⊆
rM(U) = Size of a base of U
Rank of a Subset (Linear Matroid)
1
2
3
4
2
4
6
8
1
1
1
1
2
2
2
2
3
3
3
3
1
2
1
2
2
4
2
4
1
2
1
2
2
4
2
4
U
rM(U)? 2
Rank of a Subset (Linear Matroid)
1
2
3
4
2
4
6
8
1
1
1
1
2
2
2
2
3
3
3
3
1
2
1
2
2
4
2
4
1
2
1
2
2
4
2
4
U
rM(U)? 1
Rank of a Subset (Linear Matroid)
rM(U) is equal to
rank of the matrix with columns A(U)
Matrix A of size n x m, S = {1,2,…,m}
X S, A(X) = set of columns of A indexed by X⊆
X I if and only if A(X) are linearly independent
Rank of a Subset (Uniform Matroid)
rM(U) is equal to
min{|U|,k}
S = {1,2,…,m}
X S⊆
I = Set of all X S such that |X| ≤ k ⊆
Base of a Matroid
Matroid M = (S, I)
X is a base S
Base of a Linear Matroid
1
2
3
4
2
4
6
8
1
1
1
1
2
2
2
2
3
3
3
3
1
2
1
2
2
4
2
4
1
2
1
2
2
4
2
4
Is X a base? ✗
Base of a Linear Matroid
1
2
3
4
2
4
6
8
1
1
1
1
2
2
2
2
3
3
3
3
1
2
1
2
2
4
2
4
1
2
1
2
2
4
2
4
Is X a base? ✓
Base of a Linear Matroid
X S is base of the matroid if⊆
A(X) is a base of A
Matrix A of size n x m, S = {1,2,…,m}
X S, A(X) = set of columns of A indexed by X⊆
X I if and only if A(X) are linearly independent
Base of a Uniform Matroid
X S is a base of the matroid if⊆
|X| = min{|S|,k} Assume k ≤ |S|
S = {1,2,…,m}
X S⊆
I = Set of all X S such that |X| ≤ k ⊆
Base of a Uniform Matroid
X S is a base of the matroid if⊆
|X| = k
S = {1,2,…,m}
X S⊆
I = Set of all X S such that |X| ≤ k ⊆
Assume k ≤ |S|
Rank of a Matroid
Matroid M = (S, I)
rM = Rank of S
Rank of a Linear Matroid
1
2
3
4
2
4
6
8
1
1
1
1
2
2
2
2
3
3
3
3
1
2
1
2
2
4
2
4
1
2
1
2
2
4
2
4
rM? 3
Rank of a Linear Matroid
rM is equal to
rank of the matrix A
Matrix A of size n x m, S = {1,2,…,m}
X S, A(X) = set of columns of A indexed by X⊆
X I if and only if A(X) are linearly independent
Rank of a Uniform Matroid
rM is equal to
k
S = {1,2,…,m}
X S⊆
I = Set of all X S such that |X| ≤ k ⊆
Spanning Subset
Matroid M = (S, I)
U S⊆
U is spanning if it contains a base of the matroid
True or False
A base is an inclusionwise minimal spanning subset
TRUE
Spanning Subsets of Linear Matroid
1
2
3
4
2
4
6
8
1
1
1
1
2
2
2
2
3
3
3
3
1
2
1
2
2
4
2
4
1
2
1
2
2
4
2
4
Is X a spanning subset? ✗
Spanning Subsets of Linear Matroid
1
2
3
4
2
4
6
8
1
1
1
1
2
2
2
2
3
3
3
3
1
2
1
2
2
4
2
4
1
2
1
2
2
4
2
4
Is X a spanning subset? ✓
Spanning Subsets of Linear Matroid
1
2
3
4
2
4
6
8
1
1
1
1
2
2
2
2
3
3
3
3
1
2
1
2
2
4
2
4
1
2
1
2
2
4
2
4
Is X a spanning subset? ✓
Spanning Subsets of Linear Matroid
U S is spanning subset of the matroid if⊆
A(U) spans A
Matrix A of size n x m, S = {1,2,…,m}
X S, A(X) = set of columns of A indexed by X⊆
X I if and only if A(X) are linearly independent
Spanning Subsets of Uniform Matroid
U S is a spanning subset of the matroid if⊆
|X| ≥ k
S = {1,2,…,m}
X S⊆
I = Set of all X S such that |X| ≤ k ⊆
Recap
What is a subset system?
Bases of a subset of a matroid?
Rank rM(U) of a subset U?
What is a matroid?
Spanning subset?
• Matroids– Connection to Linear Algebra– Connection to Graph Theory
• Examples of Matroids
• Dual Matroid
Outline
Undirected Graph
v1
v0
v2
v6
v4
v5
v3
G = (V, E)
V = {v1,…,vn}
E = {e1,…,em}
Parallel edges Loop
Walk
G = (V, E)
Sequence P = (v0,e1,v1,…,ek,vk), ei = (vi-1,vi)
v1
v0
v2
v6
v4
v5
v3
v0, (v0,v4), v4, (v4,v2), v2, (v2,v5), v5, (v5,v4), v4
V = {v1,…,vn}
E = {e1,…,em}
Path
G = (V, E)
Sequence P = (v0,e1,v1,…,ek,vk), ei = (vi-1,vi)
v1
v0
v2
v6
v4
v5
v3
Vertices v0,v1,…,vk are distinct
V = {v1,…,vn}
E = {e1,…,em}
Connected Graph
v1
v0
v2
v6
v4
v5
v3
G = (V, E)
V = {v1,…,vn}
E = {e1,…,em}
There exists a walk from one vertex to another
Connected?
k-Vertex-Connected Graph
v1
v0
v2
v6
v4
v5
v3
G = (V, E)
V = {v1,…,vn}
E = {e1,…,em}
Remove any i < k vertices. Graph is connected.
2-Vertex-Connected? 3-Vertex-Connected?
Circuit
G = (V, E)
V = {v1,…,vn}
E = {e1,…,em}
v1
v0
v2
v6
v4
v5
v3
Circuit = (v0,e1,v1,…,ek,vk), ei = (vi-1,vi)
v0 = vk Vertices v0,v1,…,vk-1 are distinct
1-circuit? 2-circuit?
Forest
v1
v0
v2
v6
v4
v5
v3
G = (V, E)
V = {v1,…,vn}
E = {e1,…,em}
Subset of edges that contain no circuit
Forest
v1
v0
v2
v6
v4
v5
v3
G = (V, E)
V = {v1,…,vn}
E = {e1,…,em}
Subset of edges that contain no circuit
Forest?
Forest
v1
v0
v2
v6
v4
v5
v3
G = (V, E)
V = {v1,…,vn}
E = {e1,…,em}
Subset of edges that contain no circuit
Forest?
Forest
v1
v0
v2
v6
v4
v5
v3
G = (V, E)
V = {v1,…,vn}
E = {e1,…,em}
Subset of edges that contain no circuit
Forest?
Forest
v1
v0
v2
v6
v4
v5
v3
G = (V, E)
V = {v1,…,vn}
E = {e1,…,em}
Define a subset system on forests
Subset of a forest is a forest
Subset System
v1
v0
v2
v6
v4
v5
v3
G = (V, E)
V = {v1,…,vn}
E = {e1,…,em}
S = E X S⊆
X∈I if X is a forest
Is M = (S, I) a matroid?
Answer
Yes
Matroids connected to Graph Theory
Inspires some naming conventions
Cycle Matroid
Graphic matroids (isomorphic to cycle matroid)
Circuit
Matroid M = (S, I)
X is a circuit if it satisfies three properties
(i) X S⊆ (ii) X ∉ I
(iii) There exists no Y ∉ I, such that Y X⊂
subset of Sdependent
Inclusionwise minimal
Circuit of a Graphic Matroid
v1
v0
v2
v6
v4
v5
v3
Is this a circuit?
Circuit of a Graphic Matroid
v1
v0
v2
v6
v4
v5
v3
Is this a circuit?
Circuit of a Graphic Matroid
v1
v0
v2
v6
v4
v5
v3
Is this a circuit?
Circuit of a Graphic Matroid
G = (V, E), S = E
X S⊆
X ∈ I if X is a forest
X S is a circuit if⊆
X is a circuit of G
Circuit of a Uniform Matroid
X S is a circuit if⊆
|X| = k+1
S = {1,2,…,m}
X S⊆
I = Set of all X S such that |X| ≤ k ⊆
Circuit of a Linear Matroid
X S is a circuit if⊆
A(X) = {a base of A } {any other column of A}∪
Matrix A of size n x m, S = {1,2,…,m}
X S, A(X) = set of columns of A indexed by X⊆
X I if and only if A(X) are linearly independent
Circuit of a Linear Matroid
X S is a circuit if⊆
A(X) = two linearly dependent columns
Matrix A of size n x m, S = {1,2,…,m}
X S, A(X) = set of columns of A indexed by X⊆
X I if and only if A(X) are linearly independent
Loop
Matroid M = (S, I)
Element s S∈
{s} is a circuit
Loop of a Graphic Matroid
v1
v0
v2
v6
v4
v5
v3
Any loops in the matroid?
Loop of a Graphic Matroid
G = (V, E), S = E
X S⊆
X ∈ I if X is a forest
s S is a loop if∈
{s} is a loop of G
Loop of a Uniform Matroid
S = {1,2,…,m}
X S⊆
I = Set of all X S such that |X| ≤ k ⊆
s S is a loop if∈
k = 0
Loop of a Linear Matroid
Matrix A of size n x m, S = {1,2,…,m}
X S, A(X) = set of columns of A indexed by X⊆
X I if and only if A(X) are linearly independent
s S is a loop if∈
A(s) = 0
Parallel Elements
Matroid M = (S, I)
Elements s,t S∈
{s,t} is a circuit
v1
v0
v2
v6
v4
v5
v3
Any parallel elements?
Parallel Elements of a Graphic Matroid
Parallel Elements of a Graphic Matroid
G = (V, E), S = E
X S⊆
X ∈ I if X is a forest
s,t S are parallel if∈
{s,t} are parallel edges of G
Parallel Elements of a Uniform Matroid
S = {1,2,…,m}
X S⊆
I = Set of all X S such that |X| ≤ k ⊆
s,t S are parallel elements if∈
k = 1
Parallel Elements of a Linear Matroid
Matrix A of size n x m, S = {1,2,…,m}
X S, A(X) = set of columns of A indexed by X⊆
X I if and only if A(X) are linearly independent
s,t S are parallel elements if∈
A(s) and A(t) are linearly dependent
Recap
What is a subset system?
Bases of a subset of a matroid?
Rank rM(U) of a subset U?
What is a matroid?
Spanning subset?
Recap
Circuit?
Parallel elements?
Loop?
• Matroids
• Examples of Matroids
• Dual Matroid
Outline
Uniform Matroid
S = {1,2,…,m}
X S⊆
I = Set of all X S such that |X| ≤ k ⊆
Linear Matroid
Matrix A of size n x m, S = {1,2,…,m}
X S, A(X) = set of columns of A indexed by X⊆
X I if and only if A(X) are linearly independent
Graphic Matroid
G = (V, E), S = E
X S⊆
X ∈ I if X is a forest
• Matroids
• Examples of Matroids– Partition Matroid– Transversal Matroid– Matching Matroid
• Dual Matroid
Outline
Partition
Set S
Non-empty subsets {Si}
{1, 2, 3, 4, 5, 6, 7, 8, 9}
Mutually exclusive Si ∩ Sj = ϕ, for all i ≠ j
Collectively exhaustive ∪i Si = S
{{1, 2, 3}, {4, 5, 6}, {7, 8}}?
Partition
{Si}
Partition
Set S
Non-empty subsets {Si}
{1, 2, 3, 4, 5, 6, 7, 8, 9}
Mutually exclusive Si ∩ Sj = ϕ, for all i ≠ j
Collectively exhaustive ∪i Si = S
{{1, 2, 3}, {4, 5, 6, 7}, {7, 8, 9}}?
Partition
{Si}
Partition
Set S
Non-empty subsets {Si}
{1, 2, 3, 4, 5, 6, 7, 8, 9}
Mutually exclusive Si ∩ Sj = ϕ, for all i ≠ j
Collectively exhaustive ∪i Si = S
{{1, 2, 3}, {4, 5, 6, 7}, {8, 9}}?
Partition
{Si}
Partition
Set S {1, 2, 3, 4, 5, 6, 7, 8, 9}
{{1, 2, 3}, {4, 5, 6, 7}, {8, 9}}Partition {Si}
Limited Subset of Partition
Set S {1, 2, 3, 4, 5, 6, 7, 8, 9}
{{1, 2, 3}, {4, 5, 6, 7}, {8, 9}}Partition {Si}
Limits {li} 3 2 1
Limited Subset (LS) X S⊆
|X ∩ Si| ≤ li, for all i
{1, 2, 4, 5, 6, 8}?
Limited Subset of Partition
Set S {1, 2, 3, 4, 5, 6, 7, 8, 9}
{{1, 2, 3}, {4, 5, 6, 7}, {8, 9}}Partition {Si}
Limits {li} 3 2 1
Limited Subset (LS) X S⊆
|X ∩ Si| ≤ li, for all i
{1, 2, 4, 5, 8}?
Limited Subset of Partition
Set S {1, 2, 3, 4, 5, 6, 7, 8, 9}
{{1, 2, 3}, {4, 5, 6, 7}, {8, 9}}Partition {Si}
Limits {li} 3 2 1
Limited Subset (LS) X S⊆
{1, 2, 4, 5}?
|X ∩ Si| ≤ li, for all i
Limited Subset of Partition
Set S {1, 2, 3, 4, 5, 6, 7, 8, 9}
{{1, 2, 3}, {4, 5, 6, 7}, {8, 9}}Partition {Si}
Limits {li} 3 2 1
Limited Subset (LS) X S⊆
Subset of an LS is an LS Subset system
|X ∩ Si| ≤ li, for all i
Subset System
Set S
{Si, i = 1, 2, …, n} is a partition
{l1,l2,…,ln} are non-negative integers
X S⊆ ∈I if X is a limited subset of partition
Subset System
{l1,l2,…,ln} are non-negative integers
X S⊆ ∈I if |X ∩ Si| ≤ li for all i {1,2,…,n}∈
(S, I) is a matroid? Partition Matroid
Set S
{Si, i = 1, 2, …, n} is a partition
• Matroids
• Examples of Matroids– Partition Matroid– Transversal Matroid– Matching Matroid
• Dual Matroid
Outline
Partial Transversal
Set S
S1, S2, …, Sn S (not necessarily disjoint) ⊆
X S is a partial transversal (PT) of {S⊆ i}
{1, 2, 3, 4, 5, 6, 7, 8, 9}
X = {x1,…,xk}, each xj chosen from a distinct Si
{{1, 2, 3}, {4, 5, 6, 7}, {7, 8, 9}}{Si}
{1, 4, 7, 8}?
Partial Transversal
Set S
S1, S2, …, Sn S (not necessarily disjoint) ⊆
X S is a partial transversal (PT) of {S⊆ i}
{1, 2, 3, 4, 5, 6, 7, 8, 9}
{{1, 2, 3}, {4, 5, 6, 7}, {7, 8, 9}}{Si}
{1, 7, 8}?
X = {x1,…,xk}, each xj chosen from a distinct Si
Partial Transversal
Set S
S1, S2, …, Sn S (not necessarily disjoint) ⊆
X S is a partial transversal (PT) of {S⊆ i}
{1, 2, 3, 4, 5, 6, 7, 8, 9}
{{1, 2, 3}, {4, 5, 6, 7}, {7, 8, 9}}{Si}
{1, 7}?
X = {x1,…,xk}, each xj chosen from a distinct Si
Partial Transversal
Set S
S1, S2, …, Sn S (not necessarily disjoint) ⊆
X S is a partial transversal (PT) of {S⊆ i}
{1, 2, 3, 4, 5, 6, 7, 8, 9}
{{1, 2, 3}, {4, 5, 6, 7}, {7, 8, 9}}{Si}
{7}?
X = {x1,…,xk}, each xj chosen from a distinct Si
Partial Transversal
Set S
S1, S2, …, Sn S (not necessarily disjoint) ⊆
X S is a partial transversal (PT) of {S⊆ i}
{1, 2, 3, 4, 5, 6, 7, 8, 9}
{{1, 2, 3}, {4, 5, 6, 7}, {7, 8, 9}}{Si}
Subset of a PT is a PT Subset system
X = {x1,…,xk}, each xj chosen from a distinct Si
Subset System
Set S
S1, S2, …, Sn S (not necessarily disjoint) ⊆
X S⊆ ∈I if X is a partial transversal of {Si}
(S, I) is a matroid? Transversal Matroid
• Matroids
• Examples of Matroids– Partition Matroid– Transversal Matroid– Matching Matroid
• Dual Matroid
Outline
Matching
v1
v0
v2
v6
v4
v5
v3
G = (V, E)
Matching is a set of disjoint edges.
No two edges in a matching share an endpoint.
Matching
v1
v0
v2
v6
v4
v5
v3
G = (V, E)
Matching is a set of disjoint edges.
No two edges in a matching share an endpoint.
✓
Matching
v1
v0
v2
v6
v4
v5
v3
G = (V, E)
Matching is a set of disjoint edges.
No two edges in a matching share an endpoint.
✗
Matching Matroid
v1
v0
v2
v6
v4
v5
v3
G = (V, E)
X S ⊆ ∈I if a matching covers X
S = V
(S, I) is a matroid? Matching Matroid
• Matroids
• Examples of Matroids
• Dual Matroid
Outline
Dual Matroid
M = (S, I) M* = (S, I*)
X ∈I* if two conditions are satisfied
(i) X S⊆
(ii) S\X is a spanning set of M
Bases of M, M* are complements of each other
If M* is also a matroid then
Dual of Graphic Matroid
G = (V, E), S = E
X S⊆
X ∈ I if X is a forest
Y ∈ I* if
E\Y contains a maximal forest of G
Dual of Graphic Matroid
G = (V, E), S = E
X S⊆
X ∈ I if X is a forest
Y ∈ I* if, after removing Y,
number of connected components don’t change
Cographic Matroid
Dual of Uniform Matroid
S = {1,2,…,m}
X S⊆
I = Set of all X S such that |X| ≤ k ⊆
Y ∈ I* if
|Y| ≤ m-k
Dual of Linear Matroid
Matrix A of size m x n, S = {1,2,…,m}
X S, A(X) = set of columns of A indexed by X⊆
X I if and only if A(X) are linearly independent
Y ∈ I* if
A(S\Y) spans A
Dual Matroid is a Subset System
Proof?
Dual Matroid is a Matroid
Proof?
Dual Matroid is a Matroid
M = (S, I) M* = (S, I*)
Let X ∈ I* and Y ∈ I*, such that |X| < |Y|
There should exist s Y\X, X {s} ∈ ∪ ∈ I*
S\Y contains a base of M Why?
S\X contains a base of M
Dual Matroid is a Matroid
S\Y contains a base of M B
S\X contains a base of M
B\X S\X⊆ B’ ⊆ Base B’
There exists s Y\X, s B’∈ ∉
Proof? By contradiction
Dual Matroid is a Matroid
B\X S\X⊆ B’ ⊆ Base B’
There exists s Y\X, s B’∈ ∉
|B| = |B ∩ X| + |B \ X|
≤ |X \ Y| + |B \ X| Why?
Because B is disjoint from Y
Dual Matroid is a Matroid
B\X S\X⊆ B’ ⊆ Base B’
|B| = |B ∩ X| + |B \ X|
≤ |X \ Y| + |B \ X|
< |Y \ X| + |B \ X| Why?
Because |X| < |Y|
There exists s Y\X, s B’∈ ∉
Dual Matroid is a Matroid
B\X S\X⊆ B’ ⊆ Base B’
|B| = |B ∩ X| + |B \ X|
≤ |X \ Y| + |B \ X|
< |Y \ X| + |B \ X|
Why?
Because Y\X B’⊆
≤ |B’|
B\X B’⊆
B ∩ Y = ϕ
There exists s Y\X, s B’∈ ∉
Dual Matroid is a Matroid
B\X S\X⊆ B’ ⊆ Base B’
|B| = |B ∩ X| + |B \ X|
≤ |X \ Y| + |B \ X|
< |Y \ X| + |B \ X|
Contradiction≤ |B’|
There exists s Y\X, s B’∈ ∉
Dual Matroid is a Matroid
B\X S\X⊆ B’ ⊆ Base B’
There exists s Y\X, X {s} ∈ ∪ ∈ I*
Hence proved.
There exists s Y\X, s B’∈ ∉
Dual Matroid is a Matroid
Circuits of M* are called cocircuits of M
Loops of M* are called coloops of M
Parallel elements in M* are coparallel in M
Dual of Dual Matroid is the Matroid
Proof?
Ranking Functions of M and M*
M = (S, I) M* = (S, I*)
rM*(U) = |U| + rM(S\U) - rM(S)
Proof?