Enumerating matroids of fixed rank

It has been conjectured that asymptotically almost all matroids are sparse paving, i.e. that $s(n) \sim m(n)$, where $m(n)$ denotes the number of matroids on a fixed groundset of size $n$, and $s(n)$ the number of sparse paving matroids. In an earlier paper, we showed that $\log s(n) \sim \log m(n)$. The bounds that we used for that result were dominated by matroids of rank $r\approx n/2$. In this paper we consider the relation between the number of sparse paving matroids $s(n,r)$ and the number of matroids $m(n,r)$ on a fixed groundset of size $n$ of fixed rank $r$. In particular, we show that $\log s(n,r) \sim \log m(n,r)$ whenever $r\ge 3$, by giving asymptotically matching upper and lower bounds. Our upper bound on $m(n,r)$ relies heavily on the theory of matroid erections as developed by Crapo and Knuth, which we use to encode any matroid as a stack of paving matroids. Our best result is obtained by relating to this stack of paving matroids an antichain that completely determines the matroid. We also obtain that the collection of essential flats and their ranks gives a concise description of matroids.


Introduction
In their enumeration of matroids on up to eight elements, Blackburn, Crapo, and Higgs [BCH73] observed that a large fraction of matroids are paving, i.e. the cardinality of each circuit is at least the rank of the matroid. Crapo and Rota [CR70,p. 3.17] speculated that this observed behaviour holds in general, i.e. that 'paving matroids will predominate in any enumeration of matroids'. Mayhew, Newman, Welsh, and Whittle [MNWW11, Conjecture 1.6] formally conjectured that this is true in a strong sense, namely that asymptotically almost all matroids are paving. They noted that their conjecture is equivalent to the (seemingly stronger) conjecture that asymptotically almost all matroids are sparse paving, i.e. that s(n) ∼ m(n). Here, m(n) denotes the number of matroids on a fixed groundset of size n, and s(n) denotes the number of those matroids that are sparse paving (a matroid is called sparse paving if both it and its dual are paving, or equivalently, a matroid of rank r is sparse paving if each r-set of elements is either a basis or a circuit-hyperplane).
In a recent paper [PvdP15], we proved a weaker version of the conjecture, namely that log s(n) ∼ log m(n) 1 . The bounds on log s(n) and log m(n) that we obtained are dominated by matroids of rank r ≈ n/2. In fact, for r sufficiently close to n/2, we have log s(n, r) ∼ log m(n, r), where we write m(n, r), resp. s(n, r), for the number of matroids, resp. sparse paving matroids, of rank r on a fixed groundset of size n.
When we tried to apply the same methods to matroids of small rank, we obtained much weaker results. In [PvdP15,Section 4.3] we speculated that even for matroids of small rank the estimate log s(n, r) ∼ log m(n, r) holds. The main contribution of this paper is that this is indeed the case for constant r ≥ 3.
Our methods rely heavily on the theory of truncations and erections of matroids, which was developed by Crapo [Cra70] and Knuth [Knu75]. If M is a matroid of rank r, then its truncation is the matroid T (M ) on the same groundset, which has as independent sets all independent sets of M of cardinality at most r − 1. A matroid N is called an erection of M if M = T (N ) or M = N . In general, a matroid can have more than one erection; in particular, the uniform matroid U (r, n) has all paving matroids of rank r + 1 as erections.
Every matroid can be seen as its truncation, augmented by information describing its set of hyperplanes. We show that the information required to erect the original matroid from its truncation encodes a paving matroid (showing, in passing, that the uniform matroid has the largest number of erections among all matroids with the same groundset and rank). Inductively, we can describe every matroid as a stack of paving matroids, each encoding the next erection.
This research was supported by the Netherlands Organisation for Scientific Research (NWO) grant 613.001.211. 1 Throughout the paper, we use log to denote the logarithm with base 2, and we wil use ln for the natural logarithm.
A flat in a matroid is called essential, roughly, if "its existence does not follow from what the flats of lesser rank are" (Higgs, in [Cra70]). The essential flats of a matroid, together with their ranks, completely specify the matroid. Each paving matroid in our stack encodes the essential flats of the corresponding rank. Higgs suggested that essential flats may offer a concise description of matroids. We show that this is indeed the case, by proving an upper bound on the number of essential flats. For r ≈ n/2, this results in an upper bound on log m(n, r) that asymptotically matches the best known lower bound.
Encoding a matroid as a stack of paving matroids is closely related to work by Knuth [Knu75], who described a procedure for generating matroids by constructing a sequence of erections (although he did not use his term). Knuth noted that this procedure could be used to generate random matroids, by randomising the choice for each erection, and he asked whether his procedure could be analysed carefully enough to provide good bounds on the number of matroids. Our analysis shows that this is the case, at least for matroids of fixed rank.
Bounds obtained in earlier papers focussed on the case r ≈ n/2, and aimed at describing the sets of bases and nonbases of the matroid. This type of argument makes it difficult to take into account possible "deep dependencies", although such deep dependencies may have a profound effect on the number of matroids. In the current paper, we describe a matroid as a stack of paving matroids, and exploit the relation between those paving matroids. Our analysis shows that a matroid M of rank r on n elements can be described by a structured set V(M ) of at most 1 n−r+1 n r of its circuits. 1.1. Results. In this paper, we study the relation between s(n, r), p(n, r) and m(n, r) when the rank r is fixed. (Here, p(n, r) refers to the number of paving matroids.) This is easy for matroids of rank 1. There are 2 n − 1 matroids of rank 1. Each of these matroids is paving, and only n + 1 of those are sparse as well (these are the matroids with at most a single loop).
The case for matroids of rank 2 is relatively easy as well, as matroids, paving matroids, and sparse paving matroids of rank 2 each correspond to other combinatorial objects of which very precise asymptotics are known.
In [PvdP15,Section 4.3], we argued that a recent result by Keevash [Kee15] on the number of Steiner systems gives a lower bound for sparse paving matroids: as each Steiner system S(r − 1, r, n) gives the set of hyperplanes of a sparse paving matroids, for fixed r we obtain (1) log s(n, r) ≥ 1 n − r + 1 n r log(e 1−r (n − r + 1)(1 + o(1))) as n → ∞, at least when n and r satisfy certain natural divisibility conditions. We show that (1) holds even when these conditions do not hold. Using the entropy method, we prove an upper bound on the number of sparse paving matroid that asymptotically matches the lower bound of (1).
Theorem 2. For all r ≤ n, log s(n, r) ≤ 1 n−r+1 n r log(n − r + 2). As pointed out in the introduction, every matroid can be seen as a matroid of lower rank (its truncation), augmented with extra information that encodes a paving matroid.
Theorem 3. For all fixed r, log m(n, r) ≤ 1 + r+o(1) n−r+1 log p(n, r) as n → ∞. A matroid is paving precisely when its truncation is a uniform matroid. If the paving matroid is of rank r, we show that its hyperplanes can be identified by a small collection of r-sets. As such a small collection can be chosen in a limited number of ways, the following bound on paving matroids follows.
Theorem 4 turns out to be a special case of a more general result. Recall that it was obtained by writing a paving matroid as a uniform matroid plus a small collection of sets describing the hyperplanes of that paving matroid. A general matroid can be described inductively as a sequence of erections (V 0 , V 1 , . . . , V r−1 ), in which V k is a set of (k + 1)-sets that (roughly) encodes the flats of rank k. Choosing the sets V i carefully, we can ensure that their union forms an antichain, and that the same is true for a related set system A(M ). An application of the well-known LYM-inequality to A(M ) translates to an inequality concerning a weighted sum of the cardinalities of the V k . This shows that |V(M )| is small, and hence bounds the number of matroids. For matroids of rank 3, we can work directly with the detailed inequality to obtain a slightly stronger bound on m(n, 3), which we can then use to obtain upper bounds for general rank.
Theorem 5. For all r ≥ 3 and n ≥ r + 12, log m(n, r) ≤ 1 n−r+1 n r log(e(n − r + 1)). Comparing the upper bounds on log s(n, r), log p(n, r), and log m(n, r), we find that they only differ in the constant factor inside the logarithm: For sparse paving matroids this is 1, while for paving and general matroids the constant factor is e. This observation suggests that if our goal is to show that s(n,r) m(n,r) → 1 as n → ∞, it might be easiest to find a gap between s(n, r) and p(n, r).
Starting from a sparse paving matroid, we obtain a paving matroid by extending one of its circuithyperplanes by an extra point (and possibly deleting some other circuit-hyperplanes). For rank r = 3, this construction gives a class of paving matroids that is large compared to the class of sparse paving matroids.
Theorem 6. lim inf n→∞ p(n,3) s(n,3) > 1. The following theorem gives an upper bound on the number of essential flats of a matroid.
Theorem 7. Suppose that r ≥ 3 and n ≥ 2r. A matroid M of rank r on n elements has at most 1 n−r+1 n r essential flats.
1.2. Remainder of the paper. In Section 2, we state some preliminaries. We also prove that (1) holds for general rank r, as well as a matching upper bound. In Section 3, we review the relation between the results of Crapo and Knuth on erections. In Section 4, we explore the relation between paving matroids and erections, and prove Theorem 3 and Theorem 4.
In Section 5, we define two antichains associated with matroids, and show how these antichains can be exploited to prove Theorem 5. In this section, we will also prove Theorem 7.
Constructions for paving matroids are considered in Section 6, and it is in this section that Theorem 6 is proved.
Finally, in Section 7, we address a number of issues that are still open.

