# Antimatroid

In mathematics, an antimatroid is a formal system that describes processes in which a set is built up by including elements one at a time, and in which an element, once available for inclusion, remains available until it is included.[1] Antimatroids are commonly axiomatized in two equivalent ways, either as a set system modeling the possible states of such a process, or as a formal language modeling the different sequences in which elements may be included. Dilworth (1940) was the first to study antimatroids, using yet another axiomatization based on lattice theory, and they have been frequently rediscovered in other contexts.[2]

Three views of an antimatroid: an inclusion ordering on its family of feasible sets, a formal language, and the corresponding path poset.

The axioms defining antimatroids as set systems are very similar to those of matroids, but whereas matroids are defined by an exchange axiom, antimatroids are defined instead by an anti-exchange axiom, from which their name derives. Antimatroids can be viewed as a special case of greedoids and of semimodular lattices, and as a generalization of partial orders and of distributive lattices. Antimatroids are equivalent, by complementation, to convex geometries, a combinatorial abstraction of convex sets in geometry.

Antimatroids have been applied to model precedence constraints in scheduling problems, potential event sequences in simulations, task planning in artificial intelligence, and the states of knowledge of human learners.

## Definitions

An antimatroid can be defined as a finite family ${\displaystyle {\mathcal {F}}}$  of sets, called feasible sets, with the following two properties:[3]

• The union of any two feasible sets is also feasible. That is, ${\displaystyle {\mathcal {F}}}$  is closed under unions.
• If ${\displaystyle S}$  is a nonempty feasible set, then ${\displaystyle S}$  contains an element ${\displaystyle x}$  for which ${\displaystyle S\setminus \{x\}}$  (the set formed by removing ${\displaystyle x}$  from ${\displaystyle S}$ ) is also feasible. That is, ${\displaystyle {\mathcal {F}}}$  is an accessible set system.

Antimatroids also have an equivalent definition as a formal language, that is, as a set of strings defined from a finite alphabet of symbols. A string that belongs to this set is called a word of the language. A language ${\displaystyle {\mathcal {L}}}$  defining an antimatroid must satisfy the following properties:[4]

• Every symbol of the alphabet occurs in at least one word of ${\displaystyle {\mathcal {L}}}$ .
• Each word of ${\displaystyle {\mathcal {L}}}$  contains at most one copy of each symbol. A language with this property is called normal.[5]
• Every prefix of a word in ${\displaystyle {\mathcal {L}}}$  is also in ${\displaystyle {\mathcal {L}}}$ . A language with this property is called hereditary.[5]
• If ${\displaystyle S}$  and ${\displaystyle T}$  are words in ${\displaystyle {\mathcal {L}}}$ , and ${\displaystyle S}$  contains at least one symbol that is not in ${\displaystyle T}$ , then there is a symbol ${\displaystyle x}$  in ${\displaystyle S}$  such that the concatenation ${\displaystyle Tx}$  is another word in ${\displaystyle {\mathcal {L}}}$ .

The equivalence of these two forms of definition can be seen as follows. If ${\displaystyle {\mathcal {L}}}$  is an antimatroid defined as a formal language, then the sets of symbols in words of ${\displaystyle {\mathcal {L}}}$  form an accessible union-closed set system. It is accessible by the hereditary property of strings, and it can be shown to be union-closed by repeated application of the concatenation property of strings. In the other direction, from an accessible union-closed set system ${\displaystyle {\mathcal {F}}}$ , the language of normal strings whose prefixes all have sets of symbols belonging to ${\displaystyle {\mathcal {F}}}$  meets the requirements for a formal language to be an antimatroid. These two transformations are the inverses of each other: transforming a formal language into a set family and back, or vice versa, produces the same system. Thus, these two definitions lead to mathematically equivalent classes of objects.[6]

## Examples

A shelling sequence of a planar point set. The line segments show edges of the convex hulls after some of the points have been removed.

The following systems provide examples of antimatroids:

Chain antimatroids
The prefixes of a single string, and the sets of symbols in these prefixes, form an antimatroid. For instance the chain antimatroid defined by the string ${\displaystyle abcd}$  has as its formal language the set of strings
${\displaystyle \{\varepsilon ,a,ab,abc,abcd\}}$

