Greedy Algorithm and Matroid Intersections by Yan Alves Radtke July - - PowerPoint PPT Presentation

greedy algorithm and matroid intersections
SMART_READER_LITE
LIVE PREVIEW

Greedy Algorithm and Matroid Intersections by Yan Alves Radtke July - - PowerPoint PPT Presentation

Greedy Algorithm and Matroid Intersections by Yan Alves Radtke July 2020 by Yan Alves Radtke Greedy Algorithm and Matroid Intersections Greedy Task Find a maximum weight spanning tree! 5 4 3 2 by Yan Alves Radtke Greedy Algorithm and


slide-1
SLIDE 1

Greedy Algorithm and Matroid Intersections

by Yan Alves Radtke July 2020

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-2
SLIDE 2

Greedy

Task Find a maximum weight spanning tree!

5

4 3 2

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-3
SLIDE 3

Greedy

Task Find a maximum weight spanning tree!

5

4 3 2

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-4
SLIDE 4

Greedy

Task Find a maximum weight spanning tree!

5

4 3 2

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-5
SLIDE 5

Greedy

Task Find a maximum weight spanning tree!

5

4 3 2

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-6
SLIDE 6

Greedy

Task Find a maximum weight spanning tree!

5

4 3 2

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-7
SLIDE 7

Formalization

Input: Connected graph with edge weights Output: Maximum weight spanning tree Initalization: I := ∅; while Exist edge E s. t. I ∪ {E} is a forest do Choose such E with maximal weight; put I := I ∪ {E}; end return I

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-8
SLIDE 8

Independence System

  • Def. (S, I) is an independence system iff

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-9
SLIDE 9

Independence System

  • Def. (S, I) is an independence system iff

I ⊆ P(S)

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-10
SLIDE 10

Independence System

  • Def. (S, I) is an independence system iff

I ⊆ P(S) ∅ ∈ I

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-11
SLIDE 11

Independence System

  • Def. (S, I) is an independence system iff

I ⊆ P(S) ∅ ∈ I I ∈ I = ⇒ P(I) ⊆ I

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-12
SLIDE 12

Greedy Algorithm

Input: (S, I) with weight function w : S → R≥0 Output: I ∈ I with w(I) :=

i∈I

w(i) maximal Initalization: I := ∅; while Exist s ∈ S s. t. I ∪ {s} ∈ I do Choose such s with maximal weight; put I := I ∪ {s}; end return I

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-13
SLIDE 13

Counterexample for Greedy Algorithm

Task Find maximum weight independent edge set

4 5 4

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-14
SLIDE 14

Counterexample for Greedy Algorithm

Task Find maximum weight independent edge set

4 5 4

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-15
SLIDE 15

Counterexample for Greedy Algorithm

Task Find maximum weight independent edge set

4 5 4

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-16
SLIDE 16

Greedy Theorem

For all Independence Systems (S, I) it holds: (S, I) is a matroid iff the greedy algorithm returns a maximum weight independent set for all non-negative weight functions

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-17
SLIDE 17

Proof ”⇒”

Loop invariant: I is contained in a maximum weight base B

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-18
SLIDE 18

Proof ”⇒”

Loop invariant: I is contained in a maximum weight base B Assume I is contained in a maximum weight base B

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-19
SLIDE 19

Proof ”⇒”

Loop invariant: I is contained in a maximum weight base B Assume I is contained in a maximum weight base B Let y be the element the greedy algorithm chose to add to I

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-20
SLIDE 20

Proof ”⇒”

Loop invariant: I is contained in a maximum weight base B Assume I is contained in a maximum weight base B Let y be the element the greedy algorithm chose to add to I Case 1: I + y ⊆ B

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-21
SLIDE 21

Proof ”⇒”

Loop invariant: I is contained in a maximum weight base B Assume I is contained in a maximum weight base B Let y be the element the greedy algorithm chose to add to I Case 1: I + y ⊆ B Case 2: I + y B

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-22
SLIDE 22

Proof ”⇒”

B I

slide-23
SLIDE 23

Proof ”⇒”

B I y

slide-24
SLIDE 24

Proof ”⇒”

B I y Base B′ z

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-25
SLIDE 25

