<<

Cryptomorphisms ∗ MAA Short Course Lecture Notes

Jenny McNulty Department of Mathematical Sciences, The University of Montana Missoula, MT 59812-1032, USA [email protected]

January, 2011

1 Introduction

One of the most attractive features of is the plethora of equivalent definitions. Borrowing from linear , we can define a in terms of independent sets or equivalently in terms of bases. Graph theory motivates alternate formulations of matroids in terms of circuits and cocircuits, while open and closed sets, and come from . We will tie these disparate concepts together using the rank . There are many additional ways to define a matroid; we’ll discuss some of them here, but leave the rest for you to explore. A central idea of this topic is that we can convert from one axiom system to another. We’ll describe a method, called a cryptomorphism, for converting from one system to an- other.

A cryptomorphism is an “equivalent way to define matroids, yet not straight- forward” 1

While this variety of axiom systems (that is to say the number of cryptomorphic definitions a matroid) gives matroid theory much of its power, it can often contribute to the difficulty in learning the subject. We suggest the reader keep the prototypes in mind while learning the formal definitions and refer often to the cryptomorphism charts.

2 From Independent Sets to Bases and Back Again

We begin with the formal definition of a matroid. Independent Definition 1. A matroid M is a pair (E, I) in which E is a finite and I is a family of sets subsets of E satisfying

(I1) I ̸= ∅, Non- triviality (I2) If J ∈ I and I ⊆ J, then I ∈ I, Closed un- (I3) If I,J ∈ I with |I| < |J|, then there is some element x ∈ J − I with I ∪ {x} ∈ I. der subsets Augmentation ∗These notes are adapted from the text “Matroid Theory” by G. Gordon and J. McNulty. 1G. Birkhoff coined the term crypto-isomorphism in 1967 [1], since then the term has been shortened to cryptomorphism. 1 The family I forms the independent sets of the matroid.

The three properties (I1), (I2), and (I3) listed above are not the only properties the independent sets of a matroid satisfy. For instance, it’s easy to see that properties (I1) and (I2) together imply ∅ ∈ I. The next proposition points out that one can define a matroid in many ways - even just restricting oneself to independent sets.

Proposition 2. Let E be a finite set and let I be a family of subsets of E. Then the family I forms the independent sets of a matroid iff:

(I1′) ∅ ∈ I,

(I2) If J ∈ I and I ⊆ J, then I ∈ I,

(I3′) If I,J ∈ I with |J| = |I| + 1, then there is some element x ∈ J − I with I ∪ {x} ∈ I.

Definition 3. If M is a matroid with independent sets I, then B is a basis of the matroid M if B is a maximal independent set. Bases

Let’s see how we can define a matroid directly in terms of bases. Here are 3 things that are always true for the bases B of a matroid:

(B1) B ̸= ∅. Non- triviality (B2) If B ,B ∈ B and B ⊆ B , then B = B . 1 2 1 2 1 2 Clutter

(B3) If B1,B2 ∈ B and x ∈ B1 − B2, then there is an element y ∈ B2 − B1 so that Basis Ex- B1 − x ∪ {y} ∈ B. change

These properties that the collection B of bases satisfy is actually all we need to define a matroid in terms of bases. That is, these properties can be taken as an equivalent axiom system for a matroid. Just as the axiom system for independent sets mirrors the properties of linear independence in vectors, the axiom system for bases is motivated by properties satisfied by the collection of bases of a (finite-dimensional) vector . Here’s an alternate version of (B2):

′ (B2 ) If B1,B2 ∈ B, then |B1| = |B2| Equicardinal

The next proposition, will be useful when we work through the details of the crypto- morphism between independent sets and bases.

Proposition 4. Let E be a finite set and let B be a family of subsets of E. The family B satisfies (B1), (B2), (B3) if and only if B satisfies (B1), (B2′), (B3).

We are finally ready to discuss our first cryptomorphism. This involves the following steps:

1. Given the independent sets I in a matroid, define a collection of subsets B to be the maximal independent sets;

2. Next, prove that the collection B satisfies the properties (B1), (B2′), and (B3);

3. Reverse the procedure: Given the collection of bases B of a matroid, define a collection of subsets I to be all subsets of the bases in B;

2 4. Now, prove the collection I you just defined satisfies the properties (I1), (I2), and (I3) (or, equivalently, (I1′), (I2), and (I3′)).

We’re still not done. When we define I in terms of B and also define B in terms of I, we are actually dealing with functions on the set of all families of subsets of E. Let f and g be these cryptomorphic functions with f(I) = B and g(B) = I (so f, g : 22E → 22E ). We have to show these two cryptomorphisms compose correctly: 5. Show f(g(B)) = B, and now g(f(I)) = I.

. Maximal

Bases . Independent Sets Subsets .

Figure 1: Cryptomorphism between Independent Sets and Bases

Theorem 5. Let E be a finite set and let B be a family of subsets of E satisfying (B1), (B2), (B3). Then, (E, B) is cryptomorphic to the matroid M = (E, I) and B is the collection of bases of a matroid.

Example 6. Let M be the matroid on the six element set E = {a, b, c, d, e, f} with bases B = {ace, ade, bce, bde, cde}.

e

f

a b c d

Figure 2: The matroid from Example 6.

Some curious features of this matroid are the behavior of the elements e and f. Note that e is in every basis of the matroid. Equivalently, it can be added to any independent set it’s not in to create another independent set. Such an element is called an isthmus or coloop of the matroid. On the other hand, the element f is in no basis – in fact, f is in no independent set at all. This element is called a loop. Both isthmus and loop are terms borrowed from graph theory. A set which is not independent is called dependent and a minimal dependent set is called a circuit. In the example, we list the collection C of all circuits: C = {f, ab, acd, bcd}. Listing the circuits is often an efficient way to describe a matroid.

Definition 7. Let M be a matroid on the ground set E. An isthmus is an element x ∈ E that is in every basis. A loop is an element x ∈ E that is not in any basis. Isthmus Loop In summary, if we are given a matroid M = (E, I) defined in terms of independent we sets, can easily find the bases, the dependent sets and the circuits. Moreover, if we are given any one of these collections we can find the others – see Figure 3. For example we can define circuits C in terms of independent sets I and vice versa as:

3 • I → C: The circuits C are the minimal subsets of E that are not independent.

• C → I: The independent sets I are all the subsets of E that don’t contain a circuit C ∈ C.

The three key properties the family C satisfies are: (C1) ∅ ̸∈ C, Non- triviality (C2) If C ,C ∈ C and C ⊆ C , then C = C , 1 2 1 2 1 2 Clutter

(C3) If C1,C2 ∈ C with C1 ≠ C2, and x ∈ C1 ∩ C2, then C3 ⊆ C1 ∪ C2 − x for some C3 ∈ C. Circuit Elimination Theorem 8. Let E be a finite set and let C be a family of subsets of E satisfying (C1), (C2), (C3). Then, (E, C) is cryptomorphic to the matroid M = (E, I) and C is the collection of circuits of M.

. Maximal

Bases Independent Sets Subsets

Not Not . Minimal

. Dependent Sets Circuits

. Supersets

Figure 3: Cryptomorphism between Independent Sets, Bases, Dependent Sets and Circuits

