Homological invariants of Pauli stabilizer codes

We study translationally invariant Pauli stabilizer codes with qudits of arbitrary, not necessarily uniform, dimensions. Using homological methods, we deﬁne a series of invariants called charge modules. We describe their properties and physical meaning. The most complete results are obtained for codes whose charge modules have Krull dimension zero. This condition is interpreted as mobility of excitations. We show that it is always satisﬁed for translation invariant 2D codes with unique ground state in inﬁnite volume, which was previously known only in the case of uniform, prime qudit dimension. For codes all of whose excitations are mobile we construct a p -dimensional excitation and a ( D − p − 1)-form symmetry for every element of the p -th charge module. Moreover, we deﬁne a braiding pairing between charge modules in complementary degrees. We discuss examples which illustrate how charge modules and braiding can be computed in practice.


Introduction
Pauli stabilizer codes are spin systems whose ground state (and excitations) are described by eigenequations for a set of mutually commuting operators, each of which is a tensor product of finitely many Pauli matrices, or generalizations thereof called clock and shift matrices. Initially these models were studied as a class of quantum error-correcting codes [1,2]. Due to their mathematical tractability and nontrivial properties, they have become popular also as exactly solvable models of exotic phases of quantum matter. Qubits (or qudits) are typically placed on sites of a D-dimensional square lattice. Perhaps the most famous example is the toric code [3].
One may ask which quantum phases can be realized as Pauli stabilizer codes. It has been shown [4,5] that for codes on Z 2 lattice with primedimensional qudits, stacks of toric codes are the only nontrivial phases with a unique ground state in infinite volume. The story is richer for qudits of composite dimension. Namely, it was shown [6] that every abelian anyon model which admits a gapped boundary [7] may be represented by a Pauli stabilizer code. It was conjectured that the list of models constructed therein is exhaustive (up to finite depth quantum circuits and stabilization). This proposal depends on several assumptions, one of which is that all local excitations are mobile and hence can be created at endpoints of string operators. In this paper we prove this, extending earlier results for prime-dimensional qudits. The situation is even more complicated for D > 2 [8] due to existence of so-called fractons. These results show that mathematical study of stabilizer codes is an interesting and nontrivial problem. It is also closely related to classification of Clifford Quantum Cellular Automata [9,10].
Let us recall how similar classification problems were handled in other areas, e.g. algebraic topology. Historically, researchers first discovered some basic invariants, such as Euler characteristic or fundamental group. Later they developed more systematic methods, e.g. (co)homology and homotopy theory. In our situation, the module of topological point excitations [11] and (for the case D = 2) topological spin and braiding [5] are the known invariants. It is natural to look for machinery that produces their generalizations. Hopefully it will allow to make progress in the classification problem.
In this article, we develop such tools for translationally invariant Pauli stabilizer codes with qudits of arbitrary (perhap not even uniform) dimension placed on a lattice described by a finitely generated abelian group Λ. This setup incorporates infinitely extended as well as finite spatial directions. Of course physics crucially depends on D = rk(Λ) (the number of independent infinite directions). We describe stabilizer codes by symplectic modules over a group ring R of Λ and their Lagrangian (or more generally, isotropic) submodules. This is closely related to the approach developed in [11]. In contrast to treatment therein, the emphasis is on modules with direct physical interpretation, rather than their presentations with maps from free modules 1 .
We propose a definition of modules Q p of charges of p-dimensional excitations (anyons, fractons, strings etc.) for every non-negative integer p. The construction of Q p uses standard homological invariants of modules. In the case of local excitations (p = 0), our definition agrees with the known one. For general p, the physical interpretation of mathematically defined Q p is most justified under the assumption that all charge modules have zero Krull dimension (which we interpret as the requirement that the excitations are mobile). In this case, we define for every element of Q p an operator with (p + 1)-dimensional support which creates an excitation on its boundary. This excitation is uniquely defined modulo excitations which can be created by p-dimensional operators. Its mobility (moving around with p-dimensional operators) is established. We show also that every element of Q p gives rise to a (D − p − 1)-form symmetry [12]. Furthermore, a braiding pairing between Q p and Q q (with p + q = D − 2) is defined and its basic properties (such as symmetry) are established.
It is natural to expect that for codes with only mobile excitations, the underlying abelian groups of Q p and pairings between them described above are (a part of) data of some Topological Quantum Field Theory (TQFT), e.g. an abelian higher gauge theory 2 . Such correspondence exists in every example known to authors. Modules Q p have more structure, which does not seem to be captured by a TQFT: they are acted upon by the group of translations. In some cases this allows to distinguish models with the same topological order which are distinct as Symmetry Enriched Topological (SET) phases with translational symmetry. 1 The latter approach is very useful in concrete computations. We prefer ours in general considerations.
2 Say, with action 1 4π D−1 p=1 i,j K ij p A i p dA j D−p , where A i p are p-form U(1) gauge fields and K matrices are non-degenerate and satisfy K ij p = (−1) p+1 K ji D−p .
Section 2 details the mathematical set-up of translationally invariant stabilizer codes in terms of commutative algebra. Rudiments of symplectic geometry over group rings of Λ are laid out here. Section 3 makes the connection between topological excitations and the functor Ext. Section 4 discusses operations on stabilizer codes, e.g. coarse-graining and stacking. In particular we prove that charge modules are invariant to coarse-graining and that they provide obstructions to obtaining a system from a lower dimensional one by stacking. Section 5 ventures a definition of mobility for excitations in any dimension. We also include a proof for the conjecture that in any 2D code with unique ground state, all excitations are mobile and can be created with string operators. In Section 6, we specialize to codes with only mobile excitations. It is shown that in this case charges may be described by cohomology classes of a certainČech complex. We show how to obtain interesting operators and physical excitations fromČech cocycles. Moreover, we define braiding in terms of a cup product in theČech complex and show that our proposal reduces to what is expected for D = 2. Several examples are worked out in Section 7. Some known mathematical definitions and facts used in the main text are reviewed in appendices: Gorenstein rings in Appendix A, local cohomology in Appendix B andČech cohomology in Appendix C.
Let us mention some problems which are left unsolved in this work. Firstly, results of Section 6 are restricted to so-called Lagrangian stabilizer codes such that charge modules have Krull dimension zero. We would like to remove some of these assumptions in the future, for example to treat models with spontaneous symmetry breaking or fractons. Secondly, we did not prove that braiding is non-degenerate. We expect that this can be done by relating braiding to Grothendieck's local duality, in which we were so far unsuccessful. We expect also that the middle-dimensional braiding admits a distinguished quadratic refinement for D = 4k + 2 (which is already known to be true for D = 2 from previous treatments) and that it is alternating (rather than merely skewsymmetric) for D = 4k. Thirdly, it is not known in general to what extent invariants we defined determine a stabilizer code, presumably up to symplectic transformations (corresponding to Clifford Quantum Cellular Automata), coarse graining and stabilization. We hope that in the future a one-to-one correspondence between equivalence classes of stabilizer codes with only mobile excitations and some (abelian) TQFTs will be established.