Proof ”⇒”

w(B′) − w(B) = w(y) − w(z) ≥ 0

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-26
SLIDE 26

Proof ”⇒”

w(B′) − w(B) = w(y) − w(z) ≥ 0 , since the greedy algorithm chose y over z and I + z ⊆ B

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-27
SLIDE 27

Counterexample for Greedy Algorithm

4 5 4

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-28
SLIDE 28

Proof ”⇐”

Assume (S, I) is not a matroid.Then there exist independent I and J such that

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-29
SLIDE 29

Proof ”⇐”

Assume (S, I) is not a matroid.Then there exist independent I and J such that |J| > |I| =: k

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-30
SLIDE 30

Proof ”⇐”

Assume (S, I) is not a matroid.Then there exist independent I and J such that |J| > |I| =: k I + z / ∈ I for all z ∈ J \ I

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-31
SLIDE 31

Proof ”⇐”

w(s) :=      k + 2 if s ∈ I k + 1 if s ∈ J \ I else

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-32
SLIDE 32

Proof ”⇐”

w(s) :=      k + 2 if s ∈ I k + 1 if s ∈ J \ I else After first k iterations I, then only 0 weight elements

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-33
SLIDE 33

Proof ”⇐”

w(s) :=      k + 2 if s ∈ I k + 1 if s ∈ J \ I else After first k iterations I, then only 0 weight elements Greedy returns G with w(G) = w(I) = k(k + 2)

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-34
SLIDE 34

Proof ”⇐”

w(s) :=      k + 2 if s ∈ I k + 1 if s ∈ J \ I else After first k iterations I, then only 0 weight elements Greedy returns G with w(G) = w(I) = k(k + 2)< (k + 1)(k + 1)

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-35
SLIDE 35

Proof ”⇐”

w(s) :=      k + 2 if s ∈ I k + 1 if s ∈ J \ I else After first k iterations I, then only 0 weight elements Greedy returns G with w(G) = w(I) = k(k + 2)< (k + 1)(k + 1)≤ w(J)

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-36
SLIDE 36

Matroid Intersections

Two matroids M1 = (S, I1) and M2 = (S, I2)

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-37
SLIDE 37

Matroid Intersections

Two matroids M1 = (S, I1) and M2 = (S, I2) Set of common independent sets

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-38
SLIDE 38

Matroid Intersections

Two matroids M1 = (S, I1) and M2 = (S, I2) Set of common independent sets (S, I1 ∩ I2) is called the intersection of M1 and M2

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-39
SLIDE 39

Matroid Intersections

Two matroids M1 = (S, I1) and M2 = (S, I2) Set of common independent sets (S, I1 ∩ I2) is called the intersection of M1 and M2 (S, I1 ∩ I2) is generally not a matroid

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-40
SLIDE 40

Matroid Intersections

Two matroids M1 = (S, I1) and M2 = (S, I2) Set of common independent sets (S, I1 ∩ I2) is called the intersection of M1 and M2 (S, I1 ∩ I2) is generally not a matroid But it is a independence system

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-41
SLIDE 41

DM1,M2(I)

For given M1, M2 and common independent set I, DM1,M2(I) is

x y

I S \ I

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-42
SLIDE 42

DM1,M2(I)

For given M1, M2 and common independent set I, DM1,M2(I) is

x y

I S \ I I − x + y ∈ I1

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-43
SLIDE 43

DM1,M2(I)

For given M1, M2 and common independent set I, DM1,M2(I) is

u v y

I S \ I I − u + v ∈ I2

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-44
SLIDE 44

Paths in DM1,M2(I)

in I in I in S \ I in S \ I Performing swaps along Path P on I gives us I△VP

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-45
SLIDE 45

Paths in DM1,M2(I)

in I in I in S \ I in S \ I Performing swaps along Path P on I gives us I△VP This isn’t necessary a common independent set!

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-46
SLIDE 46

Maximum weight algorithm

For a given weight function w we can define: ℓ(x) :=

  • w(x) if x ∈ I

−w(x) if x ∈ S \ I

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-47
SLIDE 47

Maximum weight algorithm

For a given weight function w we can define: ℓ(x) :=

  • w(x) if x ∈ I