(where ${\displaystyle \varepsilon }$  denotes the empty string) and as its family of feasible sets the family[7]
${\displaystyle {\bigl \{}\emptyset ,\{a\},\{a,b\},\{a,b,c\},\{a,b,c,d\}{\bigr \}}.}$

Poset antimatroids
The lower sets of a finite partially ordered set form an antimatroid, with the full-length words of the antimatroid forming the linear extensions of the partial order.[8] By Birkhoff's representation theorem for distributive lattices, the feasible sets in a poset antimatroid (ordered by set inclusion) form a distributive lattice, and all distributive lattices can be formed in this way. Thus, antimatroids can be seen as generalizations of distributive lattices. A chain antimatroid is the special case of a poset antimatroid for a total order.[7]
Shelling antimatroids
A shelling sequence of a finite set ${\displaystyle U}$  of points in the Euclidean plane or a higher-dimensional Euclidean space is formed by repeatedly removing vertices of the convex hull. The feasible sets of the antimatroid formed by these sequences are the intersections of ${\displaystyle U}$  with the complement of a convex set.[7] Every antimatroid is isomorphic to a shelling antimatroid of points in a sufficiently high-dimensional space.[9]
Perfect elimination
A perfect elimination ordering of a chordal graph is an ordering of its vertices such that, for each vertex ${\displaystyle v}$ , the neighbors of ${\displaystyle v}$  that occur later than ${\displaystyle v}$  in the ordering form a clique. The prefixes of perfect elimination orderings of a chordal graph form an antimatroid.[10]
Chip-firing games
Chip-firing games such as the abelian sandpile model are defined by a directed graph together with a system of "chips" placed on its vertices. Whenever the number of chips on a vertex ${\displaystyle v}$  is at least as large as the number of edges out of ${\displaystyle v}$ , it is possible to fire ${\displaystyle v}$ , moving one chip to each neighboring vertex. The event that ${\displaystyle v}$  fires for the ${\displaystyle i}$ th time can only happen if it has already fired ${\displaystyle i-1}$  times and accumulated ${\displaystyle i\cdot \deg(v)}$  total chips. These conditions do not depend on the ordering of previous firings, and remain true until ${\displaystyle v}$  fires, so any given graph and initial placement of chips for which the system terminates defines an antimatroid on the pairs ${\displaystyle (v,i)}$ . A consequence of the antimatroid property of these systems is that, for a given initial state, the number of times each vertex fires and the eventual stable state of the system do not depend on the firing order.[11]

## Paths and basic words

In the set theoretic axiomatization of an antimatroid there are certain special sets called paths that determine the whole antimatroid, in the sense that the sets of the antimatroid are exactly the unions of paths.[12] If ${\displaystyle S}$  is any feasible set of the antimatroid, an element ${\displaystyle x}$  that can be removed from ${\displaystyle S}$  to form another feasible set is called an endpoint of ${\displaystyle S}$ , and a feasible set that has only one endpoint is called a path of the antimatroid.[13] The family of paths can be partially ordered by set inclusion, forming the path poset of the antimatroid.[14]

For every feasible set ${\displaystyle S}$  in the antimatroid, and every element ${\displaystyle x}$  of ${\displaystyle S}$ , one may find a path subset of ${\displaystyle S}$  for which ${\displaystyle x}$  is an endpoint: to do so, remove one at a time elements other than ${\displaystyle x}$  until no such removal leaves a feasible subset. Therefore, each feasible set in an antimatroid is the union of its path subsets.[12] If ${\displaystyle S}$  is not a path, each subset in this union is a proper subset of ${\displaystyle S}$ . But, if ${\displaystyle S}$  is itself a path with endpoint ${\displaystyle x}$ , each proper subset of ${\displaystyle S}$  that belongs to the antimatroid excludes ${\displaystyle x}$ . Therefore, the paths of an antimatroid are exactly the feasible sets that do not equal the unions of their proper feasible subsets. Equivalently, a given family of sets ${\displaystyle {\mathcal {P}}}$  forms the family of paths of an antimatroid if and only if, for each ${\displaystyle S}$  in ${\displaystyle {\mathcal {P}}}$ , the union of subsets of ${\displaystyle S}$  in ${\displaystyle {\mathcal {P}}}$  has one fewer element than ${\displaystyle S}$  itself.[15] If so, ${\displaystyle {\mathcal {F}}}$  itself is the family of unions of subsets of ${\displaystyle {\mathcal {P}}}$ .[12]