Matroids.
A matroid is a pair (E, I) consisting of a finite groundset E, and a collection I of subsets of E called independent sets, that satisfies the following axioms: (i) ∅ ∈ I, (ii) if I ⊆ I ′ and I ′ ∈ I, then I ∈ I, (iii) if I, I ′ ∈ I and |I ′ | > |I|, then there is x ∈ I ′ \ I such that I ∪ {x} ∈ I. We assume familiarity with this definition, as well as with the definitions of circuit, basis, rank, flat etc., for which we refer to [Oxl11].
A matroid of rank d + 1 is called paving if each of its circuits has cardinality at least d + 1. This is the case if and only if its hyperplanes form a set system known as a d-partition. A family of subsets of E is a d-partition if it contains at least two sets, each of which has cardinality at least d, and every d-set of the groundset is contained in exactly one member.
A matroid is called sparse paving if both it and its dual are paving. Equivalently, a matroid of rank r is sparse paving if and only if every r-set is either a basis or a circuit-hyperplane.
We will use m(n, r), p(n, r), and s(n, r), respectively, for the number of matroids, paving matroids, and sparse paving matroids of rank r on groundset E = [n].
Sparse paving matroids on E of rank r are related to stable sets 2 of the Johnson graph J(n, r). Given a finite set E, the Johnson graph J(E, r) is the graph on vertex set E r , in which any pair of vertices is connected by an edge if and only if the two vertices intersect in exactly r − 1 elements. We use J(n, r) as a shortcut for J([n], r). The following lemma exhibits the relation between the Johnson graph and sparse 2 A stable set in a graph G is a set of vertices in G, no two of which are adjacent. Stable sets are also called independent sets, but as this term has a different meaning in graph theory, we avoid its use. paving matroids. It was essentially proved by Piff