Stabilizer codes and symplectic modules
In order to obtain homological invariants of a stabilizer code, we need to translate it to the language of modules. In this section we generalize [11] to codes with arbitrary (prime or composite) qudit dimensions. Multiple qudits are placed on each lattice site. A d-dimensional qubit is acted upon by shift and clock matrices X, Z, which satisfy For brevity, products of Z and X (possibly acting on finitely many different qudits) and phase factors will be called Pauli operators. Unlike [11], our framework does not require qudits in a model to have a uniform dimension. Instead, an array of qudits with various dimensions populates each lattice site. We let n be a common multiple of dimensions of all qudits in a model.
All rings are commutative with unity and Z n is the ring Z/nZ. Definition 1. Let n be a positive integer and Λ a finitely generated abelian group. Z n [Λ] is the group ring of Λ over Z n . When n and Λ are clear from the context, we denote R = Z n [Λ]. For λ ∈ Λ, we denote the corresponding element of R by x λ . If r = λ∈Λ r λ x λ (with all but finitely many r λ ∈ Z n equal to zero), we call r 0 the scalar part of r. Moreover, we let r = λ∈ r λ x −λ . Operation r → r is called the antipode.
Example 2. Suppose that Λ = Z D . Then R is the ring of Laurent polynomials in D variables x 1 , . . . , x D , corresponding to D elements of a basis of Z D . A general element of R is a sum of finitely many monomials x λ 1 1 · · · x λ D D with Z n coefficients; exponents λ i are in Z. Here we use the more economical notation in which such monomial is simply denoted x λ . One may think of λ as a multi-index.
For a lattice Λ with the same array of qudits on each site, ring R = Z n [Λ] describes certain basic operations on Pauli operators. An element x λ translates a Pauli operator on the lattice by λ ∈ Λ, while a scalar m ∈ Z n raises a Pauli operator to m-th power. As n is a common multiple of qudit dimensions, taking the n-th power of any Pauli operator gives a scalar. This action endows the collection P of all local Pauli operators modulo overall phases with an R-module structure. We will sometimes call elements of P operators for conciseness. Addition in P corresponds to composition of operators, which is commutative because we are disregarding phases. Specifically, if qudits on each site have respective dimensions n 1 , . . . , n q , then P is isomorphic to the module q j=1 Z n j [Λ] ⊕2 . It is not a free module unless n = n 1 = n 2 = · · · = n q . We will see that it nevertheless shares some homological properties of free modules, which is important in the study of invariants. In most cases, understanding of proofs is not necessary to read the remainder of the paper.
We will also define an antipode-sesquilinear symplectic form ω : P ×P → R on P , which captures commutation relations satisfied by Pauli operators. More precisely, if T, T ′ are Pauli operators corresponding to elements p, p ′ ∈ P , then Thus it is the scalar part of ω which has most direct physical interpretation, whereas ω(p, p ′ ) encodes also commutation rules of all translates of T, T ′ . Algebraically ω is much more convenient to work with, essentially because the scalar part map R → Z n is not a homomorphism of R-modules. Sesquilinearity of ω implies that ω(x λ p, x λ p ′ ) = ω(p, p ′ ), which is the statement that commutation relations of Pauli operators are translationally invariant.
Stabilizer code is a collection of eigenequations for a state 3 Ψ of the form where T are Pauli operators (with phase factors chosen so that 1 is in the spectrum of T ). If such equations are imposed for two operators T, T ′ , then existence of solutions requires that p, p ′ ∈ P satisfy ω(p, p ′ ) 0 = 0. In a translationally invariant code, the same condition has to be satisfied for all translates of T, T ′ , i.e. ω(p, p ′ ) = 0. It follows that the images in P of operators defining the code generate a submodule L with ω| L ≡ 0. Such submodules of (P, ω) are called isotropic. The stabilizer code determines a unique state if L is Lagrangian, i.e. it is isotropic and every p ∈ P such that ω(p, p ′ ) = 0 for every p ′ ∈ L is in L. Throughout the article, we refer to codes with this property as Lagrangian codes.
In quantum computation, one wishes to use spaces of states satisfying (3) to store and protect information. When error occurs, there are violations of eigenequations called syndromes. On the other hand, one may also think of solutions of (3) as ground states of a certain Hamiltonian. Then syndromes are also regarded as energetic excitations. Excited states are described by where p ∈ L corresponds to T and ϕ is a Z n -linear functional. The excitation is local (supported in a finite region) if ϕ(x λ p) vanishes for all but finitely many λ ∈ Λ.
The discussion above establishes a correspondence between a translationally invariant Pauli stabilizer code and an isotropic submodule of (P, ω). This correspondence will allow us to tap into the power of homological algebra. For the rest of the section, we develop the right hand side of the correspondence with additional generality. The following Lemma provides a useful description of M * .
Lemma 5. Let M be an R-module. The map taking ϕ ∈ M * to its scalar is an R-module isomorphism with inverse given by the formula Definition 6. We denote the total ring of fractions of R by K.
Please see Appendix A for some definitions referred to below.
Lemma 7. R is a Gorenstein ring of dimension rk(Λ), the free rank of Λ. Its total ring of fractions K is a QF ring.
Proof. Z n is a QF ring by Baer's test. Thus (−) # is an exact functor and R # is an injective R-module, as Hom R (−, R # ) = (−) # . Now suppose that rk(Λ) = 0. Then R is finite, so dim(R) = 0. We have a bilinear form which yields an isomorphism R ∼ = R # . Hence R is a QF ring.
Invoking 54, K is also Goreinstein. It remains to show that dim(K) = 0.
]. An element of R is a zero-divisor if and only if its ]. We will show that each K i is Artinian.
Let m i be the maximal ideal of A i . Then m i is nilpotent and every element of Recall that an element of R is said to be regular if it is not a zero divisor. The torsion submodule of an R-module M is the set of all elements of M annihilated by a regular element of R. Equivalently, it is the kernel of the natural map M → M ⊗ R K. If M coincides with its torsion submodule, it is called a torsion module. If the torsion submodule of M is 0, then M is said to be torsion-free. Quotient of any module by its torsion submodule is torsion-free.  2. =⇒ : As M is torsion-free, it embeds in M ⊗ R K, which in turn embeds in K t by Lemmas 7 and 57. Let e 1 , . . . , e t be a basis of K t . Since M is finitely generated, there exists a regular element d ∈ R such that the image of M in K t is contained in the R-linear span of d −1 e 1 , . . . , d −1 e t , which is R-free.  Proof. 1. If m ∈ M is a torsion element, then m ∈ ker(♭) = 0.
3. For this part, we denote the functor Hom K (−, K) by (−) ∨ . We have a short exact sequence where ♭ ′ = ♭ ⊗ R id K . We may identify M * ⊗ R K with (M ⊗ R K) ∨ , since Hom commutes with localization. As ♭ ′ is injective, the homomorphism is surjective by Lemma 7. We identify (M ⊗ R K) ∨∨ = M ⊗ R K, by Lemma 57. Using 2. we find that for any m, m ′ ∈ M and k, k ′ ∈ K: It follows at once that also ♭ ′ is surjective. Thus the short exact sequence (9) yields (M * /M) ⊗ R K = 0, i.e. M * /M is a torsion module. Now let N ⊂ M be a submodule. We have a short exact sequence Applying * gives We have is a torsion module. As both homomorphisms M → M * and M * → N * have torsion cokernel, so does their composition.
Corollary 11. Suppose that Λ is finite and let M be a quasi-symplectic Rmodule. Then M is symplectic. More generally, if N ⊂ M is a submodule, then the map M ∋ m → ω(·, m)| N ∈ N * is surjective.
Proof. The assumption guarantees that R is a finite ring, so every element is either a zero-divisor or invertible. Hence torsion modules vanish.
Recall that the saturation sat M (N) of a submodule N ⊂ M is defined to be the module of all m ∈ M such that rm ∈ N for some regular element r ∈ R. If N = sat M (N), then N is said to be saturated (in M). This is equivalent to M/N being torsion-free. Proposition 13. Let N be a submodule of a quasi-symplectic module M.