In the formal language formalization of an antimatroid, the longest strings are called basic words. Each basic word forms a permutation of the whole alphabet.[16] If ${\displaystyle B}$  is the set of basic words, ${\displaystyle {\mathcal {L}}}$  can be defined from ${\displaystyle B}$  as the set of prefixes of words in ${\displaystyle B}$ .[17]

## Convex geometries

If ${\displaystyle {\mathcal {F}}}$  is the set system defining an antimatroid, with ${\displaystyle U}$  equal to the union of the sets in ${\displaystyle {\mathcal {F}}}$ , then the family of sets

${\displaystyle {\mathcal {G}}=\{U\setminus S\mid S\in {\mathcal {F}}\}}$

complementary to the sets in ${\displaystyle {\mathcal {F}}}$  is sometimes called a convex geometry and the sets in ${\displaystyle {\mathcal {G}}}$  are called convex sets. For instance, in a shelling antimatroid, the convex sets are intersections of the given point set with convex subsets of Euclidean space. The set system defining a convex geometry must be closed under intersections. For any set ${\displaystyle S}$  in ${\displaystyle {\mathcal {G}}}$  that is not equal to ${\displaystyle U}$  there must be an element ${\displaystyle x}$  not in ${\displaystyle S}$  that can be added to ${\displaystyle S}$  to form another set in ${\displaystyle {\mathcal {G}}}$ .[18]

A convex geometry can also be defined in terms of a closure operator ${\displaystyle \tau }$  that maps any subset of ${\displaystyle U}$  to its minimal closed superset. To be a closure operator, ${\displaystyle \tau }$  should have the following properties:[19]

• ${\displaystyle \tau (\emptyset )=\emptyset }$ : the closure of the empty set is empty.
• For every subset ${\displaystyle S}$  of ${\displaystyle U}$ , ${\displaystyle S}$  is a subset of ${\displaystyle \tau (S)}$  and ${\displaystyle \tau (S)=\tau {\bigl (}\tau (S){\bigr )}}$ .
• Whenever ${\displaystyle S\subset T\subset U}$ , ${\displaystyle \tau (S)}$  is a subset of ${\displaystyle \tau (T)}$ .

The family of closed sets resulting from a closure operation of this type is necessarily closed under intersections, but might not be a convex geometry. The closure operators that define convex geometries also satisfy an additional anti-exchange axiom:

• If ${\displaystyle S}$  is a subset of ${\displaystyle U}$ , and ${\displaystyle y}$  and ${\displaystyle z}$  are distinct elements of ${\displaystyle U}$  that do not belong to ${\displaystyle \tau (S)}$ , but ${\displaystyle z}$  does belong to ${\displaystyle \tau (S\cup \{y\})}$ , then ${\displaystyle y}$  does not belong to ${\displaystyle \tau (S\cup \{z\})}$ .[19]

A closure operation satisfying this axiom is called an anti-exchange closure. If ${\displaystyle S}$  is a closed set in an anti-exchange closure, then the anti-exchange axiom determines a partial order on the elements not belonging to ${\displaystyle S}$ , where ${\displaystyle x\leq y}$  in the partial order when ${\displaystyle x}$  belongs to ${\displaystyle \tau (S\cup \{y\})}$ . If ${\displaystyle x}$  is a minimal element of this partial order, then ${\displaystyle S\cup \{x\}}$  is closed. That is, the family of closed sets of an anti-exchange closure has the property that for any set other than the universal set there is an element ${\displaystyle x}$  that can be added to it to produce another closed set. This property is complementary to the accessibility property of antimatroids, and the fact that intersections of closed sets are closed is complementary to the property that unions of feasible sets in an antimatroid are feasible. Therefore, the complements of the closed sets of any anti-exchange closure form an antimatroid.[18]

The undirected graphs in which the convex sets (subsets of vertices that contain all shortest paths between vertices in the subset) form a convex geometry are exactly the Ptolemaic graphs.[20]

## Join-distributive lattices

Every two feasible sets of an antimatroid have a unique least upper bound (their union) and a unique greatest lower bound (the union of the sets in the antimatroid that are contained in both of them). Therefore, the feasible sets of an antimatroid, partially ordered by set inclusion, form a lattice. Various important features of an antimatroid can be interpreted in lattice-theoretic terms; for instance the paths of an antimatroid are the join-irreducible elements of the corresponding lattice, and the basic words of the antimatroid correspond to maximal chains in the lattice. The lattices that arise from antimatroids in this way generalize the finite distributive lattices, and can be characterized in several different ways.