−w(x) if x ∈ S \ I ℓ(P) :=

x∈VP

ℓ(x)

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-48
SLIDE 48

Maximum weight algorithm

For a given weight function w we can define: ℓ(x) :=

  • w(x) if x ∈ I

−w(x) if x ∈ S \ I ℓ(P) :=

x∈VP

ℓ(x) = ⇒ w(J) = w(I△VP) = w(I) − ℓ(P)

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-49
SLIDE 49

Maximum weight algorithm for matroid intersections

Input: M1 and M2, an extreme common independent set I and a weight function w Output: An extreme common independent set J with |J| = |I| + 1 if any exists, else I Construct DM1,M2(I); Define Xi := {x ∈ S \ I|I ∪ {x} ∈ Ii}; if X1-X2 Path exists in DM1,M2(I) then P:=minimal weight X1-X2 Path with minimal number of arcs; return I△VP else return I end

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-50
SLIDE 50

Matchings

I S \ I

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-51
SLIDE 51

Perfect Matchings

I S \ I

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-52
SLIDE 52

Not Perfect Matchings

I S \ I

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-53
SLIDE 53

Properties of perfect matchings

If J ∈ I1 and |J| = |I|, there exists a series of swaps that transform J into I

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-54
SLIDE 54

Properties of perfect matchings

If J ∈ I1 and |J| = |I|, there exists a series of swaps that transform J into I = ⇒ DM1,M2(I) has a perfect matching with only downward edges on I△J

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-55
SLIDE 55

Properties of perfect matchings

If J ∈ I1 and |J| = |I|, there exists a series of swaps that transform J into I = ⇒ DM1,M2(I) has a perfect matching with only downward edges on I△J If |J| = |I| and DM1,M2(I) has a unique perfect matching on I△J with only downward edges

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-56
SLIDE 56

Properties of perfect matchings

If J ∈ I1 and |J| = |I|, there exists a series of swaps that transform J into I = ⇒ DM1,M2(I) has a perfect matching with only downward edges on I△J If |J| = |I| and DM1,M2(I) has a unique perfect matching on I△J with only downward edges = ⇒ J ∈ I1

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-57
SLIDE 57

Lemma

Let C ∋ α be a circuit s.t. I△VC is not a common independent set

α

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-58
SLIDE 58

Lemma

Let C ∋ α be a circuit s.t. I△VC is not a common independent set

α

Then there exists: Negative length circuit C ′ with VC ′ VC

  • r C ′ ∋ α s.t. ℓ(C ′) ≤ ℓ(C) with VC ′ VC

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-59
SLIDE 59

Proof of Lemma

α

Matching

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-60
SLIDE 60

Proof of Lemma

α

Matching Since not independent: another matching

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-61
SLIDE 61

Proof of Lemma

α

Matching Since not independent: another matching

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-62
SLIDE 62

Proof of Lemma

Eulerian Graph = ⇒ decomposition into circuits C1, C2..., Cj

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-63
SLIDE 63

Proof of Lemma

Eulerian Graph = ⇒ decomposition into circuits C1, C2..., Cj s.t.

  • i=1,...,j

ℓ(Ci) = 2ℓ(C)

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-64
SLIDE 64

Proof of Lemma

Eulerian Graph = ⇒ decomposition into circuits C1, C2..., Cj s.t.

  • i=1,...,j

ℓ(Ci) = 2ℓ(C) if there is no negative weight circuit, it follows, if t ∈ C1, C2:

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-65
SLIDE 65

Proof of Lemma

Eulerian Graph = ⇒ decomposition into circuits C1, C2..., Cj s.t.

  • i=1,...,j

ℓ(Ci) = 2ℓ(C) if there is no negative weight circuit, it follows, if t ∈ C1, C2: ℓ(C1) + ℓ(C2) ≤

  • i=1,...,j

ℓ(Ci) = 2ℓ(C)

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-66
SLIDE 66

Proof of Lemma

Eulerian Graph = ⇒ decomposition into circuits C1, C2..., Cj s.t.

  • i=1,...,j

ℓ(Ci) = 2ℓ(C) if there is no negative weight circuit, it follows, if t ∈ C1, C2: ℓ(C1) + ℓ(C2) ≤

  • i=1,...,j

