From HandWiki
Short description: Abstraction of linear independence of vectors

In combinatorics, a branch of mathematics, a matroid /ˈmtrɔɪd/ is a structure that abstracts and generalizes the notion of linear independence in vector spaces. There are many equivalent ways to define a matroid axiomatically, the most significant being in terms of: independent sets; bases or circuits; rank functions; closure operators; and closed sets or flats. In the language of partially ordered sets, a finite simple matroid is equivalent to a geometric lattice.

Matroid theory borrows extensively from the terminology of both linear algebra and graph theory, largely because it is the abstraction of various notions of central importance in these fields. Matroids have found applications in geometry, topology, combinatorial optimization, network theory and coding theory.[1][2]


There are many equivalent ways to define a (finite) matroid.[3]

Independent sets

In terms of independence, a finite matroid [math]\displaystyle{ M }[/math] is a pair [math]\displaystyle{ (E,\mathcal{I}) }[/math], where [math]\displaystyle{ E }[/math] is a finite set (called the ground set) and [math]\displaystyle{ \mathcal{I} }[/math] is a family of subsets of [math]\displaystyle{ E }[/math] (called the independent sets) with the following properties:[4]

  • (I1) The empty set is independent, i.e., [math]\displaystyle{ \emptyset\in\mathcal{I} }[/math].
  • (I2) Every subset of an independent set is independent, i.e., for each [math]\displaystyle{ A'\subseteq A\subseteq E }[/math], if [math]\displaystyle{ A\in\mathcal{I} }[/math] then [math]\displaystyle{ A'\in\mathcal{I} }[/math]. This is sometimes called the hereditary property, or the downward-closed property.
  • (I3) If [math]\displaystyle{ A }[/math] and [math]\displaystyle{ B }[/math] are two independent sets (i.e., each set is independent) and [math]\displaystyle{ A }[/math] has more elements than [math]\displaystyle{ B }[/math], then there exists [math]\displaystyle{ x\in A \backslash B }[/math] such that [math]\displaystyle{ B \cup \{x\} }[/math] is in [math]\displaystyle{ \mathcal{I} }[/math]. This is sometimes called the augmentation property or the independent set exchange property.

The first two properties define a combinatorial structure known as an independence system (or abstract simplicial complex). Actually, assuming (I2), property (I1) is equivalent to the fact that at least one subset of [math]\displaystyle{ E }[/math] is independent, i.e., [math]\displaystyle{ \mathcal{I}\neq\emptyset }[/math].

Bases and circuits

Main page: Basis of a matroid

A subset of the ground set [math]\displaystyle{ E }[/math] that is not independent is called dependent. A maximal independent set—that is, an independent set that becomes dependent upon adding any element of [math]\displaystyle{ E }[/math]—is called a basis for the matroid. A circuit in a matroid [math]\displaystyle{ M }[/math] is a minimal dependent subset of [math]\displaystyle{ E }[/math]—that is, a dependent set whose proper subsets are all independent. The terminology arises because the circuits of graphic matroids are cycles in the corresponding graphs.[4]

The dependent sets, the bases, or the circuits of a matroid characterize the matroid completely: a set is independent if and only if it is not dependent, if and only if it is a subset of a basis, and if and only if it does not contain a circuit. The collections of dependent sets, of bases, and of circuits each have simple properties that may be taken as axioms for a matroid. For instance, one may define a matroid [math]\displaystyle{ M }[/math] to be a pair [math]\displaystyle{ (E,\mathcal{B}) }[/math], where [math]\displaystyle{ E }[/math] is a finite set as before and [math]\displaystyle{ \mathcal{B} }[/math] is a collection of subsets of [math]\displaystyle{ E }[/math], called "bases", with the following properties:[4]

  • (B1) [math]\displaystyle{ \mathcal{B} }[/math] is nonempty.
  • (B2) If [math]\displaystyle{ A }[/math] and [math]\displaystyle{ B }[/math] are distinct members of [math]\displaystyle{ \mathcal{B} }[/math] and [math]\displaystyle{ a\in A\smallsetminus B }[/math], then there exists an element [math]\displaystyle{ b\in B\smallsetminus A }[/math] such that [math]\displaystyle{ (A \smallsetminus \{ a \}) \cup \{b\} \in \mathcal{B} }[/math]. This property is called the basis exchange property.

It follows from the basis exchange property that no member of [math]\displaystyle{ \mathcal{B} }[/math] can be a proper subset of another.

Rank functions

It is a basic result of matroid theory, directly analogous to a similar theorem of bases in linear algebra, that any two bases of a matroid [math]\displaystyle{ M }[/math] have the same number of elements. This number is called the rank of [math]\displaystyle{ M }[/math]. If [math]\displaystyle{ M }[/math] is a matroid on [math]\displaystyle{ E }[/math], and [math]\displaystyle{ A }[/math] is a subset of [math]\displaystyle{ E }[/math], then a matroid on [math]\displaystyle{ A }[/math] can be defined by considering a subset of [math]\displaystyle{ A }[/math] to be independent if and only if it is independent in [math]\displaystyle{ M }[/math]. This allows us to talk about submatroids and about the rank of any subset of [math]\displaystyle{ E }[/math]. The rank of a subset [math]\displaystyle{ A }[/math] is given by the rank function [math]\displaystyle{ r(A) }[/math] of the matroid, which has the following properties:[4]

  • (R1) The value of the rank function is always a non-negative integer.
  • (R2) For any subset [math]\displaystyle{ A\subset E }[/math], we have [math]\displaystyle{ r(A) \le |A| }[/math].
  • (R3) For any two subsets [math]\displaystyle{ A, B\subset E }[/math], we have: [math]\displaystyle{ r(A\cup B)+r(A\cap B)\le r(A)+r(B) }[/math]. That is, the rank is a submodular function.
  • (R4) For any set [math]\displaystyle{ A }[/math] and element [math]\displaystyle{ x }[/math], we have: [math]\displaystyle{ r(A)\le r(A\cup\{x\})\le r(A)+1 }[/math]. From the first inequality it follows more generally that, if [math]\displaystyle{ A\subseteq B\subseteq E }[/math], then [math]\displaystyle{ r(A)\leq r(B)\leq r(E) }[/math]. That is, rank is a monotonic function.