• The description originally considered by Dilworth (1940) concerns meet-irreducible elements of the lattice. For each element ${\displaystyle x}$  of an antimatroid, there exists a unique maximal feasible set ${\displaystyle S_{x}}$  that does not contain ${\displaystyle x}$ : ${\displaystyle S_{x}}$  can be constructed as the union of all feasible sets not containing ${\displaystyle x}$ . This set ${\displaystyle S_{x}}$  is automatically meet-irreducible, meaning that it is not the meet of any two larger lattice elements. This is true because every feasible superset of ${\displaystyle S_{x}}$  contains ${\displaystyle x}$ , and the same is therefore also true of every intersection of feasible supersets. Every element of an arbitrary lattice can be decomposed as a meet of meet-irreducible sets, often in multiple ways, but in the lattice corresponding to an antimatroid each element ${\displaystyle T}$  has a unique minimal family of meet-irreducible sets whose meet is ${\displaystyle T}$ ; this family consists of the sets ${\displaystyle S_{x}}$  for the elements ${\displaystyle x}$  such that ${\displaystyle T\cup \{x\}}$  is feasible. That is, the lattice has unique meet-irreducible decompositions.
• A second characterization concerns the intervals in the lattice, the sublattices defined by a pair of lattice elements ${\displaystyle x\leq y}$  consisting of all lattice elements ${\displaystyle z}$  with ${\displaystyle x\leq z\leq y}$ . An interval is atomistic if every element in it is the join of atoms (the minimal elements above the bottom element ${\displaystyle x}$ ), and it is Boolean if it is isomorphic to the lattice of all subsets of a finite set. For an antimatroid, every interval that is atomistic is also boolean.
• Thirdly, the lattices arising from antimatroids are semimodular lattices, lattices that satisfy the upper semimodular law that for every two elements ${\displaystyle x}$  and ${\displaystyle y}$ , if ${\displaystyle y}$  covers ${\displaystyle x\wedge y}$  then ${\displaystyle x\vee y}$  covers ${\displaystyle x}$ . Translating this condition into the feasible sets of an antimatroid, if a feasible set ${\displaystyle Y}$  has only one element not belonging to another feasible set ${\displaystyle X}$  then that one element may be added to ${\displaystyle X}$  to form another set in the antimatroid. Additionally, the lattice of an antimatroid has the meet-semidistributive property: for all lattice elements ${\displaystyle x}$ , ${\displaystyle y}$ , and ${\displaystyle z}$ , if ${\displaystyle x\wedge y}$  and ${\displaystyle x\wedge z}$  equal each other then they also both equal ${\displaystyle x\wedge (y\vee z)}$ . A semimodular and meet-semidistributive lattice is called a join-distributive lattice.

These three characterizations are equivalent: any lattice with unique meet-irreducible decompositions has boolean atomistic intervals and is join-distributive, any lattice with boolean atomistic intervals has unique meet-irreducible decompositions and is join-distributive, and any join-distributive lattice has unique meet-irreducible decompositions and boolean atomistic intervals.[21] Thus, we may refer to a lattice with any of these three properties as join-distributive. Any antimatroid gives rise to a finite join-distributive lattice, and any finite join-distributive lattice comes from an antimatroid in this way.[22] Another equivalent characterization of finite join-distributive lattices is that they are graded (any two maximal chains have the same length), and the length of a maximal chain equals the number of meet-irreducible elements of the lattice.[23] The antimatroid representing a finite join-distributive lattice can be recovered from the lattice: the elements of the antimatroid can be taken to be the meet-irreducible elements of the lattice, and the feasible set corresponding to any element ${\displaystyle x}$  of the lattice consists of the set of meet-irreducible elements ${\displaystyle y}$  such that ${\displaystyle y}$  is not greater than or equal to ${\displaystyle x}$  in the lattice.

This representation of any finite join-distributive lattice as an accessible family of sets closed under unions (that is, as an antimatroid) may be viewed as an analogue of Birkhoff's representation theorem under which any finite distributive lattice has a representation as a family of sets closed under unions and intersections.