2.2.
A lower bound on the number of sparse paving matroids of fixed rank. For integers t < k < n, a Steiner system S(t, k, n) is a collection of k-subsets of [n] (called blocks) with the property that each tsubset of [n] is contained in a unique block. Every S(r − 1, r, n) forms the collection of hyperplanes of a sparse paving matroid of rank r. So, Steiner systems S(r − 1, r, n) form a subclass of sparse paving matroids of rank r.
In order for an S(t, k, n) to exist, the parameters t, k and n should satisfy certain natural divisibility conditions. Recently, Keevash [Kee15, Theorem 6.1] provided a good estimate for the number of S(t, k, n), provided these divisibility conditions hold and n is sufficiently large. Let us write D(t, k, n) for the number of S(t, k, n).
Lemma 9 ([Kee15, Theorem 6.1]). For any t, k, there is n 0 such that if n > n 0 and k−i where N = n−t k−t and Q = k t . Specialising the above lemma to k = r, t = r − 1, we find that for fixed r and n is sufficiently large. We claim that (3) holds for sufficiently large n, even if the divisibility conditions are violated. This would not be unreasonable: even though violation of the divisibility conditions forbids the existence of S(r −1, r, n), according the Erdős-Hanani conjecture [Röd85] there exist partial Steiner systems that cover all but a vanishing fraction of (r − 1)-subsets. Starting from a partial Steiner system, the set of hyperplanes of a sparse paving matroid is obtained by adding to it all (r − 1)-subsets that are not contained in one of the blocks.
Similar estimates of the number of such "near-optimal" partial Steiner systems should hold. In fact, the same line of reasoning that Keevash uses in his proof of Lemma 9, can be used to prove the following result.
We sketch a proof of the theorem, which is a special case of Keevash's proof of Lemma 9. For this, it will be useful to consider the matchings in a certain hypergraph.
Let F r be the hypergraph on vertex set [n] r−1 , in which the edges consist of sets of the form A r−1 , r . The hypergraph F r has N = n r−1 vertices, is r-uniform, and is D-regular with D = n − r + 1. Moreover, the codegree of any pair of distinct vertices is at most 1.
A matching in F r consists of a set of edges, no two of which share a vertex. Hence, matchings in F r are in 1-1 correspondence with partial S(r − 1, r, n).
We consider the random greedy matching process on F r , i.e. we start with the empty matching, and in each iteration of the process we choose an edge uniformly at random from the remaining edges in the hypergraph, add it to the matching, and delete it and any incident edges from F r . The process stops when no further edges can be added to the matching.
Let the random variable M be the number of edges that are selected into the matching. The random greedy matching process is studied, among others, by Bennett and Bohman [BB12], where it is shown that with high probability (i.e. with probability tending to 1 as n → ∞) and moreover the number of choices for the next edge in the i-th iteration until this point is N D r p r i 1 ± D −1/4 with p i = 1 − ir N . We construct a sparse paving matroid by running the random greedy matching process until m = 1 − (n − r + 1) − 1 3(r−1) N r edges are selected. The (natural) logarithm of the number of choices is at least Of course, the order in which blocks are chosen does not matter, so we must subtract It follows that ln s(n, r) is at least from which the theorem follows.
2.3. Entropy counting. In this section, we will briefly review the definitions of entropy that we need. For a more thorough introduction to entropy, see e.g. [AS08, Section 15.7]. Let X be a random variable taking values in a finite set S. The entropy of X is defined as It can be shown that H (X) ≤ log |S|, with equality if and only if X has the uniform distribution on S (i.e. P (X = x) = 1 |S| for all x ∈ S). We are interested in the case where X = (X i : i ∈ I) is a random vector, indexed by some index set I. In this situation, for A ⊆ I, we write X A = (X i : i ∈ A) for the projection of X onto the coordinates index by A. Shearer's lemma [CGFS86] asserts that if A is a collection of such index sets, and each i ∈ I is contained in at least k members of A, then As a first application, we will use Shearer's lemma to put an upper bound on the number of sparse paving matroids. In the proof of this result, X will be a random subset of the vertices of the Johnson graph J(n, r). Equivalently, we view X as a random binary vector, indexed by the vertices of J(n, r), in which X v = 1 if and only if v is selected into the random subset.
Proof. Let X be a random stable set of J(n, r), selected uniformly at random, so log s(n, r) = H (X). In order to apply Shearer's lemma, let A be the collection of (n − r + 1)-cliques consisting of vertices B ∪ {v}, v ∈ B, where B ranges over the (r − 1)-subsets of [n]. There are n r−1 such subsets, and each vertex is contained in exactly r of them. If A ∈ A, then X A takes one of n − r + 2 values, as each clique A contains at most one vertex of X. The theorem now follows from Shearer's lemma, as A second application of Shearer's lemma can be used to leverage bounds on the number of paving matroids of small rank to prove bounds on the number of paving matroids of general rank.
Lemma 11. Let 0 ≤ t ≤ r ≤ n. Let M be a class of matroids that is closed under contraction and isomorphism, and writem(n, r) := #{M ∈ M : and (ii) if no M ∈ M of rank r has a circuit of size at most t, then The first statement in the lemma was proved in [BPvdP14, Lemma 2]. The second case follows from the same argument, after realising if X E,r is the set of bases of a matroid M in which every t-set T is independent, then X E,r /T is never empty. Asymptotics for Bell numbers are given e.g. in [MW55], where it is shown that log B(n) ∼ n log n.
Sparse paving matroids on [n] of rank 2 are in 1-1 correspondence with stable sets in the Johnson graph J(n, 2), as well as to matchings in the complete graph K n , and the number of involutions on [n]. The number s(n, 2) is therefore given by the telephone number T (n). The exponential generating function of the telephone numbers is known to be z → exp(z + z 2 /2), and precise asymptotics of its coefficients are known [Knu98, p. 64]: We obtain log s n,2 ∼ n 2 log n. The next theorem summarises the results in this section.
2.5. Binomial coefficients. We will often make use, without stating so explicitly, of the following inequality on sums of binomial coefficients: for all 0 < r ≤ n.