These properties can be used as one of the alternative definitions of a finite matroid: if [math]\displaystyle{ (E,r) }[/math] satisfies these properties, then the independent sets of a matroid over [math]\displaystyle{ E }[/math] can be defined as those subsets [math]\displaystyle{ A }[/math] of [math]\displaystyle{ E }[/math] with [math]\displaystyle{ r(A)=|A| }[/math]. In the language of partially ordered sets, such a matroid structure is equivalent to the geometric lattice whose elements are the subsets [math]\displaystyle{ A\subset M }[/math], partially ordered by inclusion.

The difference [math]\displaystyle{ |A|-r(A) }[/math] is called the nullity of the subset [math]\displaystyle{ A }[/math]. It is the minimum number of elements that must be removed from [math]\displaystyle{ A }[/math] to obtain an independent set. The nullity of [math]\displaystyle{ E }[/math] in [math]\displaystyle{ M }[/math] is called the nullity of [math]\displaystyle{ M }[/math]. The difference [math]\displaystyle{ r(E)-r(A) }[/math] is sometimes called the corank of the subset [math]\displaystyle{ A }[/math].

Closure operators

Let [math]\displaystyle{ M }[/math] be a matroid on a finite set [math]\displaystyle{ E }[/math], with rank function [math]\displaystyle{ r }[/math] as above. The closure (or span) [math]\displaystyle{ \operatorname{cl}(A) }[/math] of a subset [math]\displaystyle{ A }[/math] of [math]\displaystyle{ E }[/math] is the set

[math]\displaystyle{ \operatorname{cl}(A) = \Bigl\{x\in E\mid r(A)=r\bigl(A\cup\{x\}\bigr)\Bigr\}. }[/math]

This defines a closure operator [math]\displaystyle{ \operatorname{cl}: \mathcal{P}(E)\to \mathcal{P}(E) }[/math] where [math]\displaystyle{ \mathcal{P} }[/math] denotes the power set, with the following properties:

  • (C1) For all subsets [math]\displaystyle{ X }[/math] of [math]\displaystyle{ E }[/math], [math]\displaystyle{ X\subseteq \operatorname{cl}(X) }[/math].
  • (C2) For all subsets [math]\displaystyle{ X }[/math] of [math]\displaystyle{ E }[/math], [math]\displaystyle{ \operatorname{cl}(X)= \operatorname{cl}(\operatorname{cl}(X)) }[/math].
  • (C3) For all subsets [math]\displaystyle{ X }[/math] and [math]\displaystyle{ Y }[/math] of [math]\displaystyle{ E }[/math] with [math]\displaystyle{ X\subseteq Y }[/math], [math]\displaystyle{ \operatorname{cl}(X)\subseteq \operatorname{cl}(Y) }[/math].
  • (C4) For all elements [math]\displaystyle{ a }[/math], and [math]\displaystyle{ b }[/math] of [math]\displaystyle{ E }[/math] and all subsets [math]\displaystyle{ Y }[/math] of [math]\displaystyle{ E }[/math], if [math]\displaystyle{ a\in\operatorname{cl}(Y\cup \{b\}) \smallsetminus \operatorname{cl}(Y) }[/math] then [math]\displaystyle{ b\in\operatorname{cl}(Y\cup \{a\}) \smallsetminus \operatorname{cl}(Y) }[/math].

The first three of these properties are the defining properties of a closure operator. The fourth is sometimes called the Mac LaneSteinitz exchange property. These properties may be taken as another definition of matroid: every function [math]\displaystyle{ \operatorname{cl}: \mathcal{P}(E)\to \mathcal{P}(E) }[/math] that obeys these properties determines a matroid.[4]


A set whose closure equals itself is said to be closed, or a flat or subspace of the matroid.[5] A set is closed if it is maximal for its rank, meaning that the addition of any other element to the set would increase the rank. The closed sets of a matroid are characterized by a covering partition property:

  • (F1) The whole point set [math]\displaystyle{ E }[/math] is closed.
  • (F2) If [math]\displaystyle{ S }[/math] and [math]\displaystyle{ T }[/math] are flats, then [math]\displaystyle{ S\cap T }[/math] is a flat.
  • (F3) If [math]\displaystyle{ S }[/math] is a flat, then each element of [math]\displaystyle{ E\smallsetminus S }[/math] is in precisely one of the flats [math]\displaystyle{ T }[/math] that cover [math]\displaystyle{ S }[/math] (meaning that [math]\displaystyle{ T }[/math] properly contains [math]\displaystyle{ S }[/math] but there is no flat [math]\displaystyle{ U }[/math] between [math]\displaystyle{ S }[/math] and [math]\displaystyle{ T }[/math]).

The class [math]\displaystyle{ \mathcal{L}(M) }[/math] of all flats, partially ordered by set inclusion, forms a matroid lattice. Conversely, every matroid lattice [math]\displaystyle{ L }[/math] forms a matroid over its set [math]\displaystyle{ E }[/math] of atoms under the following closure operator: for a set [math]\displaystyle{ S }[/math] of atoms with join [math]\displaystyle{ \bigvee S }[/math],

[math]\displaystyle{ \operatorname{cl}(S) = \{ x\in E\mid x\le\bigvee S \} }[/math].

