What Is a Matroid? A Visual Introduction

Linear algebra has independent vectors. Graph theory has acyclic edge sets (forests). These two ideas look unrelated, yet they obey the same abstract rules. A matroid is exactly that abstraction.

Definition

A matroid is a pair M=(E,I)M = (E, \mathcal{I}) where EE is a finite ground set and I\mathcal{I} is a family of subsets of EE called independent sets, satisfying three axioms:

(I1)I(I2)AI and BA    BI(I3)A,BI, A<B    eBA:A{e}I\begin{aligned} &\text{(I1)} && \emptyset \in \mathcal{I} \\ &\text{(I2)} && A \in \mathcal{I} \ \text{and}\ B \subseteq A \implies B \in \mathcal{I} \\ &\text{(I3)} && A, B \in \mathcal{I},\ |A| < |B| \implies \exists\, e \in B \setminus A : A \cup \{e\} \in \mathcal{I} \end{aligned}

(I2) is the hereditary property: any subset of an independent set is independent. (I3) is the exchange property, and it is the heart of the structure — it forces every maximal independent set to have the same size.

The graphic matroid

The cleanest example takes EE to be the edges of a graph and calls a set of edges independent when it contains no cycle (i.e. it is a forest). The visualization below builds one greedily: edges that keep the set acyclic are added, edges that would close a cycle are rejected.

Bases, rank, and circuits

Three derived notions describe any matroid:

In the example above, B={e1,e2,e3}B = \{e_1, e_2, e_3\} is a basis, the rank is 33, and both {e1,e2,e3,e4}\{e_1, e_2, e_3, e_4\} and {e1,e2,e5}\{e_1, e_2, e_5\} contain a circuit.

Why matroids matter: the greedy theorem

Matroids are not just a tidy generalization — they pin down precisely when greed pays off. Assign a weight to each element of EE and run the greedy algorithm: sort elements, then add each one whenever it keeps the set independent.

Rado–Edmonds theorem. For a hereditary set system (E,I)(E, \mathcal{I}), the greedy algorithm returns a maximum-weight basis for every weight function if and only if (E,I)(E, \mathcal{I}) is a matroid.

Applied to the graphic matroid this is exactly Kruskal’s algorithm for the minimum spanning tree. The reason Kruskal works is not luck — it is that forests form a matroid. \blacksquare