Truncation and erection of matroids
Let M be a matroid on ground set E with independent sets I. The rank-k truncation of a matroid is the matroid If M has rank r, then its truncation is defined as T (M ) := M (r−1) . Following Crapo [Cra70] we call N an erection of M if T (N ) = M or N = M (in the latter case, we say that N is the trivial erection of M ). Note that while the truncation of a matroid is unique, a matroid may have many erections.
Clearly the intersection of any collection of k-closed sets will be k-closed, so that cl k (X) is necessarily k-closed.
The following theorem, due to Crapo [Cra70], identifies erections of matroids in terms of their rank-r flats. Note that if M is a matroid of rank-r, than the rank-r flats of its erection are hyperplanes, unless the erection is trivial.
Independently, Knuth [Knu75] describes a procedure which, given a matroid M on E of rank r and a collection U of subsets of E, generates a set H which are the rank-r flats of an erection of M with the additional property that each U ∈ U is contained in some rank-r flat. We describe this procedure.
As |H| decreases by 1 in each application of Update, the procedure terminates after a finite number of steps on any input U ⊆ 2 E . It is not obvious, however, that the output of the procedure is independent of the choice of H and H ′ in each application of Update.
Theorem 13 ([Knu75, Section 6]). The output H of the procedure depends only on the input M and U. Moreover, for any matroid M of rank r on E, and any set H ⊆ 2 E , the following are equivalent: (1) H is the output of the procedure on some input U ⊆ 2 E ; and (2) H is the set of rank-r flats of an erection of M .
The results of Crapo and Knuth are closely related. To exhibit the relation between the two results, we will prove them both in a common framework.
With respect to a matroid M on E of rank r, we call a collection The following lemma describes how complete sets are in 1-1 correspondence with erections of M . Proof. Sufficiency is straightforward; we prove necessity. So assume that X is complete with respect to M , and let r : 2 E → Z be defined by If r is the rank function of a matroid, then it satisfies the conditions of the lemma. We verify that r satisfies the matroid rank axioms. Clearly, r(X) ≥ 0 for all X ∈ E. That r(Y ) ≤ r(X) for all Y ⊆ X follows from the fact that X is closed under taking subsets. It remains to show that r is submodular, i.e.
Suppose that r is not submodular. Pick X, Y ⊆ E violating (5) with |X| + |Y | as large as possible. If X ∈ X , then X ∪ Y ∈ X so that r(X) + r(Y ) = (r + 1) + r(Y ) ≥ (r + 1) + r(X ∩ Y ) ≥ r(X ∪ Y ) + r(X ∩ Y ). So X ∈ X , and similarly Y ∈ X . As X is closed under taking subsets, we have X ∩ Y ∈ X as well, and Hence X ∪ Y ∈ X , and therefore r(X ∪ Y ) = r + 1 = r M (X ∪ Y ) + 1. If r M (X ∩ Y ) = r, then X ∪ Y ∈ X as X is complete, a contradiction. It follows that r M (X ∩ Y ) < r. Hence so that r M (X) < r or r M (Y ) < r. Without loss of generality r M (X) < r. Then there is an independent set I such that cl(I) = cl r−1 (I) ⊇ X. Let B be any basis of M containing I. Then B ∈ X , and hence X ′ := cl r−1 (B) ∈ X properly contains X. Since X ′ ∪Y ∈ X , the pair X ′ , Y contradicts maximality of |X|+|Y |.
Being closed under taking subsets, a complete set X is fully determined by the set H of its inclusionwise maximal elements through X = H ↓ , where Crapo notes that certain flats F of a matroid M are 'predictable' in that M |F , the restriction of M to F , has no nontrivial erection (i.e. an erection of rank strictly greater than r M (F )). The existence of F as a flat of M of that rank is therefore unavoidable given the structure of M |F . To describe the matroid, it would therefore suffice to point out the inpredictable or essential flats. Crapo notes the following condition for being essential. Crapo illustrates that the list of essential flats can give a very concise description of a matroid, and notes that this phenomenon was first observed by Higgs.
3.1. Historical remarks. Matroid erections were first studied by Crapo [Cra70], who recognised the lattice structure of erections under the weak order (if M and N are matroids on the same groundset, then M is said to be less than N in the weak order if every independent set in N is also independent in M ).
Duke [Duk87] showed Then W includes all hyperplanes, and in addition some sets cl r−2 (X) contained in a hyperplane cl(X) of M . So the hyperplanes of M are the inclusion-wise maximal elements of W. In Knuth's procedure for computing H(M (r−1) , U), the initial step generates W, and the remaining steps remove any non-maximal elements of W. Hence H = H(M (r−1) , U).