The flats of this matroid correspond one-for-one with the elements of the lattice; the flat corresponding to lattice element [math]\displaystyle{ y }[/math] is the set

[math]\displaystyle{ \{ x\in E\mid x\le y\} }[/math].

Thus, the lattice of flats of this matroid is naturally isomorphic to [math]\displaystyle{ L }[/math].


In a matroid of rank [math]\displaystyle{ r }[/math], a flat of rank [math]\displaystyle{ r-1 }[/math] is called a hyperplane. (Hyperplanes are also called coatoms or copoints.) These are the maximal proper flats; that is, the only superset of a hyperplane that is also a flat is the set [math]\displaystyle{ E }[/math] of all the elements of the matroid. An equivalent definition is that a coatom is a subset of E that does not span M, but such that adding any other element to it does make a spanning set.[6]

The family [math]\displaystyle{ \mathcal{H} }[/math] of hyperplanes of a matroid has the following properties, which may be taken as yet another axiomatization of matroids:[6]

  • (H1) There do not exist distinct sets [math]\displaystyle{ X }[/math] and [math]\displaystyle{ Y }[/math] in [math]\displaystyle{ \mathcal{H} }[/math] with [math]\displaystyle{ X\subseteq Y }[/math]. That is, the hyperplanes form a Sperner family.
  • (H2) For every [math]\displaystyle{ x\in E }[/math] and distinct [math]\displaystyle{ Y,Z\in\mathcal{H} }[/math] with [math]\displaystyle{ x\notin Y\cup Z }[/math], there exists [math]\displaystyle{ X\in\mathcal{H} }[/math] with [math]\displaystyle{ (Y\cap Z)\cup\{x\}\subseteq X }[/math].


Minty (1966) defined a graphoid as a triple [math]\displaystyle{ (L, C, D) }[/math] in which [math]\displaystyle{ C }[/math] and [math]\displaystyle{ D }[/math] are classes of nonempty subsets of [math]\displaystyle{ L }[/math] such that

  • (G1) no element of [math]\displaystyle{ C }[/math] (called a "circuit") contains another,
  • (G2) no element of [math]\displaystyle{ D }[/math] (called a "cocircuit") contains another,
  • (G3) no set in [math]\displaystyle{ C }[/math] and set in [math]\displaystyle{ D }[/math] intersect in exactly one element, and
  • (G4) whenever [math]\displaystyle{ L }[/math] is represented as the disjoint union of subsets [math]\displaystyle{ R, G, B }[/math] with [math]\displaystyle{ G=\{g\} }[/math] (a singleton set), then either an [math]\displaystyle{ X \in C }[/math] exists such that [math]\displaystyle{ g \in X \subseteq R \cup G }[/math] or a [math]\displaystyle{ Y \in D }[/math] exists such that [math]\displaystyle{ g \in Y \subseteq B \cup G. }[/math]

He proved that there is a matroid for which [math]\displaystyle{ C }[/math] is the class of circuits and [math]\displaystyle{ D }[/math] is the class of cocircuits. Conversely, if [math]\displaystyle{ C }[/math] and [math]\displaystyle{ D }[/math] are the circuit and cocircuit classes of a matroid [math]\displaystyle{ M }[/math] with ground set [math]\displaystyle{ E }[/math], then [math]\displaystyle{ (E, C, D) }[/math] is a graphoid. Thus, graphoids give a self-dual cryptomorphic axiomatization of matroids.


Free matroid

Let [math]\displaystyle{ E }[/math] be a finite set. The set of all subsets of [math]\displaystyle{ E }[/math] defines the independent sets of a matroid. It is called the free matroid over [math]\displaystyle{ E }[/math].

Uniform matroids

Let [math]\displaystyle{ E }[/math] be a finite set and [math]\displaystyle{ k }[/math] a natural number. One may define a matroid on [math]\displaystyle{ E }[/math] by taking every [math]\displaystyle{ k }[/math]-element subset of [math]\displaystyle{ E }[/math] to be a basis. This is known as the uniform matroid of rank [math]\displaystyle{ k }[/math]. A uniform matroid with rank [math]\displaystyle{ k }[/math] and with [math]\displaystyle{ n }[/math] elements is denoted [math]\displaystyle{ U_{k,n} }[/math]. All uniform matroids of rank at least 2 are simple (see § Additional terminology) . The uniform matroid of rank 2 on [math]\displaystyle{ n }[/math] points is called the [math]\displaystyle{ n }[/math]-point line. A matroid is uniform if and only if it has no circuits of size less than one plus the rank of the matroid. The direct sums of uniform matroids are called partition matroids.

In the uniform matroid [math]\displaystyle{ U_{0,n} }[/math], every element is a loop (an element that does not belong to any independent set), and in the uniform matroid [math]\displaystyle{ U_{n,n} }[/math], every element is a coloop (an element that belongs to all bases). The direct sum of matroids of these two types is a partition matroid in which every element is a loop or a coloop; it is called a discrete matroid. An equivalent definition of a discrete matroid is a matroid in which every proper, non-empty subset of the ground set [math]\displaystyle{ E }[/math] is a separator.

Matroids from linear algebra

The Fano matroid, derived from the Fano plane. It is GF(2)-linear but not real-linear.
The Vámos matroid, not linear over any field

