1 Introduction

This paper is about vector spaces and integer lattices of cuts and flows associated with a finite cell complex. Our primary motivation is the study of critical groups of cell complexes and related group invariants. The critical group of a graph is a finite abelian group the order of which is the number of spanning forests. The definition was introduced independently in several settings, including arithmetic geometry [28], physics [12], and algebraic geometry [2] (where it is also known as the Picard group or Jacobian group). It has received considerable recent attention for its connections to discrete dynamical systems, tropical geometry, and linear systems of curves; see, e.g., [3, 4, 7, 22].

In a previous work [17], the authors extended the definition of the critical group to a cell complex \(\Sigma \) of arbitrary dimension. To summarize, the critical group \(K(\Sigma )\) can be calculated using a reduced combinatorial Laplacian, and its order is a weighted enumeration of the cellular spanning trees of \(\Sigma \). Moreover, the action of the critical group on cellular \((d-1)\)-cochains gives a model of discrete flow on \(\Sigma \), generalizing the chip-firing and sandpile models; see, e.g., [4, 12].

Bacher et al. first defined the lattices \(\mathcal {C}\) and \(\mathcal {F}\) of integral cuts and flows for a graph [2]. By regarding a graph as an analogue of a Riemann surface, they interpreted the discriminant groups \(\mathcal {C}^\sharp /\mathcal {C}\) and \(\mathcal {F}^\sharp /\mathcal {F}\), respectively, as the Picard group of divisors and as the Jacobian group of holomorphic forms. In particular, they showed that the critical group \(K(G)\) is isomorphic to both \(\mathcal {C}^\sharp /\mathcal {C}\) and \(\mathcal {F}^\sharp /\mathcal {F}\). Similar definitions and results appear in the work of Biggs [4].

In the present paper, we define the cut and flow spaces and cut and flow lattices of a cell complex \(\Sigma \) by

$$\begin{aligned} {{\mathrm{Cut}}}(\Sigma )&= {{\mathrm{im}}}_\mathbb {R}\partial ^{*},&{{\mathrm{Flow}}}(\Sigma )&= \ker _\mathbb {R}\partial ,\\ \mathcal {C}(\Sigma )&= {{\mathrm{im}}}_\mathbb {Z}\partial ^{*},&\mathcal {F}(\Sigma )&= \ker _\mathbb {Z}\partial , \end{aligned}$$

where \(\partial \) and \(\partial ^{*}\) are the top cellular boundary and coboundary maps of \(\Sigma \). In topological terms, cut and flow vectors are cellular coboundaries and cycles, respectively. Equivalently, the vectors in \({{\mathrm{Cut}}}(\Sigma )\) support sets of facets deletion of which increases the codimension-1 Betti number, and the vectors in \({{\mathrm{Flow}}}(\Sigma )\) support nontrivial rational homology classes.

In the higher-dimensional setting, the groups \(\mathcal {C}^\sharp /\mathcal {C}\) and \(\mathcal {F}^\sharp /\mathcal {F}\) are not necessarily isomorphic to each other. Their precise relationship involves several other groups: the critical group \(K(\Sigma )\), a dually defined cocritical group \(K^*(\Sigma )\), and the cutflow group \(\mathbb {Z}^n/(\mathcal {C}\oplus \mathcal {F})\). We show that the critical and cocritical groups are, respectively, isomorphic to the discriminant groups of the cut lattice and flow lattice, and that the cutflow group mediates between them with an “error term” given by homology. Specifically, if \(\dim \Sigma = d\), then we have the short exact sequences:

$$\begin{aligned}&0 \rightarrow \mathbb {Z}^n / (\mathcal {C}\oplus \mathcal {F}) \rightarrow \mathcal {C}^\sharp /\mathcal {C}\cong K(\Sigma ) \rightarrow \mathbf{T}(\tilde{H}_{d-1}(\Sigma ;\mathbb {Z}))\rightarrow 0,\\&0 \rightarrow \mathbf{T}(\tilde{H}_{d-1}(\Sigma ;\mathbb {Z})) \rightarrow \mathbb {Z}^n/(\mathcal {C}\oplus \mathcal {F})\rightarrow \mathcal {F}^\sharp /\mathcal {F}\cong K^*(\Sigma ) \rightarrow 0 \end{aligned}$$

(Theorems 7.6 and 7.7) where \(\mathbf{T}\) denotes the torsion summand. The sizes of these groups are then given by

$$\begin{aligned} |\mathcal {C}^\sharp /\mathcal {C}| = |K(\Sigma )|&= \tau (\Sigma ) = \tau ^*(\Sigma )\cdot \mathbf{t}^2,\\ |\mathcal {F}^\sharp /\mathcal {F}| = |K^*(\Sigma )|&= \tau ^*(\Sigma )= \tau (\Sigma )/\mathbf{t}^2,\\ |\mathbb {Z}^n/(\mathcal {C}\oplus \mathcal {F})|&= \tau (\Sigma )/\mathbf{t}= \tau ^*(\Sigma )\cdot \mathbf{t}, \end{aligned}$$

(Theorems 8.1 and 8.2), where \(\mathbf{t}=|\mathbf{T}(\tilde{H}_{d-1}(\Sigma ;\mathbb {Z}))|\) and \(\tau (\Sigma )\) and \(\tau ^*(\Sigma )\) are the weighted enumerators

$$\begin{aligned} \tau (\Sigma )&=\sum _\Upsilon |\mathbf{T}(\tilde{H}_{d-1}(\Upsilon ;\mathbb {Z}))|^2,&\tau ^*(\Sigma )&=\sum _\Upsilon |\mathbf{T}(\tilde{H}_d(\Omega ,\Upsilon ;\mathbb {Z}))|^2, \end{aligned}$$

where both sums run over all cellular spanning forests \(\Upsilon \subseteq \Sigma \) (see Eq. 3) and \(\Omega \) is an acyclization of \(\Upsilon \) (see Definition 7.3).

Before proving these results, we study the cut space (Sect. 4), the flow space (Sect. 5), and the cut and flow lattices (Sect. 6) in some detail. In order to do this, we begin in Sect. 3 by describing and enumerating cellular spanning forests of an arbitrary cell complex, generalizing our earlier work [15, 16]. Similar results were independently achieved, using different techniques, by Catanzaro, Chernyak and Klein [8]. Our methods and results are very close to those of Lyons [29], but our technical emphasis is slightly different.

Every cellular spanning forest \(\Upsilon \) naturally gives rise to bases of the cut space (Theorem 4.8) and the flow space (Theorem 5.5). In the graphic case, these basis vectors are simply signed characteristic vectors of fundamental cocircuits and circuits in the graphic matroid, and they always form integral bases for the cut and flow lattices. For a general cellular complex, the supports of basis vectors are given by cocircuits and circuits in the cellular matroid of \(\Sigma \) (i.e., the matroid represented by the columns of \(\partial \)), but their entries are not determined by the matroid. We prove that the basis vectors can be scaled so that their entries are torsion coefficients of homology groups of certain subcomplexes (Theorems 4.11 and 5.3). Under certain conditions on \(\Upsilon \), these bases are in fact integral bases for the cut and flow lattices (Theorems 6.1 and 6.2). Although the matroid data alone are not enough to extend the theory of [2] to arbitrary cell complexes, the perspective of matroid theory will frequently be useful.

The idea of studying cuts and flows of matroids goes back to Tutte [33]. More recently, Su and Wagner [32] define cuts and flows of a regular matroid (i.e., one represented by a totally unimodular matrix \(M\)); when \(M\) is the boundary matrix of a cell complex, this is the case where the torsion coefficients are all trivial. Su and Wagner’s definitions coincide with ours; their focus, however, is on recovering the structure of a matroid from the metric data of its flow lattice.

In the final section of the paper, we generalize a theorem of Kotani and Sunada [26], who observed that a classical inequality for integer lattices, involving Hermite’s constant (see, e.g., [27]), could be applied to the flow lattice of a graph to give a bound for girth and complexity. We prove the corresponding result for cell complexes (Theorem 9.2), where “girth” means the size of a smallest circuit in the cellular matroid (or, topologically, the minimum number of facets supporting a nonzero homology class), and “complexity” is the torsion-weighted count of cellular spanning trees.

2 Preliminaries

In this section, we review the tools needed throughout the paper: cell complexes, cellular spanning trees and forests, integer lattices, and matroids.

2.1 Cell complexes

Our work is motivated by algebraic graph theory, including critical groups, cut and flow spaces and lattices, and the chip-firing game. Our central goal is to extend the theory from graphs to higher-dimensional spaces. Thus, we work in the setting of a finite CW complex, regarded as the higher-dimensional analogue of a graph. Accordingly, we begin by reviewing some of the topology of cell complexes; for a general reference, see [23, p. 5]. The reader more familiar with simplicial complexes may safely consider that special case throughout.

Throughout the paper, \(\Sigma \) will denote a finite CW complex (which we refer to simply as a cell complex) of dimension \(d\). We adopt the convention that \(\Sigma \) has a unique cell of dimension \(-1\) (as though it were an abstract simplicial complex); this will allow our results to specialize correctly to the case \(d=1\) (i.e., that \(\Sigma \) is a graph). We write \(\Sigma _i\) for the set of \(i\)-dimensional cells in \(\Sigma \), and \(\Sigma _{(i)}\) for the \(i\)-dimensional skeleton of \(\Sigma \), i.e., \(\Sigma _{(i)}=\Sigma _i\cup \Sigma _{i-1}\cup \cdots \cup \Sigma _0\). Again, in keeping with simplicial-complex terminology, a cell of dimension \(d\) is called a facet.

Unless otherwise stated, every \(d\)-dimensional subcomplex \(\Gamma \subseteq \Sigma \) will be assumed to have a full codimension-1 skeleton, i.e., \(\Gamma _{(d-1)}=\Sigma _{(d-1)}\). Accordingly, for simplicity of notation, we will often make no distinction between the subcomplex \(\Gamma \) itself and its set \(\Gamma _d\) of facets.

The symbol \(C_i(\Sigma )=C_i(\Sigma ;R)\) denotes the group of \(i\)-dimensional cellular chains with coefficients in a ring \(R\). The \(i\)-dimensional cellular boundary and coboundary maps are, respectively, \(\partial _i(\Sigma ;R):C_i(\Sigma ;R) \rightarrow C_{i-1}(\Sigma ;R)\) and \(\partial ^{*}_i(\Sigma ;R):C_{i-1}(\Sigma ;R) \rightarrow C_i(\Sigma ;R)\); we will write simply \(\partial _i\) and \(\partial ^{*}_i\) whenever possible.

When \(\Sigma \) is a graph (i.e., a cell complex of dimension 1), its top boundary map is a familiar object, namely its signed vertex-edge incidence matrix (with respect to some edge orientation). In this article, our goal will be to extract combinatorial information about an arbitrary cell complex from its top-dimensional boundary map (which can be any integer matrix).

The \(i\)th reduced cellular homology and cohomology groups of \(\Sigma \) are, respectively, \(\tilde{H}_i(\Sigma ;R)=\ker \partial _i/{{\mathrm{im}}}\partial _{i+1}\) and \(\tilde{H}^i(\Sigma ;R)=\ker \partial ^{*}_{i+1}/{{\mathrm{im}}}\partial ^{*}_i\). We say that \(\Sigma \) is \(R\)-acyclic in codimension one if \(\tilde{H}_{d-1}(\Sigma ;R)=0\). For a graph (\(d=1\)), both \(\mathbb {Q}\)- and \(\mathbb {Z}\)-acyclicity in codimension one are equivalent to connectedness. The \(i\)th reduced Betti number is \(\tilde{\beta }_i(\Sigma )=\dim \tilde{H}_i(\Sigma ;\mathbb {Q})\), and the \(i\)th torsion coefficient \(\mathbf{t}_i(\Sigma )\) is the cardinality of the torsion subgroup \(\mathbf{T}(\tilde{H}_i(\Sigma ;\mathbb {Z}))\). We will frequently use the fact that

$$\begin{aligned} \mathbf{T}(\tilde{H}_{d-1}(\Sigma ;\mathbb {Z})) \cong \mathbf{T}(\tilde{H}^d(\Sigma ;\mathbb {Z})) \end{aligned}$$
(1)

which is a special case of the universal coefficient theorem for cohomology [23, p. 205, Corollary 3.3]. A pair of complexes \(\Gamma \subseteq \Sigma \) induces a relative complex \((\Sigma ,\Gamma )\), with relative homology and cohomology \(\tilde{H}_i(\Sigma ,\Gamma ;R)\) and \(\tilde{H}^i(\Sigma ,\Gamma ;R)\) and torsion coefficients \(\mathbf{t}_i(\Sigma ,\Gamma )=|\mathbf{T}(\tilde{H}_i(\Sigma ,\Gamma ;\mathbb {Z}))|\).

While many definitions and results can be stated purely algebraically (e.g., in terms of chain complexes over \(\mathbb {Z}\)), we regard the underlying object of interest as the cell complex (see Remark 4.2).

2.2 Spanning forests and Laplacians

Our work on cuts and flows will use the theory of spanning forests in arbitrary dimensions. Define a cellular spanning forest (CSF) of \(\Sigma \) to be a subcomplex \(\Upsilon \subseteq \Sigma \) such that \(\Upsilon _{(d-1)}=\Sigma _{(d-1)}\) and

$$\begin{aligned}&\tilde{H}_d(\Upsilon ;\mathbb {Z}) = 0,\end{aligned}$$
(2a)
$$\begin{aligned}&{{\mathrm{rank}}}\tilde{H}_{d-1}(\Upsilon ;\mathbb {Z})={{\mathrm{rank}}}\tilde{H}_{d-1}(\Sigma ;\mathbb {Z}), \quad \text {and}\end{aligned}$$
(2b)
$$\begin{aligned}&|\Upsilon _d| = |\Sigma _d| - \tilde{\beta }_d(\Sigma ) \end{aligned}$$
(2c)

The above conditions generalize the definition of a spanning forestFootnote 1 of a graph \(G\): respectively, it is acyclic, has \(c\) components, and has \(n-c\) edges, where \(n\) and \(c\) are the numbers of vertices and components of \(G\). Just as in the graphic case, any two of the conditions (2a), (2b), (2c) together imply the third; the proof is just a slight modification of the proof of [15, Proposition 3.5]. An equivalent and perhaps simpler definition is that a subcomplex \(\Upsilon \subseteq \Sigma \) is a cellular spanning forest if and only if its \(d\)-cells correspond to a column basis for the cellular boundary matrix \(\partial =\partial _d(\Sigma )\); however, the definition focusing on integral homology is frequently the most useful (see, e.g., Remark 4.15).

In the case that \(\Sigma \) is \(\mathbb {Q}\)-acyclic in codimension one, this definition specializes to our earlier definition of a cellular spanning tree [16, Definition 2.2].

There are two main reasons that enumeration of spanning forests of cell complexes is more complicated than for graphs. First, many properties of graphs can be studied component by component, so that one can usually make the simplifying assumption of connectedness; on the other hand, a higher-dimensional cell complex cannot in general be decomposed into disjoint pieces that are all acyclic in codimension one. Second, for complexes of dimension greater than or equal to two, the possibility of torsion homology affects enumeration.

Define the \(i\)th up-down, down-up and total Laplacian operatorsFootnote 2 on \(\Sigma \) by