We say that a set of elements
Proof. Pick any inclusionwise minimal set U ⊆ X such that cl k−1 (U ) = X. Then U is the set of dependent hyperplanes of a paving matroid of rank r on E.
Proof. We must show that each (r − 1)-subset of E is contained in at most one element of U. If not, there are distinct hyperplanes H, H ′ of M so that |U H ∩ U H ′ | ≥ r − 1. But r(U H ∩ U H ′ ) ≤ r(H ∩ H ′ ) ≤ r − 2, and as a subset of the (r − 1)-free set U H , U H ∩ U H ′ is (r − 1)-free. Hence U H ∩ U H ′ is independent, and thus It follows from this lemma that the number of erections of a matroid M on n elements and of rank r does not exceed p(n, r + 1), the number of erections of the uniform matroid U (r, n). Moreover, it follows that each such matroid can be written as M = T (M )↑U, where U is the set of dependent hyperplanes of a paving matroid of rank r on E. This immediately gives the following result.
The result now follows upon comparing the right-most term with the lower bound log p(n, r) ≥ log s(n, r) ≥ log n n from Theorem 10.

4.2.
A bound on the number of paving matroids. Recall that every paving matroid is the erection of a uniform matroid. In this section, we provide a bound on the amount of information that is necessary to specify any paving matroid. This translates to an upper bound on the number of paving matroids. To bound the cardinality of V, note that if H is a hyperplane of cardinality k, then |V(H)| = k − r + 1, so if we write h k for the number of hyperplanes of cardinality k, we obtain |V| ≤ n k=r−1 (k − r + 1)h k . As M is paving, each r − 1-set is contained in a unique hyperplane. It follows that Maximising over the h k , we obtain Upon combining the lower bound on s(n, r) from Theorem 10 with the upper bounds on p(n, r) of Theorem 4 and m(n, r) of Theorem 3, we find that for all fixed r ≥ 3 log m(n, r) ∼ log p(n, r) ∼ log s(n, r) as n → ∞.