Clearly sat
Put L = N +Rm. As N is saturated, L/N is torsion-free. Hence by Lemma 8 we have (L/N) * = 0. Choose a nonzero element ϕ ∈ (L/N) * . Composing with the quotient map L → L/N we obtain ϕ ′ ∈ L * which annihilates N and ϕ ′ (m) = 0. By Proposition 10 there exists a regular element r ∈ R and z ∈ M such that rϕ ′ = ω(·, z)| L . The element z is as desired.
5. follows immediately from 4. and the definition of sat M (N).

Corollary 14.
Suppose that Λ is finite and let M be a quasi-symplectic Rmodule. Then for every submodule N ⊂ M we have N ωω = N.
Proof. As in Corollary 11. Proposition 15. Let M be a quasi-symplectic module and N ⊂ M an isotropic submodule.
1. N ωω /N is the torsion module of N ω /N.

2.
There exists an induced quasi-symplectic module structure on N ω /N ωω .
4. There exists a canonical embedding N ω → (M/N) * with torsion cokernel. If M is symplectic, this embedding is an isomorphism.
Proof. 1. follows from Proposition 13. The bilinear form ω on M restricted to N ω has kernel N ωω , which establishes 2. By Proposition 10, we have a map M → N * with torsion cokernel. Its kernel is clearly N ω , proving 3.

Dualizing the short exact sequence
Definition 16. Let M be an R-module. We say that M is quasi-free if there exists a Z n -module M 0 such that M ∼ = M 0 ⊗ Zn R. We will also interpret elements of M 0 ⊗ Zn R as polynomials in x λ with coefficients in M 0 , thus writing Proposition 18. Let P 0 be a finitely generated Z n -module equipped with a bilinear form ω 0 : P 0 × P 0 → Z n which is • alternating: ω 0 (p 0 , p 0 ) = 0 for every p 0 ∈ P 0 , • nondegenerate: ω 0 (·, p 0 ) = 0 implies p 0 = 0.
Let P = P 0 [Λ] and define a Z n -bilinear form ω : P × P → R by Then (P, ω) is a symplectic module.
Proof. First note that P 0 and P # 0 have the same number of elements. Thus the map P 0 ∋ p 0 → ω 0 (·, p 0 ) ∈ P # 0 , being injective by definition, is bijective.
A short calculation shows that conditions 1. and 2. in the Definition 9 are satisfied. Using the description of P * in Lemma 5, it is easy to see that ♭ is an isomorphism.
Physically, P 0 is the group generated by clock and shift matrices acting on qubits on a single lattice site, considered modulo phases.

Definition 19.
A stabilizer code is a tuple C = (n, Λ, L, P ), where P is symplectic module over R = Z n [Λ] as constructed in Proposition 18 and L ⊂ P is an isotropic submodule. We will also abbreviate C = (Λ, L, P ) or (L, P ) when there is no danger of confusion. To C we associate • integer dimension D = rk(Λ), the free rank of Λ, Let us interpret physically objects defined above. Let H be a Hilbert space on which local Pauli operators act irreducibly and let H 0 ⊂ H be the space of solutions of (3) in H. We assume that H 0 = 0. One can show that operators in L ω act irreducibly in H 0 . Since they commute with operators in L ωω , the latter act in H 0 as scalars. This is a trivial statement for operators in L, but for operators in L ωω \ L the conclusion relies on the irreducibility of H, through Schur's lemma. Values of the latter operators may be changed by acting on a state with a suitable automorphism of the local operator algebra (more precisely, a non-local Pauli operator) which preserves all operators in L. This gives a state which is not representable by an element of H (belongs to a different superselection sector). Hence we have the following interpretations.
• Z(C) labels order parameters for spontaneously broken symmetries. If L ωω is Lagrangian, isomorphism classes of representations H with H 0 = 0 are in bijection with Z(C) # (and hence also with Z(C) if Z(C) is finite).
• Elements of S(C) are Pauli operators acting in H 0 (sometimes called logical operators) modulo operators which act in H 0 as scalars. Hence dim(H 0 ) is the square root of the number of elements 4 of S(C).
By the discussion around (4) and Lemma 5, module L * parametrizes local excitations. Therefore Q(C) = L * /(P/L ω ) is the module of local excitations modulo excitations which can be created by acting with local operators.