3 Rank, Flats, Hyperplanes and Closure

In this section, we define several additional matroid concepts having a geometric flavor. For each new term we define, we’ll relate it to previously defined matroid concepts and describe the new term for and graphs. As before, we can define a matroid directly in terms of these new concepts. The example we will use throughout this section is the matroid M on the six element set E = {a, b, c, d, e, f} with bases B = {ace, ade, bce, bde, cde} – this is the same matroid we met in Example 6. In Figure 4, we draw the geometry corresponding to M and we also give a graphic representation. Example 9. In the picture of the matroid M on the left of Figure 4, the bases of M correspond to the collections of three points that are not collinear. Note that the isthmus e is in every such set. For the graph G on the right of Figure 4, note the bases correspond to the spanning trees of G, and this time, the edge corresponding to the isthmus e is an isthmus of G. In Example 6 saw the circuits of M are C = {f, ab, acd, bcd}. In terms of the geometry, note that all of these sets are dependent, but all proper subsets are independent. For instance, the circuit acd corresponds to 3 collinear points. For the graph G, the circuits are simply the cycles. 4 . a v  b 2  v1 e f  f      e d    c c a b d  v  v (i) 3 (ii) 4

Figure 4: The example matroid (i) M = M(G) (ii) G.

3.1 Rank Given any subset A of the ground set E of the matroid, we can look at the size of all the independent sets that are contained in A. The largest such independent subset of A gives its rank.

Definition 10. Let M = (E, I) be a matroid and let A ⊆ E. The rank of A, written r(A), is the size of the largest independent subset of A: Rank func- tion r(A) := max{|I| : I ∈ I}. I⊆A

When A = E, we will usually write r(M) instead of r(E), and we’ll call this the rank of the matroid. The rank of the matroid is just the size of any basis of M (which are all the same size by our ‘maximal = maximum’ property for independent sets). Technically, the rank function r is a map from the set of all subsets of the ground set E of the matroid to the non-negative : r : 2E → N ∪ {0}. This function satisfies some nice properties we’ll see in Section 5.

Example 11. We’ll continue examining the matroid in Figure 4. This time we’ll find the rank of various subsets. A complete list would involve listing the rank of each of the 26 = 64 subsets, which would be rather laborious.But we can organize the data intelligently to make life a bit more pleasant.

• r(A) = 0: r(∅) = 0 is always true, but any subset of loops will also have rank 0. In this case, there are 2 sets with rank 0: ∅ and f.

• r(A) = 1: All singletons except the loop f have rank 1, but adding the loop f to a subset will never increase its rank, so af, bf, cf, df and ef also have rank 1. Finally, the sets ab and abf also have rank 1.

• r(A) = 2: Let’s ignore the loop for a moment. A set has rank 2 if it spans a in the geometry. Among the points a, b, c and d, choosing any 2 (or more) except ab will span the line containing these four points. There are 10 such subsets of a, b, c, d. Rank 2 sets that also include the e are more restrictive: r(abe) = r(ae) = r(be) = r(ce) = r(de) = 2. These correspond to the 2-point lines we generally don’t draw in our matroid pictures. Finally, as before, we can add the loop f to any of these sets without changing the rank.

• r(A) = 3: r(A) = 3 precisely when A contains a basis. This means we must include the point e and we must span the line containing a, b, c, and d.

5 Maximal sets of a given rank will be important later in this section. Foreshadowing a bit, we list the maximal rank 2 subsets: {abef, cef, def, abcdf}. You can check that each of these subsets spans a line in the geometry, but adding any point to a subset increases the rank. Given the collection of independent sets, it’s easy to find (but tedious to write out) the rank of every subset of E. What about the reverse procedure? As a mini-example, suppose we are given the ground set E = {a, b, c} of a matroid M and the rank of each subset of E:

r(∅) = 0; r(a) = r(b) = r(c) = r(ab) = 1; r(ac) = r(bc) = r(abc) = 2.

How could we find the independent sets of M? Here’s how: We made the observation earlier that the rank of an independent equals its Independent size; we note here that these are the only sets with this property. Thus, the independent sets set charac- are simply those sets I with r(I) = |I| (see Figure 5). In our mini-example, the independent terization sets are {∅, a, b, c, ac, bc}. via rank

.. Size of a largest independent set contained in the given set Independent Rank Sets

. Sets whose size equals rank

Figure 5: Cryptomorphism between Rank and Independent Sets

3.2 Flat or Closed Set Our next concept is one from geometry. A flat in a matroid is a subset that is rank-maximal: if you add anything new to a flat, its rank increases.

Definition 12. Let E be the ground set of the matroid M. A subset F ⊆ E is a flat if r(F ∪ {x}) > r(F ) for any x∈ / F . Flats

Flats are also called closed sets, a term borrowed from topology. We’ll usually use the term ‘flat’ throughout. Intuitively, flats are the points, lines and planes of a geometry.

Example 13. We return to the matroid in Example 11, pictured in Figure 4. Let’s list all the flats:

• rank 0 flats: There’s only one, and it’s f. Note: there is always only one rank 0 flat, if M has no loops, then the rank 0 flat is ∅, while if M has loops then it is the set of all loops.

• rank 1 flats: abf, cf, df, ef.

• rank 2 flats: In the discussion following Example 11, we determined all the maximal sets of rank 2: abef, cef, def, abcdf. These four lines are precisely the rank 2 flats.

• rank 3 flats: The entire matroid is the only rank 3 flat: abcdef.

Important things to notice:

1. ∅ will be a flat precisely when M has no loops.

2. E is always a flat in any matroid; it is the unique flat of rank r(M). 6 While it is pretty easy to pick out the flats from the picture of the geometry, it is a bit more difficult to find the flats of a graphic matroid from its graphic representation. To Flats in a describe the flats of a graphic matroid, we consider a graph G = (V,E) and a subset F of Graphic the edges E. Note that the graph (V,F ) has various connected components. Then, loosely Matroid speaking, F forms a flat in a graphic matroid if adding any edge to F reduces this number of connected components. More precisely, we let Π be a partition of the vertices of G, and then let FΠ be those edges of the graph both of whose endpoints are contained in the same part of the partition. Then FΠ forms a flat of M(G). See Figure 6.

Figure 6: A graph G with vertex partition Π = {123, 45, 67} and associated flat FΠ.

Example 14. The vertex-partition Π = {{v1, v2}, {v3}, {v4}} of the graph G in Figure 4 gives the flat abf while the partition Π = {{v1, v2, v3}, {v4}} gives abef. Conversely, the flat f is the collection of edges associated with the partition Π = {{v1}, {v2}, {v3}, {v4}}. We’ll examine the fundamental properties/axioms that flats satisfy in Section 5, but, as a quick preview, we’ll state one very important property for flats:

Proposition 15. If F1 and F2 are flats in a matroid, then so is F1 ∩ F2. We leave the proof as an exercise. As we noted above, flats have the property that they are rank-maximal, i.e., adding an element to a flat it is not already in increases its rank by one. We state this as a proposition and we include the proof.

Proposition 16. Let F be a flat of a matroid M with x∈ / F . Then r(F ∪ {x}) = r(F ) + 1.