Antichains and the LYM-inequality. Let E be a set. A collection of A ⊆ 2 E is called an antichain (or clutter) if no element of A is properly contained in another, i.e. if for all A, B ∈ A, A ⊆ B implies A = B.
A central result in the theory of antichains is the well-known LYM-inequality. For a proof, we refer to [Juk01, Theorem 9.6].
Lemma 22 (LYM-inequality). Let E be a set of cardinality n, and let A be an antichain. Then To each matroid, a number of antichains are naturally associated: the collections of circuits, bases, and hyperplanes are each antichains. In this section, we construct two further antichains that are associated with matroids, both of which give a succinct description of matroids. Then The sets U k in (7) do not include a representative for each flat F : if F is independent, then U F is omitted. If it is our objective to determine M = M (E, U 0 , U 1 , . . . , U r−1 ) as economically as possible, then a sensible first optimisation is to pick each set U F as small as possible under the condition that cl k−1 (U F ) = F . Let us assume that the groundset E is linearly ordered. This induces the graded lexicographic order on 2 E , for which we say that X precedes Y (denoted by X ≺ Y ) if |X| < |Y |, or |X| = |Y | and min(X△Y ) ∈ X.
In what follows, if X ⊆ 2 E is not the empty set, then min X refers to the smallest member of X in the graded lexicographic order.
For a flat of rank k, we can now define U * F := min{U : cl k−1 (U ) = F }. Then U * F are inclusionwise minimal, and in particular it is k-free. We define Lemma 23. U * (M ) is an antichain.
Proof. Suppose that there exist U, U ′ ∈ U * (M ) so that U ⊆ U ′ . If r(U ) = k, then |U | > k, so U is dependent. If r(U ′ ) = k ′ , then U ′ is k ′ -free, and as U ′ contains the dependent set U , it follows that k ≥ k ′ . On the other hand, k = r(U ) ≤ r(U ′ ) = k ′ , so in fact k = k ′ . But then F = cl k−1 (U ) ⊆ cl k−1 (U ′ ) = F ′ , for some flats F, F ′ . These flats both have rank k, so F = F ′ , hence U = U * F = U ′ .
Lemma 24. Let F, F ′ be flats of M of ranks k, k ′ respectively, such that k ′ > k, and let Proof. Suppose that this is not the case. Let X * = min U * F k , and let U ′ = (U * F ′ \ X) ∪ X * . Since k ′ > k we have cl k ′ −1 (X) = cl(X) = cl k ′ −1 (X * ), and so cl k ′ −1 (U ′ ) = F ′ . Moreover, we have U ′ ≺ U * F , thus contradicting minimality of U * F ′ .
For U ∈ U * k we define and we construct