$$\begin{aligned} L^{\mathrm {ud}}_i&= \partial _{i+1}\partial ^{*}_{i+1}:C_i(\Sigma ;R) \rightarrow C_i(\Sigma ;R),\\ L^{\mathrm {du}}_i&= \partial ^{*}_i\partial _i:C_i(\Sigma ;R) \rightarrow C_i(\Sigma ;R),\\ L^\mathrm{tot }_i&= L^{\mathrm {ud}}_i + L^{\mathrm {du}}_i. \end{aligned}$$

Moreover, define the complexity of \(\Sigma \) as

$$\begin{aligned} \tau (\Sigma )=\tau _d(\Sigma )=\sum _{\text {CSFs }\Upsilon \subseteq \Sigma }|\mathbf{T}(\tilde{H}_{d-1}(\Upsilon ;\mathbb {Z}))|^2. \end{aligned}$$
(3)

The cellular matrix-tree theorem [16, Theorem 2.8] states that if \(\Sigma \) is \(\mathbb {Q}\)-acyclic in codimension one and \(L_{\bar{\Upsilon }}\) is the submatrix of \(L^{\mathrm {ud}}_{d-1}(\Sigma )\) obtained by deleting the rows and columns corresponding to the facets of a \((d-1)\) spanning tree \(\Upsilon \), then

$$\begin{aligned} \tau (\Sigma )=\frac{|\mathbf{T}(\tilde{H}_{d-2}(\Sigma ;\mathbb {Z}))|^2}{|\mathbf{T}(\tilde{H}_{d-2}(\Upsilon ;\mathbb {Z}))|^2}\det L_{\bar{\Upsilon }}. \end{aligned}$$

In Sect. 3, we will generalize this formula to arbitrary cell complexes (i.e., not requiring that \(\Sigma \) be \(\mathbb {Q}\)-acyclic in codimension one). This has previously been done by Lyons [29] in terms of slightly different invariants. If \(G\) is a connected graph, then \(\tau (G)\) is just the number of spanning trees, and we recover the classical matrix-tree theorem of Kirchhoff.

2.3 Lattices

Starting in Sect. 6, we will turn our attention to lattices of integer cuts and flows. We review some of the general theory of integer lattices; see, e.g., [1, Chap. 12], [21, Chap. 14], [24, Chap. IV].

A lattice \(\mathcal {L}\) is a discrete subgroup of a finite-dimensional vector space \(V\); that is, it is the set of integer linear combinations of some basis of \(V\). Every lattice \(\mathcal {L}\subseteq \mathbb {R}^n\) is isomorphic to \(\mathbb {Z}^r\) for some integer \(r\le n\), called the rank of \(\mathcal {L}\). The elements of \(\mathcal {L}\) span a vector space denoted by \(\mathcal {L}\otimes \mathbb {R}\). For \(\mathcal {L}\subseteq \mathbb {Z}^n\), the saturation of \(\mathcal {L}\) is defined as \(\hat{\mathcal {L}}=(\mathcal {L}\otimes \mathbb {R})\cap \mathbb {Z}^n\). An integral basis of \(\mathcal {L}\) is a set of linearly independent vectors \(v_1,\dots ,v_r\in \mathcal {L}\) such that \(\mathcal {L}=\{c_1v_1+\cdots +c_rv_r :c_i\in \mathbb {Z}\}\). We will need the following fact about integral bases of lattices; the equivalences are easy consequences of the theory of free modules (see, e.g., [1, Chap. 12], [24, Chap. IV]):

Proposition 2.1

For any lattice \(\mathcal {L}\subseteq \mathbb {Z}^n\), the following are equivalent:

  • (a) Every integral basis of \(\mathcal {L}\) can be extended to an integral basis of \(\mathbb {Z}^n\).

  • (b) Some integral basis of \(\mathcal {L}\) can be extended to an integral basis of \(\mathbb {Z}^n\).

  • (c) \(\mathcal {L}\) is a summand of \(\mathbb {Z}^n\), i.e., \(\mathbb {Z}^n\) can be written as an internal direct sum \(\mathcal {L}\oplus \mathcal {L}'\).

  • (d) \(\mathcal {L}\) is the kernel of some group homomorphism \(\mathbb {Z}^n\rightarrow \mathbb {Z}^m\).

  • (e) \(\mathcal {L}\) is saturated, i.e., \(\mathcal {L}=\hat{\mathcal {L}}\).

  • (f) \(\mathbb {Z}^n/\mathcal {L}\) is a free \(\mathbb {Z}\)-module, i.e., its torsion submodule is zero.

Fixing the standard inner product \(\langle \cdot ,\cdot \rangle \) on \(\mathbb {R}^n\), we define the dual lattice of \(\mathcal {L}\) by

$$\begin{aligned} \mathcal {L}^\sharp = \{v\in \mathcal {L}\otimes \mathbb {R}:\left\langle v,w\right\rangle \in \mathbb {Z}\ \ \forall w\in \mathcal {L}\}. \end{aligned}$$

Note that \(\mathcal {L}^\sharp \) can be identified with the dual \(\mathbb {Z}\)-module \(\mathcal {L}^*={{\mathrm{Hom}}}(\mathcal {L},\mathbb {Z})\), and that \((\mathcal {L}^\sharp )^\sharp = \mathcal {L}\). A lattice is called integral if it is contained in its dual; for instance, any subgroup of \(\mathbb {Z}^n\) is an integral lattice. The discriminant group (or determinantal group) of an integral lattice \(\mathcal {L}\) is \(\mathcal {L}^\sharp / \mathcal {L}\); its cardinality can be calculated as \(\det M^TM\), for any matrix \(M\) whose columns form an integral basis of \(\mathcal {L}\). We will need the following facts about bases and duals of lattices:

Proposition 2.2

[21, Sect. 14.6] Let \(M\) be an \(n\times r\) integer matrix.

  • (a) If the columns of \(M\) form an integral basis for the lattice \(\mathcal {L}\), then the columns of \(M(M^TM)^{-1}\) form the corresponding dual basis for \(\mathcal {L}^\sharp \).

  • (b) The matrix \(P=M(M^TM)^{-1}M^T\) represents orthogonal projection from \(\mathbb {R}^n\) onto the column space of \(M\).

  • (c) If the greatest common divisor of the \(r \times r\) minors of \(M\) is 1, then \(\mathcal {L}^\sharp \) is generated by the columns of \(P\).

2.4 The cellular matroid

Many ideas of the paper may be expressed efficiently using the language of matroids. For a general reference on matroids, see, e.g., [31]. We will primarily consider cellular matroids. The cellular matroid of \(\Sigma \) is the matroid \(\mathcal {M}(\Sigma )\) represented over \(\mathbb {R}\) by the columns of the boundary matrix \(\partial \). Thus, the ground set of \(\mathcal {M}(\Sigma )\) naturally corresponds to the \(d\)-dimensional cells \(\Sigma _d\), and the matroid records which sets of columns of \(\partial \) are linearly independent. If \(\Sigma \) is a graph, then \(\mathcal {M}(\Sigma )\) is its usual graphic matroid, while if \(\Sigma \) is a simplicial complex, then \(\mathcal {M}(\Sigma )\) is its simplicial matroid [10].

The bases of \(\mathcal {M}(\Sigma )\) are the collections of facets of cellular spanning forests of \(\Sigma \). If \(r\) is the rank function of the matroid \(\mathcal {M}(\Sigma )\), then for each set of facets \(B\subseteq \Sigma _d\), we have \(r(B) = {{\mathrm{rank}}}\partial _B\), where \(\partial _B\) is the submatrix consisting of the columns indexed by the facets in \(B\). Moreover, we have

$$\begin{aligned} r(\Sigma ) := r(\Sigma _d) = {{\mathrm{rank}}}\mathcal {M}(\Sigma ) = {{\mathrm{rank}}}\partial = |\Sigma _d|-\tilde{\beta }_d(\Sigma ) \end{aligned}$$

by the definition of Betti number.

A set of facets \(B\subseteq \Sigma _d\) is called a cut if deleting \(B\) from \(\Sigma \) increases its codimension-one homology, i.e., \(\tilde{\beta }_{d-1}(\Sigma {\setminus } B)>\tilde{\beta }_{d-1}(\Sigma )\). A cut \(B\) is a bond if \(r(\Sigma {\setminus } B) = r(\Sigma )-1\), but \(r((\Sigma {\setminus } B) \cup \sigma )=r(\Sigma )\) for every \(\sigma \in B\). That is, a bond is a minimal cut. In matroid terminology, a bond of \(\Sigma \) is precisely a cocircuit of \(\mathcal {M}(\Sigma )\), i.e., a minimal set that meets every basis of \(\mathcal {M}(\Sigma )\). Equivalently, a bond is the complement of a flat of rank \(r(\Sigma )-1\). If \(\Upsilon \) is a cellular spanning forest (i.e., a basis of \(\mathcal {M}(\Sigma )\)) and \(\sigma \in \Upsilon _d\) is a facet, then the fundamental bond of the pair \((\Upsilon ,\sigma )\) is

$$\begin{aligned} {{\mathrm{\mathsf {bo}}}}(\Upsilon ,\sigma ) = \sigma \cup \left\{ \rho \in \Sigma _d{\setminus }\Upsilon :\Upsilon {\setminus }\sigma \cup \rho \text { is a CSF}\right\} . \end{aligned}$$
(4)

This is the fundamental cocircuit of the pair \((\Upsilon ,\sigma )\) of \(\mathcal {M}(\Sigma )\) [31, p. 78].

While the language of matroids will frequently be useful, it is important to point out that most of the objects of interest to us, such as the cut and flow lattices and the critical group of a cell complex \(\Sigma \), are not purely combinatorial invariants of its cellular matroid \(\mathcal {M}(\Sigma )\). (See [32] for more on this subject, and [11, 19] for generalizations of matroids that contain finer arithmetic information). As an example, the summands in Eq. (3) are indexed by the bases of \(\mathcal {M}(\Sigma )\), but the summands themselves are not part of the matroid data. (On the other hand, when \(\Sigma \) is a graph, all summands are 1.)

Below is a table collecting some of the standard terminology from linear algebra, graph theory, and matroid theory, along with the analogous concepts that we will be using for cell complexes.

Linear algebra

Graph

Matroid

Cell complex

Column vectors

Edges

Ground set

Facets

Independent set

Acyclic subgraph

Independent set

Acyclic subcomplex

Min linear dependence

Cycle

Circuit

Circuit

Basis

Spanning forest

Basis

CSF

Set meeting all bases

Disconnecting set

Codependent set

Cut

Min set meeting all bases

Bond

Cocircuit

Bond

Rank

# edges in spanning forest

Rank

# facets in CSF

Here “codependent” means dependent in the dual matroid.

3 Enumerating cellular spanning forests

In this section, we study the enumerative properties of cellular spanning forests of an arbitrary cell complex \(\Sigma \). Our setup is essentially the same as that of Lyons [29], Sect. 6], but the combinatorial formulas we will need later, namely Propositions 3.2 and 3.4, are somewhat different. As a corollary, we obtain an enumerative result, Proposition 3.5, which generalizes the simplicial and cellular matrix-tree theorems of [15] and [16] (in which we required that \(\Sigma \) be \(\mathbb {Q}\)-acyclic in codimension one). The result is closely related, but not quite equivalent, to Lyons’ generalization of the cellular matrix-tree theorem [29, Corollary 6.2], and to [8, Corollary D].

The arguments require some tools from homological algebra, in particular, the long exact sequence for relative homology and some facts about the torsion-subgroup functor. The details of the proofs are not necessary to understand the constructions of cut and flow spaces in the later sections.

Let \(\Sigma \) be a \(d\)-dimensional cell complex with rank \(r\). Let \(\Gamma \subseteq \Sigma \) be a subcomplex of dimension less than or equal to \(d-1\) such that \(\Gamma _{(d-2)}=\Sigma _{(d-2)}\). Thus, the inclusion map \(i:\Gamma \rightarrow \Sigma \) induces isomorphisms \(i_*:\tilde{H}_k(\Gamma ;\mathbb {Q})\rightarrow \tilde{H}_k(\Sigma ;\mathbb {Q})\) for all \(k<d-2\).

Definition 3.1

The subcomplex \(\Gamma \subseteq \Sigma \) is called relatively acyclic if in fact the inclusion map \(i:\Gamma \rightarrow \Sigma \) induces isomorphisms \(i_*:\tilde{H}_k(\Gamma ;\mathbb {Q})\rightarrow \tilde{H}_k(\Sigma ;\mathbb {Q})\) for all \(k<d.\)

By the long exact sequence for relative homology, \(\Gamma \) is relatively acyclic if and only if \(\tilde{H}_d(\Sigma ;\mathbb {Q})\rightarrow \tilde{H}_d(\Sigma ,\Gamma ;\mathbb {Q})\) is an isomorphism and \(\tilde{H}_k(\Sigma ,\Gamma ;\mathbb {Q})=0\) for all \(k<d\). These conditions can occur only if \(|\Gamma _{d-1}|=|\Sigma _{d-1}|-r\). This quantity may be zero (in which case the only relatively acyclic subcomplex is \(\Sigma _{(d-2)}\)). A relatively acyclic subcomplex is precisely the complement of a \((d-1)\)-cobase (a basis of the matroid represented over \(\mathbb {R}\) by the rows of the boundary matrix \(\partial \)) in the terminology of Lyons [29].

Two special cases are worth noting. First, if \(d=1\), then a relatively acyclic complex consists of one vertex in each connected component. Second, if \(\tilde{H}_{d-1}(\Sigma ;\mathbb {Q})=0\), then \(\Gamma \) is relatively acyclic if and only if it is a cellular spanning forest of \(\Sigma _{(d-1)}\).

For a matrix \(M\), we write \(M_{A,B}\) for the restriction of \(M\) to rows indexed by \(A\) and columns indexed by \(B\).

Proposition 3.2

Let \(\Gamma \subseteq \Upsilon \subseteq \Sigma \) be subcomplexes such that \(\dim \Upsilon =d\); \(\dim \Gamma =d-1\); \(|\Upsilon _d|=r\); \(|\Gamma _{d-1}|=|\Sigma _{d-1}|-r\); \(\Upsilon _{(d-1)}=\Sigma _{(d-1)}\); and \(\Gamma _{(d-2)}=\Sigma _{(d-2)}\). Also, let \(R=\Sigma _{d-1} {\setminus } \Gamma \). Then the following are equivalent:

  • (a) The \(r\times r\) square matrix \(\hat{\partial }=\partial _{R,\Upsilon }\) is nonsingular.

  • (b) \(\tilde{H}_d(\Upsilon ,\Gamma ;\mathbb {Q})=0\).

  • (c) \(\tilde{H}_{d-1}(\Upsilon ,\Gamma ;\mathbb {Q})=0\).

  • (d) \(\Upsilon \) is a cellular spanning forest of \(\Sigma \) and \(\Gamma \) is relatively acyclic.

Proof

The cellular chain complex of the relative complex \((\Upsilon ,\Gamma )\) is

$$\begin{aligned} 0 \rightarrow C_d(\Upsilon ,\Gamma ;\mathbb {Q})=\mathbb {Q}^r \xrightarrow {\hat{\partial }} C_{d-1}(\Upsilon ,\Gamma ;\mathbb {Q})=\mathbb {Q}^r \rightarrow 0 \end{aligned}$$

