discrete optimization lecture 4 – part 1 m. pawan kumar pawan.kumar@ecp.fr slides available online

Post on 04-Jan-2016

212 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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?

top related