ℓ(Ci) = 2ℓ(C) = ⇒ ℓ(C1) ≤ ℓ(C) or ℓ(C2) ≤ ℓ(C)

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-67
SLIDE 67

Extreme set - negative circuit theorem

Statement: DM1,M2(I) has no negative length circuit ⇔ I is an extreme set

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-68
SLIDE 68

Proof ⇒

Let J be a common independet set with |J| = |I| I \ J J \ I

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-69
SLIDE 69

Proof ⇒

w(J) = w(I) − ℓ(I△J) = w(I) −

  • ℓ(Ci) ≤ w(I)

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-70
SLIDE 70

Proof ⇒

w(J) = w(I) − ℓ(I△J) = w(I) −

  • ℓ(Ci) ≤ w(I)

= ⇒ w(J) ≤ w(I)

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-71
SLIDE 71

Proof ⇒

w(J) = w(I) − ℓ(I△J) = w(I) −

  • ℓ(Ci) ≤ w(I)

= ⇒ w(J) ≤ w(I) = ⇒ I is an extreme set

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-72
SLIDE 72

Proof ⇐

Let C negative length circuit minimal nodes and I extreme set

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-73
SLIDE 73

Proof ⇐

Let C negative length circuit minimal nodes and I extreme set Then w(I△VC) = w(I) − ℓ(VC) > w(I)

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-74
SLIDE 74

Proof ⇐

Let C negative length circuit minimal nodes and I extreme set Then w(I△VC) = w(I) − ℓ(VC) > w(I) Then I△VC is not a commmon independent set

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-75
SLIDE 75

Reminder of Lemma

Let C ∋ t be a circuit s.t. I△VC is not a common independent set

α

Then there exists: Negative length circuit C ′ with VC ′ VC

  • r C ′ ∋ α s.t. ℓ(C ′) ≤ ℓ(C) with VC ′ VC

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-76
SLIDE 76

Reminder of Lemma

Let C ∋ t be a circuit s.t. I△VC is not a common independent set

α

Since ℓ(C) < 0 this implies: Negative length circuit C ′ with VC ′ VC

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-77
SLIDE 77

Proof ⇐

Let C negative length circuit minimal nodes and I extreme set Then w(I△VC) = w(I) − ℓ(VC) > w(I) Then I△VC is not a commmon independent set By Lemma C ′ is a negative length circuit with less nodes

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-78
SLIDE 78

Maximum weight algorithm

Input: M1 and M2, an extreme common independent set I and a weight function w Output: An extreme common independent set J with |J| = |I| + 1 if any exists, else I Construct DM1,M2(I); Define Xi := {x ∈ S \ I|I ∪ {x} ∈ Ii}; if X1-X2 Path exists in DM1,M2(I) then P:=minimal weight X1-X2 Path with minimal number of arcs; return I△VP else return I end

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-79
SLIDE 79

Auxiliary Matroid

  • Def. M′

i := (S + t, {U ⊆ S + t|U − t ∈ Ii})

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-80
SLIDE 80

Auxiliary Matroid

  • Def. M′

i := (S + t, {U ⊆ S + t|U − t ∈ Ii})

Claim DM′

1,M′ 2(I + t)[S] = DM1,M2(I) by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-81
SLIDE 81

Auxiliary Matroid

  • Def. M′

i := (S + t, {U ⊆ S + t|U − t ∈ Ii})

Claim DM′

1,M′ 2(I + t)[S] = DM1,M2(I)

Proof I + t − x + y ∈ I′

i ⇔ I − x + y ∈ Ii

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-82
SLIDE 82

Auxiliary Matroid

  • Def. M′

i := (S + t, {U ⊆ S + t|U − t ∈ Ii})

Claim DM′

1,M′ 2(I + t)[S] = DM1,M2(I)

Proof I + t − x + y ∈ I′

i ⇔ I − x + y ∈ Ii

Claim N(t) = X1 ∪ X2

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-83
SLIDE 83

Auxiliary Matroid

  • Def. M′

i := (S + t, {U ⊆ S + t|U − t ∈ Ii})

Claim DM′