Proof Proposition 16. First, by our definition of flats, we know r(F ∪ {x}) > r(F ). Let r(F ∪ {x}) = k, then there is an independent set I of size k contained in F ∪ {x}. If x ̸∈ I, then I ⊆ F and r(F ) = k, a contradiction. Thus, x ∈ I and I − x is an independent set of size k − 1 contained in F . Hence, r(F ) ≥ k − 1 = r(F ∪ {x}) − 1; combining this with the first inequality of the proof gives the result: r(F ) + 1 ≥ r(F ∪ {x}) > r(F ).

We’ve defined flats in terms of the rank function – how can we reverse this procedure to get the rank function of the matroid from its list of flats? As an example, suppose we are given the ground set E = {a, b, c} of a matroid and the collection of flats F = {∅, ab, c, abc}. Can we figure out the rank of any subset? The idea is straightforward: To compute the rank of a subset A ⊆ E, follow these simple steps: From flats to rank 1. Find the smallest flat that contains A – call this flat FA. 7 2. Find a maximal chain of flats F0 ( F1 ( ··· ( Fr = FA, where r(F0) = 0, r(F1) = 1, and so on.

3. Then r(A) is just the length of this chain, r; this is one less than the number of flats appearing in the maximal chain.

To continue with our example, we note that since ∅ is a flat, there are no loops. This gives us r(a) = r(b) = r(c) = 1. Now, since a and b are not flats, we know there is no flat ‘between’ ∅ and ab, so r(ab) = 1 (so ab is a multiple point). What does the maximal chain of flats ∅ ( ab ( abc tell us about the rank of M? It gives us r(∅) = 0, r(ab) = 1 and r(abc) = r(M) = 2. You can also check r(ac) = r(bc) = 2. See Figure 7 for a summary of how to move back and forth between flats and the rank function. The appropriate setting for the study of flats is theory, which we defer until Section 4.

.

Subsets whose rank is increased with the addition of any new element.

Rank Flats

. The length of a maximal chain of flats contained in the set

Figure 7: Cryptomorphism between Flats and the Rank Function

3.3 Hyperplanes Next, we consider special types of flats - hyperplanes; those maximal flats that are not the entire matroid (which is always a flat). Definition 17. Let E be the ground set of a matroid M. A subset H ⊆ E is a if H is a flat of M and if r(H) = r(M) − 1. Hyperplanes Example 18. Like flats, hyperplanes are also easy to pick out from the (geometric) pic- ture of the matroid. In Figure 4, the entire matroid has rank 3, so the hyperplanes are just the rank 2 flats: the lines (with the loop included); abcdf, abef, cef, def. In the graph G, the hyperplanes correspond to the sets of edges corresponding to the partitions: {{v1, v2, v3}, {v4}}; {{v1, v2, v4}, {v3}}; {{v1, v3, v4}, {v2}}; {{v1, v3}, {v2, v4}}. Hyperplanes are maximal flats of rank r(M) − 1, but there is no size requirement on hy- perplanes, so different hyperplanes can have different sizes. Thus, the maximal = maximum property that holds for bases (maximal independent sets) does not hold for hyperplanes. It’s obvious that we can determine all the hyperplanes of a matroid from its collection of flats – the hyperplanes are those flats H so that no flat H′ satisfies H ( H′ ( E, or, said another way, the maximal flats of F − E. Can this procedure be reversed? Can we reconstruct the flats of the matroid if we are given the ground set E and the collection of hyperplanes? It turns out that every flat is Flats from the of some collection of hyperplanes of the matroid. We’ll prove this later hyperplanes (see Proposition 36), but the procedure should be familiar: it mimics what we know to be true in . (Two non- planes intersect in a line and three such planes intersect at a line or point, and so on.) Thus, by forming all possible of various collections of hyperplanes, we can construct all the flats of the matroid, which is what we wanted to do. We note, E is the empty intersection of the hyperplanes.

8 Example 19. Let’s verify the flats in the example above can be constructed as the inter- section of sets of hyperplanes. First, the intersection of a hyperplane with itself gives that hyperplane - so we get flats of rank 2. The intersection of all hyperplanes is just f, the flat of rank 0 and the intersection of no hyperplanes is E. That leaves the rank 1 flats. Here is how to get them all: abf = abcdf ∩ abef cf = abcdf ∩ cef df = abcdf ∩ def ef = cef ∩ def You can check that these intersections correspond to the intersection of two lines in Figure 4. (Don’t forget that trivial lines aren’t drawn.)

. Maximal not E

Flats Hyperplanes Intersections .

Figure 8: Cryptomorphism between Flats and Hyperplanes

3.4 Closure Flats are also called closed sets, because they are closed with respect to the property that no additional elements can be added without increasing the rank. This operation of adding elements to a set while not increasing the rank is the essence of the closure operator. If A ⊆ E, then the closure of A, usually written A, is just the smallest flat containing A. This statement assumes that there is a smallest flat containing A, which is equivalent to proving that the intersection of flats is a flat. We’ll prove these assertions (and much more) in Section 5. Definition 20. Let M be a matroid with flats F and let A ⊆ E. Then the closure of A, Closure ∩ A = {F : A ⊆ F }. F ∈F

If you read the previous paragraph and the definition carefully, you’ll see we actually gave two different definitions of the closure operator: ∩ • Definition 20: A = {F : A ⊆ F }. F ∈F • Reformulation: A = F , where F is the smallest flat containing A; that is F is the flat with the property that A ⊆ F and for all flats F ′, if F ′ contains A, it also contains F . You are asked to show these definitions are equivalent in Exercise 8. In fact, more is true: If F is any family of subsets closed under intersection, then the associated closure operator will satisfy these two properties. This fact may be familiar to you if you’ve studied topology. Example 21. A last look at our example; let’s verify ad = abcdf using the definition. The only flats F that contain ad are abcdf and E, and so we’re done. What about a? The flats containing a are the lines abef and abcdf (and, of course, E itself). Thus a = abf. From the definition, it is clear that the flats in a matroid are precisely those sets F with F = F. The connection between closure operators and closed sets appears in many places Flats from throughout mathematics; we explore this in some detail in Section 5. closure 9 . Intersection of closed sets containing a given set

Flats Closure

. Sets equal to their closure .

Figure 9: Cryptomorphism between Closure and Flats

3.5 Mixing It Up In the last section we explored independent sets, bases and circuits, and, in this section, we added flats, hyperplanes, the closure operator and the rank function. We gave the cryptomorphisms between some pairs of terms; the ones we chose are ‘natural’ in a certain sense. In fact, there are cryptomorphisms between any pair of these seven families/functions. We’ll delve into this a bit more in the next few sections. We finally conclude this section with the following eerie connection between hyperplanes and circuits:

• A hyperplane is a maximal subset that does not contain a basis.

• A circuit is a minimal subset that is not contained in a basis.

. Circuits Bases Hyperplanes

Minimal Not−contained in Maximal Not−containing .

Figure 10: From bases to circuits, and from bases to hyperplanes

4 The Lattice of Flats of a Matroid

The flats of a matroid, ordered by inclusion, form a very pretty structure, called a geometric lattice2. Definition 22. A lattice L in which every element can be written at the join of atoms is said to be atomic. Atomic Lat- tice Definition 23. Let L be a lattice with rank function ρ.

• If ρ satisfies Semimodular ρ(x ∨ y) + ρ(x ∧ y) ≤ ρ(x) + ρ(y) Law for all x, y ∈ L, then ρ is semimodular and L is a semimodular lattice.

• If ρ satisfies Modular ρ(x ∨ y) + ρ(x ∧ y) = ρ(x) + ρ(y) Law for all x, y ∈ L, then ρ is modular and L is a modular lattice.

2The concept of a geometric lattice was introduced by G. Birkhoff [1] who was “ stimulated by the “matroid” concept.” In fact Birkhoff also called these lattices, “matroid lattices”.

10 Modular lattices are semimodular, but the converse is not generally true. Boolean lattices are modular: |A ∪ B| + |A ∩ B| = |A| + |B|. Next, we give the definition of a geometric lattice. Definition 24. A lattice L which is semimodular and atomic is a geometric lattice. Geometric Lattice Example 25. Consider the lattice L = (F, ⊆) where F = {∅, a, b, c, d, ad, bd, cd, abc, abcd}. The Hasse diagram for L is given in Figure 11. To show L is a geometric lattice, you need to check that each set appearing in F is a join of atoms, and that the rank function satisfies the semimodular law. We leave out all the details, but they aren’t hard. (In fact, L is a modular lattice.)

. abcd

ad bd cd abc

a b c d

φ

Figure 11: The Hasse diagram for the lattice in Example 25.

Example 26. Consider the lattice L = (F, ⊆) where F = {∅, a, b, c, ab, bc, abc}. The Hasse diagram for L is given in Figure 12. Then L is a not a geometric lattice. To see this, note that a ∨ c = abc. Then the semimodular fails for x = a and y = c: 3 = ρ(a ∨ c) + ρ(a ∧ c) > ρ(a) + ρ(c) = 2.

. abc

ab bc

a b c

φ

Figure 12: The Hasse diagram for the lattice in Example 26.

We now state the relationship between the flats of a matroid and lattices. This special structure of flats is very useful when proving matroid properties. Theorem 27. Let M = (E, F) be a matroid with flats F. Then (F, ⊆) is a geometric lattice. The collection F given in Example 25 are the flats of a matroid on E = {a, b, c, d}. For fun, you might like to draw a picture of this matroid and verify your flats match the elements of the lattice. (Hint: Since r(abc) = 2, the points a, b and c will be collinear. Now add d.) 11 5 Tying it Together with the Rank Function

In the previous sections, we defined several new matroid concepts and we gave a few hints about the cryptomorphisms that connect them. In this section, we give the axioms that the rank function of a matroid must satisfy and prove that if a function satisfies these axioms, then it is a rank function of a matroid. In doing this, we show that a matroid can be defined directly in terms of the rank function. Proving this amounts to giving a full proof of the cryptomorphism between the rank function and independent sets. After defining a matroid via its rank function, we use this function as a bridge between the “linear algebraic” concepts: independent sets, bases, circuits and the “geometric” con- cepts: flats, hyperplanes and closure. We’ll outline the proof of the cryptomorphism between the rank function and independent sets as well as the cryptomorphism between the rank function and the closure operator. In the next section we finish our study of cryptomor- phisms by indicating how flats, hyperplanes and the closure operator are cryptomorphic.

5.1 Rank and independence We begin with the definition of a matroid in terms of the rank function as promised. Theorem 28. Let E be a finite set with an -valued function r defined on subsets of E. Then r forms the rank function of a matroid iff for A, B ⊆ E:

(r1) 0 ≤ r(A) ≤ |A|. Normalization

(r2) If A ⊆ B, then r(A) ≤ r(B). Increasing

(r3) r(A ∪ B) + r(A ∩ B) ≤ r(A) + r(B). Semimodular

. abcdef a v   2   v b e 1  f  f abef abcdf def cef         e d    c   a b c d  abfefdf  cf v  v (i) 3 (ii) 4  f

Figure 13: The example matroid (i) M = M(G) (ii) G with the lattice of flats (iii) L.

Example 29. For our favorite example (see Figure 13), axioms (r1) and r(2) are easy to verify using the definition of the rank function; we’ll investigate (r3), the semimodular law, for a sample A and B. We verify (r3) holds for A = ac and B = bc; r(A) + r(B) = 2 + 2 > 2 + 1 = r(A ∪ B) + r(A ∩ B). Next, we’ll consider the rank 4 matroid in Figure 14. For many choices of A and B, (r3) will hold with equality (for instance, if A is any point and B is any line). This is not always the case; consider the lines A = ce and B = af; then r(A) + r(B) = 2 + 2 > 3 + 0 = r(A ∪ B) + r(A ∩ B). Before we prove Theorem 28, we investigate various equivalent reformulations of (r1), (r2) and (r3). For instance, it is easy to determine the rank of the empty set using (r1). Since 0 ≤ r(∅) ≤ 0, we immediately get the following axiom/property:

(r1′) r(∅) = 0.

Thus, (r1) implies (r1′). It is easy to see that the converse is false, but the set of three properties (r1), (r2), (r3) is equivalent to the set (r1′), (r2), (r3). 12 Figure 14: A rank 4 matroid.

You can also show the set (r1), (r2), (r3) is equivalent to the set (r1), (r2′), (r3), where (r2′) is the ‘unit-increase’ axiom:

(r2′) r(A) ≤ r(A ∪ x) ≤ r(A) + 1 for x ∈ E.

Our last equivalent reformulation involves the semimodular property. We can replace the semimodular axiom (r3) by a ‘local’ version (r3′):3

(r3′) For x, y∈ / A, if r(A) = r(A ∪ x) = r(A ∪ y), then r(A) = r(A ∪ x ∪ y).

Then, as before, we have the set (r1), (r2), (r3) is equivalent to the set (r1), (r2), (r3′). These equivalent axiom systems for the rank function will us more flexibility (i.e. they make our lives a bit easier). Proving that various axioms can be replaced by primed versions is a good exercise, so we leave these tasks to you, as an exercise (see Exercise 6b). We’ll also need the following generalization of (r3′) in our proof below.

Proposition 30. Let r be the rank function for a matroid. For any A ⊆ E and x1, x2, . . . , xn ∈ E, we have: ′′ (r3 ): If r(A) = r(A ∪ x1) = r(A ∪ x2) = ··· = r(A ∪ xn), then

r(A ∪ {x1, x2, . . . , xn}) = r(A).

The proof of Theorem 28 is quite similar in form to the proof of Theorem 5 in Section 2:

1. I → r: Given the independent sets I in a matroid, define the rank r of a set A as the size of the largest independent set contained in A and prove that the rank function r satisfies the properties (r1′), (r2) and (r3);

2. r → I: Now reverse the procedure: Given the rank function r of a matroid, define a collection of subsets I to be all subsets for which the size equals the rank; prove the collection I just defined satisfies the properties (I1′), (I2) and (I3).

3. Lastly, prove the cryptomorphisms compose correctly.

.. Size of a largest independent set contained in the given set Independent Rank Sets

. Sets whose size equals rank

Figure 15: Cryptomorphism between Rank and Independent Sets

3This was first proved by Whitney in his paper [4] that introduced matroids.

13 5.2 Rank and closure We next define a matroid in terms of its closure operator. Theorem 31. Let E be a finite set with closure operator A 7→ A defined on subsets of E. Then, the closure operator is the closure operator of a matroid iff for A, B ⊆ E:

(cl1) A ⊆ A. Increasing

(cl2) If A ⊆ B, then A ⊆ B. Monotonic

(cl3) A = A. Idempotent

(cl4) If p ∈ A ∪ q − A, then q ∈ A ∪ p. Maclane– Steinitz Example 32. For practice, let’s look at the Maclane–Steinitz exchange axiom (cl4) in a Exchange few examples. In the matroid in Figure 13, choose A = ab, p = c and q = d. You can check A = abf, A ∪ c = abcdf and A ∪ d = abcdf, so c ∈ A ∪ d − A. Then the exchange axiom (cl4) requires d ∈ A ∪ c, which is true. Next we’ll consider the rank 4 matroid given in Figure 14. This time, let’s pick A = bc and let q be any point q ̸∈ A, say q = f. What are the choices for the point p? We know A = abc and A ∪ f = abcef, so e is the only point (besides f) in A ∪ f − A. But f ∈ A ∪ e = A ∪ f = abcef, so (cl4) is satisfied here. We outline the proof of Theorem 31 below, but leave all of the details to you to work through. The structure of this proof constructs cryptomorphisms between the rank function and the closure operator. As before, the structure of the proof will be the same as that of Theorems 5 or 28.

. Set of elements whose addition to a given set does not increase its rank

Rank Closure

Length of a maximal chain of sets, equal to their closure and contained in the given set. .

Figure 16: Cryptomorphism between rank and closure

Sketch of proof for Theorem 31

1. Given the rank function r of a matroid, define the closure A of a set A as the set of elements that can be added to A without increasing its rank:

A = {x ∈ E : r(A ∪ x) = r(A)}.

Prove that this closure operator satisfies the properties (cl1), (cl2), (cl3) and (cl4).

2. Now reverse the procedure: Given the closure operator of a matroid, define r(A) to be the size of the largest subset I of A satisfying r(I) = |I|:

r(A) = max{|I| : r(I) = |I|}. I⊆A

Prove the function r just defined satisfies the properties (r1), (r2) and (r3).

3. Lastly, prove the cryptomorphisms compose correctly.

14 Defining closure in terms of the rank function is ‘natural’ in a certain sense, but defining the rank from the closure takes a detor through independent sets. This is not especially satisfying, but, as a thought experiment, we could define rank in terms of closure via the length of maximal chains of flats (where the flats are just those sets A satisfying A = A.) It’s debatable whether this approach is more satisfying.

6 Cryptomorphisms between Flats, Hyperplanes and Clo- sure

In this section we give two more definitions of a matroid, in terms of flats and hyper- planes. To show we can define a matroid via flats, or via hyperplanes, we will construct cryptomorphisms between each of these families and the closure operator. Brief advertisement: This veritable menagerie of cryptomorphic definitions actually gives us quite a bit of flexibility in studying and working with matroids. For example,if you are given a geometric representation of a matroid, it might be more natural to consider flats or hyperplanes than circuits, say. Having several different descriptions at our disposal lets us choose the definition that best fits our situation.

6.1 Flats As usual, we begin with a ground set E and a collection F of subsets of E, called flats, and define a matroid directly in terms of axioms for the family F. Theorem 33. Let E be a finite set and let F be a family of subsets of E. Then the family F forms the flats of a matroid iff:

(F1) E ∈ F,

(F2) If F1,F2 ∈ F, then F1 ∩ F2 ∈ F,

(F3) If F ∈ F and {F1,F2,...,Fk} is the set of flats that cover F , then {F1 − F,F2 − F,...,Fk − F } partition E − F .

Figure 17: The geometric motivation for axiom (F3).

15 The the geometric motivation behind the partitioning axiom (F3) comes from the fol- lowing idea: Given a line in R3, the planes that contain this line partition the rest of R3. Figure 17 shows this interpretation of (F3) in R3. (We only included 3 of the infinite number of planes that contain the given line and only 4 of the points on the line.) Let’s examine this axiom in a few examples. Example 34. Consider the rank 4 matroid given geometrically in Figure 14. The flats of the matroid include the points, lines and planes in the picture. To show how (F3) works, we’ll let F = ae and consider those flats that cover F in the geometric lattice. In this example, since F is a line, the flats that cover F are just the planes that contain it. There are three such planes: F1 = ade, F2 = abcef and F3 = aeg. (Note that planes ade and aeg are not explicitly drawn in the picture, but they are rank 3 flats.) Then, we can see the collection {F1 − F,F2 − F,F3 − F } partitions {E − F }. Geometrically, this means each point p not on the line F is in a unique containing the point p and the line F . See Table 34 for this partition.

Point b c d f g Plane abcef abcef ade abcdf aeg

Table 1: Points not on line ae and the unique planes that contain them.

Example 35. Consider the lattice L = (F, ⊆) in Figure 12. This is not a geometric lattice, i.e., the elements of the lattice are not the flats of a matroid. We can easily verify that axiom (F3) does not hold for this system: If F = a, then the only ‘flat’ covering F is F1 = ab. Clearly F1 − F does not give a partition of E − F .

. Intersection of closed sets containing a given set

Flats Closure

. Sets equal to their closure .

Figure 18: Cryptomorphism between flats and closure

The proof of Theorem 33 follows a typical cryptomorphic pattern. In part 1, we must prove the flat properties (F1), (F2) and (F3) are always satisfied in a matroid by using the closure axioms (cl1), (cl2), (cl3) and (cl4). In part 2, we show the converse and part 3 that the cryptomorhpisms compose correctly. In the proof, it turns out that we don’t need (cl4) to prove (F1) or (F2) and in part 2 – again, we don’t need to assume (F3) until we prove (cl4), the Maclane-Steinitz exchange axiom. In fact, the equivalence between the three closure axioms (cl1), (cl2), (cl3) and the flat axioms (F1) & (F2) is a topological fact. Matroids don’t really enter into the game until we get to the final axiom (exchange for closure, and covering for flats).

6.2 Hyperplanes Hyperplanes are maximal proper flats. (A flat is proper if it isn’t the entire ground set E.) Thus, H is a hyperplane iff E covers H in the lattice of flats of the matroid M. When we presented the lattice of flats, one of the key facts was the following:

16 The lattice of flats is atomic, i.e., every flat is a join of atoms.

An upside-down version of this fact is also true: Proposition 36. Let M be a matroid on the ground set E. Then the lattice of flats is co-atomic, i.e., every flat is the intersection of some collection of hyperplanes. The key to the proof is the flat property (F3) – the flats that cover a given flat partition the complement of that flat. The proof proceeds by induction on the corank of the flat, i.e., r(M) − r(F ). Given that geometric lattices are co-atomic, one might be tempted to turn a geometric lattice upside-down. The resulting lattice will be atomic (since the original was co-atomic), but is it semi-modular? Let’s look at an example. Example 37. Let M be the matroid in Figure 19.

Figure 19: Matroid M for Example 37 and 39

The lattice of flats for M is given in Figure 20. Now let H1 = ef and H2 = abcd be two hyperplanes of M. Then, in the upside-down lattice, the ‘rank’ function r′ would satisfy ′ ′ ′ ′ r (H1) = r (H2) = 1, but r (H1 ∩ H2) = r (∅) = 3. (This ‘rank’ function is just the corank function in the original matroid M.) Thus, the upside-down lattice is not the lattice of flats of a matroid, and we’ve more-or-less reached a dead end. You may wish to investigate when the inverted lattice is geometric.

Figure 20: The lattice of flats for M.

Theorem 38. Let E be a finite set and let H be a family of subsets of E. Then the family H forms the hyperplanes of a matroid iff:

(H1) E ̸∈ H

17 (H2) If H1,H2 ∈ H and H1 ⊆ H2, then H1 = H2. clutter

(H3) For all distinct H1,H2 ∈ H and for all x ∈ E, there exists H ∈ H with (H1 ∩H2)∪x ⊆ H. The proof is left for you to complete. Note, the structure of the proof should mimic that of the other cryptomorphisms, such as the proof of Theorem 8. Here we check the axioms for the matroid given in Figure 37. Axioms (H1) and (H2) should have a familiar feel - (H1) is a non-triviality condition and (H2) is the clutter axiom. (H3) is the ‘matroid’ axiom.

Example 39. For instance, consider the hyperplanes H1 = abcd, H2 = abe and x = f of the matroid in Figure 37. Axiom (H3) asserts the existence of a hyperplane H that contains abf. In this case, H = abf is a hyperplane, so (H3) is satisfied (and the required hyperplane H was unique). For practice, let’s try this one more time: Let H1 = ce and H2 = df, with x = a. Then we have H1 ∩ H2 = ∅, so we only need find a hyperplane that contains the point a. This time, there are lots of choices – there are three hyperplanes that satisfy (H3): abcd, abe, and abf.

6.3 Comments about Complements If you can define a matroid in terms of a family of subsets F, then you can also define a matroid in terms of the complements of the members of F. Here, in convenient tabular form, are three popular family complements:

Table 2: Complementary Families

Family Complementary family Flats F Open sets O Bases B Basis complements BC Hyperplanes H Cocircuits C∗

Recall that flats are also called closed sets. Then the term ‘open set’ makes sense if you’ve studied topology. The open sets can be axiomitized using the axioms for closed sets as follows: The open sets O ⊆ 2E of a matroid satisfy Open Sets (O1) ∅ ∈ O, (O2) If A, B ∈ O, then A ∪ B ∈ O,

(O3) ∀O1,O2 ∈ O, ∀x ∈ O1 ∩ O2 ∃O3 ∈ O

(O1 ∪ O2) \ (O1 ∩ O2) ⊆ O3 ⊆ (O1 ∪ O2) \{x}.

The family of basis complements is extremely important: It turns out that the com- plements of the bases also satisfy the basis axioms (B1), (B2) and (B3). That will form the foundation of the theory of . Finally, the complement of a hyperplane is called a cocircuit. Cocircuits are also called bonds, a term borrowed from graph theory. For a Cocircuit one sentence preview (keeping in mind that a circuit is minimal with respect to not being Bond contained in a basis), consider the following:

C∗ is a cocircuit iff C∗ is minimal with respect to not being contained in a basis complement. 18 7 Application to Optimization: The Greedy Algorithm

The are many instances in which we want to connect a collection of objects (computers, houses, cities) in some optimal way. For example, suppose we want to connect a of computers with cables. If we think of the computers as vertices and the cable between them as edges, then we are searching for an optimal connected graph. If we are add the requirement that we want to use the smallest number of cables to connect the computers, then it is easy to see we won’t have any cycles. Thus, what we seek is a spanning tree; see Figure 21.

Figure 21: Networking Computers

Perhaps the cable we are using can be cut to any length. If this is the case then we might ask to connect the computers in such a way that the total length of cable used is minimized. Note that this requires us to know something about the distance between computers or weight of an edge. Thus, our solution is a spanning tree with minimum total weight; see Figure 22.

8 3 3 4 2 3 2 3 3 4 3 5 5 3 3 2 3 2 a b

Figure 22: (a) A Computer Network with Distances (b) A Minimum Weight Spanning Tree of the Computer Network

The example above are special cases of a more general matroid optimization problem, stated below. We notice that one example asked for the weight to be minimized while in the other it is maximized. We discuss a solution (with proof) of the maximization problem, and note that the ‘greedy’ procedure given also solves the minimization problem. This problem is referred to in the literature as the Minimum Spanning Tree (MST) problem. The (MST) problem has a long and rich history, see [2] for details, it was first mentioned by Otaker Bor˙ovka in 1926 in the context of an optimal power-line network in Southern Moravia. Given a matroid∑ M = (E, I) with weight function w : E → R we define the weight of a subset w(A) = x∈A w(x). Then our networking problems above motivate the following general matroid problem.

Matroid Optimization Problem

Given a matroid M = (E, I) with weight function w : E → R, find a basis B ∈ B of maximum weight. The amazing thing about this problem is that is can be solved quite easily. We present

19 an algorithm, the greedy algorithm,4 that solves the matroid optimization problem. The proof that this really works is given in Theorem 42.

Greedy Algorithm

Input: A finite set E, a weight function w : E → R and a family I of subsets of E.

Order the elements of E: e1, e2, . . . , en so that w(ei) ≥ w(ej) for i ≤ j.

Set B := ∅.

For i = 1 to n, if B ∪ ei ∈ I, then set B := B ∪ ei.

Output: B, a maximal member of I of maximum weight.

Informally, we can think of the greedy algorithm as repeated use of the rule:

Choose the best you can at every step.

Mathematically, the rule is ‘choose the element of largest weight that doesn’t create a circuit with what you’ve already chosen.’ Saying the greedy algorithm solves the optimization problem means that no matter how you choose your elements, you can’t beat the greedy algorithm; that is you can’t find a basis B′ of larger total weight. The other remarkable thing about this algorithm is that it not only ‘works’ for all matroids, but it gives us another way to characterize matroids! Before stating this theorem, we give an application to the job assignment problem. Example 40. Before hiring the staff for your new restaurant, you decide to interview the applicants to determine who will be the best employee (you hope). For each person that you interview, you give them a rating, from 1 to 5, with 5 being the best. You are interested in hiring the best three people for the three positions: cook, food taster and kitchen cleaner. The qualifications and ratings of the five applicants, Alice, Bob, Carla, Darla and Ed, is given in Figure 23. Obviously, the best three employees are Bob, Carla and Ed. Unfortunately, the three of them can not all be hired to fill the positions as they are not qualified to perform the three jobs (or, in matroid language, they do not form an independent set in the associated transversal matroid.) Thus, the problem is the same as our bike path problem in that we are looking for a basis in the transversal matroid of maximum weight. You can achieve your goal of staffing all three positions with the best possible employees by using the greedy algorithm: First hire Carla for the food tester job, then Ed as the kitchen cleaner and lastly hire either Alice and Darla, whom you perceive as equally valuable employees, and pick one randomly to be your cook. We still need to prove our claim that the Greedy Algorithm works as well as our claim that it characterizes matroids. First, call a family of subsets of a (finite) set a set system if the family satisfies our old familiar independent set axioms (I1) and (I2):

4This algorithm is also called Kruskal’s algorithm, after Joseph Kruskal who published this algorithm in 1956 [3]. Kruskal is an American mathematician who worked in the prestigious Bell Labs’ math group. This research group was started at the companies inception in 1925 and has contributed greatly to advances in both mathematics and communications. (Bell labs is now Alcatal- Lucent.)

20 Figure 23: A bipartite graph models the job assignment choices.

Definition 41. A pair (E, I) is a set system if I is a non-empty collection of subsets of E Set System that is closed under taking subsets. Thus, if (E, I) is a matroid, then (E, I) is a set system. Theorem 42. Let (E, I) be a set system. For all weight functions w : E → R the greedy algorithm produces a maximal member of I of maximum weight if and only if the family I also satisfies (I3), i.e., I is the collection of independent sets of a matroid.

Proof Theorem 42. (⇐) Given a matroid M = (E, I), let w be any weight function on E and let BGA be the output of the greedy algorithm for this matroid and weight function. We first note that by construction, BGA ∈ I. Now, for all e ∈ E − BGA, we claim BGA ∪ e ̸∈ I, since otherwise the greedy algorithm would have added e to BGA instead of stopping. So, BGA a maximal member of I, that is, a basis of M. Next we must show that for all bases B, w(BGA) ≥ w(B). Order the elements of B and Note: B BGA by non-increasing weight, suppose B = {f1, f2, . . . , fr} and BGA = {e1, e2, . . . , er}. and BGA If w(ei) ≥ w(fi) for all i, then we’re done, so suppose otherwise. Let k be the first time have the w(ek) < w(fk), so w(ei) ≥ w(fi) for all i < k. same size Let I = {e1, e2, . . . , ek−1} ⊆ BGA and J = {f1, f2, . . . , fk} ⊆ B. We note I,J ∈ I with as they are |I| < |J|, thus (I3) applies. There is an element fj ∈ J for some 1 ≤ j ≤ k with I ∪ fj ∈ I. both bases. Now w(fj) ≥ w(fk) > w(ek). Since both I ∪ fj and I ∪ ek are independent, both ek and fj are elements that could be added to I to create a larger independent set. But then the greedy algorithm would have chosen fj instead of ek at this stage, which is a contradiction. Thus, for all bases B, w(B) ≤ w(BGA). (⇒) We will prove the contrapositive, that is, given a set system (E, I); if (E, I) does not satisfy (I3), then there is a weight function w : E → R so that the greedy algorithm does not produce a maximal member of I of maximum weight. Since (E, I) does not satisfy (I3), there are sets I1 and I2 with |I1| < |I2| so that for all x ∈ I2, I1 ∪x ̸∈ I. We’ll use these sets to define our weight function w as follows:  2 e ∈ I ∩ I  1 2 1 e ∈ I1 − I2 w(e) =  ∈ −  α e I2 I1 0 otherwise where α is chosen so that 0 < |I1 − I2|/|I2 − I1| < α < 1. See Figure 24. What does the greedy algorithm do to this set system and weight function? First, it chooses all elements of weight 2 and then it adds all the elements of weight 1; thus all of I1 has been chosen. Elements of the next largest weight α are considered next, but none 21 I 1 I2

1 2 α

0

Figure 24: The weights of elements of E.

of these can be added to I1 to yield an independent set, by assumption. Thus, the greedy algorithm is forced to add elements of weight 0 to extend I1 to a maximal independent set. So, the greedy algorithm produces a maximal member of I, say B1, with

w(B1) = 2|I1 ∩ I2| + 1|I1 − I2| + 0.

On the other hand, I2 is contained in a maximal independent set, say B2 with

w(B2) = 2|I1 ∩ I2| + α|I2 − I1| + 0.

By the choice of α, w(B2) = 2|I1 ∩ I2| + α|I2 − I1| > 2|I1 ∩ I2| + |I1 − I2| = w(B1), which is a contradiction.

Example 43. Let E = {a, b, c, d} and I = {∅, a, b, c, d, ab, ac, ad, acd} be a set system with 3 weight function: w(a) = 2, w(b) = 1, w(c) = w(d) = 4 . We verify that the greedy algorithm does not work in this case. The output from the greedy algorithm is the maximal set ab of 1 weight 3. By inspection, we can see that the maximal set acd has weight 3 2 . The greedy algorithm fails as the set system is not a matroid. (To verify (E, I) is not a matroid, check (I3) fails for the sets acd and ab.) This weight function is an example of the one used in the last half of the proof of Theorem 42. It is no surprise to us that the greedy algorithm fails in Example 43 as the set system is not a matroid. Our theorem tells us matroids have critical ties to optimization.

22 8 Exercises

1. Let M be the rank 3 matroid pictured in Figure 25. This configuration is called the Pappus configuration, and its discovery dates back to Pappus of Alexandria.5 Pappus knew the following:

• Start with two 3-point lines abc and def. • Now form the point g as the intersection of the two lines ae and bd, i.e., g = ae∩bd. • Continue in this way to form the points h = af ∩ cd and i = bf ∩ ce. • Then the three points g, h and i must be collinear (in the Euclidean plane).

That’s why this is a famous configuration from classical geometry.

(a) Find all of the hyperplanes of M (these are lines of the matroid – there are 18). (b) How many bases does M have? (c) Show that M is not graphic (think about how many vertices and edges a repre- senting graph would have - you may assume that such a graph is connected). (d) Show that every point is in the same number of flats and bases, and determine these two numbers. (e) True/False: Every pair of points is in the same number of bases.

a b c

g i h

d e f

Figure 25: The Pappus configuration

2. Show the Escher ‘matroid’ given in Figure 26 is not a matroid using the axiom system for a) flats, b) hyperplanes, c) closure operator and d) rank function.

3. Let M be a matroid with e an element of the matroid. How many ways can charac- terize a loop? Here’s a start. Show that the following statements are all equivalent to each other.

(a) e is an isthmus (i.e., e is in every basis). (b) e is in no circuit. (c) For any independent set I, I ∪ {e} is independent. (d) For any set A with x ̸∈ A, r(A ∪ {e}) = r(A) + 1. (e) For any flat F , F − e is a flat.

23 e f

c

d

g b

a

Figure 26: The Escher ‘matroid’ is not a matroid.

4. (a) If C is a circuit and C∗ is a cocircuit, prove that |C ∩ C∗| ̸= 1. Recall, a cocircuit Circuit- is the complement of a hyperplane. (Hint: Try to do this by contradiction.) Cocircuit (b) Suppose M is a matroid, C is a circuit and F is a flat. Show that it is impossible Intersection for C and the complement of F to meet in exactly one point: i.e., show that |F c ∩ C|= ̸ 1.

5. Let B be a basis of a matroid M and suppose x∈ / B.

(a) Use the circuit elimination axiom (C3) to show that B ∪ x contains a unique circuit. This is called the basic circuit determined by B and x. Basic Cir- (b) Suppose C is a circuit in M. Show that there is a basis B and an element x∈ / B cuit so that C is the basic circuit determined by B and x. Thus, every circuit is a basic circuit.

6. The local semimodularity axiom (r3′) for the rank function is: (r3′) If r(A) = r(A∪x) = r(A ∪ y), then r(A ∪ {x, y}) = r(A).

(a) Prove that (r3′) follows from the standard rank axioms (r1), (r2) &(r3). (b) Prove (r1), (r2), (r3) is equivalent to (r1), (r2), (r3′). (c) Prove Proposition 30: the rank function of a matroid satisfies the generalized local semimodularity axiom: ′′ (r3 ): If r(A) = r(A ∪ x1) = r(A ∪ x2) = ··· = r(A ∪ xn), then

r(A ∪ {x1, x2, . . . , xn}) = r(A).

7. Let M be a matroid on E with rank function r.

(a) Show that for all A and B, r(A ∪ B) = r(A ∪ B) and r(A ∩ B) = r(A ∩ B) (b) Use (a) to show that if ρ is an integer-valued function defined on subsets of E satisfying (r1), (r2) and

for all flats F1,F2 of M, ρ(F1) + ρ(F2) ≥ ρ(F1 ∪ F2) + ρ(F1 ∩ F2),

then ρ is the rank function of a matroid. (That is show that if ρ is semimodular on flats then ρ semimodular on all sets.)

5Pappus is generally believed to have lived in the late 3rd century BC. The majority of his most famous work entitled “Collection” has survived. In this work, Pappus investigated a wide range of topics spanning from arithmetic to geometry to mechanics. In his work, he considered many questions, such as, why a hexagon is used in a honeycomb? 24 8. Show the following are equivalent: ∩ (a) A = {F : A ⊆ F }. F ∈F (b) A = F , where F is the smallest flat containing A; that is F is the flat so that A ⊆ F and for all flats F ′, if F ′ contains A, it also contains F .

9. Let E be a finite set and let D be a family of subsets of E called dependent sets satisfying: Dependent Sets (D1) ∅ ̸∈ D,

(D2) If D1 ∈ D, and D1 ⊆ D2 then D2 ∈ D,

(D3) If D1,D2 ∈ D with D1 ≠ D2, then either D1 ∩ D2 ∈ D or D1 ∪ D2 − x ∈ D for any x ∈ E.

Show a matroid can be defined in terms of dependent sets. [Hint: Show M = (E, C) is crytpomorphic M = (E, D).]

10. Let E be a finite set and let S be a family of subsets of E called spanning sets satisfying: Spanning Sets (S1) E ∈ S,

(S2) If S1 ∈ S, and S1 ⊆ S2 then S2 ∈ S,

(S3) If S1,S2 ∈ S and |S1| < |S2|, then there is an element x ∈ S2 − S1 so that S2 − x ∈ S. Show a matroid can be defined in terms of spanning sets. [Hint: Show M = (E, B) is crytpomorphic M = (E, S).]

11. Let M = (E, I) be a matroid with weight function w : E → R.

(a) Modify the greedy algorithm to find a basis B ∈ B of minimum weight. Prove that your modification produces a minimum weight basis. (b) Show that if the weights are distinct (w(e) = w(f) ⇒ e = f), then there is a unique solution to the matroid optimization problem.

25 Matroid Axiom Systems for a matroid M defined on a ground set E. Independent sets I

(I1) I ̸= ∅,

(I1′) ∅ ∈ I,

(I2) If J ∈ I and I ⊆ J, then I ∈ I,

(I3) If I,J ∈ I with |I| < |J|, then there is some element x ∈ J − I with I ∪ {x} ∈ I.

(I3′) If I,J ∈ I with |J| = |I| + 1, then there is some element x ∈ J − I with I ∪ {x} ∈ I.

Bases B

(B1) B ̸= ∅.

(B2) If B1,B2 ∈ B and B1 ⊆ B2, then B1 = B2. ′ (B2 ) If B1,B2 ∈ B, then |B1| = |B2|

(B3) If B1,B2 ∈ B and x ∈ B1 − B2, then there is an element y ∈ B2 − B1 so that B1 − x ∪ {y} ∈ B. ′′ (B3 ) If B1,B2 ∈ B with x ∈ B1 − B2, then there is an y ∈ B2 − B1, so that B1 − x ∪ y and B2 − y ∪ x are bases. Circuits C

(C1) ∅ ̸∈ C,

(C2) If C1,C2 ∈ C and C1 ⊆ C2, then C1 = C2,

(C3) If C1,C2 ∈ C with C1 ≠ C2, and x ∈ C1 ∩ C2, then C3 ⊆ C1 ∪ C2 − x for some C3 ∈ C. ′ (C3 ) If C1,C2 ∈ C with C1 ≠ C2, x ∈ C1 ∩ C2, and y ∈ C1 − C2 then y ∈ C3 ⊆ C1 ∪ C2 − x for some C3 ∈ C. Rank function r For any A ⊆ E:

(r1) 0 ≤ r(A) ≤ |A|.

(r1′) r(∅) = 0.

(r2) If A ⊆ B, then r(A) ≤ r(B).

(r2′) r(A ∪ {x}) = r(A) or r(A) + 1.

(r3) r(A ∪ B) + r(A ∩ B) ≤ r(A) + r(B).

(r3′) If r(A) = r(A ∪ x) = r(A ∪ y), then r(A ∪ {x, y}) = r(A).

′′ 1. (r3 ): If r(A) = r(A ∪ x1) = r(A ∪ x2) = ··· = r(A ∪ xn), then

r(A ∪ {x1, x2, . . . , xn}) = r(A).

26 Flats F

(F1) E ∈ F,

(F2) If A, B ∈ F, then A ∩ B ∈ F,

(F3) If F ∈ F and {F1,F2,...Fk} is the set of flats that cover F , then {F1 − F,F2 − F,...,Fk − F } partition E − F .

Open Sets O

(O1) ∅ ∈ O,

(O2) If A, B ∈ O, then A ∪ B ∈ O,

(O3) ∀O1,O2 ∈ O, ∀x ∈ O1 ∩ O2 ∃O3 ∈ O

(O1 ∪ O2) \ (O1 ∩ O2) ⊆ O3 ⊆ (O1 ∪ O2) \{x}.

Hyperplanes H

(H1) E ̸∈ H

(H2) If H1,H2 ∈ H and H1 ⊆ H2, then H1 = H2.

(H3) For all distinct H1,H2 ∈ H and for all x ∈ E, there exists H ∈ H with (H1 ∩H2)∪x ⊆ H.

′ (H3 ) For all distinct H1,H2 ∈ H, x ̸∈ H1 ∪ H2 and y ∈ H1 − H2, there exists H ∈ H with (H1 ∩ H2) ∪ x ⊆ H and y ̸∈ H. Spanning Sets S

(S1) E ∈ S,

(S2) If S1 ∈ S, and S1 ⊆ S2 then S2 ∈ S,

(S3) If S1,S2 ∈ S and |S1| < |S2|, then there is an element x ∈ S2 − S1 so that S2 − x ∈ S.

References

[1] G. Birkhoff. Lattice Theory, volume XXV. American Mathematical Society, Providence, RI, 1967.

[2] R. Graham and P. Hell. On the history of the minimum spanning tree problem. IEEE Ann. Hist. of Comput., 7:43–57, 1985.

[3] J. Kruskal. On the shortest spanning tree of a graph and the traveling salesman problem. Proc. Amer. Math. Soc., 7:48–50, 1956.

[4] H. Whitney. On the abstract properties of linear dependence. Amer. J. Math, 57:509– 533, 1935.

27