MATROID UNION
2.1. Examples. It’s natural to think of matroid unions as combinations on disjoint Si ’s:
● The super ice cream sunday: choose
3 of 31 flavors and 4 of 18 toppings
● The possible choices are equivalent
4
3
∨ U18
to the indep. sets of M = U31
● This is also a partition matroid
The combinations can also be on overlapping
but not identical ground sets:
● Professors A and B share a lab and
can hire up to three students each
● Students have submittted applications
to A or to B or to both
● Feasible hiring choices are equivalent
to the indep. sets of M = Ua3 ∨ Ub3
● Sa ∩ Sb is not empty so this is NOT
a partition matroid
The ground sets can also be identical, and
M ∨ M is often interesting:
● Consider M k , the union of k copies
of a graphic matroid M with itself
● The largest indep. set in M k has cardinality ∣E∣ iff E can be covered by
exactly k forests
● M k is no longer a graphic matroid!
What are the independent sets of M k for M
a matching matroid?
ALECK JOHNSEN
EECS 495: Combinatorial Optimization
Reading Project Presentation
February 28th, 2011
Professor N. Immorlica
Northwestern University
1. Partition Matroids
Given set system M = (E, I).
● Let E = E1 ⊍ ... ⊍ En , each with paramater ki ∈ N0
● Let I ∶= {X ⊆ E ∶ ∣X ∩ Ei ∣ ≤ ki ∀i}
● Then M is a ‘partition’ matroid
Proof:
● DC Holds: If we remove elements
from some X ⊆ I, no ∣X ∩ Ei ∣ will
increase
● Exchange Holds: If I, J ∈ I, ∣I∣ < ∣J∣,
then ∃Ei s.t. ∣J ∩ Ei ∣ > ∣I ∩ Ei ∣. I can
add any element of (J ∖ I) ∩ Ei and
still be indep.
Notes:
● Because we can set ki = 0 for some 2.2. Comparison to Matroid ∩.
Ei , we can equivalently not require
● ∩ requires ground sets of M1 , M2 to
the Ei ’s to cover E
be identical
● M would not be a matroid if the Ei ’s
● ∪ places no requirements on the Si ’s
were not disjoint
● ∩ computes a new I by ∩ on I1 , I2
● Example?
● ∪ computes a new I by ‘multiplying’
the elements of I1 , I2
2. Matroid Union
● the result of matroid ∩ is probably
not a matroid
Def: The union of matroids M1 ∨ ... ∨ Mk is
●
the result of matroid ∪ is a matroid,
(S1 ∪ ... ∪ Sk , I1 ∨ ... ∨ Ik ), where I1 ∨ ... ∨ Ik ∶=
and our next goal is to prove this
{I1 ∪ ... ∪ Ik ∶ Ii ∈ Ii }
1
2
ALECK JOHNSEN
2.3. Lemma 1. Let M ′ = (S ′ , I ′ ) be any Why is the last statement true?
matroid, with rank function r′ . For any f ∶ It is true, therefore
S ′ → S, define
(3)
r(U ) = max ∣I∣ = ′ ′max
∣I ′ ∣
′ ∈I ′ ∩I
′
′
′
I⊆U,I∈I
I
⊆U
,I
P
(1)
I = {f (I ) ∶ I ∈ I }
(with f (I ′ ) = {f (s) ∶ s ∈ I ′ }). Then M = From matroid interesection we get
(S, I) is a matroid with rank
(2)
r(U ) = min (∣U ∖ T ∣ + r′ (f −1 (T )))
T ⊆U
(4)
(5)
(r′ (T ′ ) + rP (U ′ ∖ T ′ ))
r(U ) = min
′
′
T ⊆U
= min (r′ (f −1 (T )) + ∣U ∖ T ∣)
T ⊆U
for all U ⊆ S.
which is our goal. The last equality holds
Proof: (M is a matroid )
because:
DC:
● Consider Eq. (4) and any T ′ ⊆ U ′
● Consider I ∈ I.
′
′
′
● What is rP ?
● Then ∃ some I ∈ I s.t. f (I ) = I
● We are looking for a min
● Also, any subset of I is indep. in M
′′
● For each partition set Ei′ , if ∣T ′ ∩Ei′ ∣ <
because it can be expressed as f (I )
∣U ′ ∩ Ei′ ∣, we should remove T ′ ∩ Ei′
for some I ′′ ⊆ I ′
from T ′
Exchange:
● This will not change rP (U ′ ∖ T ′ ) and
● Consider I, J ∈ I, ∣I∣ < ∣J∣
can not increase r′ (T ′ )
● Choose I ′ , J ′ ∈ I ′ s.t. f (I ′ ) = I, f (J ′ ) =
● If we do this for all Ei′ ’s, we trans′
′
′
′
J, ∣I∣ = ∣I ∣, ∣J∣ = ∣J ∣, and ∣I ∩ J ∣ is
form T ′ into T ′′ s.t. T ′′ is of the
maximized
form f −1 (T ) for some T ⊆ U
● M ′ a matroid ⇒ ∃j ∈ J ′ ∖ I ′ s.t. I ′ +
● Since Eq. (4) achieves a min on some
j ∈ J′
T ′′ , we can instead search over T ⊆ U
′
′
● f (j) ∉ f (I ), else ∃i∈ I s.t. f (j) =
and we get Eq. (5)
f (i), but replacing I ′ with I ′ − i + j
would increase ∣I ′ ∩ J ′ ∣
2.4. Theorem: Matroid Union. Let M1 =
● So f (j) ∈ J ∖ I with f (I ′ + j) ∈ I
(S1 , I1 ), ..., Mk = (Sk , Ik ) be matroids with
Proof: (of the rank function)
respective rank functions r1 , ...rk . Then M =
Fix a U ⊆ S, and write f (U ) = U ′ .
M1 ∨ ... ∨ Mk is a matroid with rank function
Construct a partition matroid on the origik
nal ground set S ′ :
(6) r(U ) = min (∣U ∖ T ∣ + ∑ ri (T ∩ Si ))
T ⊆U
i=1
● Set P = (S ′ , IP ) induced by partition
−1
sets (f (e) ∶ e ∈ U ) and all ki = 1
Proof:
● IP = {I ′ ⊆ U ′ ∶ ∣f −1 (e) ∩ I ′ ∣ ≤ 1∀e ∈ U } We force disjoint Si ’s: for each Mi we create
● rP (T ′ ) = ∣{e ∈ U ∶ f −1 (e) ∩ T ′ ≠ ∅}∣ = Mi′ = (Si′ , Ii′ ) by relabeling e ∈ Si as (i, e).
# of partitions covered by T ′ ⊆ U ′
Mi′′ = M1′ ∨ ... ∨ Mk′ is a matroid
′
′
Now I ⊆ U has I ∈ I iff ∃I ⊆ U s.t.
● DC: An I ′′ ∈ I ′′ is a union I1′ ⊍ ... ⊍ Ik′
′
● f (I ) = I
with Ii′ ∈ Ii′ . Clearly a subset of I ′′
● I′ ∈ I′
can be written as the union of sub● I ′ ∈ IP
sets of the Ii′ ’s.
MATROID UNION
● Exchange: ∀I ′′ , J ′′ ∈ I ′′ , ∣I ′′ ∣ < ∣J ′′ ∣ ∶
Si′ ’s disjoint ⇒
∃i s.t. ∣J ′′ ∩Si′ ∣ > ∣I ′′ ∩Si′ ∣. Also, these
are both indep. sets in Ii′ ⇒
∃j ∈ (J ′′ ∩ Si′ ) s.t. (I ′′ ∩ Si′ ) + j ∈ Ii′ ⇒
I ′′ + j ∈ I ′′
Note: to determine the rank of a subset U ′′
in M ′′ , we would intersect U ′′ with each of
the disjoint Si′ ’s and apply the respective
ri ’s, and return the sum.
Let f ∶ S ′′ → S be a selector of e, f (i, e) = e.
Use Lemma 1 to transform M ′′ to M , then
M is a matroid by M ′′ a matroid.
Also by Lemma 1:
(7)
rM (U ) = min (rM ′′ (f −1 (T )) + ∣U ∖ T ∣)
T ⊆U
(8)
3
3.1. Corollary 1. Let M = (S, I) be a matroid with rank function r. For k ∈ N, the
max size of the union of k indep. sets is
(10)
rM k (S) = min (∣S ∖ U ∣ + k ⋅ rM (U ))
U ⊆S
Proof:
The result follows trivially from the Matroid
Union Theorem on M1 = ... = Mk = M , with
the Si ’s and ri ’s then all identical.
● Example: M = U62 .
● Then M k = M ∨ M ∨ M = U66 .
● What subset achieves a min for rU 6
6
in Eq. (10)?
● Example: M is a matching matroid
on a ‘star’ graph.
● What subset of vertices achieves a
min in Eq. (10)?
3.2. Corollary: Matroid Base Packing.
Let M = (S, I) be a matroid with rank func= min (∑ rM ′′ (f −1 (T ) ∩ Si′ ) + ∣U ∖ T ∣) tion r. For k ∈ N, there exist k disjoint bases
T ⊆U i=1
of M iff
k
(9)
(11)
k
= min (∑ ri (T ∩ Si ) + ∣U ∖ T ∣)
k ⋅ (r(S) − r(U )) ≤ ∣S ∖ U ∣
∀U ⊆ S
Proof: M has k disjoint bases iff the max
which is the desired result. Note that the size of a union of k indep. sets equals k⋅r(S).
first equality holds by our comment before By Corollary 1, this is true iff
on rM ′′ and the second equality holds by
(12)
min (∣S ∖ U ∣ + k ⋅ r(U )) = k ⋅ r(S)
r ′′ (f −1 (T ) ∩ S ′ ) = r (T ∩ S ):
T ⊆U
M
i=1
i
i
i
U ⊆S
● Consider T ∩ Si
Fix any U . Then we can replace the min
● Si′ constructed one-for-one from Si
function and ‘equality’ in (12) with ‘∀U ⊆ S’
● Under f −1 , each t ∈ T ∩ Si maps to a and ‘≥’ respectively, and rearranging gives us
value in Si′ and possibly other values. the result.
● By necessity, all ‘excess’ values reached
● Example: Let σ(M ) be the largest
by f −1 (T ) are not in Si′ , therefore
possible number of disjoint bases
f −1 (T ∩ Si ) does map one-to-one bi● Let λ(M ) be the smallest minimal
jectively if its image is restricted to
subset of E whose deletion reduces
f −1 (T ) ∩ Si′
the rank of M
● Then σ(M ) ≤ λ(M ) for any matroid
3. Corollaries and Applications
● Example: Common base packing
● Can two matroids on the same S be
These results will be used by Greg and Darpartitioned into ‘common’ bases?
rell for Shannon’s switching game.
4
ALECK JOHNSEN
3.3. Corollary: Basis Exchange. Let M = (14)
(S, I) be a matroid. For any two bases of M ,
min (∣B2 ∖ U ∣ + rM (U ∪ Y1 ) − rM (Y1 )
U ⊆B2
B1 and B2 , and for any partition of B1 into
sets X1 , Y1 , ∃ a partition of B2 into X2 , Y2
+ rM (U ∪ X1 ) − rM (X1 ))
s.t. X1 ∪ Y2 and Y1 ∪ X2 are bases of M .
Here, first note that X1 , Y1 ∈ IM ⇒ that
(Note the similarity to Strong Basis Exchange, their ranks equals their cardinalities, resp.
which is a special case)
Then using submodularity on rM (U ∪ Y1 )
Proof:
and rM (U ∪ X1 ), we get rM1 ∨M2 (B2 ) ≥
Notes on matroid contraction:
(15)
● M /Z = (M ∗ ∖ Z)∗
● rM /Z (X) = r(X ∪ Z) − r(Z)
for X ⊆ S ∖ Z
● Contraction on a matroid yields a
matroid
● Useful way to use it:
For Z ⊆ S, X a base of Z, we have:
I ⊆ S ∖ Z has I ∈ IM /Z iff I ∪ X ∈ IM
Let M1 = M /Y1 , M2 = M /X1
Then X1 ∈ I1 and Y1 ∈ I2
Why? Plug into formula above:
min (∣B2 ∖ U ∣ + rM (U ∪ Y1 ∪ X1 ) + rM (U )
U ⊆B2
− ∣Y1 ∣ + ∣X1 ∣)
But rM (U ∪ Y1 ∪ X1 ) = rM (U ∪ B1 ) = ∣B1 ∣ =
∣Y1 ∣ + ∣X1 ∣.
Also, by U ⊆ B2 , U ∈ IM and rM (U ) = ∣U ∣,
so the final reduction is rM1 ∨M2 (B2 ) ≥ ∣B2 ∣
With rU ≤ ∣U ∣ for all rank functions, we get
equality, which in turn implies B2 ∈ I1 ∨ I2 ,
and we are DONE.
4. Exercises
● X = Z = Y1 , I = X1 . Given these:
We give problems so that you can test your
● Y1 indep. in M ⇒ X a base of Z
understanding.
● I ⊆ S ∖ Z by I ⊍ Z = B1 ∈ IM , which
then directly implies X1 = I ∈ IM /Y1 4.1. Prove Matroid Base Covering. Specifically, let M = (S, I) be a matroid with rank
By symmetry for Y1 ∈ I2
function r. For k ∈ N, S can be covered by
Therefore B1 is indep. in
k independent sets iff k ⋅ r(U ) ≥ ∣U ∣∀U ⊆ S.
M1 ∨ M2 =(S, I1 ∨ I2 )
(I1 = X1 , I2 = Y1 )
Now we only need to show B2 ∈ I1 ∨I2 , since
this gives us a way to properly partition B2 .
Why is this sufficient?
Using the Matroid Union Theorem, we compute rM1 ∨M2 (B2 ) =
(13)
min (∣B2 ∖ U ∣ + rM1 (U ∖ Y1 ) + rM2 (U ∖ X1 ))
U ⊆B2
Using the contraction rank formula above,
we replace rM1 and rM2 to get rM1 ∨M2 (B2 ) =
4.2. Show that for a graph G = (V, E), the
edges E can be partitioned into k forests iff
∀U ⊆ V, ∣E [U ] ∣ ≤ k(∣U ∣ − 1).
4.3. Show that a graph G = (V, E) contains
k edge-disjoint spanning trees iff for every
partition P of V into n sets V1 , ..., Vn , the
number of edges crossing the partition P is
at least k(n − 1).
(Hint: for Exercises 2 and 3, one of them can
be derived from Base Packing, and the other
from Base Covering.)
© Copyright 2026 Paperzz