Topological charges
In this section we define a series of homological invariants Q i , with Q 0 isomorphic to Q in Definition 19. Moreover, we show that Q 0 is isomorphic to the module of topological point excitations defined in [11] and derive some general properties of Q i . Firstly, we show that Q i (C) = 0 for i > D − 1 (and also for i = D − 1 for saturated codes). Secondly, we obtain bounds on Krull dimensions of Q i (C). We expect Q i to describe i-dimensional excitations (or defects). This is shown in Section 6 for Lagrangian codes such that all Q i have Krull dimension zero. Computations of Q i for certain specific codes are presented in Section 7.
We remark that it follows immediately from our results that for saturated codes C with D = 2, the module Q(C) either vanishes or has Krull dimension zero. Together with the discussion in Section 5 it implies that all point excitations are mobile, i.e. they can be transported around by suitable string operators. This result has previously been shown only for codes with qudits of prime dimension [11]. Method adapted therein does not generalize to the case of composite qudit dimension due to the failure of Hilbert's syzygy theorem, a crucial ingredient of the proof.
Lemma 20. If M is a quasi-free module and N is free over Z n , then for i > 0 Proof. Every Z n -module is a direct sum of cyclic modules, so without loss of generality M = Z k [Λ] with k|n. Let l = n k . We have a free resolution Erasing M and applying Hom R (−, N) we obtain the sequence which is exact in every degree i > 0. This establishes the claim for Ext. The argument for Tor is analogous.
Proposition 21. Let C = (L, P ) be a stabilizer code. We have Proof. Consider the short exact sequence We apply * , use Lemma 20 and identify (P/L) * = L ω , P * = P to get so Proposition 21 motivates the definition of generalized charge modules.
Definition 22. Generalized charge modules of a stabilizer code C = (L, P ) are defined as Proposition 23. For i > 0 we have a canonical isomorphism Proof. Inspect the long exact sequence obtained by applying (−) * to (21).
The next proposition shows that our definition of Q(C) agrees with topological point excitations in [11].
Proposition 24. Let (L, P ) be a stabilizer code and let σ : F → P be a homomorphism with F quasi-free and im(σ) = L. Let T be the torsion submodule of the cokernel of σ * : P * → F * . Then T ∼ = Q 0 (C).
Proof. Choose a quasi-free module F ′ and a homomorphism ι : F ′ → F with image ker(σ). One may extend it to a quasi-free resolution of P/L: By Lemma 20 this resolution may be used to compute Ext • (P/L, R). Thus we erase P/L and apply (−) * , yielding the complex whose homology ker(ι * )/ im(σ * ) in degree 1 is Q 0 (C). This exhibits Q 0 (C) as a submodule of coker(σ * ). It is contained in T because Q 0 (C) is torsion. It only remains to show that every ϕ ∈ F * representing an element of T is in ker(ι * ). Indeed, let rϕ = σ * (ψ) for some r ∈ R not a zero-divisor and ψ ∈ P * . Then r ι * (ϕ) = 0, so ι * (ϕ) = 0 since F ′ * is torsion-free.
Recall that the dimension dim(M) of an R-module M is defined as the Krull dimension of the quotient ring R/ Ann(M), where Ann(M) is the annihilator of M. A nonzero module has a nonnegative Krull dimensions. By convention, the zero module has Krull dimension −∞.
Proposition 25. Let C be a stabilizer code.
In particular, saturated 1D codes have no topological charge.
Proof. 1. follows from the definition of a Gorenstein ring. 3. follows from Lemma 59. Now suppose that C is saturated. Then P/L is torsion-free, so by Lemma 8 there exists a short exact sequence with F finite free. Applying (−) * gives a long exact sequence from which In particular Ext D R (P/L, R) = 0. Invoking Lemma 59 establishes 4.

2.
We have a short exact sequence Apply * and use Ext D R (P/L ωω , R) = 0, established in the proof of 4.

Operations on Pauli stabilizer codes
One Pauli stabilizer code may give rise to various other codes. For example, one may "compatify" some (even all) spatial directions, i.e. replace Λ by a quotient group. Another possibility is stacking of infinitely many copies of a certain code to create a code with higher dimension. Finally, one has coarse-graining, which does not change the code, but forgets about some of its translation symmetry. In this section we discuss stacking and coarse-graining (in particular how they affect invariants of a code), but compactifications are postponed to future work. Moreover, we explain that the choice of n (which has to be a common multiple of qubit dimensions) does not matter and that the whole theory reduces to the case when n is a prime power.
Definition 26. Let C = (n, Λ, L, P ) be a stabilizer code and let k be a positive integer divisible by n. Then we may regard L and P as Z k [Λ]-modules, yielding a stabilizer code C ′ = (k, Λ, L, P ). We will not distinguish between C and C ′ . Proposition below shows that this does not affect charge codes. Given data (Λ, L, P ) we choose n (needed to define the ring R) as the smallest positive integer annihilating the abelian group P . where Proof. Chinese remainder theorem.
Note that Proposition 29 implies that the study of stabilizer code with general n reduces to the case when n is a prime power.
The operation introduced in Definition 30 may be thought of as stacking of Γ/Λ layers of the system described by (Λ, L, P ). Let us note that Due to these simple formulas, structure of charge modules may be used to show that a certain system can not be obtained from a lower dimensional system by stacking. Here we note only a simple criterion based on whether charge modules vanish.
Proposition 31. Suppose that C is a stabilizer code with Q i (C) = 0. Then C is not isomorphic to any ι * (Λ, L, P ) with rk(Λ) < i + 1. If C is saturated, rk(Λ) = i + 1 is also excluded.
Proposition 32. Suppose that C is a stabilizer code which is not saturated. Then C is not isomorphic to any ι * (Λ, L, P ) with rk(Λ) = 0.
This operation is called coarse graining.
Proposition 34. Coarse graining satisfies Proof. Let M ⊂ P be a submodule and p ∈ P . Then p ∈ M ω if and only if the scalar part of ω(m, p) vanishes. The scalar part is unchanged by coarse graining, so (ι * M) ω = ι * (M ω ). This establishes first two equalities in (36). For the last one, ι * is an exact functor which takes free modules to free modules and commutes with (−) * , as one verifies using Lemma 5.
A local excitation is said to be mobile if there exist local Pauli operators which 'move' it in all non-compact directions of the lattice. By 'move', we mean destroying the excitation and creating its displaced copy, without creating additional excitations.
Recall that Q = L * /(P/L ω ) describes all local excitations modulo those creatable by local Pauli operators. According to the previous paragraph, an excitation e ∈ L * can be displaced by an element γ ∈ Λ if and only if (x γ − 1)e ∈ P/L ω . In conclusion, mobility of all local excitations is equivalent to the existence of a subgroup Γ ⊂ Λ of finite index such that x γ −1 annihilates Q for each γ ∈ Γ. We now show that this condition is also equivalent to the vanishing of the Krull dimension of R-module Q.
Lemma 35. If n, r are positive integers, let L n (r) be the largest integer such that (x − 1) Ln(r) divides x n r − 1 in Z n [x]. For example, L p (r) = p r for any prime number p. One has lim sup r→∞ L n (r) = ∞.
We will show that L n (2r) ≥ L n (r) 2 . Write x n r − 1 = (x − 1) n r f (x). Then Proposition 36. If a ⊂ R is an ideal, then dim(R/a) = 0 if and only if there exists a subgroup Γ ⊂ Λ of finite index such that x γ − 1 ∈ a for every γ ∈ Γ.
=⇒ : choose λ 1 , . . . , λ D ∈ Λ which generate a subgroup of finite index and put x i = x λ i . If m ⊂ R is a maximal ideal, then R/m is a finite field, so there exists a positive integer such that x r i − 1 ∈ m. As dim(R/a) = 0, there exist finitely many maximal ideals m ⊂ R containing a. Thus it is possible to choose r such that Since R is Noetherian, √ a N ⊂ a for large enough N. Lemma 35 implies that there exist N, L such that We may take Γ to be the span of Lλ 1 , . . . , Lλ D .
Corollary 37. All local excitations of a stabilizer code C are mobile if and only if dim(Q(C)) = 0. In particular this is true if D = 1 or C is saturated and D = 2.
Proof. The second part of the statement follows from dimension bounds in Proposition 25.
Though logically equivalent, the condition dim(R/a) = 0 avoids mentioning a finite index subgroup of Λ. It is also the easier condition to establish in a proof, due to the large number of results in dimension theory. An example is given by Corollary 37 above.
A direct characterization of mobility for i-dimensional topological charges in Q i , i > 0 may be possible, given an interpretation of charges in terms of extended excitations. We leave this to future efforts. Instead we make the conjectural definition that mobility for Q i is still equivalent to dim(Q i ) = 0. We sometimes call a code C mobile if dim(Q i (C)) = 0 for all i. In the next section we will see that under this assumption elements of Q i (C) may indeed be interpreted as excitations, which are mobile in a suitable sense.