Matroid theory developed mainly out of a deep examination of the properties of independence and dimension in vector spaces. There are two ways to present the matroids defined in this way:

  • If [math]\displaystyle{ E }[/math] is any finite subset of a vector space [math]\displaystyle{ V }[/math], then we can define a matroid [math]\displaystyle{ M }[/math] on [math]\displaystyle{ E }[/math] by taking the independent sets of [math]\displaystyle{ M }[/math] to be the linearly independent subsets of [math]\displaystyle{ E }[/math]. The validity of the independent-set axioms for this matroid follows from the Steinitz exchange lemma. If [math]\displaystyle{ M }[/math] is a matroid that can be defined in this way, we say the set [math]\displaystyle{ E }[/math] represents [math]\displaystyle{ M }[/math]. Matroids of this kind are called vector matroids. An important example of a matroid defined in this way is the Fano matroid, a rank-three matroid derived from the Fano plane, a finite geometry with seven points (the seven elements of the matroid) and seven lines (the proper nontrivial flats of the matroid). It is a linear matroid whose elements may be described as the seven nonzero points in a three-dimensional vector space over the finite field GF(2). However, it is not possible to provide a similar representation for the Fano matroid using the real numbers in place of GF(2).
  • A matrix [math]\displaystyle{ A }[/math] with entries in a field gives rise to a matroid [math]\displaystyle{ M }[/math] on its set of columns. The dependent sets of columns in the matroid are those that are linearly dependent as vectors. This matroid is called the column matroid of [math]\displaystyle{ A }[/math], and [math]\displaystyle{ A }[/math] is said to represent [math]\displaystyle{ M }[/math]. For instance, the Fano matroid can be represented in this way as a 3 × 7 (0,1)-matrix. Column matroids are just vector matroids under another name, but there are often reasons to favor the matrix representation. (There is one technical difference: a column matroid can have distinct elements that are the same vector, but a vector matroid as defined above cannot. Usually this difference is insignificant and can be ignored, but by letting [math]\displaystyle{ E }[/math] be a multiset of vectors one brings the two definitions into complete agreement.)

A matroid that is equivalent to a vector matroid, although it may be presented differently, is called representable or linear. If [math]\displaystyle{ M }[/math] is equivalent to a vector matroid over a field [math]\displaystyle{ F }[/math], then we say [math]\displaystyle{ M }[/math] is representable over [math]\displaystyle{ F }[/math]; in particular, [math]\displaystyle{ M }[/math] is real-representable if it is representable over the real numbers. For instance, although a graphic matroid (see below) is presented in terms of a graph, it is also representable by vectors over any field. A basic problem in matroid theory is to characterize the matroids that may be represented over a given field [math]\displaystyle{ F }[/math]; Rota's conjecture describes a possible characterization for every finite field. The main results so far are characterizations of binary matroids (those representable over GF(2)) due to Tutte (1950s), of ternary matroids (representable over the 3-element field) due to Reid and Bixby, and separately to Seymour (1970s), and of quaternary matroids (representable over the 4-element field) due to Geelen, Gerards, and Kapoor (2000). This is very much an open area.[needs update?]

A regular matroid is a matroid that is representable over all possible fields. The Vámos matroid is the simplest example of a matroid that is not representable over any field.

Matroids from graph theory

A second original source for the theory of matroids is graph theory.

Every finite graph (or multigraph) [math]\displaystyle{ G }[/math] gives rise to a matroid [math]\displaystyle{ M(G) }[/math] as follows: take as [math]\displaystyle{ E }[/math] the set of all edges in [math]\displaystyle{ G }[/math] and consider a set of edges independent if and only if it is a forest; that is, if it does not contain a simple cycle. Then [math]\displaystyle{ M(G) }[/math] is called a cycle matroid. Matroids derived in this way are graphic matroids. Not every matroid is graphic, but all matroids on three elements are graphic.[7] Every graphic matroid is regular.

Other matroids on graphs were discovered subsequently:

  • The bicircular matroid of a graph is defined by calling a set of edges independent if every connected subset contains at most one cycle.
  • In any directed or undirected graph [math]\displaystyle{ G }[/math] let [math]\displaystyle{ E }[/math] and [math]\displaystyle{ F }[/math] be two distinguished sets of vertices. In the set [math]\displaystyle{ E }[/math], define a subset [math]\displaystyle{ U }[/math] to be independent if there are [math]\displaystyle{ |U| }[/math] vertex-disjoint paths from [math]\displaystyle{ F }[/math] onto [math]\displaystyle{ U }[/math]. This defines a matroid on [math]\displaystyle{ E }[/math] called a gammoid:[8] a strict gammoid is one for which the set [math]\displaystyle{ E }[/math] is the whole vertex set of [math]\displaystyle{ G }[/math].[9]
  • In a bipartite graph [math]\displaystyle{ G = (U,V,E) }[/math], one may form a matroid in which the elements are vertices on one side [math]\displaystyle{ U }[/math] of the bipartition, and the independent subsets are sets of endpoints of matchings of the graph. This is called a transversal matroid,[10][11] and it is a special case of a gammoid.[8] The transversal matroids are the dual matroids to the strict gammoids.[9]
  • Graphic matroids have been generalized to matroids from signed graphs, gain graphs, and biased graphs. A graph [math]\displaystyle{ G }[/math] with a distinguished linear class [math]\displaystyle{ B }[/math] of cycles, known as a "biased graph" [math]\displaystyle{ (G, B) }[/math], has two matroids, known as the frame matroid and the lift matroid of the biased graph. If every cycle belongs to the distinguished class, these matroids coincide with the cycle matroid of [math]\displaystyle{ G }[/math]. If no cycle is distinguished, the frame matroid is the bicircular matroid of [math]\displaystyle{ G }[/math]. A signed graph, whose edges are labeled by signs, and a gain graph, which is a graph whose edges are labeled orientably from a group, each give rise to a biased graph and therefore have frame and lift matroids.
  • The Laman graphs form the bases of the two-dimensional rigidity matroid, a matroid defined in the theory of structural rigidity.
  • Let [math]\displaystyle{ G }[/math] be a connected graph and [math]\displaystyle{ E }[/math] be its edge set. Let [math]\displaystyle{ I }[/math] be the collection of subsets [math]\displaystyle{ F }[/math] of [math]\displaystyle{ E }[/math] such that [math]\displaystyle{ G - F }[/math] is still connected. Then [math]\displaystyle{ M^*(G) }[/math], whose element set is [math]\displaystyle{ E }[/math] and with [math]\displaystyle{ I }[/math] as its class of independent sets, is a matroid called the bond matroid of [math]\displaystyle{ G }[/math]. The rank function [math]\displaystyle{ r(F) }[/math] is the cyclomatic number of the subgraph induced on the edge subset [math]\displaystyle{ F }[/math], which equals the number of edges outside a maximal forest of that subgraph, and also the number of independent cycles in it.