## Supersolvable antimatroids

Motivated by a problem of defining partial orders on the elements of a Coxeter group, Armstrong (2009) studied antimatroids which are also supersolvable lattices. A supersolvable antimatroid is defined by a totally ordered collection of elements, and a family of sets of these elements. The family must include the empty set. Additionally, it must have the property that if two sets ${\displaystyle A}$  and ${\displaystyle B}$  belong to the family, the set-theoretic difference ${\displaystyle B\setminus A}$  is nonempty, and ${\displaystyle x}$  is the smallest element of ${\displaystyle B\setminus A}$ , then ${\displaystyle A\cup \{x\}}$  also belongs to the family. As Armstrong observes, any family of sets of this type forms an antimatroid. Armstrong also provides a lattice-theoretic characterization of the antimatroids that this construction can form.[24]

## Join operation and convex dimension

If ${\displaystyle {\mathcal {A}}}$  and ${\displaystyle {\mathcal {B}}}$  are two antimatroids, both described as a family of sets over the same universe of elements, we can form another antimatroid, the join of ${\displaystyle {\mathcal {A}}}$  and ${\displaystyle {\mathcal {B}}}$ , as follows:

${\displaystyle {\mathcal {A}}\vee {\mathcal {B}}=\{S\cup T\mid S\in {\mathcal {A}}\wedge T\in {\mathcal {B}}\}.}$

This is a different operation than the join considered in the lattice-theoretic characterizations of antimatroids: it combines two antimatroids to form another antimatroid, rather than combining two sets in an antimatroid to form another set. The family of all antimatroids over the same universe forms a semilattice with this join operation.[25]

Joins are closely related to a closure operation that maps formal languages to antimatroids, where the closure of a language ${\displaystyle {\mathcal {L}}}$  is the intersection of all antimatroids containing ${\displaystyle {\mathcal {L}}}$  as a sublanguage. This closure has as its feasible sets the unions of prefixes of strings in ${\displaystyle {\mathcal {L}}}$ . In terms of this closure operation, the join is the closure of the union of the languages of ${\displaystyle {\mathcal {A}}}$  and ${\displaystyle {\mathcal {B}}}$ . Every antimatroid can be represented as a join of a family of chain antimatroids, or equivalently as the closure of a set of basic words; the convex dimension of an antimatroid ${\displaystyle {\mathcal {A}}}$  is the minimum number of chain antimatroids (or equivalently the minimum number of basic words) in such a representation. If ${\displaystyle {\mathfrak {F}}}$  is a family of chain antimatroids whose basic words all belong to ${\displaystyle {\mathcal {A}}}$ , then ${\displaystyle {\mathfrak {F}}}$  generates ${\displaystyle {\mathcal {A}}}$  if and only if the feasible sets of ${\displaystyle {\mathfrak {F}}}$  include all paths of ${\displaystyle {\mathcal {A}}}$ . The paths of ${\displaystyle {\mathcal {A}}}$  belonging to a single chain antimatroid must form a chain in the path poset of ${\displaystyle {\mathcal {A}}}$ , so the convex dimension of an antimatroid equals the minimum number of chains needed to cover the path poset, which by Dilworth's theorem equals the width of the path poset.[26]

If one has a representation of an antimatroid as the closure of a set of ${\displaystyle d}$  basic words, then this representation can be used to map the feasible sets of the antimatroid to points in ${\displaystyle d}$ -dimensional Euclidean space: assign one coordinate per basic word ${\displaystyle W}$ , and make the coordinate value of a feasible set ${\displaystyle S}$  be the length of the longest prefix of ${\displaystyle W}$  that is a subset of ${\displaystyle S}$ . With this embedding, ${\displaystyle S}$  is a subset of another feasible set ${\displaystyle T}$  if and only if the coordinates for ${\displaystyle S}$  are all less than or equal to the corresponding coordinates of ${\displaystyle T}$ . Therefore, the order dimension of the inclusion ordering of the feasible sets is at most equal to the convex dimension of the antimatroid.[27] However, in general these two dimensions may be very different: there exist antimatroids with order dimension three but with arbitrarily large convex dimension.[28]

## Enumeration

The number of possible antimatroids on a set of elements grows rapidly with the number of elements in the set. For sets of one, two, three, etc. elements, the number of distinct antimatroids is[29]