1,M′ 2(I + t)[S] = DM1,M2(I)

Proof I + t − x + y ∈ I′

i ⇔ I − x + y ∈ Ii

Claim N(t) = X1 ∪ X2 Proof I + t − t + x ∈ I′

i ⇔ I + x ∈ I′ i ⇔ I + x ∈ Ii ⇔ x ∈ Xi

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-84
SLIDE 84

Proof of extremity of I△VP

x1 x′

1

x′

1

I I x2 x′

2

x′

2

t

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-85
SLIDE 85

Proof of extremity of I△VP

x1 x′

1

x′

1

I I x2 x′

2

x′

2

t w(t) := −ℓ(P)

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-86
SLIDE 86

Proof of extremity of I△VP

x1 x′

1

x′

1

I I x2 x′

2

x′

2

t w(t) := −ℓ(P)

ℓ(P′) ≥ ℓ(P)

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-87
SLIDE 87

Proof of extremity of I△VP

w(I + t) = w(I) + w(t) = w(I) − ℓ(P) = w(I△P) = w(J)

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-88
SLIDE 88

Proof of extremity of I△VP

w(I + t) = w(I) + w(t) = w(I) − ℓ(P) = w(I△P) = w(J) A relaxation of our original problem has a maximum weight of w(J)

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-89
SLIDE 89

Proof of extremity of I△VP

w(I + t) = w(I) + w(t) = w(I) − ℓ(P) = w(I△P) = w(J) A relaxation of our original problem has a maximum weight of w(J) J common independent = ⇒ J is extreme common independent

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-90
SLIDE 90

Proof of independency of I△VP

x1 x′

1

x′

1

I I x2 x′

2

x′

2

t w(t) := −ℓ(P)

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-91
SLIDE 91

Reminder of Lemma

Let C ∋ t be a circuit s.t. I△VC is not a common independent set

α

Then there exists: Negative length circuit C ′ with VC ′ VC

  • r C ′ ∋ t s.t. ℓ(C ′) ≤ ℓ(C) with VC ′ VC

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-92
SLIDE 92

Proof of independence of I△VP

x1 x′

1

x′

1

I I x2 x′

2

x′

2

t w(t) := −ℓ(P)

|P′| >= |P| or ℓ(P′) > ℓ(P)

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-93
SLIDE 93

Reminder of Lemma

Let C ∋ α be a circuit s.t. I△VC is not a common independent set

α

Then there exists: Negative length circuit C ′ with VC ′ VC

  • r C ′ ∋ t s.t. ℓ(C ′) ≤ ℓ(C) with VC ′ VC

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-94
SLIDE 94

Reminder of Lemma

Let C ∋ α be a circuit s.t. I△VC is not a common independent set

α

Then there exists: Negative length circuit C ′ with VC ′ VC

  • r C ′ ∋ t s.t. ℓ(C ′) ≤ ℓ(C) with VC ′ VC

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-95
SLIDE 95

Proof of independence

(I + t△VP + t) = I△VP is a common independent set

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-96
SLIDE 96

Proof of independence

(I + t△VP + t) = I△VP is a common independent set = ⇒ J = I△VP is an extreme common independent set

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-97
SLIDE 97

Maximum weight algorithm

Input: M1 and M2, an extreme common independent set I and a weight function w Output: An extreme common independent set J with |J| = |I| + 1 if any exists, else I Construct DM1,M2(I); Define Xi := {x ∈ S \ I|I ∪ {x} ∈ Ii}; if X1-X2 Path exists in DM1,M2(I) then P:=minimal weight X1-X2 Path with minimal number of arcs; return I△VP else return I end

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-98
SLIDE 98

Case 2

X1

slide-99
SLIDE 99

Case 2

X1 X2

slide-100
SLIDE 100

Case 2

X1 X2

slide-101
SLIDE 101

Case 2

X1 X2

S \ U U

slide-102
SLIDE 102

Case 2

X1 X2

S \ U U X1 ∩ U = ∅, X2 ⊆ U

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-103
SLIDE 103

Matroid Intersection Theorem

The maximum size of a set in I1 ∩ I2 is min

U⊆S r1(U) + r2(S \ U)

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-104
SLIDE 104