Lemma 25. A(M ) is an antichain, and
Proof. The first statement in the lemma is an immediate consequence of Lemma 24, and the fact that U ∈ U * k does not contain any loops when k > 0. For the second statement, let U ∈ U * i and U ′ ∈ U * j correspond to the flats F and F ′ ; without loss of generality, we may assume i ≤ j. Suppose that there exists X ∈ A(U ) ∩ A(U ′ ). Suppose that |X| = k. Then either j = k = 1 and i = 0, or i = j = k. The former case cannot happen, as in that situation the single element in X must be a loop as well as a nonloop. In the latter case, as U is k-free, X is independent, and hence F ′ = cl(X) = F . It follows that U = U ′ .
As A(M ) is an antichain, we can apply the LYM-inequality to it in order to obtain First, consider the case n = 6, r = 3. Suppose that a matroid on 6 elements of rank 3 has p trivial parallel classes of points, and p ′ nontrivial parallel classes of points. We have |U * 0 | ≤ 1, |U * 1 | ≤ p ′ , and |U * 2 | ≤ p+p ′ −2. As p + 2p ′ ≤ 6, it follows that |U * (M )| ≤ 5, which proves the theorem in this case.
Thus, for the remainder of the proof, we may assume that n ≥ max{2r, 7}. Starting from (8), we obtain the related inequality if 0 < k < r − 1, since for each 0 < k < r−1 every U ∈ U * k contributes at least k sets to A(U ), while every U ∈ U * r−1 contributes at least r sets to A(U ); the coefficient c 0 follows from the fact that U * 0 = {cl(∅)}, and |A(cl(∅))| = |cl(∅)|.
≤ 1, so c r−1 ≤ c k for all k > 0. (It is at this point that we require that n ≥ max{2r, 7}.) If M does not have any loops, we have |U * 0 | = 0, and it follows that Similarly, if M does contain loops, we have c 0 ≥ c 1 ≥ c r−1 as well, and hence Similar bounds as in Theorem 7 hold for matroids of rank 1 and rank 2. If r = 1, there is at most one essential flat, cl(∅), so the result holds. If r = 2, and M has no loops, then the number of essential flats equals the number of nontrivial parallel classes, which is at most n 2 . If M has ℓ > 1 loops, then |U * 0 | = 1, while |U * 1 | ≤ n−ℓ 2 . It follows that a matroid M of rank 2 has at most n 2 essential flats, unless it is isomorphic to the matroid with exactly one loop and n 2 paralles classes, each containing two points, in which case it has n+1 2 essential flats.
Proof. Each matroid of rank r on [n] is determined by the set of pairs (F, r(F )), with F ranging over the essential flats. By Theorem 7, these pairs form a subset of 2 [n] ×{0, 1, . . . , r} of cardinality at most 1 n−r+1 n r . It follows that which gives the desired result after taking logarithms.
Since m(n) = m(n, 0) + m(n, 1) + . . . + m(n, n), Corollary 26 translates to a bound on all matroids. We thus obtain log m(n) ≤ max r≤⌊n/2⌋ log m(n, r) + log(n + 1) ≤ max r≤⌊n/2⌋ 1 n − r + 1 n r log e2 n (r + 1)(n − r + 1) n r + log(n + 1), where we use that m(n, n − r) = m(n, r) by duality. It can be shown that the maximum is attained at r = ⌊n/2⌋, provided n is sufficiently large, and using that which gives a much weaker bound on log m n,r than suggested by e.g.
(2). The reason seems to be that U ∈ U * (M ) can be arbitrarily large, which gives rise to the factor 2 n inside the logarithm.
In this section, we resolve this problem by relating to U * (M ) a different antichain V(M ), of which all members have bounded cardinality. In order to construct V(M ), for U ∈ U * k define where a subset V ⊆ U is consecutive if there are no e, g ∈ V and f ∈ U \ V with e < f < g, and we construct Lemma 27. Each V ∈ V k is a circuit of M .
Proof. Let U ∈ U * k and let V ∈ U k+1 be a consecutive set. As U is k-free, so is V . However, V has rank at most k, so it must be dependent. It follows that V is a circuit.
. Hence, U k can be obtained from V k by a sequence of Update-steps of Knuth's algorithm. As M (k) ↑V k does not depend on the order in which these steps are performed, it follows that M (k) ↑V k = M (k) ↑U k for all k, and the result follows.
Consequently, if V 0 = V 1 = . . . = V k−1 = ∅, then the truncation M (k) is the uniform matroid of rank k on E.
Next, we define V(M ) := r−1 k=0 V k . Since the elements of each V k are equicardinal, we can distinguish V k = {V ∈ V(M ) : |V | = k + 1}, and so M is determined by (E, r, V(M )) through the previous lemma.
Next, we record a number of useful properties of V(M ). The first of these is a consequence of Lemma 29.
There is only one consecutive (k + 1)-set in U * F containing min U * F k , and this is min U * F k+1 . This proves (i). We obtain (ii) as an immediate consequence of the definition of the graded lexicographic order.
Lemma 31. Suppose that r ≥ 3 and n ≥ 2r. Then Corollary 32. Suppose that r ≥ 3 and n ≥ 2r. Let M be a rank-r matroid on a groundset of n elements, then |V(M )| ≤ 1 n−r+1 n r . In a Steiner system S(r − 1, r, n), the number of blocks is 1 r n r−1 , from which it follows that Corollary 32 is sharp for sparse paving matroids obtained from such Steiner systems.
It follows that T n (v 2 ) ≤ (n − 2) n(n−1) 6 −v2 as soon as n ≥ 15, and a slightly more careful analysis shows that in that case even T n (0) ≤ (n − 2) n(n−1) 6 − 1. By the binomial theorem, we obtain and the lemma follows by bounding 1 + t ≤ e t .