Matroids from field extensions

A third original source of matroid theory is field theory.

An extension of a field gives rise to a matroid. Suppose [math]\displaystyle{ F }[/math] and [math]\displaystyle{ K }[/math] are fields with [math]\displaystyle{ K }[/math] containing [math]\displaystyle{ F }[/math]. Let [math]\displaystyle{ E }[/math] be any finite subset of [math]\displaystyle{ K }[/math]. Define a subset [math]\displaystyle{ S }[/math] of [math]\displaystyle{ E }[/math] to be algebraically independent if the extension field [math]\displaystyle{ F(S) }[/math] has transcendence degree equal to [math]\displaystyle{ |S| }[/math].[12]

A matroid that is equivalent to a matroid of this kind is called an algebraic matroid.[13] The problem of characterizing algebraic matroids is extremely difficult; little is known about it. The Vámos matroid provides an example of a matroid that is not algebraic.

Basic constructions

There are some standard ways to make new matroids out of old ones.


If M is a finite matroid, we can define the orthogonal or dual matroid M* by taking the same underlying set and calling a set a basis in M* if and only if its complement is a basis in M. It is not difficult to verify that M* is a matroid and that the dual of M* is M.[14]

The dual can be described equally well in terms of other ways to define a matroid. For instance:

  • A set is independent in M* if and only if its complement spans M.
  • A set is a circuit of M* if and only if its complement is a coatom in M.
  • The rank function of the dual is [math]\displaystyle{ r^*(S) = |S|- r(M) + r\left(E\smallsetminus S\right) }[/math].

According to a matroid version of Kuratowski's theorem, the dual of a graphic matroid M is a graphic matroid if and only if M is the matroid of a planar graph. In this case, the dual of M is the matroid of the dual graph of G.[15] The dual of a vector matroid representable over a particular field F is also representable over F. The dual of a transversal matroid is a strict gammoid and vice versa.


The cycle matroid of a graph is the dual matroid of its bond matroid.


Main page: Matroid minor

If M is a matroid with element set E, and S is a subset of E, the restriction of M to S, written M |S, is the matroid on the set S whose independent sets are the independent sets of M that are contained in S. Its circuits are the circuits of M that are contained in S and its rank function is that of M restricted to subsets of S. In linear algebra, this corresponds to restricting to the subspace generated by the vectors in S. Equivalently if T = MS this may be termed the deletion of T, written M\T or MT. The submatroids of M are precisely the results of a sequence of deletions: the order is irrelevant.[16][17]