Matroid Intersection Theorem

The maximum size of a set in I1 ∩ I2 is min

U⊆S r1(U) + r2(S \ U)

Use Case: Partition of base set can certify an upper bound

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-105
SLIDE 105

Proof ”≤”

For any common independent set I and any U ⊆ S |I| = |I ∩ U| + |I \ U|

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-106
SLIDE 106

Proof ”≤”

For any common independent set I and any U ⊆ S |I| = |I ∩ U| + |I \ U|= r1(I ∩ U) + r2(I \ U)

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-107
SLIDE 107

Proof ”≤”

For any common independent set I and any U ⊆ S |I| = |I ∩ U| + |I \ U|= r1(I ∩ U) + r2(I \ U)≤ r1(U) + r2(S \ U)

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-108
SLIDE 108

Idea of Proof ”≥”

Proof by induction over |S|

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-109
SLIDE 109

Idea of Proof ”≥”

Proof by induction over |S| |S| = 1 just 3 cases

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-110
SLIDE 110

Idea of Proof ”≥”

Proof by induction over |S| |S| = 1 just 3 cases Use restrictions and contractions to construct submatroids on U and S \ U

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-111
SLIDE 111

Idea of Proof ”≥”

Proof by induction over |S| |S| = 1 just 3 cases Use restrictions and contractions to construct submatroids on U and S \ U Get common independent sets of size r1(U) and r2(S \ U) on U and S \ U

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-112
SLIDE 112

Case 2

Claim r1(U) + r2(S \ U) ≤ |I|

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-113
SLIDE 113

Case 2

Claim r1(U) + r2(S \ U) ≤ |I| r1(U) ≤ |I ∩ U|

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-114
SLIDE 114

Case 2

Claim r1(U) + r2(S \ U) ≤ |I| r1(U) ≤ |I ∩ U| Suppose r1(U) > |I ∩ U|

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-115
SLIDE 115

Case 2

Claim r1(U) + r2(S \ U) ≤ |I| r1(U) ≤ |I ∩ U| Suppose r1(U) > |I ∩ U| = ⇒ There is x ∈ U \ I s.t. I ∩ U + x ∈ I1

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-116
SLIDE 116

Case 2

Claim r1(U) + r2(S \ U) ≤ |I| r1(U) ≤ |I ∩ U| Suppose r1(U) > |I ∩ U| = ⇒ There is x ∈ U \ I s.t. I ∩ U + x ∈ I1 = ⇒ x / ∈ X1 = ⇒ I + x / ∈ I1

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-117
SLIDE 117

Case 2

Claim r1(U) + r2(S \ U) ≤ |I| r1(U) ≤ |I ∩ U| Suppose r1(U) > |I ∩ U| = ⇒ There is x ∈ U \ I s.t. I ∩ U + x ∈ I1 = ⇒ x / ∈ X1 = ⇒ I + x / ∈ I1 = ⇒ There is y ∈ I \ U s.t. I − y + x ∈ I1

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-118
SLIDE 118

Case 2

Claim r1(U) + r2(S \ U) ≤ |I| r1(U) ≤ |I ∩ U| Suppose r1(U) > |I ∩ U| = ⇒ There is x ∈ U \ I s.t. I ∩ U + x ∈ I1 = ⇒ x / ∈ X1 = ⇒ I + x / ∈ I1 = ⇒ There is y ∈ I \ U s.t. I − y + x ∈ I1 = ⇒ (y, x) enters U

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-119
SLIDE 119

Case 2

Claim r1(U) + r2(S \ U) ≤ |I| r1(U) ≤ |I ∩ U| Suppose r1(U) > |I ∩ U| = ⇒ There is x ∈ U \ I s.t. I ∩ U + x ∈ I1 = ⇒ x / ∈ X1 = ⇒ I + x / ∈ I1 = ⇒ There is y ∈ I \ U s.t. I − y + x ∈ I1 = ⇒ (y, x) enters U Similarly r2(S \ U) ≤ |I \ U| So it follows: I is a maximum cardinality common independet set

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections

slide-120
SLIDE 120

Thank you for your attention

by Yan Alves Radtke Greedy Algorithm and Matroid Intersections