with other terms zero. If \(\hat{\partial }\) is nonsingular, then \(\tilde{H}_d(\Upsilon ,\Gamma ;\mathbb {Q})\) and \(\tilde{H}_{d-1}(\Upsilon ,\Gamma ;\mathbb {Q})\) are both zero; otherwise, both are nonzero. This proves the equivalence of (a), (b) and (c).

Next, note that \(\tilde{H}_d(\Gamma ;\mathbb {Q})=0\) (because \(\Gamma \) has no cells in dimension \(d\)) and that \(\tilde{H}_{d-2}(\Upsilon ,\Gamma ;\mathbb {Q})=0\) (because \(\Gamma _{(d-2)}=\Upsilon _{(d-2)}\)). Accordingly, the long exact sequence for relative homology of \((\Upsilon ,\Gamma )\) is

$$\begin{aligned} \begin{aligned} 0&\rightarrow \tilde{H}_d(\Upsilon ;\mathbb {Q}) \rightarrow \tilde{H}_d(\Upsilon ,\Gamma ;\mathbb {Q})\\&\rightarrow \tilde{H}_{d-1}(\Gamma ;\mathbb {Q}) \rightarrow \tilde{H}_{d-1}(\Upsilon ;\mathbb {Q}) \rightarrow \tilde{H}_{d-1}(\Upsilon ,\Gamma ;\mathbb {Q})\\&\rightarrow \tilde{H}_{d-2}(\Gamma ;\mathbb {Q}) \rightarrow \tilde{H}_{d-2}(\Upsilon ;\mathbb {Q}) \rightarrow 0. \end{aligned} \end{aligned}$$
(5)

If \(\tilde{H}_d(\Upsilon ,\Gamma ;\mathbb {Q})=\tilde{H}_{d-1}(\Upsilon ,\Gamma ;\mathbb {Q})=0\), then \(\tilde{H}_d(\Upsilon ;\mathbb {Q})=0\) (which says that \(\Upsilon \) is a cellular spanning forest) and the rest of (5) splits into two isomorphisms that assert precisely that \(\Gamma \) is relatively acyclic (recall that \(\tilde{H}_{d-1}(\Upsilon ;\mathbb {Q})=\tilde{H}_{d-1}(\Sigma ;\mathbb {Q})\) when \(\Upsilon \) is a cellular spanning forest). This implication is reversible, completing the proof. \(\square \)

The torsion subgroup of a finitely generated abelian group \(A\) is defined as the subgroup

$$\begin{aligned} \mathbf{T}(A)=\{x\in A :kx=0\text { for some } k\in \mathbb {Z}\}. \end{aligned}$$

Note that \(A=\mathbf{T}(A)\) if and only if \(A\) is finite. The torsion functor \(\mathbf{T}\) is left-exact [24, p. 179]. Moreover, if \(A\rightarrow B\rightarrow C\rightarrow 0\) is exact and \(A=\mathbf{T}(A)\), then \(\mathbf{T}(A) \rightarrow \mathbf{T}(B) \rightarrow \mathbf{T}(C) \rightarrow 0\) is exact. We will need the following additional fact about the torsion functor:

Lemma 3.3

Suppose we have a commutative diagram of finitely generated abelian groups

(6)

such that both rows are exact; \(A,A'\) are free; \(\alpha \) is an isomorphism; \(\beta \) is surjective; and \(C,C'\) are finite. Then there is an induced commutative diagram

(7)

such that \(G\) is finite and both rows are exact. Consequently,

$$\begin{aligned} |\mathbf{T}B|\cdot |\mathbf{T}C'|\cdot |\mathbf{T}D| \cdot |\mathbf{T}E'|=|\mathbf{T}B'|\cdot |\mathbf{T}C|\cdot |\mathbf{T}D'|\cdot |\mathbf{T}E|. \end{aligned}$$
(8)

Proof

Since \(C\) is finite, we have \(\ker j={{\mathrm{im}}}h\subseteq \mathbf{T}D\), and so replacing \(D,E\) with their torsion summands preserves exactness. The same argument implies that we can replace \(D',E'\) with \(\mathbf{T}D',\mathbf{T}E'\).

Second, note that \(A,A',B,B'\) all have the same rank (since the rows are exact, \(C,C'\) are finite, and \(\alpha \) is an isomorphism). Hence, \(f(A)\) is a maximal-rank free submodule of \(B\); we can write \(B=\mathbf{T}B\oplus F\), where \(F\) is a free summand of \(B\) containing \(f(A)\). Likewise, write \(B'=\mathbf{T}B'\oplus F'\), where \(F'\) is a free summand of \(B'\) containing \(f'(A')\). Meanwhile, \(\beta \) is surjective, and hence must restrict to an isomorphism \(F\rightarrow F'\), which induces an isomorphism \(F/f(A)\rightarrow F'/f'(A')\). Abbreviating this last group by \(G\), we obtain the desired diagram (7) . Since \(\ker g={{\mathrm{im}}}f\subseteq F\), the map \(g:\mathbf{T}B\oplus G\rightarrow \mathbf{T}C\) is injective, proving exactness of the first row; the second row is exact by the same argument. Exactness of each row implies that the alternating product of the cardinalities of the groups is 1, from which the Eq. (8) follows. \(\square \)

Proposition 3.4

Let \(\Sigma \) be a \(d\)-dimensional cell complex, let \(\Upsilon \subseteq \Sigma \) be a cellular spanning forest, and let \(\Gamma \subseteq \Sigma \) be a relatively acyclic \((d-1)\)-subcomplex. Then

$$\begin{aligned} \mathbf{t}_{d-1}(\Upsilon )\, \mathbf{t}_{d-1}(\Sigma ,\Gamma )=\mathbf{t}_{d-1}(\Sigma )\, \mathbf{t}_{d-1}(\Upsilon ,\Gamma ). \end{aligned}$$

Proof

The inclusion \(\Upsilon \subseteq \Sigma \) induces a commutative diagram

whose rows come from the long exact sequences for relative homology. (For the top row, the group \(\tilde{H}_d(\Upsilon ,\Gamma ;\mathbb {Z})\) is free because \(\dim \Upsilon = d\), and on the other hand is purely torsion by Proposition 3.2, so it must be zero. For the bottom row, the condition that \(\Gamma \) is relatively acyclic implies that \(i_*\) is an isomorphism over \(\mathbb {Q}\); therefore, it is one-to-one over \(\mathbb {Z}\).) The groups \(\tilde{H}_{d-1}(\Upsilon ,\Gamma ;\mathbb {Z})\) and \(\tilde{H}_{d-1}(\Sigma ,\Gamma ;\mathbb {Z})\) are purely torsion. The first, the fourth, and the fifth vertical maps are isomorphisms (the last because \(\Upsilon _{(d-1)}=\Sigma _{(d-1)}\)), and the second is a surjection by the relative homology sequence of the pair \((\Sigma ,\Upsilon )\) (since the relative complex has no cells in dimension \(d-1\)). The result now follows by applying Lemma 3.3 and canceling like terms. \(\square \)

As a consequence, we obtain a version of the cellular matrix-forest theorem that applies to all cell complexes (not only those that are \(\mathbb {Q}\)-acyclic in codimension one).

Proposition 3.5

Let \(\Sigma \) be a \(d\)-dimensional cell complex and let \(\Gamma \subseteq \Sigma \) be a relatively acyclic \((d-1)\)-dimensional subcomplex, and let \(L_\Gamma \) be the restriction of \(L^{\mathrm {ud}}_{d-1}(\Sigma )\) to the \((d-1)\)-cells of \(\Gamma \). Then

$$\begin{aligned} \tau _d(\Sigma ) = \frac{\mathbf{t}_{d-1}(\Sigma )^2}{\mathbf{t}_{d-1}(\Sigma ,\Gamma )^2}\det L_\Gamma . \end{aligned}$$

Proof

By the Binet–Cauchy formula and Propositions 3.2 and 3.4, we have

$$\begin{aligned} \det L_\Gamma&= \det \partial _\Gamma \partial ^{*}_\Gamma = \sum _{\Upsilon \subseteq \Sigma _d:|\Upsilon |=r(\Sigma )} (\det \partial _{\Gamma ,\Upsilon })^2 ~=~ \sum _{\text {CSFs\ }\Upsilon \subseteq \Sigma _d} \mathbf{t}_{d-1}(\Upsilon ,\Gamma )^2\\&= \frac{\mathbf{t}_{d-1}(\Sigma ,\Gamma )^2}{\mathbf{t}_{d-1}(\Sigma )^2}\sum _{\text {CSFs\ }\Upsilon \subseteq \Sigma _d} \mathbf{t}_{d-1}(\Upsilon )^2 ~=~ \frac{\mathbf{t}_{d-1}(\Sigma ,\Gamma )^2}{\mathbf{t}_{d-1}(\Sigma )^2}\tau _d(\Sigma ) \end{aligned}$$

and solving for \(\tau _d(\Sigma )\) gives the desired formula. \(\square \)

If \(\tilde{H}_{d-1}(\Sigma ;\mathbb {Z})=\mathbf{T}(\tilde{H}_{d-1}(\Sigma ;\mathbb {Z}))\), then the relative homology sequence of the pair \((\Sigma ,\Gamma )\) gives rise to the exact sequence

$$\begin{aligned}&0\rightarrow \mathbf{T}(\tilde{H}_{d-1}(\Sigma ;\mathbb {Z}))\rightarrow \mathbf{T}(\tilde{H}_{d-1}(\Sigma ,\Gamma ;\mathbb {Z}))\\&\quad \rightarrow \mathbf{T}(\tilde{H}_{d-2}(\Gamma ;\mathbb {Z}))\rightarrow \mathbf{T}(\tilde{H}_{d-2}(\Sigma ;\mathbb {Z}))\rightarrow 0 \end{aligned}$$

which implies that \(\mathbf{t}_{d-1}(\Sigma )/\mathbf{t}_{d-1}(\Sigma ,\Gamma )=\mathbf{t}_{d-2}(\Sigma )/\mathbf{t}_{d-2}(\Gamma )\), so Proposition 3.5 becomes the formula \(\tau _d(\Sigma ) = \frac{\mathbf{t}_{d-2}(\Sigma )^2}{\mathbf{t}_{d-2}(\Gamma )^2}\det L_\Gamma \). This was one of the original versions of the cellular matrix-tree theorem [16, Theorem 2.8(2)].

Remark 3.6