A lower bound on the number of paving matroids
Now that we have established good upper and lower bounds on the logarithm on the number of paving and sparse paving matroids of a fixed rank r ≥ 3, to wit 1 n − r + 1 n r log e 1−r (n − r + 1)(1 + o(1)) ≤ log s(n, r) ≤ log p(n, r) ≤ 1 n − r + 1 n r log (e(n − r + 1))) , it is natural to ask how big the gap between s(n, r) and p(n, r) can get. The following construction shows that p(n, 3) is asymptotically larger than s(n, 3).
Proof. Start from a sparse paving matroid M with set of circuit-hyperplanes H. We will assume that M is not the uniform matroid, so H = ∅. Pick a circuit-hyperplane H, and an element e ∈ H, set H ′ = H ∪ {e}, and consider the set system A moment's reflection reveals that H ′ is the collection of dependent hyperplanes of a paving matroid that is not sparse. Each sparse paving matroid with k circuit-hyperplanes gives rise to k(n − 3) paving matroids in this way. On the other hand, each paving matroid that is obtained in this way can arise from at most 4n 3 distinct sparse paving matroids, corresponding to the choice of e in the unique hyperplane of size 4, and at most one circuit-hyperplane for each of the three pairs {e, x} in that hyperplane. We claim that for some positive constant c, all but a vanishing fraction of sparse paving matroids of rank 3 on [n] have k ≥ cn 2 . This is an immediate consequence of the observation that the number of sparse paving matroids with at most cn 2 circuit-hyperplanes is at most  (n, 3)), corresponding factor in the best lower bound, to wit e 1−r , does. Incidentally, Theorem 4 may be proved by first proving the special case r = 3 and then applying (9) with c = e, to obtain the general version.
To close this section, we mention that paving matroids of rank 3, or equivalently 2-partitions, are precisely partitions of the edges of K n where each partition class forms a complete graph on at most n − 1 vertices. 7.2. Comparing s(n, r), p(n, r), and m(n, r) for constant r. We showed that log s(n, r) ∼ log p(n, r) ∼ log m(n, r) for all fixed r ≥ 3. Unfortunately, our methods are not strong enough to decide whether s(n, r) ∼ m(n, r) as well.
We hazard the guess that s(n,r) p(n,r) → 0, while p(n,r) m(n,r) → 1 for sufficiently large (but constant) r, but emphasize that this problem is still open.
The evidence pointing to our first guess is stronger than that for the second guess. To start with, it is overwhelmingly true for r = 2 (in fact, p(n, 2) is roughly the square of s(n, 2)), while p(n,2) m(n,2) ≈ 1 log n . Moreover, the constructions developed in the proofs of Theorem 6 and Theorem 34 suggest that for r ≥ 3, p(n, 3) is much larger than s(n, 3).
We are much less convinced about our second guess, which is based on two observations. First, the best bounds on p(n, r) and m(n, r) are the same, and both results can be obtained by a similar argument (by proving the corresponding statement for r = 3, followed by an application of Lemma 11). A second observation that we make is that the uniform matroid has the largest number of erections among all matroids with the same rank and groundset. Writing η(n, r) for the average number of nontrivial erections over all non-uniform matroids on [n] of rank r, we obtain m(n, r) = p(n, r) + (m(n, r − 1) − 1)η(n, r − 1).
In the proof of Theorem 3, we used that η(n, r − 1) ≤ p(n, r). However, computer experiments suggest that the distribution of the number of nontrivial erections is very skew. It is therefore conceivable that m(n, r − 1)η(n, r − 1) is small compared to p(n, r), which would prove that p(n,r) m(n,r) → 1. The results in Section 4 lend some credibility to this argument. 7.3. Counting antichains. It was shown in Section 5 that every matroid M can be reconstructed from its groundset, rank, and the antichain V(M ). In fact, the most important step in our best bound on m(n, r) in Theorem 5 relies on the LYM-type inequality bounding the cardinalities of the different levels of V(M ) that was obtained in Lemma 31.
We expect that these bounds can be improved by exploiting additional structure of the antichain V(M ). Some necessary structural results are listed in Lemma 30. We ask for an intrinsic (axiomatic) description of antichains that can appear as V(M ).
It is a consequence of Lemma 28 (in particular the remark immediately following it) that if M is a matroid such that the antichain V(M ) contains only sets of cardinality at least k, then r(M ) ≥ k − 1, with equality if and only if M is the uniform matroid. This observation is potentially useful in proving the following two conjectures. Suppose that it can be shown that for asymptotically almost all matroids M , the corresponding antichain V(M ) contains only elements of cardinality at least n−1 2 . It would follow that asymptotically almost all matroids satisfy r(M ) ≥ n−1 2 . By duality, it also follows that asymptotically almost all matroids have rank at most n+1 2 , and combining these two results proves Conjecture 36. Apart from Conjecture 36, the assumption that for asymptotically almost all matroids, V(M ) does not contain any elemens of cardinality less than n−1 2 would also imply that lim n→∞ p(2n) m(2n) = 1, and lim inf n→∞ p(2n + 1) m(2n + 1) ≥ 1 2 , which is just shy of Conjecture 37.
The problem of counting antichains in the lattice of subsets is known as Dedekind's problem. It was solved asymptotically by Korshunov [Kor81], who obtained sharp estimates on the number of antichains based on the idea that most antichains are contained in the union of the three or four central levels (depending on the parity of n). Korshunov's result is very precise at the cost of being very technical, and it is likely that results of comparable strength for maroids will be hard to obtain. (Korshunov's result, and many related results, are surveyed in [Kor03]. ) We suggest the following weaker conjecture as something that may be easier to prove.
Conjecture 38. Let k be fixed. Asymptotically almost all antichains V(M ) do not contain a subset of cardinality at most k.
If this conjecture holds, it would imply that asymptotically almost all matroids do not contain a circuit of cardinality at most k.