${\displaystyle 1,3,22,485,59386,133059751,\dots \,.}$

## Applications

Both the precedence and release time constraints in the standard notation for theoretic scheduling problems may be modeled by antimatroids. Boyd & Faigle (1990) use antimatroids to generalize a greedy algorithm of Eugene Lawler for optimally solving single-processor scheduling problems with precedence constraints in which the goal is to minimize the maximum penalty incurred by the late scheduling of a task.

Glasserman & Yao (1994) use antimatroids to model the ordering of events in discrete event simulation systems.

Parmar (2003) uses antimatroids to model progress towards a goal in artificial intelligence planning problems.

In Optimality Theory, a mathematical model for the development of natural language based on optimization under constraints, grammars are logically equivalent to antimatroids.[30]

In mathematical psychology, antimatroids have been used to describe feasible states of knowledge of a human learner. Each element of the antimatroid represents a concept that is to be understood by the learner, or a class of problems that he or she might be able to solve correctly, and the sets of elements that form the antimatroid represent possible sets of concepts that could be understood by a single person. The axioms defining an antimatroid may be phrased informally as stating that learning one concept can never prevent the learner from learning another concept, and that any feasible state of knowledge can be reached by learning a single concept at a time. The task of a knowledge assessment system is to infer the set of concepts known by a given learner by analyzing his or her responses to a small and well-chosen set of problems. In this context antimatroids have also been called "learning spaces" and "well-graded knowledge spaces".[31]

## Notes

1. ^ See Korte, Lovász & Schrader (1991) for a comprehensive survey of antimatroid theory with many additional references.
2. ^ Two early references are Edelman (1980) and Jamison (1980); Jamison was the first to use the term "antimatroid". Monjardet (1985) surveys the history of rediscovery of antimatroids.
3. ^ See e.g. Kempner & Levit (2003), Definition 2.1 and Proposition 2.3, p. 2.
4. ^ Korte, Lovász & Schrader (1991), p. 22.
5. ^ a b
6. ^ Korte, Lovász & Schrader (1991), Theorem 1.4, p. 24.
7. ^ a b c
8. ^ Korte, Lovász & Schrader (1991), pp. 24–25.
9. ^
10. ^ Gordon (1997) describes several results related to antimatroids of this type, but these antimatroids were mentioned earlier e.g. by Korte, Lovász & Schrader (1991). Chandran et al. (2003) use the connection to antimatroids as part of an algorithm for efficiently listing all perfect elimination orderings of a given chordal graph.
11. ^
12. ^ a b c Korte, Lovász & Schrader (1991), Lemma 3.12, p. 31.
13. ^ Korte, Lovász & Schrader (1991), p. 31.
14. ^ Korte, Lovász & Schrader (1991), pp. 39–43.
15. ^ See Korte, Lovász & Schrader (1991), Theorem 3.13, p. 32, which defines paths as rooted sets, sets with a distinguished element, and states an equivalent characterization on the families of rooted sets that form the paths of antimatroids.
16. ^ Korte, Lovász & Schrader (1991), pp. 6, 22.
17. ^ See Korte, Lovász & Schrader (1991), p. 22: "any word in an antimatroid can be extended to a basic word".
18. ^ a b Korte, Lovász & Schrader (1991), Theorem 1.1, p. 21.
19. ^ a b Korte, Lovász & Schrader (1991), p. 20.
20. ^
21. ^ Adaricheva, Gorbunov & Tumanov (2003), Theorems 1.7 and 1.9; Armstrong (2009), Theorem 2.7.
22. ^ Edelman (1980), Theorem 3.3; Armstrong (2009), Theorem 2.8.
23. ^ Monjardet (1985) credits a dual form of this characterization to several papers from the 1960s by S. P. Avann.
24. ^
25. ^ Korte, Lovász & Schrader (1991), p. 42; Eppstein (2008), Section 7.2; Falmagne et al. (2013), section 14.4.
26. ^ Edelman & Saks (1988); Korte, Lovász & Schrader (1991), Theorem 6.9.
27. ^ Korte, Lovász & Schrader (1991), Corollary 6.10.
28. ^ Eppstein (2008), Figure 15.
29. ^ Sloane, N. J. A. (ed.), "Sequence A119770", The On-Line Encyclopedia of Integer Sequences, OEIS Foundation
30. ^
31. ^