Lyons [29, Corollary 6.2] proves a similar matrix-forest theorem in terms of an invariant \(\mathbf{t}'\) defined below. He shows that each row of (6) induces the corresponding row of (7). This does not quite imply Lemma 3.3, since one still needs to identify the “error terms” \(G\) in the top and bottom rows of (7). Doing so would amount to showing that \(\tilde{H}_{d-1}(\Upsilon )/\ker (j_*)\cong \tilde{H}_{d-1}(\Sigma )/\ker (j_*)\) in the commutative diagram of Proposition 3.4. Alternatively, Proposition 3.4 would follow from [29, Lemma 6.1] together with the equation

$$\begin{aligned} \mathbf{t}_{d-2}(\Gamma ) \mathbf{t}'_{d-1}(\bar{\Gamma }) / \mathbf{t}_{d-2}(\Sigma ) = \mathbf{t}_{d-1}(\Sigma ,\Gamma ) / \mathbf{t}_{d-1}(\Sigma ), \end{aligned}$$

where \(\bar{\Gamma }=X_{(d-1)}{\setminus }\Gamma \) and \(\mathbf{t}'_{d-1}(\bar{\Gamma })= \big \vert \ker \partial _{d-1}(\Sigma ;\mathbb {Z}) / \big ( (\ker \partial _{d-1}(\Sigma ;\mathbb {Z})\cap {{\mathrm{im}}}\partial _d(\Sigma ;\mathbb {Q})) + \ker \partial _{d-1}(\Gamma ;\mathbb {Z}) \big ) \big \vert \).

4 The cut space

Throughout this section, let \(\Sigma \) be a cell complex of dimension \(d\) and rank \(r\) (that is, every cellular spanning forest of \(\Sigma \) has \(r\) facets). For each \(i\le d\), the \(i\)-cut space and \(i\)-flow space of \(\Sigma \) are defined, respectively, as the spaces of cellular coboundaries and cellular cycles:

$$\begin{aligned} {{\mathrm{Cut}}}_i(\Sigma )&= {{\mathrm{im}}}( \partial ^{*}_i:C_{i-1}(\Sigma ,\mathbb {R}) \rightarrow C_i(\Sigma ,\mathbb {R})),\\ {{\mathrm{Flow}}}_i(\Sigma )&= \ker ( \partial _i:C_i(\Sigma ,\mathbb {R}) \rightarrow C_{i-1}(\Sigma ,\mathbb {R})). \end{aligned}$$

We will primarily be concerned with the case \(i=d\). For \(i=1\), these are the standard graph-theoretic cut and flow spaces of the 1-skeleton of \(\Sigma \).

There are two natural ways to construct bases of the cut space of a graph, in which the basis elements correspond to either (a) vertex stars or (b) the fundamental circuits of a spanning forest (see, e.g. [21, Chap. 14]). The former is easy to generalize to cell complexes, but the latter involves more work.

First, if \(G\) is a graph on vertex set \(V\) and \(R\) is a set of (“root”) vertices, one in each connected component, then the rows of \(\partial \) corresponding to the vertices \(V{\setminus } R\) form a basis for \({{\mathrm{Cut}}}_1(G)\). This observation generalizes easily to cell complexes:

Proposition 4.1

A set of \(r\) rows of \(\partial \) forms a row basis if and only if the corresponding set of \((d-1)\)-cells is the complement of a relatively acyclic \((d-1)\)-subcomplex.

This is immediate from Proposition 3.2. Recall that if \(\tilde{H}_{d-1}(\Sigma ;\mathbb {Q})=0\), then “relatively acyclic \((d-1)\)-subcomplex” is synonymous with “spanning tree of the \((d-1)\)-skeleton.” In this case, Proposition 4.1 is also a consequence of the fact that the matroid represented by the rows of \(\partial _d\) is dual to the matroid represented by the columns of \(\partial _{d-1}\) [16, Proposition 6.1].

Fig. 1
figure 1

a The bipyramid \(\Theta \). b A simplicial spanning tree (unfolded). c Deleting the bond \(\{123,134,125\}\)

The second way to construct a basis of the cut space of a graph is to fix a spanning tree and take the signed characteristic vectors of its fundamental bonds. In the cellular setting, it is not hard to show that each bond supports a unique (up to scaling) vector in the cut space (Lemma 4.4) and that the fundamental bonds of a fixed cellular spanning forest give rise to a vector space basis (Theorem 4.8). (Recall from Sect. 2 that a bond in a cell complex is a minimal collection of facets whose removal increases the codimension-one homology, or equivalently a cocircuit of the cellular matroid.) The hard part is to identify the entries of these cut-vectors. For a graph, these entries are all 0 or \(\pm 1\). In higher dimension, this need not be the case, but the entries can be interpreted as the torsion coefficients of certain subcomplexes (Theorem 4.11). In Sect. 5, we will prove analogous results for the flow space.

Remark 4.2

Although many of our results may be stated in terms of algebraic chain complexes over \(\mathbb {Z}\) (integer boundary matrices), we use the language of cell complexes. (This is a difference only in terminology, not the generality of the results, since every integer matrix is the top-dimensional boundary matrix of some cell complex.) Thus, definitions and results about column bases, row bases, rank, etc., can be interpreted topologically in terms of cellular spanning trees and creating and puncturing holes in cell complexes (see Example 4.9 and Fig. 1). This is analogous to the situation in algebraic graph theory, where results that can be stated in terms of matrices are often more significant in terms of trees, cuts, flows, etc.

4.1 A basis of cut-vectors

Recall that the support of a vector \(v=(v_1,\dots ,v_n)\in \mathbb {R}^n\) is the set

$$\begin{aligned} {{\mathrm{supp}}}(v)=\{i\in [n] :v_i\ne 0\}. \end{aligned}$$

Proposition 4.3

[31, Proposition 9.2.4]. Let \(M\) be an \(r\times n\) matrix with rowspace \(V\subseteq \mathbb {R}^n\), and let \(\mathcal {M}\) be the matroid represented by the columns of \(M\). Then the cocircuits of \(\mathcal {M}\) are the inclusion-minimal elements of the family \({{\mathrm{Supp}}}(V) := \{{{\mathrm{supp}}}(v) :v\in V{\setminus }\{0\}\}\).

Lemma 4.4

Let \(B\) be a bond of \(\Sigma \). Then the set

$$\begin{aligned} {{\mathrm{Cut}}}_B(\Sigma )=\{0\}\cup \{v \in {{\mathrm{Cut}}}_d(\Sigma ) :{{\mathrm{supp}}}(v) = B\} \end{aligned}$$

is a one-dimensional subspace of \({{\mathrm{Cut}}}_d(\Sigma )\). That is, up to scalar multiple, there is a unique cut-vector, whose support is exactly \(B\).

Proof

Suppose that \(v,w\) are vectors in the cut space, both supported on \(B\), that are not scalar multiples of each other. Then there is a linear combination of \(v,w\) with strictly smaller support; this contradicts Proposition 4.3. On the other hand, Proposition 4.3 also implies that \({{\mathrm{Cut}}}_B(\Sigma )\) is not the zero space; therefore, it has dimension 1. \(\square \)

We now know that for every bond \(B\), there is a cut-vector supported on \(B\) that is uniquely determined up to a scalar multiple. As we will see, there is a choice of scale so that the coefficients of this cut-vector are given by certain minors of the down-up Laplacian \(L=L^{\mathrm {du}}_d(\Sigma )=\partial ^{*}\partial \) (Lemma 4.6); these minors (up to sign) can be interpreted as the cardinalities of torsion homology groups (Theorem 4.11).

In choosing a scale, the first step is to realize the elements of \({{\mathrm{Cut}}}_B(\Sigma )\) explicitly as images of the map \(\partial ^{*}\). Fix an inner product \(\left\langle \cdot ,\cdot \right\rangle \) on each chain group \(C_i(\Sigma ;\mathbb {R})\) by declaring the \(i\)-dimensional cells to be an orthonormal basis. (This amounts to identifying each cell with the cochain that is its characteristic function.) Thus, for \(\alpha \in C_i(\Sigma ;\mathbb {R})\), we have \({{\mathrm{supp}}}(\alpha )=\{\sigma \in \Sigma _i :\left\langle \sigma ,\alpha \right\rangle \ne 0\}\). Moreover, for all \(\beta \in C_{i-1}(\Sigma ;\mathbb {R})\), we have by basic linear algebra

$$\begin{aligned} \left\langle \partial \alpha ,\beta \right\rangle =\left\langle \alpha ,\partial ^{*}\beta \right\rangle . \end{aligned}$$
(9)

Lemma 4.5

Let \(B\) be a bond of \(\Sigma \) and let \(U\) be the space spanned by \(\{\partial \sigma :\sigma \in \Sigma _d{\setminus } B\}\). In particular, \(U\) is a subspace of \({{\mathrm{im}}}\partial \) of codimension one. Let \(V\) be the orthogonal complement of \(U\) in \({{\mathrm{im}}}\partial \), and let \(v\) be a nonzero element of \(V\). Then \({{\mathrm{supp}}}(\partial ^{*}v)=B\).

Proof

First, we show that \(\partial ^{*}v\ne 0\). To see this, observe that the column space of \(\partial \) is \(U + \mathbb {R}v\), and so the column space of \(\partial ^{*}\partial \) is \(\partial ^{*}U + \mathbb {R}\partial ^{*}v\). However, \({{\mathrm{rank}}}(\partial ^{*}\partial )={{\mathrm{rank}}}\partial =r\), and \(\dim U=r-1\); therefore, \(\partial ^{*}v\) cannot be the zero vector. Second, if \(\sigma \in \Sigma _d {\setminus } B\), then \(\partial \sigma \in U\), and so \(\left\langle \partial ^{*}v,\sigma \right\rangle = \left\langle v,\partial \sigma \right\rangle = 0.\) It follows that \({{\mathrm{supp}}}(\partial ^{*}v)\subseteq B\), and in fact \({{\mathrm{supp}}}(\partial ^{*}v)=B\) by Proposition 4.3. \(\square \)

Given a bond \(B\), let \(A=\{\sigma _1,\dots ,\sigma _{r-1}\}\) be a cellular spanning forest of \(\Sigma {\setminus } B\). Fix a facet \(\sigma =\sigma _r\in B\), so that \(A\cup \sigma \) is a cellular spanning forest of \(\Sigma \). Define a vector

$$\begin{aligned} v=v_{A,\sigma } =\sum _{j=1}^r (-1)^j (\det L^{\mathrm {du}}_{A,A\cup \sigma {\setminus } \sigma _j}) \partial \sigma _j ~\in ~ C_{d-1}(\Sigma ;\mathbb {Z}) \end{aligned}$$

so that

$$\begin{aligned} \partial ^{*}v=\sum _{j=1}^r (-1)^j (\det L^{\mathrm {du}}_{A,A\cup \sigma {\setminus } \sigma _j}) L^{\mathrm {du}}\sigma _j ~\in ~ {{\mathrm{Cut}}}_d(\Sigma ). \end{aligned}$$
(10)

Lemma 4.6

For the cut-vector \(\partial ^{*}v\) defined in Eq. 10,

$$\begin{aligned} \partial ^{*}v=(-1)^r\sum _{\rho \in B} (\det L^{\mathrm {du}}_{A\cup \rho ,A\cup \sigma }) \rho . \end{aligned}$$

In particular, \({{\mathrm{supp}}}(\partial ^{*}v)=B\).

Proof

For each \(\rho \in B\),

$$\begin{aligned} \left\langle \partial ^{*}v,\rho \right\rangle&= \sum _{j=1}^r (-1)^j \det L^{\mathrm {du}}_{A,A\cup \sigma {\setminus } \sigma _j} \left\langle L^{\mathrm {du}}\sigma _j,\rho \right\rangle \\&= \sum _{j=1}^r (-1)^j \det L^{\mathrm {du}}_{A,A\cup \sigma {\setminus } \sigma _j} \left\langle \partial \sigma _j,\partial \rho \right\rangle \\&= \sum _{j=1}^r (-1)^j \det L^{\mathrm {du}}_{A,A\cup \sigma {\setminus } \sigma _j} L^{\mathrm {du}}_{\rho ,\sigma _j}\\&= (-1)^r\det L^{\mathrm {du}}_{A\cup \rho ,A\cup \sigma }, \end{aligned}$$

where the last equality comes from expanding the row corresponding to \(\rho \). Note that \(\det L^{\mathrm {du}}_{A\cup \rho ,A\cup \sigma }\ne 0\) for \(\rho =\sigma \), so \(\partial ^{*}v\ne 0\). On the other hand, by Cramer’s rule, \(v\) is orthogonal to \(\partial \sigma _1,\dots , \partial \sigma _{r-1}\), so in fact \(\left\langle \partial ^{*}v,\rho \right\rangle =0\) for all \(\rho \in \Sigma _d {\setminus } B\). This establishes the desired formula for \(\partial ^{*}v\), and then \({{\mathrm{supp}}}(\partial ^{*}v)=B\) by Lemma 4.5. \(\square \)

Equation (10) does not provide a canonical cut-vector associated to a given bond \(B\), because \(\partial ^{*}v\) depends on the choice of \(A\) and \(\sigma \). On the other hand, the bond \(B\) can always be expressed as a fundamental bond \({{\mathrm{\mathsf {bo}}}}(\Upsilon ,\sigma )\) (equivalently, fundamental cocircuit; see Eq. 4 in Sect. 2.4) by taking \(\sigma \) to be an arbitrary facet of \(B\) and taking \(\Upsilon =A\cup \sigma \), where \(A\) is a maximal acyclic subset of \(\Sigma {\setminus } B\). This observation suggests that the underlying combinatorial data that gives rise to a cut-vector is really the pair \((\Upsilon ,\sigma )\).

Definition 4.7

Let \(\Upsilon = \{\sigma _1, \sigma _2, \ldots , \sigma _r\}\) be a cellular spanning forest of \(\Sigma \), and let \(\sigma =\sigma _i\in \Upsilon \). The (uncalibrated) characteristic vector of the bond \({{\mathrm{\mathsf {bo}}}}(\Upsilon , \sigma )\) is

$$\begin{aligned} \bar{\chi }(\Upsilon ,\sigma ) = (-1)^r \sum _{j=1}^r (-1)^j (\det L^{\mathrm {du}}_{\Upsilon {\setminus }\sigma , \Upsilon {\setminus }\sigma _j}) L^{\mathrm {du}}\sigma _j. \end{aligned}$$

By Lemma 4.6, taking \(A=\Upsilon {\setminus } \sigma \), we have

$$\begin{aligned} \bar{\chi }(\Upsilon ,\sigma ) = \sum _{\rho \in {{\mathrm{\mathsf {bo}}}}(\Upsilon ,\sigma )} (\det L^{\mathrm {du}}_{\Upsilon {\setminus } \sigma \cup \rho ,\Upsilon }) \rho , \end{aligned}$$

a cut-vector supported on \({{\mathrm{\mathsf {bo}}}}(\Upsilon ,\sigma )\).

The next result is the cellular analogue of [21, Lemma 14.1.3].

Theorem 4.8

The family \(\{\bar{\chi }(\Upsilon ,\sigma ) :\sigma \in \Upsilon \}\) is an \(\mathbb {R}\)-vector space basis for the cut space of \(\Sigma \).

Proof

Let \(\sigma \in \Upsilon \). Then \({{\mathrm{supp}}}\bar{\chi }(\Upsilon ,\sigma )={{\mathrm{\mathsf {bo}}}}(\Upsilon ,\sigma )\) contains \(\sigma \), but no other facet of \(\Upsilon \). Therefore, the set of characteristic vectors is linearly independent, and its cardinality is \(|\Upsilon _d|=r=\dim {{\mathrm{Cut}}}_d(\Sigma )\). \(\square \)

Example 4.9

The equatorial bipyramid is the two-dimensional simplicial complex \(\Theta \) with facet set \(\{123,124,125,134,135,234,235\}\) (Fig. 1a). Let \(\Upsilon \) be the simplicial spanning tree with facets \(\{123,124,234,135,235\}\) (unfolded in Fig. 1b). Then

$$\begin{aligned} {{\mathrm{\mathsf {bo}}}}(\Upsilon ,123)&=\{123,125,134\},&{{\mathrm{\mathsf {bo}}}}(\Upsilon ,124)&=\{124,134\},\\ {{\mathrm{\mathsf {bo}}}}(\Upsilon ,135)&=\{135,125\},&{{\mathrm{\mathsf {bo}}}}(\Upsilon ,234)&=\{234,134\},\\ {{\mathrm{\mathsf {bo}}}}(\Upsilon ,235)&=\{235,125\}. \end{aligned}$$

In each case, the removal of the bond leaves a one-dimensional hole (as shown for the bond \(\{123, 125, 134\}\) in Fig. 1c). By Theorem 4.8, we have

$$\begin{aligned} \bar{\chi }(\Upsilon ,123)&= 75([123]+[125]-[134]),&\bar{\chi }(\Upsilon ,124)&= 75([124]+[134]),\\ \bar{\chi }(\Upsilon ,135)&= 75([125]+[135]),&\bar{\chi }(\Upsilon ,234)&= 75([134]+[234]),\\ \bar{\chi }(\Upsilon ,235)&= 75([235]-[125]), \end{aligned}$$

which indeed form a basis for \({{\mathrm{Cut}}}_2(\Theta )\).

4.2 Calibrating the characteristic vector of a bond

The term “characteristic vector” suggests that the coefficients of \(\bar{\chi }(\Upsilon ,\sigma )\) should all be 0 or 1, but this is not necessarily possible, even by scaling, as Example 4.14 below will show. We would like to define the characteristic vector of a bond so that it carries combinatorial or topological information, avoiding extra factors such as the 75 in Example 4.9. We will show that the number

$$\begin{aligned} \mu _\Upsilon := \mathbf{t}_{d-1}(\Upsilon )\sum _\Gamma \frac{\mathbf{t}_{d-1}(\Sigma ,\Gamma )^2}{\mathbf{t}_{d-1}(\Sigma )^2}, \end{aligned}$$
(11)

where the sum runs over all relatively acyclic \((d-1)\)-subcomplexes \(\Gamma \subseteq \Sigma \), is an integer that divides every coefficient of the characteristic vector. Moreover, we will show that the entries of \(\frac{1}{\mu _\Upsilon } \bar{\chi }(\Upsilon ,\sigma )\) are (up to sign) the torsion coefficients of the cellular forests \(\{\Upsilon {\setminus }\sigma \cup \rho \}\) for \(\rho \in {{\mathrm{\mathsf {bo}}}}(\Upsilon ,\sigma )\).

Let \(\varepsilon ^A_{\sigma ,\sigma '}\) be the relative sign of \(\partial \sigma ,\partial \sigma '\) with respect to \(\partial A\); that is, it is \(+1\) or \(-1\) according to whether \(\partial \sigma \) and \(\partial \sigma '\) lie on the same or on the opposite sides of the hyperplane in \({{\mathrm{im}}}\partial \) spanned by \(\partial A\). In the language of oriented matroids, this sign is simply a product of the entries corresponding to \(\partial \sigma \) and \(\partial \sigma '\) in one of the cocircuits corresponding to the hyperplane and determines the relative signs of a basis orientation on \(A \cup \sigma \) and \(A \cup \sigma '\) [6, Sect. 3.5].

Proposition 4.10

Let \(\Sigma \) be a cell complex of rank \(r\). Let \(\Upsilon =A\cup \sigma \) and \(\Upsilon '=A\cup \sigma '\) be \(d\)-dimensional cellular spanning forests of \(\Sigma \). Let \(L^{\mathrm {du}}_{\Upsilon ,\Upsilon '}\) be the restriction of the down-up Laplacian \(L^{\mathrm {du}}=\partial ^{*}\partial \) to the rows indexed by \(\Upsilon \) and the columns indexed by \(\Upsilon '\). Then

$$\begin{aligned} \det L^{\mathrm {du}}_{\Upsilon ,\Upsilon '} = \det \partial ^{*}_\Upsilon \partial _{\Upsilon '} = \varepsilon \mu _\Upsilon \mathbf{t}_{d-1}(\Upsilon '), \end{aligned}$$

where \(\varepsilon =\varepsilon ^A_{\sigma ,\sigma '}\).

Proof

By the Binet–Cauchy formula, we have

$$\begin{aligned} \det L^{\mathrm {du}}_{\Upsilon ,\Upsilon '} = \sum _S (\det \partial ^{*}_{\Upsilon ,S})(\det \partial _{S,\Upsilon '}) = \sum _S (\det \partial _{S,\Upsilon })(\det \partial _{S,\Upsilon '}), \end{aligned}$$
(12)

where the sum runs over all sets \(S\subseteq \Sigma _{d-1}\) with \(|S|=r\), and \(\partial _{S,\Upsilon }\) is the corresponding \(r\times r\) submatrix of \(\partial \). By Proposition 3.2, \(\det \partial _{S,\Upsilon }\) is nonzero if and only if \(\Gamma _S=\Sigma _{d-1}{\setminus } S\) is relatively acyclic, and for those summands Proposition 3.4 implies \(|\det \partial _{S,\Upsilon }|=\mathbf{t}_{d-1}(\Upsilon ,\Gamma _S)=\mathbf{t}_{d-1}(\Upsilon )\mathbf{t}_{d-1}(\Sigma ,\Gamma _S)/\mathbf{t}_{d-1}(\Sigma )\).

We claim that every summand in Eq. (12) has the same sign, namely \(\varepsilon \). To see this, observe that since \(\Upsilon ,\Upsilon '\) are both column bases of \(\partial \), there are unique scalars \(\{c_\alpha :\ \alpha \in \Upsilon \}\) such that \(\partial \sigma '=\sum _{\alpha \in \Upsilon } c_\alpha \partial \alpha \); in particular, \(c_\sigma \) is nonzero and has the same sign as \(\varepsilon \). This equation holds upon restricting to any set of rows \(S\). By linearity of the determinant, \(\det \partial _{S,\Upsilon '}=c_\sigma \det \partial _{S,\Upsilon }\) for each \(S\), so the sign of every summand in Eq. (12) is the same as that of \(c_\sigma \). Therefore, Eq. (12) gives

$$\begin{aligned} \det L^{\mathrm {du}}_{\Upsilon ,\Upsilon '}&= \sum _S (\det \partial _{S,\Upsilon })(\det \partial _{S,\Upsilon '})\\&= \sum _S \varepsilon \left( \frac{\mathbf{t}_{d-1}(\Upsilon ) \mathbf{t}_{d-1}(\Sigma ,\Gamma _S)}{\mathbf{t}_{d-1}(\Sigma )}\right) \left( \frac{\mathbf{t}_{d-1}(\Upsilon ') \mathbf{t}_{d-1}(\Sigma ,\Gamma _S)}{\mathbf{t}_{d-1}(\Sigma )}\right) \\&= \varepsilon \mu _\Upsilon \mathbf{t}_{d-1}(\Upsilon '). \end{aligned}$$

\(\square \)

A corollary of the proof is that \(\mu _\Upsilon \) is an integer, for the following reason. The number \(\mathbf{t}_{d-1}(\Upsilon ')\) is the gcd of the \(r \times r\) minors of \(\partial _{\Upsilon '}\), or equivalently the \(r \times r\) minors of \(\partial \) using columns \(\Upsilon '\). In other words, \(\mathbf{t}_{d-1}(\Upsilon ')\) divides \(\det \partial _{S,\Upsilon '}\) in every summand of Eq. (12). Therefore, it divides \(\det L^{\mathrm {du}}_{\Upsilon ,\Upsilon '}\), and \(\mu _\Upsilon =\pm \det L^{\mathrm {du}}_{\Upsilon ,\Upsilon '}/\mathbf{t}_{d-1}(\Upsilon ')\) is an integer.

Theorem 4.11

Let \(B\) be a bond. Fix a facet \(\sigma \in B\) and a cellular spanning forest \(A\subseteq \Sigma _d{\setminus } B\), so that in fact \(B={{\mathrm{\mathsf {bo}}}}(A\cup \sigma ,\sigma )\). Define the characteristic vector of \(B\) with respect to \(A\) as

$$\begin{aligned} \chi _{A}(B) := \frac{1}{\mu _\Upsilon }\bar{\chi }(A\cup \sigma ,\sigma ) =\sum _{\rho \in B} \varepsilon ^A_{\sigma ,\rho } \mathbf{t}_{d-1}(A\cup \rho ) \,\, \rho . \end{aligned}$$

Then \(\chi _{A}(B)\) is in the cut space of \(\Sigma \), and has integer coefficients. Moreover, it depends on the choice of \(\sigma \) only up to sign.

Proof

Apply the formula of Proposition 4.10 to the formula of Definition 4.7 for the characteristic vector, and factor the integer \(\mu _\Upsilon \) out of every coefficient. Meanwhile, replacing \(\sigma \) with a different facet \(\sigma '\in B\) merely multiplies all coefficients by \(\varepsilon ^A_{\sigma ',\rho }/\varepsilon ^A_{\sigma ,\rho }=\varepsilon ^A_{\sigma ,\sigma '}\in \{\pm 1\}\). \(\square \)

Remark 4.12

The authors are grateful to an anonymous referee for suggesting the following construction of the vector \(\chi _{A}(B)\). Let \(M\in \mathbb {Z}^{k\times n}\) be a matrix of rank \(r\) whose first \(r\) columns are linearly independent, and let \(P\) be the generalized inverse of the submatrix of \(M\) consisting of the first \(r\) columns, so that \(Q=PM\) is the reduced row-echelon form of \(M\). Thus, \(P^{-1}Q=M\). By Cramer’s rule, for each \(j\in [n]\), the \(j\)th entry in the \(r\)th row of \(Q\) is

$$\begin{aligned} q_{r,j}=\frac{\det (m_1, \dots , m_{r-1}, m_j)}{\det (m_1,\dots ,m_{r-1},m_r)}, \end{aligned}$$

where \(m_i\) denotes the \(i\)th column of \(M\).

Now let \(\Sigma ,B,A,\sigma \) be the same as in Theorem 4.11, let \(r={{\mathrm{rank}}}(\Sigma )\), and let \(M\) be the top boundary matrix of \(\Sigma \), with its first \(r-1\) columns labeled by the facets of \(A\) and the \(r\)th column labeled by \(\sigma \). The numerator of \(q_{r,j}\) is

$$\begin{aligned} {\left\{ \begin{array}{ll} 0 &{}\text { for } j\not \in B,\\ \varepsilon ^A_{\sigma ,\rho _j}\mathbf{t}_{d-1}(A\cup \rho _j) &{}\text { for } j\in B, \end{array}\right. } \end{aligned}$$

where \(\rho _j\) denotes the facet corresponding to the \(j\)th column. Therefore, clearing the denominators from the \(r\)th row of \(M\) produces the characteristic vector \(\chi _{A}(B)\) of Theorem 4.11.

If \(\Upsilon \) is a cellular spanning forest of \(\Sigma \) and \(\sigma \in \Upsilon _d\), then we define the characteristic vector of the pair \((\Upsilon ,\sigma )\) by

$$\begin{aligned} \chi (\Upsilon ,\sigma ) := \chi _{\Upsilon {\setminus }\sigma }({{\mathrm{\mathsf {bo}}}}(\Upsilon ,\sigma )) = \frac{1}{\mu _\Upsilon }\bar{\chi }(\Upsilon ,\sigma ). \end{aligned}$$
(13)

Example 4.13

Let \(\Theta \) be the bipyramid of Example 4.9. Every cellular spanning forest \(\Upsilon \subseteq \Theta \) is torsion-free. Moreover, the relatively acyclic subcomplexes \(\Gamma \) that appear in Eq. (11) are the spanning trees of the 1-skeleton \(\Theta _{(1)}\) (see Sect. 3), which is the graph \(K_5\) with one edge removed; Accordingly, we have \(\mu _\Upsilon =\tau (\Theta _{(1)})=75\), and so the calibrated characteristic vectors are as given in Example 4.9, with all factors of 75 removed.

On the other hand, \(\mu _\Upsilon \) is not necessarily the greatest common factor of the entries of each uncalibrated characteristic vector, as the following example illustrates.

Example 4.14

Consider the cell complex \(\Sigma \) with a single vertex \(v\), two 1-cells \(e_1\) and \(e_2\) attached at \(v\), and four 2-cells attached via the boundary matrix

Let \(B\) be the bond \(\{\sigma _2,\sigma _3\}\), so that the obvious candidate for a cut-vector supported on \(B\) is the row vector \(\begin{bmatrix}2&3&0&0\end{bmatrix}\). On the other hand, taking \(A=\{\sigma _5\}\) (a cellular spanning forest of \(\Sigma {\setminus } B\)), the calibrated characteristic vector given by Theorem 4.11 is

$$\begin{aligned} \chi _{A}(B)=\begin{bmatrix}10&\quad 15&\quad 0&\quad 0\end{bmatrix}. \end{aligned}$$

For \(\Upsilon =A\cup \{\sigma _2\}\), the uncalibrated characteristic vector of Definition 4.7 is

$$\begin{aligned} \bar{\chi }(\Upsilon ,\sigma _2)=\begin{bmatrix}100&\quad 150&\quad 0&\quad 0\end{bmatrix}. \end{aligned}$$

On the other hand, the calibration factor \(\mu _\Upsilon \) is not \(\gcd (100,150)=50\), but rather 10, since \(\mathbf{t}_1(\Upsilon )=10\) and the summation of Eq. (11) has only one term, namely, \(\Gamma =\Sigma _{(0)}\). Similarly, for \(A'=\{\sigma _7\}\) and \(\Upsilon '=A'\cup \{\sigma _2\}\), we have

$$\begin{aligned} \chi _{A'}(B)=\begin{bmatrix}14&\quad 21&\quad 0&\quad 0\end{bmatrix},\quad \bar{\chi }(\Upsilon ',\sigma _2)=\begin{bmatrix}196&\quad 294&\quad 0&\quad 0\end{bmatrix},\quad \mu _{\Upsilon '}=14. \end{aligned}$$

Remark 4.15

As an illustration of where torsion plays a role, and of the principle that the cellular matroid \(\mathcal {M}(\Sigma )\) does not provide complete information about cut-vectors, let \(\Sigma \) be the the complete \(2\)-dimensional simplicial complex on \(6\) vertices, which has complexity \(6^6=46656\) [25, Theorem 1]. Most of the cellular spanning trees of \(\Sigma \) are contractible topological spaces, hence \(\mathbb {Z}\)-acyclic, and the calibrated cut-vectors obtained from them have all entries equal to 0 or \(\pm 1\). On the other hand, \(\Sigma \) has twelve spanning trees \(\Upsilon \) homeomorphic to the real projective plane (so that \(\tilde{H}_1(\Upsilon ;\mathbb {Z})\cong \mathbb {Z}_2\)). For any facet \(\sigma \in \Upsilon \), we have \({{\mathrm{\mathsf {bo}}}}(\Upsilon ,\sigma )=\Sigma _2{\setminus }\Upsilon _2\cup \{\sigma \}\), and the calibrated cut-vector contains a \(\pm 2\) in position \(\sigma \) and \(\pm 1\)’s in positions \(\Sigma {\setminus }\Upsilon \).

Remark 4.16

When \(\Sigma \) is a graph and \(\Upsilon \) is a spanning forest, \(\mu _\Upsilon \) is just the number of vertices of \(\Sigma \). Then, for any edge \(\sigma \) in \(\Upsilon \), the vector \(\chi _{\Upsilon }(\sigma )\) is the usual characteristic vector of the fundamental bond \({{\mathrm{\mathsf {bo}}}}(\Upsilon ,\sigma )\).

Remark 4.17

Taking \(\Upsilon =\Upsilon '\) in the calculation of Proposition 4.10 gives the equality

$$\begin{aligned} \sum _\Gamma \mathbf{t}_{d-1}(\Sigma ,\Gamma )^2 =\frac{\mathbf{t}_{d-1}(\Sigma )^2}{\mathbf{t}_{d-1}(\Upsilon )^2}\det L^{\mathrm {du}}_\Upsilon \end{aligned}$$

which can be viewed as a dual form of Proposition 3.5, enumerating relatively acyclic \((d-1)\)-subcomplexes, rather than cellular spanning forests.

5 The flow space

In this section, we describe the flow space of a cell complex. We begin by observing that the cut and flow spaces are orthogonal to each other.

Proposition 5.1

The cut and flow spaces are orthogonal complements under the standard inner product on \(C_d(\Sigma ;\mathbb {R})\).

Proof

First, we show that the cut and flow spaces are orthogonal. Let \(\alpha \in {{\mathrm{Cut}}}_d={{\mathrm{im}}}\partial ^{*}_d\) and \(\beta \in {{\mathrm{Flow}}}_d=\ker \partial _d\). Then \(\alpha = \partial ^{*}\gamma \) for some (\(d-1\))-chain \(\gamma \), and \(\langle \alpha ,\beta \rangle = \langle \partial ^{*}\gamma ,\beta \rangle = \langle \gamma ,\partial \beta \rangle = 0\) by Eq. (9).

It remains to show that \({{\mathrm{Cut}}}_d\) and \({{\mathrm{Flow}}}_d\) have complementary dimensions. Indeed, let \(n=\dim C_d(\Sigma ;\mathbb {R})\); then \(\dim {{\mathrm{Flow}}}_d = \dim \ker \partial _d = n-\dim {{\mathrm{im}}}\partial _d = n-\dim {{\mathrm{im}}}\partial ^{*}_d = n-\dim {{\mathrm{Cut}}}_d\). \(\square \)

Next we construct a basis of the flow space whose elements correspond to fundamental circuits of a given cellular spanning forest. Although cuts and flows are in some sense dual constructions, it is easier in this case to work with kernels than images, essentially because of Proposition 2.1. As a consequence, we can much more directly obtain a characteristic flow vector whose coefficients carry topological meaning.

We need one preliminary result from linear algebra.

Proposition 5.2

Let \(N\) be an \(r\times c\) integer matrix of rank \(c-1\) such that every set of \(c-1\) columns is linearly independent, so that \(r\ge c-1\) and \(\dim \ker N=1\). Then \(\ker N\) has a spanning vector \(v=(v_1,\dots ,v_c)\) such that

$$\begin{aligned} v_i=\pm |\mathbf{T}({{\mathrm{coker}}}N_{\bar{\imath }})|, \end{aligned}$$

where \(N_{\bar{\imath }}\) denotes the submatrix of \(N\) obtained by deleting the \(i\)th column. In particular, \(v_i\ne 0\) for all \(i\).

Proof

Let \(Q\) be an \(r\times r\) matrix whose first \(r - (c - 1)\) rows form a \(\mathbb {Z}\)-module basis for \(\ker (N^T)\), and whose remaining \(c-1\) rows extend it to a basis of \(\mathbb {Z}^r\) (see Proposition 2.1). Then \(Q\) is invertible over \(\mathbb {Z}\), and the matrix \(P=QN=(N^TQ^T)^T\) has the form

$$\begin{aligned} P = \left[ \begin{array}{c}0\\ \hline M\end{array}\right] , \end{aligned}$$

where \(M\) is a \((c-1)\times c\) matrix, whose column matroid is the same as that of \(N\). Then \(\ker N = \ker P = \ker M\). Meanwhile, by Cramer’s rule, \(\ker M\) is the one-dimensional space spanned by \(v=(v_1,\dots ,v_c)\), where \(v_i=(-1)^i\det M_{\bar{\imath }}=\pm |{{\mathrm{coker}}}M_{\bar{\imath }}|=\pm |\mathbf{T}({{\mathrm{coker}}}P_{\bar{\imath }})|\). Since \(Q\) is invertible, it induces isomorphisms \({{\mathrm{coker}}}N_{\bar{\imath }}\cong {{\mathrm{coker}}}QN_{\bar{\imath }}={{\mathrm{coker}}}P_{\bar{\imath }}\) for all \(i\), so \(|\mathbf{T}({{\mathrm{coker}}}P_{\bar{\imath }})|=|\mathbf{T}({{\mathrm{coker}}}N_{\bar{\imath }})|\), completing the proof. \(\square \)

Recall that a set of facets \(C\subseteq \Sigma _d\) is a circuit of the cellular matroid \(\mathcal {M}(\Sigma )\) if and only if it corresponds to a minimal linearly dependent set of columns of \(\partial _d\). Applying Proposition 5.2 with \(N=\partial _C\) (i.e., the restriction of \(\partial \) to the columns indexed by \(C\)), we obtain a flow vector whose support is exactly \(C\). We call this the characteristic vector \(\varphi (C)\).

Theorem 5.3

Let \(C\) be a circuit of the cellular matroid \(\mathcal {M}(\Sigma )\), and let \(\Delta \subseteq \Sigma \) be the subcomplex \(\Sigma _{(d-1)}\cup C\). Then

$$\begin{aligned} \varphi (C)=\sum _{\sigma \in C} \pm \mathbf{t}_{d-1}(\Delta {\setminus }\sigma ) \, \sigma . \end{aligned}$$

Proof

Let \(N=\partial _C\), and for \(\sigma \in C\), let \(N_{\bar{\sigma }}\) denote \(N\) with the column \(\sigma \) removed. By Proposition 5.2, it suffices to show that the two groups

$$\begin{aligned} \tilde{H}_{d-1}(\Delta {\setminus }\sigma ;\mathbb {Z})=\frac{\ker \partial _{d-1}}{{{\mathrm{im}}}N_{\bar{\sigma }}},\qquad {{\mathrm{coker}}}N_{\bar{\sigma }} = \frac{C_{d-1}(\Sigma ;\mathbb {Z})}{{{\mathrm{im}}}N_{\bar{\sigma }}} \end{aligned}$$

have the same torsion summands. However, this is immediate because \(\ker \partial _{d-1}\) is a summand of \(C_{d-1}(\Sigma ;\mathbb {Z})\) as a free \(\mathbb {Z}\)-module. \(\square \)

Example 5.4

Consider the cell complex \(\Sigma \) with two vertices, \(v_1\) and \(v_2\), three one-cells, \(e_1\), \(e_2\), and \(e_3\), each one with endpoints \(v_1\) and \(v_2\), and three two-cells \(\sigma _1\), \(\sigma _2\), and \(\sigma _3\) attached to the one-cells so that the two-dimensional boundary matrix is

The only circuit in \(\Sigma \) is the set \(C\) of all three two-cells. Thus, \(\varphi (C) = 2\sigma _1-2\sigma _2+4\sigma _3\), because the relevant integer homology groups are \(\tilde{H}_1(\Delta {\setminus } \sigma _1) \cong \tilde{H}_1(\Delta {\setminus }\sigma _2) \cong \mathbb {Z}_2\), but \(\tilde{H}_1(\Delta {\setminus } \sigma _3) \cong \mathbb {Z}_2 \oplus \mathbb {Z}_2\).

For a cellular spanning forest \(\Upsilon \) and facet \(\sigma \not \in \Upsilon \), let \({{\mathrm{\mathsf {ci}}}}(\Upsilon ,\sigma )\) denote the fundamental circuit of \(\sigma \) with respect to \(\Upsilon \), that is, the unique circuit in \(\Upsilon \cup \sigma \).

Theorem 5.5

Let \(\Sigma \) be a cell complex and \(\Upsilon \subseteq \Sigma \) a cellular spanning forest. Then the set

$$\begin{aligned} \{\varphi ({{\mathrm{\mathsf {ci}}}}(\Upsilon ,\sigma )) :\sigma \not \in \Upsilon \} \end{aligned}$$

forms an \(\mathbb {R}\)-vector space basis for the flow space of \(\Sigma \).

Proof

The flow space is the kernel of a matrix with \(|\Sigma _d|\) columns and rank \(|\Upsilon _d|\), so its dimension is \(|\Sigma _d|-|\Upsilon _d|\). Therefore, it is enough to show that the \(\varphi ({{\mathrm{\mathsf {ci}}}}(\Upsilon ,\sigma ))\) are linearly independent. Indeed, consider the matrix \(W\) whose rows are the vectors \(\varphi ({{\mathrm{\mathsf {ci}}}}(\Upsilon ,\sigma ))\); its maximal square submatrix \(W'\) whose columns correspond to \(\Sigma {\setminus }\Upsilon \) has nonzero entries on the diagonal but zeroes elsewhere. \(\square \)

Example 5.6

Recall the bipyramid of Example 4.9, and its spanning tree \(\Upsilon \). Then \({{\mathrm{\mathsf {ci}}}}(\Upsilon , 125) = \{125, 123, 135, 235\}\), and \({{\mathrm{\mathsf {ci}}}}(\Upsilon , 134) = \{134, 123, 124, 234\}\). If we instead consider the spanning tree \(\Upsilon ' = \{124, 125, 134, 135, 235\}\), then \({{\mathrm{\mathsf {ci}}}}(\Upsilon ', 123) = \{123, 125, 135, 235\}\), and \({{\mathrm{\mathsf {ci}}}}(\Upsilon ', 234) = \{234, 124, 125, 134, 135, 235\}\). Each of these circuits is homeomorphic to a 2-sphere, and the corresponding flow vectors are the homology classes they determine. Furthermore, each of \(\{\varphi ({{\mathrm{\mathsf {ci}}}}(\Upsilon , 125)), \varphi ({{\mathrm{\mathsf {ci}}}}(\Upsilon , 134))\}\) and \(\{\varphi ({{\mathrm{\mathsf {ci}}}}(\Upsilon ', 123)), \varphi ({{\mathrm{\mathsf {ci}}}}(\Upsilon ', 234))\}\) is a basis of the flow space.

6 Integral bases for the cut and flow lattices

Recall that the cut lattice and flow lattice of \(\Sigma \) are defined as

$$\begin{aligned} \mathcal {C}= \mathcal {C}(\Sigma ) = {{\mathrm{im}}}_\mathbb {Z}\partial ^{*}_d \subseteq \mathbb {Z}^n, \qquad \mathcal {F}= \mathcal {F}(\Sigma ) = \ker _\mathbb {Z}\partial _d \subseteq \mathbb {Z}^n. \end{aligned}$$

In this section, we study the conditions under which the vector space bases of Theorems 4.11 and 5.5 are integral bases for the cut and flow lattices, respectively.

Theorem 6.1

Suppose that \(\Sigma \) has a cellular spanning forest \(\Upsilon \) such that \(\tilde{H}_{d-1}(\Upsilon ;\mathbb {Z})\) is torsion-free. Then

$$\begin{aligned} \{\chi (\Upsilon ,\sigma ):\sigma \in \Upsilon \} \end{aligned}$$

is an integral basis for the cut lattice \(\mathcal {C}(\Sigma )\), where \(\chi (\Upsilon ,\sigma )\) is defined as in equation (13).

Proof

Consider the \(n\times r\) matrix with columns \(\chi (\Upsilon ,\sigma )\) for \(\sigma \in \Upsilon _d\). Its restriction to the rows \(\Upsilon _d\) is diagonal, and by Theorem 4.8 and the hypothesis on \(\tilde{H}_{d-1}(\Upsilon ;\mathbb {Z})\), its entries are all \(\pm 1\). Therefore, the \(\chi (\Upsilon ,\sigma )\) form an integral basis for the lattice \({{\mathrm{Cut}}}_d(\Sigma )\cap \mathbb {Z}^n\). Meanwhile,

$$\begin{aligned} ({{\mathrm{Cut}}}_d(\Sigma )\cap \mathbb {Z}^n)/\mathcal {C}_d(\Sigma )=\mathbf{T}(\tilde{H}^d(\Sigma ;\mathbb {Z}))\cong \mathbf{T}(\tilde{H}_{d-1}(\Sigma ;\mathbb {Z})), \end{aligned}$$

where the first equality is because \({{\mathrm{Cut}}}_d(\Sigma )\cap \mathbb {Z}^n\) is a summand of \(\mathbb {Z}^n\), and the second one is Eq. (1). On the other hand, \(\tilde{H}_{d-1}(\Sigma ;\mathbb {Z})\) is a quotient of \(\tilde{H}_{d-1}(\Upsilon ;\mathbb {Z})\) of equal rank; in particular, \(\mathbf{T}(\tilde{H}_{d-1}(\Sigma ;\mathbb {Z}))=0\) and in fact \({{\mathrm{Cut}}}_d(\Sigma )\cap \mathbb {Z}^n=\mathcal {C}_d(\Sigma )\). \(\square \)

Next we consider integral bases of the flow lattice. For a circuit \(C\), define

$$\begin{aligned} \hat{\varphi }(C)=\frac{1}{g}\varphi (C), \end{aligned}$$

where \(\varphi (C)\) is the characteristic vector defined in Sect. 5 and \(g\) is the gcd of its coefficients. Thus, \(\hat{\varphi }(C)\) generates the rank-1 free \(\mathbb {Z}\)-module of flow vectors supported on \(C\).

Theorem 6.2

Suppose that \(\Sigma \) has a cellular spanning forest \(\Upsilon \) such that \(\tilde{H}_{d-1}(\Upsilon ;\mathbb {Z})=\tilde{H}_{d-1}(\Sigma ;\mathbb {Z})\). Then \(\{\hat{\varphi }({{\mathrm{\mathsf {ci}}}}(\Upsilon ,\sigma )):\sigma \not \in \Upsilon \}\) is an integral basis for the flow lattice \(\mathcal {F}(\Sigma )\).

Proof

By the hypothesis on \(\Upsilon \), the columns of \(\partial \) indexed by the facets in \(\Upsilon \) form a \(\mathbb {Z}\)-basis for the column space. That is, for every \(\sigma \not \in \Upsilon \), the column \(\partial _\sigma \) is a \(\mathbb {Z}\)-linear combination of the columns of \(\Upsilon \); equivalently, there is an element \(w_\sigma \) of the flow lattice, with support \({{\mathrm{\mathsf {ci}}}}(\Upsilon ,\sigma )\), whose coefficient in the \(\sigma \) position is \(\pm 1\). However, then \(w_\sigma \) and \(\hat{\varphi }({{\mathrm{\mathsf {ci}}}}(\Upsilon ,\sigma ))\) are integer vectors with the same linear span, both of which have the gcd of their entries equal to 1; therefore, they must be equal up to sign. Therefore, retaining the notation of Theorem 5.5, the matrix \(W'\) is in fact the identity matrix, and it follows that the lattice spanned by the \(\hat{\varphi }({{\mathrm{\mathsf {ci}}}}(\Upsilon ,\sigma ))\) is saturated, so it must equal the flow lattice of \(\Sigma \). \(\square \)

If \(\Sigma \) is a graph, then all its subcomplexes and relative complexes are torsion-free (equivalently, its incidence matrix is totally unimodular). Therefore, Theorems 6.1 and 6.2 give integral bases for the cut and flow lattices, respectively. These are, up to sign, the integral bases constructed combinatorially in, e.g., [21, Chap. 14].

7 Groups and lattices

In this section, we define the critical, cocritical, and cutflow groups of a cell complex. We identify the relationships between these groups and to the discriminant groups of the cut and flow lattices. The case of a graph was studied in detail by Bacher, de la Harpe and Nagnibeda [2] and Biggs [4], and is presented concisely in [21, Chap. 14].

Throughout this section, let \(\Sigma \) be a cell complex of dimension \(d\) with \(n\) facets, and identify both \(C_d(\Sigma ;\mathbb {Z})\) and \(C^d(\Sigma ;\mathbb {Z})\) with \(\mathbb {Z}^n\).

Definition 7.1

The critical group of \(\Sigma \) is

$$\begin{aligned} K(\Sigma ):=\mathbf{T}(\ker \partial _{d-1}/{{\mathrm{im}}}\partial _{d}\partial ^{*}_{d})=\mathbf{T}({{\mathrm{coker}}}(\partial _{d}\partial ^{*}_{d})). \end{aligned}$$

Here and henceforth, all kernels and images are taken over \(\mathbb {Z}\).

Note that the second and third terms in the definition are equivalent because \(\ker \partial _{d-1}\) is a summand of \(C_{d-1}(\Sigma ;\mathbb {Z})\) as a free \(\mathbb {Z}\)-module. This definition coincides with the usual definition of the critical group of a graph in the case \(d=1\), and with the authors’ previous definition in [17] in the case that \(\Sigma \) is \(\mathbb {Q}\)-acyclic in codimension one (when \(\ker \partial _{d-1}/{{\mathrm{im}}}\partial _{d}\partial ^{*}_{d}\) is its own torsion summand).

Definition 7.2

The cutflow group of \(\Sigma \) is \(\mathbb {Z}^n/(\mathcal {C}(\Sigma )\oplus \mathcal {F}(\Sigma ))\).

Note that the cutflow group is finite because the cut and flow spaces are orthogonal complements in \(\mathbb {R}^n\) (Proposition 5.1), so in particular \(\mathcal {C}\oplus \mathcal {F}\) spans \(\mathbb {R}^n\) as a vector space. Observe also that the cutflow group does not decompose into separate cut and flow pieces; that is, it is not isomorphic to the group \(G=(({{\mathrm{Flow}}}_d\cap \mathbb {Z}^n)/\ker \partial _d)\oplus (({{\mathrm{Cut}}}_d\cap \mathbb {Z}^n)/{{\mathrm{im}}}\partial ^{*}_d),\) even when \(\Sigma \) is a graph. For example, if \(\Sigma \) is the complete graph on three vertices, whose boundary map can be written as

$$\begin{aligned} \partial = \left( \begin{array}{ccc} 1&{}\quad -1&{}\quad 0\\ -1&{}\quad 0&{}\quad 1\\ 0&{}\quad 1&{}\quad -1 \end{array}\right) , \end{aligned}$$

then \(\ker \partial ={{\mathrm{span}}}\{(1,1,1)^T\}\) and \({{\mathrm{im}}}\partial ^{*}={{\mathrm{span}}}\{(1,-1,0)^T,(1,0,-1)^T\}\). So \(G\) is the trivial group, while \(\mathbb {Z}^n / ( \ker \partial _d\oplus {{\mathrm{im}}}\partial ^{*}_d )=K_1(\Sigma )\cong \mathbb {Z}_3\).

In order to define the cocritical group of a cell complex, we first need to introduce the notion of acyclization.

Definition 7.3

An acyclization of \(\Sigma \) is a (\(d+1)\)-dimensional complex \(\Omega \) such that \(\Omega _{(d)}=\Sigma \) and \(\tilde{H}_{d+1}(\Omega ;\mathbb {Z})=\tilde{H}_d(\Omega ;\mathbb {Z})=0\).

Algebraically, this construction corresponds to finding an integral basis for \(\ker \partial _d(\Sigma )\) and declaring its elements to be the columns of \(\partial _{d+1}(\Omega )\) (so in particular \(|\Omega _{(d+1)}|=\tilde{\beta }_d(\Sigma )\)). Topologically, it corresponds to filling in just enough \(d\)-dimensional cycles with \((d+1)\)-dimensional faces to remove all \(d\)-dimensional homology. The definition of acyclization and equation (1) together imply that \(\tilde{H}^{d+1}(\Omega ;\mathbb {Z}) = 0\); that is, \(\partial ^{*}_{d+1}(\Omega )\) is surjective.

Definition 7.4

The cocritical group \(K^*(\Sigma )\) is

$$\begin{aligned} K^*(\Sigma ) := C_{d+1}(\Omega ;\mathbb {Z})/{{\mathrm{im}}}\partial ^{*}_{d+1}\partial _{d+1}={{\mathrm{coker}}}L^{\mathrm {du}}_{d+1}. \end{aligned}$$

It is not immediate that the group \(K^*(\Sigma )\) is independent of the choice of \(\Omega \); we will prove this independence as part of Theorem 7.7. For the moment, it is at least clear that \(K^*(\Sigma )\) is finite, since \({{\mathrm{rank}}}\partial ^{*}_{d+1}={{\mathrm{rank}}}L^{\mathrm {du}}_{d+1}={{\mathrm{rank}}}C_{d+1}(\Omega ;\mathbb {Z})\). In the special case of a graph, \(L^{\mathrm {du}}_{d+1}\) is the “intersection matrix” defined by Kotani and Sunada [26]. (See also [5, Sects. 2, 3].)

Remark 7.5

As in [17], one can define critical and cocritical groups in every dimension by \(K_i(\Sigma )=\mathbf{T}(C_i(\Sigma ;\mathbb {Z})/{{\mathrm{im}}}\partial _{i+1}\partial ^{*}_{i+1})\) and \(K^*_i(\Sigma )= \mathbf{T}(C_i(\Sigma ;\mathbb {Z})/{{\mathrm{im}}}\partial ^{*}_i\partial _i)\). If the cellular chain complexes of \(\Sigma \) and \(\Psi \) are algebraically dual (for example, if \(\Sigma \) and \(\Psi \) are Poincaré dual cell structures on a compact orientable \(d\)-manifold), then \(K_i(\Psi )=K_{d-i}^*(\Sigma )\) for all \(i\).

We now come to the main results of the second half of the paper: the critical and cocritical groups are isomorphic to the discriminant groups of the cut and flow lattices, respectively, and the cutflow group mediates between the critical and cocritical groups, with an “error term” given by homology.

Theorem 7.6

Let \(\Sigma \) be a cell complex of dimension \(d\) with \(n\) facets. Then there is a commutative diagram

(14)

in which all vertical maps are isomorphisms. In particular, \(K(\Sigma ) \cong \mathcal {C}^\sharp /\mathcal {C}\).

Proof

Step 1: Construct the bottom row of (14). The inclusions \({{\mathrm{im}}}\partial _d\partial ^{*}_d\subseteq {{\mathrm{im}}}\partial _d\subseteq \ker \partial _{d-1}\) give rise to the short exact sequence

$$\begin{aligned} 0 \rightarrow {{\mathrm{im}}}\partial _d/{{\mathrm{im}}}\partial _d\partial ^{*}_d \rightarrow \ker \partial _{d-1}/{{\mathrm{im}}}\partial _d\partial ^{*}_d \rightarrow \ker \partial _{d-1}/{{\mathrm{im}}}\partial _d\rightarrow 0. \end{aligned}$$

The first term is finite (because \({{\mathrm{rank}}}\partial _d={{\mathrm{rank}}}\partial _d\partial ^{*}_d\)), so taking torsion summands yields the desired short exact sequence.

Step 2: Construct the top row of (14). Let \(r={{\mathrm{rank}}}\partial _d\), let \(\{v_1,\dots ,v_r\}\) be an integral basis of \(\mathcal {C}\), and let \(V\) be the matrix with columns \(v_1,\dots ,v_r\). By Proposition 2.2, the dual basis \(\{v_1^*,\dots ,v_r^*\}\) for \(\mathcal {C}^\sharp \) consists of the columns of the matrix \(W=V(V^TV)^{-1}\). Let \(\psi \) be the orthogonal projection \(\mathbb {R}^n\rightarrow {{\mathrm{Cut}}}(\Sigma )\), which is given by the matrix \(P=WV^T=V(V^TV)^{-1}V^T\) (see Proposition 2.2). Then

$$\begin{aligned} {{\mathrm{im}}}\psi ={{\mathrm{colspace}}}\left( \underbrace{\big [v_1^*\cdots v_r^*\big ]}_{W}\ \underbrace{\big [v_1\cdots v_r\big ]^T}_{V^T}\right) . \end{aligned}$$

The \(i\)th column of \(P\) equals \(W\) times the \(i\)th column of \(V^T\). If we identify \(\mathcal {C}^\sharp \) with \(\mathbb {Z}^r\) via the basis \(\{v_1^*,\dots ,v_r^*\}\), then \({{\mathrm{im}}}(\psi )\) is just the column space of \(V^T\). So \(\mathcal {C}^\sharp /{{\mathrm{im}}}\psi \cong \mathbb {Z}^r/{{\mathrm{colspace}}}(V^T)\), which is a finite group because \({{\mathrm{rank}}}V=r\). Since the matrices \(V\) and \(V^T\) have the same invariant factors, we have

$$\begin{aligned} \mathbb {Z}^r/{{\mathrm{colspace}}}(V^T)\cong \mathbf{T}(\mathbb {Z}^n/{{\mathrm{colspace}}}(V))=\mathbf{T}(C^d(\Sigma ;\mathbb {Z})/{{\mathrm{im}}}\partial ^{*}_d)=\mathbf{T}(\tilde{H}^d(\Sigma ;\mathbb {Z})). \end{aligned}$$

Meanwhile, \({{\mathrm{im}}}\psi \supseteq \mathcal {C}\) because \(PV=V\). Since \(\ker \psi =\mathcal {F}\), we have \(({{\mathrm{im}}}\psi )/\mathcal {C}=(\mathbb {Z}^n/\mathcal {F})/\mathcal {C}=\mathbb {Z}^n/(\mathcal {C}\oplus \mathcal {F})\). Therefore, the inclusions \(\mathcal {C}\subseteq {{\mathrm{im}}}\psi \subseteq \mathcal {C}^\sharp \) give rise to the short exact sequence in the top row of (14).

Step 3: Describe the vertical maps in (14). The maps \(\alpha \) and \(\beta \) are each induced by \(\partial _d\) in the following ways. First, the image of the cutflow group under \(\partial _d\) is

$$\begin{aligned} \partial _d\left( \mathbb {Z}^n/(\mathcal {F}\oplus \mathcal {C})\right) =\partial _d\left( \mathbb {Z}^n/(\ker \partial _d\oplus {{\mathrm{im}}}\partial ^{*}_d)\right) = {{\mathrm{im}}}\partial _d/{{\mathrm{im}}}\partial _d\partial ^{*}_d. \end{aligned}$$

On the other hand, \(\partial _d\) acts injectively on the cutflow group (since the latter is a subquotient of \(\mathbb {Z}^n/\ker \partial _d\)). So the map labeled \(\alpha \) is an isomorphism.

The cellular boundary map \(\partial _d\) also gives rise to the map \(\beta :\mathcal {C}^\sharp /\mathcal {C}\rightarrow K(\Sigma )\), as we now explain. First, note that \(\partial _d\,\mathcal {C}^\sharp \subseteq {{\mathrm{im}}}_\mathbb {R}\partial _d\subseteq \ker _\mathbb {R}\partial _{d-1}\). Second, observe that for every \(w\in \mathcal {C}^\sharp \) and \(\rho \in C_{d-1}(\Sigma ;\mathbb {Z})\), we have \(\left\langle \partial w,\rho \right\rangle =\left\langle w,\partial ^{*}\rho \right\rangle \in \mathbb {Z}\), by equation (9) and the definition of dual lattice. Therefore, \(\partial _d\,\mathcal {C}^\sharp \subseteq C_{d-1}(\Sigma ;\mathbb {Z})\). It follows that \(\partial _d\) maps \(\mathcal {C}^\sharp \) to \((\ker _\mathbb {R}\partial _{d-1})\cap C_{d-1}(\Sigma ;\mathbb {Z})=\ker _\mathbb {Z}\partial _{d-1}\), hence defines a map \(\beta :\mathcal {C}^\sharp /\mathcal {C}\rightarrow \ker _\mathbb {Z}\partial _{d-1}/{{\mathrm{im}}}_\mathbb {Z}\partial _d\partial ^{*}_d\). Since \(\mathcal {C}^\sharp /\mathcal {C}\) is finite, the image of \(\beta \) is purely torsion, hence contained in \(K(\Sigma )\). Moreover, \(\beta \) is injective because \((\ker \partial _d)\cap \mathcal {C}^\sharp =\mathcal {F}\cap \mathcal {C}^\sharp =0\) by Proposition 5.1.

Every element of \(\mathbb {R}^n\) can be written uniquely as \(c+f\) with \(c\in {{\mathrm{Cut}}}(\Sigma )\) and \(f\in {{\mathrm{Flow}}}(\Sigma )\). The map \(\psi \) is orthogonal projection onto \({{\mathrm{Cut}}}(\Sigma )\), so \(\partial _d(c+f)=\partial _d c=\partial _d(\psi (c+f))\). Hence, the left-hand square commutes. The map \(\gamma \) is then uniquely defined by diagram-chasing.

The snake lemma now implies that \(\ker \gamma =0\). Since the groups \(\mathbf{T}(\tilde{H}_{d-1}(\Sigma ;\mathbb {Z}))\) and \(\mathbf{T}(\tilde{H}^d(\Sigma ;\mathbb {Z}))\) are abstractly isomorphic by equation (1), in fact \(\gamma \) must be an isomorphism and \({{\mathrm{coker}}}\gamma =0\) as well. Applying the snake lemma again, we see that all the vertical maps in (14) are isomorphisms. \(\square \)

Theorem 7.7

Let \(\Sigma \) be a cell complex of dimension \(d\) with \(n\) facets. Then there is a short exact sequence

$$\begin{aligned} 0 \rightarrow \mathbf{T}(\tilde{H}_{d-1}(\Sigma ;\mathbb {Z})) \rightarrow \mathbb {Z}^n/(\mathcal {C}\oplus \mathcal {F})\rightarrow \mathcal {F}^\sharp /\mathcal {F}\rightarrow 0. \end{aligned}$$
(15)

Moreover, \(K^*(\Sigma )\cong \mathcal {F}^\sharp /\mathcal {F}\).

Proof

Let \(\Omega \) be an acyclization of \(\Sigma \). By construction, the columns of the matrix \(A\) representing \(\partial _{d+1}(\Omega )\) form an integral basis for \(\mathcal {F}=\ker \partial _d\). Again, the matrix \(Q=A(A^TA)^{-1}A^T\) represents orthogonal projection \(\mathbb {R}^n\rightarrow {{\mathrm{Flow}}}(\Sigma )\). The maximal minors of \(A\) have gcd 1 (because \(\mathcal {F}\) is a summand of \(\mathbb {Z}^n\), so the columns of \(A\) are part of an integral basis), so by Proposition 2.2, the columns of \(Q\) generate the lattice \(\mathcal {F}^\sharp \). Therefore, if we regard \(Q\) as a map of \(\mathbb {Z}\)-modules, it defines a surjective homomorphism \(\mathbb {Z}^n\rightarrow \mathcal {F}^\sharp \). This map fixes \(\mathcal {F}\) pointwise and its kernel is the saturation \(\hat{\mathcal {C}}:=(\mathcal {C}\otimes \mathbb {R})\cap \mathbb {Z}^n\). So we have short exact sequences \(0 \rightarrow \hat{\mathcal {C}} \rightarrow \mathbb {Z}^n/\mathcal {F}\rightarrow \mathcal {F}^\sharp /\mathcal {F}\rightarrow 0\) and

$$\begin{aligned} 0 \rightarrow \hat{\mathcal {C}}/\mathcal {C}\rightarrow \mathbb {Z}^n/(\mathcal {C}\oplus \mathcal {F})\rightarrow \mathcal {F}^\sharp /\mathcal {F}\rightarrow 0. \end{aligned}$$

Since \(\hat{\mathcal {C}}\) is a summand of \(\mathbb {Z}^n\) by Proposition 2.1, we can identify \(\hat{\mathcal {C}}/\mathcal {C}\) with \(\mathbf{T}(\tilde{H}^d(\Sigma ;\mathbb {Z})) \cong \mathbf{T}(\tilde{H}_{d-1}(\Sigma ;\mathbb {Z}))\), which gives the short exact sequence (15).

We will now show that \(\mathcal {F}^\sharp /\mathcal {F}\cong K^*(\Sigma )\). To see this, observe that \(\partial ^{*}_{d+1}(\mathcal {F}^\sharp )=\partial ^{*}_{d+1}({{\mathrm{colspace}}}(Q))={{\mathrm{colspace}}}(A^TQ)={{\mathrm{colspace}}}(A^T)={{\mathrm{im}}}\partial ^{*}_{d+1}=C_{d+1}(\Omega )\) (by the construction of an acyclization). In addition, \(\ker \partial ^{*}_{d+1}\) is orthogonal to \(\mathcal {F}^\sharp \), hence their intersection is zero. Therefore, \(\partial ^{*}_{d+1}\) defines an isomorphism \(\mathcal {F}^\sharp \rightarrow C_{d+1}(\Omega )\). Moreover, the same map \(\partial ^{*}_{d+1}\) maps \(\mathcal {F}=\ker \partial _d={{\mathrm{im}}}\partial _{d+1}\) surjectively onto \({{\mathrm{im}}}\partial ^{*}_{d+1}\partial _{d+1}\). \(\square \)

Corollary 7.8

If \(\tilde{H}_{d-1}(\Sigma ;\mathbb {Z})\) is torsion-free, then the groups \(K(\Sigma )\), \(K^*(\Sigma )\), \(\mathcal {C}^\sharp /\mathcal {C}\), \(\mathcal {F}^\sharp /\mathcal {F}\), and \(\mathbb {Z}^n/(\mathcal {C}\oplus \mathcal {F})\) are all isomorphic to each other.

Corollary 7.8 includes the case that \(\Sigma \) is a graph, as studied by Bacher, de la Harpe and Nagnibeda [2] and Biggs [4]. It also includes the combinatorially important family of Cohen-Macaulay (over \(\mathbb {Z}\)) simplicial complexes, as well as cellulations of compact orientable manifolds.

Example 7.9

Suppose that \(\tilde{H}_d(\Sigma ;\mathbb {Z})=\mathbb {Z}\) and that \(\tilde{H}_{d-1}(\Sigma ;\mathbb {Z})\) is torsion-free. Then the flow lattice is generated by a single element, and it follows from Corollary 7.8 that \(K(\Sigma )\cong K^*(\Sigma )\cong \mathcal {F}^\sharp /\mathcal {F}\) is a cyclic group. For instance, if \(\Sigma \) is homeomorphic to a cellular sphere or torus, then the critical group is cyclic of order equal to the number of facets. (The authors had previously proved this fact for simplicial spheres [17, Theorem 3.7], but this approach using the cocritical group makes the statement more general and the proof transparent.)

Example 7.10

Let \(\Sigma \) be the standard cellulation \(e^0\cup e^1\cup e^2\) of the real projective plane, cellular chain complex of which is

$$\begin{aligned} \mathbb {Z}~\xrightarrow {\partial _2=2}~\mathbb {Z}~\xrightarrow {\partial _1=0}~\mathbb {Z}. \end{aligned}$$

Then \(\mathcal {C}={{\mathrm{im}}}\partial ^{*}_2=2\mathbb {Z}\), \(\mathcal {C}^\sharp =\frac{1}{2}\mathbb {Z}\), and \(K(\Sigma )=\mathcal {C}^\sharp /\mathcal {C}=\mathbb {Z}_4\). Meanwhile, \(\mathcal {F}=\mathcal {F}^\sharp =\mathcal {F}^\sharp /\mathcal {F}=K^*(\Sigma )=0\). The cutflow group is \(\mathbb {Z}_2\). Note that the rows of Theorem 7.6 are not split in this case.

Example 7.11

Let \(a,b\in \mathbb {Z}{\setminus }\{0\}\). Let \(\Sigma \) be the cell complex whose cellular chain complex is

$$\begin{aligned} \mathbb {Z}^2~\xrightarrow {\partial _2=[a\ b]}~\mathbb {Z}~\xrightarrow {\partial _1=0}~\mathbb {Z}. \end{aligned}$$

Topologically, \(\Sigma \) consists of a vertex \(e^0\), a loop \(e^1\), and two facets of dimension 2 attached along \(e^1\) by maps of degrees \(a\) and \(b\). Then

$$\begin{aligned} \mathcal {C}^\sharp /\mathcal {C}=\mathbb {Z}_\tau ,\qquad \mathbb {Z}^2/(\mathcal {C}\oplus \mathcal {F})=\mathbb {Z}_{\tau /g},\qquad \mathcal {F}^\sharp /\mathcal {F}=\mathbb {Z}_{\tau /g^2}, \end{aligned}$$

where \(\tau =a^2+b^2\) and \(g=\gcd (a,b)\). Note that \(\tau =\tau _2(\Sigma )\) is the complexity of \(\Sigma \) (see Eq. 3) and that \(g=|\tilde{H}_1(\Sigma ;\mathbb {Z})|\). The short exact sequence of Theorem 7.7 is in general not split (for example, if \(a=6\) and \(b=2\)).

8 Enumeration

For a connected graph, the cardinality of the critical group equals the number of spanning trees. In this section, we calculate the cardinalities of the various group invariants of \(\Sigma \).

Examples 7.10 and 7.11 both indicate that \(K(\Sigma )\cong \mathcal {C}^\sharp /\mathcal {C}\) should have cardinality equal to the complexity \(\tau (\Sigma )\). Indeed, in Theorem 4.2 of [17], the authors proved that \(|K(\Sigma )|=\tau (\Sigma )\) whenever \(\Sigma \) has a cellular spanning tree \(\Upsilon \) such that \(\tilde{H}_{d-1}(\Upsilon ;\mathbb {Z})=\tilde{H}_{d-1}(\Sigma ;\mathbb {Z})=0\) (in particular, \(\Sigma \) must be not merely \(\mathbb {Q}\)-acyclic, but actually \(\mathbb {Z}\)-acyclic, in codimension one). Here, we prove that this condition is actually not necessary: for any cell complex, the order of the critical group \(K(\Sigma )\) equals the torsion-weighted complexity \(\tau (\Sigma )\). Our approach is to determine the size of the discriminant group \(\mathcal {C}^\sharp /\mathcal {C}\) directly, then use the short exact sequences of Theorems 7.6 and 7.7 to calculate the sizes of the other groups.

Theorem 8.1

Let \(\Sigma \) be a \(d\)-dimensional cell complex and let \(\mathbf{t}=\mathbf{t}_{d-1}(\Sigma )=|\mathbf{T}(\tilde{H}_{d-1}(\Sigma ;\mathbb {Z}))|\). Then

$$\begin{aligned} |\mathcal {C}^\sharp /\mathcal {C}| = |K(\Sigma )|&= \tau _d(\Sigma ),\\ |\mathbb {Z}^n/(\mathcal {C}\oplus \mathcal {F})|&= \tau _d(\Sigma )/\mathbf{t}, \ \ \text {and}\\ |\mathcal {F}^\sharp /\mathcal {F}| = |K^*(\Sigma )|&= \tau _d(\Sigma )/\mathbf{t}^2. \end{aligned}$$

Proof

By Theorems 7.6 and 7.7, it is enough to prove that \(|\mathcal {C}^\sharp /\mathcal {C}|=\tau _d(\Sigma )\).

Let \(R\) be a set of \((d-1)\)-cells corresponding to a row basis for \(\partial \) (hence a vector space basis for \({{\mathrm{Cut}}}(\Sigma )\)); let \(\mathcal {R}\) be the lattice spanned by those rows (which is a full-rank integral sublattice of \(\mathcal {C}\)); and let \(\Gamma =(\Sigma _{d-1}{\setminus } R)\cup \Sigma _{(d-2)}\). The inclusions \(\mathcal {R}\subseteq \mathcal {C}\subseteq C^d(\Sigma )\) give rise to a short exact sequence \(0\rightarrow \mathcal {C}/\mathcal {R}\rightarrow \tilde{H}^d(\Sigma ,\Gamma ;\mathbb {Z})\rightarrow \tilde{H}^d(\Sigma ;\mathbb {Z})\rightarrow 0\). Since \(\mathcal {C}/\mathcal {R}\) is finite, the torsion summands form a short exact sequence (see Sect. 3). Taking cardinalities and using equation (1), we get

$$\begin{aligned} |\mathcal {C}/\mathcal {R}|= \frac{|\mathbf{T}(\tilde{H}^d(\Sigma ,\Gamma ;\mathbb {Z}))|}{|\mathbf{T}(\tilde{H}^d(\Sigma ;\mathbb {Z}))|}=\frac{\mathbf{t}_{d-1}(\Sigma ,\Gamma )}{\mathbf{t}_{d-1}(\Sigma )}. \end{aligned}$$
(16)

The inclusions \(\mathcal {R}\subseteq \mathcal {C}\subseteq \mathcal {C}^\sharp \subseteq \mathcal {R}^\sharp \) give \(|\mathcal {R}^\sharp /\mathcal {R}| = |\mathcal {R}^\sharp /\mathcal {C}^\sharp | \cdot |\mathcal {C}^\sharp /\mathcal {C}| \cdot |\mathcal {C}/\mathcal {R}|\). Moreover, \(\mathcal {R}^\sharp /\mathcal {C}^\sharp \cong \mathcal {C}/\mathcal {R}\). By Eq. (16) and Binet–Cauchy, we have

$$\begin{aligned} |\mathcal {C}^\sharp /\mathcal {C}|&= \frac{|\mathcal {R}^\sharp /\mathcal {R}|}{|\mathcal {R}^\sharp /\mathcal {C}^\sharp | \cdot |\mathcal {C}/\mathcal {R}|} = \frac{\mathbf{t}_{d-1}(\Sigma )^2}{\mathbf{t}_{d-1}(\Sigma ,\Gamma )^2}\ |\mathcal {R}^\sharp /\mathcal {R}|\\&= \frac{\mathbf{t}_{d-1}(\Sigma )^2}{\mathbf{t}_{d-1}(\Sigma ,\Gamma )^2}\ \det (\partial _R\partial ^{*}_R)\\&= \sum _{\Upsilon \subseteq \Sigma _d:|\Upsilon |=r} \frac{\mathbf{t}_{d-1}(\Sigma )^2}{\mathbf{t}_{d-1}(\Sigma ,\Gamma )^2}\ \det (\partial _{R,\Upsilon })^2. \end{aligned}$$

By Proposition 3.2, the summand is nonzero if and only if \(\Upsilon \) is a cellular spanning forest. In that case, the matrix \(\partial _{R,\Upsilon }\) is the cellular boundary matrix of the relative complex \((\Upsilon ,\Gamma )\), and its determinant is (up to sign) \(\mathbf{t}_{d-1}(\Upsilon ,\Gamma )\), so by Proposition 3.4 we have

$$\begin{aligned} |\mathcal {C}^\sharp /\mathcal {C}| ~= \sum _\Upsilon \frac{\mathbf{t}_{d-1}(\Sigma )^2}{\mathbf{t}_{d-1}(\Sigma ,\Gamma )^2}\ \mathbf{t}_{d-1}(\Upsilon ,\Gamma )^2 ~= \sum _\Upsilon \mathbf{t}_{d-1}(\Upsilon )^2 \end{aligned}$$

with the sums over all cellular spanning forests \(\Upsilon \subseteq \Sigma \). \(\square \)

Dually, we can interpret the cardinality of the cocritical group as enumerating cellular spanning forests by relative torsion (co)homology, as follows:

Theorem 8.2

Let \(\Omega \) be an acyclization of \(\Sigma \). Then

$$\begin{aligned} |K^*(\Sigma )| = \sum _{ \Upsilon } |\tilde{H}^{d+1}(\Omega ,\Upsilon ;\mathbb {Z})|^2 = \sum _{ \Upsilon } |\tilde{H}_d(\Omega ,\Upsilon ;\mathbb {Z})|^2 \end{aligned}$$

with the sums over all cellular spanning forests \(\Upsilon \subseteq \Sigma \).

Note that the groups \(\tilde{H}^{d+1}(\Omega ,\Upsilon ;\mathbb {Z})\) and \(\tilde{H}_d(\Omega ,\Upsilon ;\mathbb {Z})\) are all finite, by definition of acyclization.

Proof

Let \(\partial _{d+1}=\partial _{d+1}(\Omega )\). Note that \({{\mathrm{rank}}}\partial _{d+1}=\tilde{\beta }_d(\Sigma )\); abbreviate this number as \(b\). By Binet–Cauchy, we have

$$\begin{aligned} |K^*(\Sigma )| = |\det \partial ^{*}_{d+1}\partial _{d+1}| = \sum _{B\subseteq \Omega _d:|B|=b} (\det \partial ^{*}_B)^2, \end{aligned}$$

where \(\partial _B\) denotes the submatrix of \(\partial \) with rows \(B\). Letting \(\Upsilon =\Sigma {\setminus } B\), we can regard \(\partial _B\) as the cellular boundary map of the relative complex \((\Omega ,\Upsilon )\), which consists of \(b\) cells in each of the dimensions \(d\) and \(d+1\). By Proposition 3.2, the summand is nonzero if and only if \(\Upsilon \) is a cellular spanning forest of \(\Omega _{(d)}=\Sigma \). (Note that the \(d+1,B,\Upsilon ,\Omega _{(d)}\) in the present context correspond, respectively, to the \(d,R,\Gamma ,\Upsilon \) of Proposition 3.2.) For these summands, \(\tilde{H}^{d+1}(\Omega ,\Upsilon ;\mathbb {Z})\cong \tilde{H}_d(\Omega ,\Upsilon ;\mathbb {Z})\) is a finite group of order \(|\det \partial _B|\). \(\square \)

Remark 8.3

Let \(\tau ^*(\Sigma )=\sum _\Upsilon |\tilde{H}_d(\Omega ,\Upsilon ;\mathbb {Z})|^2\), as in Theorem 8.2. Then combining Theorems 8.1 and Theorems 8.2 gives

$$\begin{aligned} |\mathcal {C}^\sharp /\mathcal {C}| = |K(\Sigma )|&= \tau (\Sigma ) = \tau ^*(\Sigma )\cdot \mathbf{t}^2,\\ |\mathcal {F}^\sharp /\mathcal {F}| = |K^*(\Sigma )|&= \tau ^*(\Sigma )= \tau (\Sigma )/\mathbf{t}^2,\\ |\mathbb {Z}^n/(\mathcal {C}\oplus \mathcal {F})|&= \tau (\Sigma )/\mathbf{t}= \tau ^*(\Sigma )\cdot \mathbf{t}, \end{aligned}$$

highlighting the duality between the cut and flow lattices.

9 Bounds on combinatorial invariants from lattice geometry

Let \(n\ge 1\) be an integer. The Hermite constant \(\gamma _n\) is defined as the maximum value of

$$\begin{aligned} \left( \min _{x\in \mathcal {L}{\setminus }\{0\}}\langle x,x\rangle \right) (|\mathcal {L}^\sharp /\mathcal {L}|)^{-1/n} \end{aligned}$$
(17)

over all lattices \(\mathcal {L}\subseteq \mathbb {R}^n\). The Hermite constant arises both in the study of quadratic forms and in sphere packing; see [27], Sect. 4]. It is known that \(\gamma _n\) is finite for every \(n\), although the precise values are known only for \(1\le n\le 8\) and \(n=24\) [9].

As observed by Kotani and Sunada [26], if \(\mathcal {L}=\mathcal {F}\) is the flow lattice of a connected graph, then the shortest vector in \(\mathcal {F}\) is the characteristic vector of a cycle of minimum length; therefore, the numerator in equation (17) is the girth of \(G\). Meanwhile, \(|\mathcal {F}^\sharp /\mathcal {F}|\) is the number of spanning trees. We now generalize this theorem to cell complexes.

Definition 9.1

Let \(\Sigma \) be a cell complex. The girth and the connectivity are defined as the cardinalities of, respectively, the smallest circuit and the smallest cocircuit of the cellular matroid of \(\Sigma \).

Theorem 9.2

Let \(\Sigma \) be a cell complex of dimension \(d\) with girth \(g\) and connectivity \(k\), and top boundary map of rank \(r\). Let \(b={{\mathrm{rank}}}\mathcal {F}(\Sigma )={{\mathrm{rank}}}\tilde{H}_d(\Sigma ;\mathbb {Z})\). Then

$$\begin{aligned} k \tau (\Sigma )^{-1/r} \le \gamma _r\qquad \text {and}\qquad g \tau ^*(\Sigma )^{-1/b} \le \gamma _b. \end{aligned}$$

Proof

Every nonzero vector of the cut lattice \(\mathcal {C}\) contains a cocircuit in its support, so \(\min _{x\in \mathcal {C}{\setminus }\{0\}}\langle x,x\rangle \ge k\). Likewise, every nonzero vector of the flow lattice \(\mathcal {F}\) of \(\Sigma \) contains a circuit in its support, so \(\min _{x\in \mathcal {F}{\setminus }\{0\}}\langle x,x\rangle \ge g\). Meanwhile, \(|\mathcal {C}^\sharp /\mathcal {C}|=\tau \) and \(|\mathcal {F}^\sharp /\mathcal {F}|=\tau ^*\) by Theorem 8.1. The desired inequalities now follow from applying the definition of Hermite’s constant to the cut and flow lattices, respectively. \(\square \)