The dual operation of restriction is contraction.[18] If T is a subset of E, the contraction of M by T, written M/T, is the matroid on the underlying set E − T whose rank function is [math]\displaystyle{ r'(A) = r(A \cup T) - r(T). }[/math][19] In linear algebra, this corresponds to looking at the quotient space by the linear space generated by the vectors in T, together with the images of the vectors in E - T.

A matroid N that is obtained from M by a sequence of restriction and contraction operations is called a minor of M.[17][20] We say M contains N as a minor. Many important families of matroids may be characterized by the minor-minimal matroids that do not belong to the family; these are called forbidden or excluded minors.[21]

Sums and unions

Let M be a matroid with an underlying set of elements E, and let N be another matroid on an underlying set F. The direct sum of matroids M and N is the matroid whose underlying set is the disjoint union of E and F, and whose independent sets are the disjoint unions of an independent set of M with an independent set of N.

The union of M and N is the matroid whose underlying set is the union (not the disjoint union) of E and F, and whose independent sets are those subsets that are the union of an independent set in M and one in N. Usually the term "union" is applied when E = F, but that assumption is not essential. If E and F are disjoint, the union is the direct sum.

Additional terminology

Let M be a matroid with an underlying set of elements E.

  • E may be called the ground set of M. Its elements may be called the points of M.
  • A subset of E spans M if its closure is E. A set is said to span a closed set K if its closure is K.
  • The girth of a matroid is the size of its smallest circuit or dependent set.
  • An element that forms a single-element circuit of M is called a loop. Equivalently, an element is a loop if it belongs to no basis.[7][22]
  • An element that belongs to no circuit is called a coloop or isthmus. Equivalently, an element is a coloop if it belongs to every basis. Loop and coloops are mutually dual.[22]
  • If a two-element set {f, g} is a circuit of M, then f and g are parallel in M.[7]
  • A matroid is called simple if it has no circuits consisting of 1 or 2 elements. That is, it has no loops and no parallel elements. The term combinatorial geometry is also used.[7] A simple matroid obtained from another matroid M by deleting all loops and deleting one element from each 2-element circuit until no 2-element circuits remain is called a simplification of M.[23] A matroid is co-simple if its dual matroid is simple.[24]
  • A union of circuits is sometimes called a cycle of M. A cycle is therefore the complement of a flat of the dual matroid. (This usage conflicts with the common meaning of "cycle" in graph theory.)
  • A separator of M is a subset S of E such that [math]\displaystyle{ r(S) + r(E-S) = r(M) }[/math]. A proper or non-trivial separator is a separator that is neither E nor the empty set.[25] An irreducible separator is a non-empty separator that contains no other non-empty separator. The irreducible separators partition the ground set E.
  • A matroid that cannot be written as the direct sum of two nonempty matroids, or equivalently that has no proper separators, is called connected or irreducible. A matroid is connected if and only if its dual is connected.[26]
  • A maximal irreducible submatroid of M is called a component of M. A component is the restriction of M to an irreducible separator, and contrariwise, the restriction of M to an irreducible separator is a component. A separator is a union of components.[25]
  • A matroid M is called a frame matroid if it, or a matroid that contains it, has a basis such that all the points of M are contained in the lines that join pairs of basis elements.[27]
  • A matroid is called a paving matroid if all of its circuits have size at least equal to its rank.[28]
  • The matroid polytope [math]\displaystyle{ P_M }[/math] is the convex hull of the indicator vectors of the bases of [math]\displaystyle{ M }[/math].


Greedy algorithm

A weighted matroid is a matroid together with a function from its elements to the nonnegative real numbers. The weight of a subset of elements is defined to be the sum of the weights of the elements in the subset. The greedy algorithm can be used to find a maximum-weight basis of the matroid, by starting from the empty set and repeatedly adding one element at a time, at each step choosing a maximum-weight element among the elements whose addition would preserve the independence of the augmented set.[29] This algorithm does not need to know anything about the details of the matroid's definition, as long as it has access to the matroid through an independence oracle, a subroutine for testing whether a set is independent.

This optimization algorithm may be used to characterize matroids: if a family F of sets, closed under taking subsets, has the property that, no matter how the sets are weighted, the greedy algorithm finds a maximum-weight set in the family, then F must be the family of independent sets of a matroid.[30]

The notion of matroid has been generalized to allow for other types of sets on which a greedy algorithm gives optimal solutions; see greedoid and matroid embedding for more information.

Matroid partitioning

The matroid partitioning problem is to partition the elements of a matroid into as few independent sets as possible, and the matroid packing problem is to find as many disjoint spanning sets as possible. Both can be solved in polynomial time, and can be generalized to the problem of computing the rank or finding an independent set in a matroid sum.

Matroid intersection

The intersection of two or more matroids is the family of sets that are simultaneously independent in each of the matroids. The problem of finding the largest set, or the maximum weighted set, in the intersection of two matroids can be found in polynomial time,[31]:{{{1}}} and provides a solution to many other important combinatorial optimization problems. For instance, maximum matching in bipartite graphs can be expressed as a problem of intersecting two partition matroids. However, finding the largest set in an intersection of three or more matroids is NP-complete.

Matroid software

Two standalone systems for calculations with matroids are Kingan's Oid and Hlineny's Macek. Both of them are open sourced packages. "Oid" is an interactive, extensible software system for experimenting with matroids. "Macek" is a specialized software system with tools and routines for reasonably efficient combinatorial computations with representable matroids.

Both open source mathematics software systems SAGE and Macaulay2 contain matroid packages.

Polynomial invariants

There are two especially significant polynomials associated to a finite matroid M on the ground set E. Each is a matroid invariant, which means that isomorphic matroids have the same polynomial.

Characteristic polynomial

The characteristic polynomial of M (which is sometimes called the chromatic polynomial,[32] although it does not count colorings), is defined to be

[math]\displaystyle{ p_M(\lambda) := \sum_{S \subseteq E} (-1)^{|S|}\lambda^{r(E)-r(S)}, }[/math]

or equivalently (as long as the empty set is closed in M) as

[math]\displaystyle{ p_M(\lambda) := \sum_{A} \mu(\emptyset,A) \lambda^{r(E)-r(A)} \ , }[/math]

where μ denotes the Möbius function of the geometric lattice of the matroid and the sum is taken over all the flats A of the matroid.[33]

When M is the cycle matroid M(G) of a graph G, the characteristic polynomial is a slight transformation of the chromatic polynomial, which is given by χG (λ) = λcpM(G) (λ), where c is the number of connected components of G.

When M is the bond matroid M*(G) of a graph G, the characteristic polynomial equals the flow polynomial of G.

When M is the matroid M(A) of an arrangement A of linear hyperplanes in Rn (or Fn where F is any field), the characteristic polynomial of the arrangement is given by pA (λ) = λnr(M)pM (λ).

Beta invariant

The beta invariant of a matroid, introduced by Crapo (1967), may be expressed in terms of the characteristic polynomial p as an evaluation of the derivative[34]

[math]\displaystyle{ \beta(M) = (-1)^{r(M)-1} p_M'(1) \ }[/math]

or directly as[35]

[math]\displaystyle{ \beta(M) = (-1)^{r(M)} \sum_{X \subseteq E} (-1)^{|X|} r(X) \ . }[/math]

The beta invariant is non-negative, and is zero if and only if M is disconnected, or empty, or a loop. Otherwise it depends only on the lattice of flats of M. If M has no loops and coloops then β(M) = β(M).[35]

Whitney numbers

The Whitney numbers of the first kind of M are the coefficients of the powers of [math]\displaystyle{ \lambda }[/math] in the characteristic polynomial. Specifically, the i-th Whitney number [math]\displaystyle{ w_i(M) }[/math] is the coefficient of [math]\displaystyle{ \lambda^{r(M)-i} }[/math] and is the sum of Möbius function values:

[math]\displaystyle{ w_i(M) = \sum \{ \mu(\emptyset,A): r(A) = i \}, }[/math]

summed over flats of the right rank. These numbers alternate in sign, so that [math]\displaystyle{ (-1)^i w_i(M) \gt 0 }[/math] for [math]\displaystyle{ 0 \leq i \leq r(M). }[/math]

The Whitney numbers of the second kind of M are the numbers of flats of each rank. That is, [math]\displaystyle{ W_i(M) }[/math] is the number of rank-i flats.

The Whitney numbers of both kinds generalize the Stirling numbers of the first and second kind, which are the Whitney numbers of the cycle matroid of the complete graph and equivalently of the partition lattice. They were named after Hassler Whitney, the (co)founder of matroid theory, by Gian-Carlo Rota. The name has been extended to the similar numbers for finite ranked partially ordered sets.

Tutte polynomial

The Tutte polynomial of a matroid, TM (x,y), generalizes the characteristic polynomial to two variables. This gives it more combinatorial interpretations, and also gives it the duality property

[math]\displaystyle{ T_{M^*}(x,y) = T_M(y,x), }[/math]

which implies a number of dualities between properties of M and properties of M *. One definition of the Tutte polynomial is

[math]\displaystyle{ T_M(x,y) = \sum_{S \subseteq E} (x-1)^{r(M)-r(S)}(y-1)^{|S|-r(S)}. }[/math]

This expresses the Tutte polynomial as an evaluation of the corank-nullity or rank generating polynomial,[36]

[math]\displaystyle{ R_M(u,v) = \sum_{S\subseteq E} u^{r(M)-r(S)}v^{|S|-r(S)}. }[/math]

From this definition it is easy to see that the characteristic polynomial is, up to a simple factor, an evaluation of TM, specifically,

[math]\displaystyle{ p_M(\lambda) = (-1)^{r(M)} T_M(1-\lambda,0). }[/math]

Another definition is in terms of internal and external activities and a sum over bases, reflecting the fact that T(1,1) is the number of bases.[37] This, which sums over fewer subsets but has more complicated terms, was Tutte's original definition.

There is a further definition in terms of recursion by deletion and contraction.[38] The deletion-contraction identity is

[math]\displaystyle{ F(M) = F(M-e)+F(M/e) }[/math] when [math]\displaystyle{ e }[/math] is neither a loop nor a coloop.

An invariant of matroids (i.e., a function that takes the same value on isomorphic matroids) satisfying this recursion and the multiplicative condition

[math]\displaystyle{ F(M\oplus M') = F(M) F(M') }[/math]

is said to be a Tutte-Grothendieck invariant.[36] The Tutte polynomial is the most general such invariant; that is, the Tutte polynomial is a Tutte-Grothendieck invariant and every such invariant is an evaluation of the Tutte polynomial.[32]

The Tutte polynomial TG  of a graph is the Tutte polynomial TM(G) of its cycle matroid.

Infinite matroids

The theory of infinite matroids is much more complicated than that of finite matroids and forms a subject of its own. For a long time, one of the difficulties has been that there were many reasonable and useful definitions, none of which appeared to capture all the important aspects of finite matroid theory. For instance, it seemed to be hard to have bases, circuits, and duality together in one notion of infinite matroids.

The simplest definition of an infinite matroid is to require finite rank; that is, the rank of E is finite. This theory is similar to that of finite matroids except for the failure of duality due to the fact that the dual of an infinite matroid of finite rank does not have finite rank. Finite-rank matroids include any subsets of finite-dimensional vector spaces and of field extensions of finite transcendence degree.

The next simplest infinite generalization is finitary matroids, also known as pregeometries. A matroid with possibly infinite ground set is finitary if it has the property that

[math]\displaystyle{ x \in \operatorname{cl}(Y)\ \Leftrightarrow \ \text{ there is a finite set } Y' \subseteq Y \text{ such that } x \in \operatorname{cl}(Y'). }[/math]

Equivalently, every dependent set contains a finite dependent set. Examples are linear dependence of arbitrary subsets of infinite-dimensional vector spaces (but not infinite dependencies as in Hilbert and Banach spaces), and algebraic dependence in arbitrary subsets of field extensions of possibly infinite transcendence degree. Again, the class of finitary matroid is not self-dual, because the dual of a finitary matroid is not finitary. Finitary infinite matroids are studied in model theory, a branch of mathematical logic with strong ties to algebra.

In the late 1960s matroid theorists asked for a more general notion that shares the different aspects of finite matroids and generalizes their duality. Many notions of infinite matroids were defined in response to this challenge, but the question remained open. One of the approaches examined by D.A. Higgs became known as B-matroids and was studied by Higgs, Oxley and others in the 1960s and 1970s. According to a recent result by Bruhn, Diestel, and Kriesell et al. (2013), it solves the problem: Arriving at the same notion independently, they provided five equivalent systems of axiom—in terms of independence, bases, circuits, closure and rank. The duality of B-matroids generalizes dualities that can be observed in infinite graphs.

The independence axioms are as follows:

  1. The empty set is independent.
  2. Every subset of an independent set is independent.
  3. For every nonmaximal (under set inclusion) independent set I and maximal independent set J, there is [math]\displaystyle{ x\in J \smallsetminus I }[/math] such that [math]\displaystyle{ I\cup\{x\} }[/math] is independent.
  4. For every subset X of the base space, every independent subset I of X can be extended to a maximal independent subset of X.

With these axioms, every matroid has a dual.


Matroid theory was introduced by Hassler Whitney (1935). It was also independently discovered by Takeo Nakasawa, whose work was forgotten for many years (Nishimura Kuroda).

In his seminal paper, Whitney provided two axioms for independence, and defined any structure adhering to these axioms to be "matroids". (Although it was perhaps implied, he did not include an axiom requiring at least one subset to be independent.) His key observation was that these axioms provide an abstraction of "independence" that is common to both graphs and matrices. Because of this, many of the terms used in matroid theory resemble the terms for their analogous concepts in linear algebra or graph theory.

Almost immediately after Whitney first wrote about matroids, an important article was written by Saunders Mac Lane (1936) on the relation of matroids to projective geometry. A year later, B. L. van der Waerden (1937) noted similarities between algebraic and linear dependence in his classic textbook on Modern Algebra.

In the 1940s Richard Rado developed further theory under the name "independence systems" with an eye towards transversal theory, where his name for the subject is still sometimes used.

In the 1950s W. T. Tutte became the foremost figure in matroid theory, a position he retained for many years. His contributions were plentiful, including the characterization of binary, regular, and graphic matroids by excluded minors; the regular-matroid representability theorem; the theory of chain groups and their matroids; and the tools he used to prove many of his results, the "Path theorem" and "Tutte homotopy theorem" (see, e.g., Tutte 1965), which are so complex that later theorists have gone to great trouble to eliminate the necessity of using them in proofs. (A fine example is A. M. H. Gerards' short proof (1989) of Tutte's characterization of regular matroids.)

Henry Crapo (1969) and Thomas Brylawski (1972) generalized to matroids Tutte's "dichromate", a graphic polynomial now known as the Tutte polynomial (named by Crapo). Their work has recently (especially in the 2000s) been followed by a flood of papers—though not as many as on the Tutte polynomial of a graph.

In 1976 Dominic Welsh published the first comprehensive book on matroid theory.

Paul Seymour's decomposition theorem for regular matroids (1980) was the most significant and influential work of the late 1970s and the 1980s. Another fundamental contribution, by (Kahn Kung), showed why projective geometries and Dowling geometries play such an important role in matroid theory.

By this time there were many other important contributors, but one should not omit to mention Geoff Whittle's extension to ternary matroids of Tutte's characterization of binary matroids that are representable over the rationals (Whittle 1995), perhaps the biggest single contribution of the 1990s. In the current period (since around 2000) the Matroid Minors Project of Jim Geelen, Gerards, Whittle, and others, which attempts to duplicate for matroids that are representable over a finite field the success of the Robertson–Seymour Graph Minors Project (see Robertson–Seymour theorem), has produced substantial advances in the structure theory of matroids. Many others have also contributed to that part of matroid theory, which (in the first and second decades of the 21st century) is flourishing.


Mathematicians who pioneered the study of matroids include Takeo Nakasawa,[39] Saunders Mac Lane, Richard Rado, W. T. Tutte, B. L. van der Waerden, and Hassler Whitney. Other major contributors include Jack Edmonds, Jim Geelen, Eugene Lawler, László Lovász, Gian-Carlo Rota, P. D. Seymour, and Dominic Welsh.

See also


  1. Neel, David L.; Neudauer, Nancy Ann (2009). "Matroids you have known". Mathematics Magazine 82 (1): 26–41. doi:10.4169/193009809x469020. Retrieved 4 October 2014. 
  2. Kashyap, Navin; Soljanin, Emina; Vontobel, Pascal. "Applications of Matroid Theory and Combinatorial Optimization to Information and Coding Theory". 
  3. A standard source for basic definitions and results about matroids is Oxley (1992). An older standard source is Welsh (1976). See Brylawski's appendix in White (1986), pp. 298–302, for a list of equivalent axiom systems.
  4. 4.0 4.1 4.2 4.3 4.4 (Welsh 1976), Section 1.2, "Axiom Systems for a Matroid", pp. 7–9.
  5. (Welsh 1976), Section 1.8, "Closed sets = Flats = Subspaces", pp. 21–22.
  6. 6.0 6.1 (Welsh 1976), Section 2.2, "The Hyperplanes of a Matroid", pp. 38–39.
  7. 7.0 7.1 7.2 7.3 Oxley 1992, p. 13
  8. 8.0 8.1 Oxley 1992, pp. 115
  9. 9.0 9.1 Oxley 1992, p. 100
  10. Oxley 1992, pp. 46–48
  11. 1987
  12. Oxley 1992, p. 215
  13. Oxley 1992, p. 216
  14. White 1986, p. 32
  15. White 1986, p. 105
  16. White 1986, p. 131
  17. 17.0 17.1 White 1986, p. 224
  18. White 1986, p. 139
  19. White 1986, p. 140
  20. White 1986, p. 150
  21. White 1986, pp. 146–147
  22. 22.0 22.1 White 1986, p. 130
  23. Oxley 1992, p. 52
  24. Oxley 1992, p. 347
  25. 25.0 25.1 Oxley 1992, p. 128
  26. White 1986, p. 110
  27. Zaslavsky, Thomas (1994). "Frame matroids and biased graphs". Eur. J. Comb. 15 (3): 303–307. doi:10.1006/eujc.1994.1034. ISSN 0195-6698. 
  28. Oxley 1992, p. 26
  29. Oxley 1992, p. 63
  30. Oxley 1992, p. 64
  31. Edmonds, Jack (2003), Jünger, Michael; Reinelt, Gerhard; Rinaldi, Giovanni, eds., "Submodular Functions, Matroids, and Certain Polyhedra" (in en), Combinatorial Optimization — Eureka, You Shrink!: Papers Dedicated to Jack Edmonds 5th International Workshop Aussois, France, March 5–9, 2001 Revised Papers, Lecture Notes in Computer Science (Berlin, Heidelberg: Springer) 2570: pp. 11–26, doi:10.1007/3-540-36478-1_2, ISBN 978-3-540-36478-8,, retrieved 2022-11-27 
  32. 32.0 32.1 White 1987, p. 127
  33. White 1987, p. 120
  34. White 1987, p. 123
  35. 35.0 35.1 White 1987, p. 124
  36. 36.0 36.1 White 1987, p. 126
  37. White 1992, p. 188
  38. White 1986, p. 260
  39. Nishimura & Kuroda (2009).


External links