Codes with only mobile excitations
This section is devoted to analysis of topological charges for mobile codes. Mobility allows to describe topological charges in terms ofČech cocycles. Cup product forČech cohomology fits a physical process commonly known as braiding. It furnishes an algebraic description of exchange relations for mobile excitations. A direct physical interpretation ofČech cocycles is also given.

Mathematical preliminaries
If A is a ring and M an A-module, let E A (M) be the injective envelope of M. We refer to Appendix B for other definitions and facts used below.
Proposition 38. Let a ⊂ R be an ideal such that dim(R/a) = 0. Then the sum being taken over maximal ideals of R containing a.
Proof. Lemma 62 allows to reduce to the case of a being itself a maximal ideal m. We put k = R/m. R-module R # represents the exact cofunctor (−) # on the category of R-modules, so it is injective. By [14, Proposition 3.88], Γ m (R # ) is also injective. It is easy to see that k # ∼ = {ϕ ∈ R # | mϕ = 0} is an essential submodule of Γ m (R # ), so Γ m (R # ) = E R (k # ). The proof will be completed by showing that k # ∼ = k as an R-module. As k # is annihilated by m, it is a k-vector space. We have to argue that its dimension over k is 1. Let p be the characteristic of k. Every element of k # factors through Z p , so and hence dim k (k # ) = dim Zp (k # ) dim Zp (k) = 1. Lemma 39. Every maximal ideal of R has height D.
Proof. R is a product of rings Z p t [Λ] where p is prime and t ∈ N, so we may assume that n = p t with no loss of generality. Then R is an extension of S = Z p [Λ] by a nilpotent ideal, so its poset of prime ideals is isomorphic to that of S. The result for S is standard, see e.g. [15,Corollary 13.4].
the sum being taken over maximal ideals of R containing a.
Proof. Lemma 62 allows to reduce to the case of a being a maximal ideal m. Let Γ ⊂ Λ be a subgroup such that Λ/Γ is finite and let γ 1 , . . . , γ D be a basis of Γ. We put and consider theČech complexČ • (t, R) (see Appendix C). Lemma 64 and Propositions 38, 40 show that its only nonzero cohomology moduleȞ D (t, R) is isomorphic to Γ a (R # ). Our next goal is to construct an explicit isomorphism.
Definition 41. Let Z n [[Λ]] be the set of formal sums λ∈Λ r λ x λ . This is an abelian group, but in general not a ring: the product is well-defined only if for every λ ∈ Λ there are only finitely many µ ∈ Λ such that both r λ−µ and r ′ µ is nonzero. This condition is always satisfied if one of the two factors is in R, so Z n [[Λ]] is an R-module. Using the pairing Definition 42. We consider formal Laurent expansions of 1 t i (regarded as elements of R # ) into positive and negative powers of x i : The residue homomorphism Res : This is well-defined because t i

Proposition 43. ker(Res) is the module of coboundaries and the image of
Res is Γ a (R # ). Therefore Res induces an isomorphismȞ D (t, R) → Γ a (R # ).
Proof. AČech coboundary is a sum of elements as on the left hand side of (47) with at least one k i equal to zero, each of which is annihilated by Res. Moreover, the right hand side of (47) is annihilated by t k i i , so it belongs to Γ a (R # ). We have obtained an induced homomorphismȞ D (t, R) → Γ a (R # ). From now on the symbol Res refers to this induced homomorphism. Let z be the cohomology class of 1 t 1 ...t D . Clearly a ⊂ Ann(z). We evaluate One checks that the annihilator of the right hand side is a, so Ann(z) ⊂ a. We deduce that the submodule M ofȞ D (t, R) generated by z intersects ker(Res) trivially. Clearly M is an essential submodule ofȞ D (t, R), so Res is injective. Propositions 38, 40 imply that it is an isomorphism.

Physical interpretations of charges
For the rest of this section we assume that C = (Λ, L, P ) is a Lagrangian stabilizer code such that dim(Q i (C)) = 0 for every i. Proposition 36 allows us to choose a subgroup Γ ⊂ Λ of finite index such that x γ − 1 annihilates all Q i (C). With this Γ, we consider theČech complex as discussed around (43).

Charges asČech cocyles
Proposition 44. We have Proof. We can continue the quotient map P → P/L to a quasi-free resolution P • → P/L with P 0 = P . Applying (−) * yields a complex where we used isomorphisms (P/L) * ∼ = L and P * ∼ = P . From this we have also a cochain complex K • with K 0 = P/L, K i = P * i for i > 0: Its cohomology is trivial in degree zero and Ext • R (P/L, R) elsewhere. Next, we form a double complexČ • (t, K • ), with the following properties: is an exact functor annihilating the cohomology of K • .
The isomorphism is established either by a diagram chase or using the double complex spectral sequence. For a reader not familiar with these techniques we sketch the more elementary approach below.
With similar reasoning one checks that this cohomology class does not depend on arbitrary choices in the construction of q (i) . Thus a well-defined homomorphism h : Ext i R (P/L, R) →Ȟ i (t, P/L) is obtained. Performing the same steps reversed yields a homomorphism in the opposite direction, easily seen to be an inverse of h.
Remark 45. If we assume that The proof of Proposition 44 goes through with essentially no modifications. Moreover, even with no restrictions on dim(Q i (C)) we may construct a homomorphismȞ i (t, P/L) → Ext i R (P/L, R) for 1 ≤ i ≤ D − 1. If dim(Ext i R (P/L, R)) = 0, this homomorphism can not be surjective.

Charges as topological excitations
Next we provide a concrete interpretation of our charge modules Q i (C) (reinterpreted asČech cocycles by Proposition 44) in terms of operators and physical excitations.
Definition 46. We define P = P ⊗ R R # . Recall that P ∼ = P 0 [Λ] for some finite abelian group Λ, so P ∼ = P 0 [[Λ]]. We will sometimes multiply elements of R # and P . Such product is well-defined under a condition analogous to the one discussed in Definition 41. Symplectic form on P extends to a pairing between P and P valued in R # . Under suitable conditions one may also pair two elements of P .
Elements of P describe products of Pauli operators (up to phase) with possibly infinite spatial support. Such expressions do not necessarily define bona fide operators on a Hilbert space, but they make sense as automorphisms of the algebra of local operators. Hence they may be applied to states, in general yielding a state in a different superselection sector. The extended symplectic forms captures their "commutation rules" with local Pauli operators.
Definition 47. Let s = (s 1 , . . . , s D ) be a tuple of elements of the multiplicative group {±}. We think of s as a label of an orthant in Γ ∼ = Z D . For every s we define an embedding of P t 1 ...t D (and hence also of every P t i 0 ...ip for a sequence 1 ≤ i 0 < · · · < i p ≤ D, since P is torsion-free) in P as follows: If π is an element of P t 1 ...t D , we denote the element of P obtained this way by π s , to emphasize dependence on s.
Consider a cocycle ϕ ∈Č p (t, P/L). We lift ϕ to a cochain ϕ ∈Č p (t, P ). Then σ = δ ϕ ∈Č p+1 (t, L) is a cocycle. Note that the map taking the cohomology class of ϕ to the cohomology class of σ is the connecting homomorphism in the long exact sequence ofČech cohomology. Consider images in P of components of ϕ and σ. Two observations are in order. Firstly, ϕ s i 1 ...ip describes an infinite Pauli operator whose support is extended only in directions i 1 . . . i p , and moreover is contained in a shifted orthant specified by s. Secondly, each σ s i 0 ...ip is ω-orthogonal to L. Hence we have an identity Next, let us suppose that ϕ represents the trivial cohomology class. That is, we have ϕ = δψ for some ψ ∈Č p−1 (t, P/L). We lift ψ to a cochain ψ valued in P and choose ϕ = δ ψ. Then which shows that the (p − 1)-dimensional excitation created by ϕ s i 1 ...ip can be created by operators ψ s i 1 ...i j−1 i j+1 ...ip , each of which is extended in only p − 1 (rather than p) directions.
Note that even though an excitation corresponding to a p-cocycle ϕ is created by an operator with p-dimensional support, it can be shifted by an element of Γ by the action of a (p − 1)-dimensional operator. Indeed, x γ − 1 annihilates cohomology, so (x γ − 1)ϕ is a coboundary. The result follows from the discussion of the previous paragraph.
Summarizing, an element of Q p (C) ∼ =Ȟ p+1 (t, P/L) gives rise to an excitation extended in p dimensions, determined modulo excitations created by p-dimensional operators.

Charges as higher form symmetries
Now let ϕ ∈Č p (t, P/L) be a cocycle. We consider the expression This makes sense because ϕ s i 1 ...ip does not depend on s j for j ∈ {i 1 , . . . , i p }. ϕ Res i 1 ...ip is a p-dimensional extended operator. By the earlier discussion, the excitation it creates is supported in the union of a finite collection of subsets infinitely extended in at most p − 1 directions. On the other hand, there exists some k such that each t k i j annihilates it. One checks that a nonzero element with such property must be infinitely extended in all p directions. We obtain the conclusion that ω(·, ϕ Res i 1 ...ip ) L = 0, i.e. ϕ Res i 1 ...ip preserves the state defined by the stabilizer condition.
Since the cochain ϕ allows to construct a symmetry ϕ Res i 1 ...ip of the ground state for every coordinate p-plane (labeled by i 1 < · · · < i p ), it defines a (D−p)form symmetry of C. Let us now investigate to what extent this (D − p)-form symmetry is uniquely determined by the cohomology class of ϕ.
Firstly, let us fix the cocycle ϕ and ask for the dependence on the choice of the lift ϕ. For two different lifts ϕ, ϕ ′ , the difference ϕ ′Res i 1 ...ip − ϕ Res i 1 ...ip is an infinite sum of elements of L, i.e. it represents a product of local operators separately preserving the ground state. A p-dimensional (p ≥ 1) operator of this form should be regarded as a trivial (D − p)-form symmetry.
To understand the dependence on the cocycle ϕ representing a given cohomology class, let us suppose that ϕ = δψ. We lift ψ and choose ϕ = δ ψ. With this choice expression (56) vanishes on the nose.
Summarizing, we have argued that the definition (56) defines a (D−p)-form symmetry of C, which depends only on the cohomology class of ϕ. This means that we have an alternative interpretation of Q p (C) as a group of (D − p − 1)form symmetries of C (possibly nontrivially acted upon by Λ).

Braiding
Definition 48. Let ϕ ∈Ȟ p (t, P/L), ψ ∈Ȟ q (t, P/L). The cup product defined in the Appendix C yields an element where δ is the connecting homomorphismȞ q (t, P/L) →Ȟ q+1 (t, L) in a long exact sequence. Using the map (with a slight abuse of notation) inČech cohomology induced by the symplectic pairing ω : P/L ⊗ R L → R we obtain a class ω(ϕ ⌣ δψ) ∈Ȟ p+q (t, R).

Commutation rule of operators introduced in
Let 0 < j ≤ D − p. The j-th term on the right hand side of (61) is the residue of an element of R t 1 ...t p−j−1 t p−j+1 ...D , so it vanishes. The 0-th term is equal to the right hand side of (60).
We propose to interpret the scalar part of Ω as a higher dimensional version of braiding. Thus Ω(ϕ, ψ) encodes braiding of excitations described by ϕ, ψ as well as their translates. We will see later that for D = 2 our proposal reduces to known expressions, providing evidence for our interpretation.
Recall that we have a decompositionȞ p+1 (t, P/L) = m Γ mȞ p+1 (t, P/L), where m are maximal ideals of R containing a. Its summands are charges characterized by specific behavior under translations, so we interpret m as momentum "quantum numbers". Note that for every m, the ideal m obtained by acting with the antipode also contains a, as a = a. We think of m as momentum opposite to m. The following Proposition shows that two charges with fixed momentum may braid nontrivially only if their momenta are opposite.
Proof. For some j, ϕ is annihilated by m j and ψ by m ′j . Therefore Ω(ϕ, ψ) is annihilated by m j + m ′j . If m = m ′ , this sum is R.
Decomposition ofȞ p+1 (t, P/L) into m-torsion parts is not invariant to coarse-graining. In fact, after sufficient coarse-graining we can assure that a contains all x λ − 1. Then, for n being a prime power, a is contained in only one maximal ideal. Decomposition into m-torsion parts (and more generally, the module structure on Q i (C)) is an invariant protected by the translation symmetry and hence in principle can be used to distinguish SET phases with the same topological order.

Braiding and spin in 2D
We will now specialize to 2D Lagrangian codes. The assumption dim(Q) = 0 is automatically satisfied, as stated in Corollary 37. Hence we have well-defined braiding. Expression (60) agrees with the standard braiding formula as a commutator of two orthogonal string operators. Let us explain this in more detail.
Consider a Lagrangian C = (Z 2 , P, L). We have R = Z n [x ± 1 , x ± 2 ]. There exists some l > 0 such that t i = 1 − x l i ∈ Ann(Q(C)). Therefore we have the following commutative diagram with exact rows For any e ∈ L * , we have δe = (e, e) = ι 1 ( p 1 We remark that it is also equal to the evaluation of the Laurent polynomial ω(p 1 (e 1 ), p 2 (e 2 )) at x 1 = x 2 = 1.
One can also define the topological spin function with sufficiently large c (the right hand side, as a function of c, is eventually constant). It is a quadratic refinement of the braiding pairing. Formula (65) appeared first in [5], where the case of prime-dimensional qudits was studied.

Examples
In this section we discuss examples with concrete codes. They serve several purposes. Firstly, they show that invariants we proposed are nontrivial, calculable and yield what is expected on physical grounds in models which are already well understood. Secondly, they support our physical interpretation of mathematical objects and the conjecture that braiding is non-degenerate. Finally, the last example illustrates certain technical complication that does not arise for codes with prime-dimensional qudits.
In examples presented below we take P to be a free module R 2t with the symplectic form where a, a ′ , b, b ′ ∈ R t and † denotes transposition composed with antipode. Following [11], we represent L as the image of a homomorphism σ : R s → R 2t , described by a 2t × s matrix with entries in R.
We will also work with cocycles inČ • (t, P/L). In calculations it is convenient to identify them with cochains inČ • (t, P ) which are closed modulǒ C • (t, L), with two cochains identified if they differ by a cochain inČ • (t, L).

3D Z n -toric code
We take Λ = Z 3 and denote generators of R corresponding to three basis vectors by x, y, z, so that R is a Laurent polynomial ring in three variables x, y, z. 3D toric code is defined by P = R 6 , L = im(σ) with We have the following free resolution of P/L Erasing P/L and applying (−) * we obtain Here matrix ǫ = σ † λ (rather than σ † ) is present because the canonical isomorphism P → P * is given by λ if both P and P * are identified with R 6 . From this resolution we easily get Ext 1 R (P/L, R) ∼ = Z n , generated by the class of 1 0 0 0 T ∈ R 4 , Both Ext modules are annihilated by x − 1, y − 1, z − 1.
Let us show howČech cochains can be obtained from classes found above. In the construction of theČech complex we may take (x 1 , x 2 , x 3 ) = (x, y, z). Recall that we defined t i = 1−x i . Now consider 1 0 0 0 T ∈ R 4 . Applying theČech differential gives The final expression is the image through ǫ of a certain element ofČ 1 (t, P ). Let us call this cochain ϕ. By construction, it is closed modulo L. Let us show how this can be checked by an explicit computation: One can go through a similar procedure with the element generating Ext 2 . Let us record the final result: Having these formulas in hand we evaluate Hence braiding is a non-degenerate pairing in this example.
It is well known that toric code is closely related to Z n gauge theory. With this interpretation, line operators corresponding to ϕ are Wilson lines. They create electric excitations at their endpoints. Cocycle ψ corresponds to electric flux (surface) operators, which create magnetic field on the boundary. Braiding between the two excitations is an Aharonov-Bohm type phase. We remark also that the relation between generators of L, described by the map τ , corresponds to Bianchi identity.

4D Z n -toric code
In a 4D version of the Z n toric code we have P = R 8 . We let x 1 , . . . , x 4 be four variables corresponding to generators of Z 4 and denote basis vectors of P by e 1 , . . . , e 4 , a 1 , . . . , a 4 . Consider the free module R 7 with basis {g}∪{f ij } 1≤i<j≤4 . We define L = im(σ), where σ : R 7 → P is given by Elements σ(g), σ(f ij ) generate L. To continue σ to a resolution of P/L, we need to describe relations between generators. Consider the free module R 4 with basis {b ijk } 1≤i<j<k≤4 . Define τ 1 : R 4 → R 7 by Then im(τ 1 ) = ker(σ), but we still have to take care of relations between relations. Let τ 2 : R → R 4 be given by We have constructed a free resolution Proceeding as in the 3D case we found all annihilated by x i − 1. After some tedious calculations we found also thě Cech cochains ϕ ∈Č 1 (t, P ) and ψ ∈Č 3 (t, P ) corresponding to generators of Q 0 and Q 2 : where i c denotes the triple of indices complementary to i. Given these expressions it is easy to check that Again, braiding is non-degenerate.

4D Z n 2-form toric code
By a 2-form version of the toric code we mean a code in which degrees of freedom are assigned to lattice plaquettes. Starting from dimension 4 such code is neither trivial nor equivalent to the standard ('1-form') toric code. Module P ∼ = R 12 has basis {e ij , a ij } 1≤i<j≤4 , with nontrivial symplectic pairings of the form ω(e ij , a ij ) = 1. Consider the free module R 8 with basis . We define L = im(σ), where σ : R 8 → P is given by ker(σ) coincides with the image of τ : R 2 → R 8 such that This defines a free resolution from which we derive with Q 1 annihilated by all x i − 1. TwoČech cochains corresponding to generators of Q 1 take the form where ij c is the pair of indices complementary to ij. We find so braiding is non-degenerate.

Z n Ising model
For the Ising model in zero magnetic field we have P = R 2 and where D ≥ 1 is arbitrary. We see that 1 0 ∈ L ωω \ L and L ωω /L ∼ = Z n , in accord with the interpretation of L ωω /L in terms of order parameters for spontaneously broken symmetries. Next, we note that P/L ∼ = R ⊕ R/a, where a = (x 1 − 1, · · · , x D − 1). Hence for every i > 0 we have As elements x i − 1 form a regular sequence in R, this Ext vanishes for i = D and Ext D R (P/L, R) ∼ = R/a. Therefore the only nonzero Q i is Q D−1 ∼ = Z n . This is consistent with the interpretation of Q i in terms of i-dimensional excitations: the Ising model features domain walls, which are objects of spatial codimension 1. However, our formalism does not provide a systematic construction of this domain wall (Ising model is not a Lagrangian code). Let us also remark that we expect that there exists a generalization of braiding that allows to pair Q D−1 with L ωω /L. Physically such pairing should describe how the value of order parameter changes as the domain wall is crossed.

Z n toric code on a cylinder
Consider the 2D cylinder geometry Λ = Z L × Z. Thus R = Z n [x, y ± ]/(x L − 1). We let P = R 4 and L = im(σ), where Let us put W Since y − 1 is a regular element, it follows that 0 0 W x 0 T ∈ L ωω . Similar calculation shows that 0 W x 0 0 T ∈ L ωω . Classes of these two elements generate L ωω /L ∼ = Z n × Z n . One may check also that L ω = L ωω . Hence there exist n 2 superselection sectors containing a ground state and in each of these sectors the ground state is unique. This is different than for the toric code on a torus, for which there is only one superselection sector containing an n 2dimensional space of ground states. This illustrates the difference in physical interpretations of modules Z(C) and S(C).
Let us also mention that in the present example Q(C) ∼ = Z n × Z n , as on a plane (but not on a torus). Even though the code is effectively onedimensional (one direction being finite), this does not contradict Proposition 25 because Z(C) = 0.

Z p t plaquette model
Let n = p t , where p is a prime number and t a positive integer. We consider a Z p t version of Wen's plaquette model [17] on a plane. Thus we take P = R 2 and let L be the span of s = 1 − xy x − y T . L is freely generated by s, so there exists an element ϕ ∈ L * such that ϕ(s) = 1. Clearly (x − y)ϕ and (xy − 1)ϕ are representable by elements of P and we have There exists an abelian group isomorphism Q ∼ = Z n × Z n (as for the toric code), but in contrast to the case of toric code Q is acted upon nontrivially by translations. Hence this model is in a different SET phase (with translational symmetry) than the toric code. On the other hand, these models are wellknown to be equivalent if translational symmetry is ignored.
For a subgroup of Λ acting trivially on Q, we can take the subgroup of index 4 generated by x 2 , y 2 . With this choice, we found the followingČech cocycle ϕ representing the generator of Q (corresponding via the isomorphism (92) to the class of 1): Classes of cocycles ϕ and xϕ form a Z n basis ofČech cohomology.
Remark 51. Redefining s to 1 + xy x + y gives a second code, which is related to the one above by a local unitary transformation (which is y 2 -invariant but not y-invariant). Simple calculation gives Q ∼ = R/(x + y, xy + 1), so this code is in a different SET phase than the previous one.
We have an infinite free resolution · · · → R 4 τ − → R 4 τ − → R 4 τ − → R 4 σ − → P → P/L → 0 (100) from which one obtains as in the ordinary toric code. In spite of vanishing of higher Q i , there exists no finite free resolution -see characterization in Proposition 52 below.
We remark also that Ext i R (L, R) = 0 for i > 0. If n was prime, we would be able to deduce from this that L is a free module. In the present example, L is not even quasi-free. Indeed, if L was quasi-free, L/2L would be a free module over S = Z 2 [x ± , y ± ]. On the other hand, it is not difficult to check that Ext 1 S (L/2L, S) = 0. This motivates the following result.
Proposition 52. Let n = p t for a prime number p. An R-module has finite projective dimension if and only if it is free over Z n . If this condition is satisfied, there exists a free resolution of length not exceeding D.
Proof. =⇒ : A projective R-module P is a summand of a free R-module, which is clearly free over Z n . Thus P is also projective over Z n . Projective modules over Z n are free. Now let P • → M be a finite projective resolution of a module M. By the paragraph above, this is also a free resolution of M considered as a Z n module. Thus M has finite projective dimension over Z n . Such Z n -modules are free.
⇐= : Let M be free over Z n . We choose a Z p [Λ]-free resolution 0 → P D → · · · → P 1 of length D. This is possible by Hilbert's syzygy theorem. We will lift the resolution of M/pM to a resolution of M of the same length. Let K i = ker(∂ i ).
For the purpose of this proof it will be convenient to denote reduction of an element mod p by an overline. We have for some m 1 , . . . , m n ∈ M such that m i generate M/pM. Then by Nakayama, m i generate M. Define P 0 = R n and ∂ 0 : R n → M by By construction, ∂ 0 is surjective. Let K 0 = ker( ∂ 0 ). Reducing the short Here we used the simple fact that an R-module N is free over Z n if and only if Tor R 1 (N, R/(p)) = 0, which can be verified using the resolution Results in (105) imply that K 0 /p K 0 may be identified with K 0 and K 0 is free over Z n . Now replace M by K 0 and P 0 by P 1 and repeat. Proceeding like this inductively we find short exact sequences 0 → K D → P D → K D−1 → 0, . . . , such that each P i is free and K i /p K i ∼ = K i . In particular K D = 0 by Nakayama. Short sequences compose into a free resolution of M of length D: 0 → P D → · · · → P 0 → M → 0.
A Gorenstein rings Definition 53. Noetherian ring A is called a Gorenstein ring if its injective dimension (as a module over itself) is finite. If it is zero, i.e. A is an injective A-module, then A is called a QF 5 ring.
Let τ : N ⊗ A M → M ⊗ A N be the standard isomorphism. For brevity we denote induced maps ofČech complexes and inČech cohomology with the same symbol. Mimicking formulas in [20] we define products They satisfy the following identity: In this sense the cup product is graded commutative.
Remark 66. TheČech complex and the cup product depend on the ordering of elements t i . Howeover, cohomology (and the cup product in cohomology) do not. We refer for example to [Stacks,Tag 01FG] and discussion in [20].
and Hal Schenck, whose advice led us to consider local cohomology. We thank