ASYMPTOTICALLY GOOD HOMOLOGICAL ERROR CORRECTING CODES

Let be an abstract simplicial complex. We study classical homological error correcting codes associated to , which generalize the cycle codes of simple graphs. It is well-known that cycle codes of graphs do not yield asymptotically good families of codes. We show that asymptotically good families of codes do exist for homological codes associated to simplicial complexes of dimension at least 2. We also prove general bounds and formulas for (co-)cycle and (co-)boundary codes for arbitrary simplicial complexes over arbitrary fields.


Introduction
Fix a field (usually finite) K. Given an abstract simplicial complex , one can define the reduced chain complex of with coe cients in K, which naturally defines the cycles, boundaries and homology of .These are the classical homological codes, seemingly first studied by Salzer [10].In the case when is a one-dimensional simplicial complex, may be viewed as a simple graph.Since the Moore bound gives a logarithmic bound on the girth of a graph in terms of the number of edges and vertices, it follows that one cannot define asymptotically good families of codes from cycle codes of graphs.By applying recent work in [4] and [2], we show in Theorem 4.2 that one can define asymptotically good families of codes from cycle codes of simplicial complexes of dimension two or higher.
The paper is organized as follows: Section 2 gathers preliminary results, definitions and related work.Section 3 contains our results about arbitrary homological codes over arbitrary fields.In it we recover the parameters for the ith cycle and boundary codes (and their duals) of a simplex of arbitrary dimension.This was previously done in [10] and [13] over F 2 .Section 4 contains our main results on the existence of asymptotically good homological codes.

Preliminaries
2.1.Simplicial Complexes.Let be an abstract simplicial complex on vertex set [m] := {1, . . ., m}; that is, is a collection of subsets of [m], closed under taking subsets.Elements 2 are called faces.Maximal faces are called facets.We note that is determined by its facets.For 2 , we define the dimension of by setting dim( ) = | | 1.Then the 1 dimension of is dim( ) = max{dim( ) | 2 }.We denote by i the set of i-dimensional faces of , called the i-skeleton of , and call an element of i an i-face.Set f i ( ) to be the number of i-faces, that is, . We sometimes refer to 0-faces as vertices and 1-faces as edges.We say that an i-face 2 i has degree r if is contained in exactly r (i + 1)-faces of ; that is, deg( ) = {⌧ 2 i+1 : ⇢ ⌧ } .Finally we define the i-degree of to be deg ) is just the minimal degree of a vertex of the 1-skeleton of viewed as a simple graph.
Over any field K, we may define a chain complex (C • ( , K), @ • ) by setting C i ( , K) to be the K-vector space whose basis is identified with i and such that given 2 i , write = {j 0 , j 1 , . . ., j i } ✓ [m], where j 0 < • • • < j i , then where b j k denotes that j k has been removed.We extend this linearly to define a map @ i : Then we define the ith reduced simplicial homology of with coe cients in K as We define the co-chain complex of over K to be the vector space dual C • ( , K) = (C • ( , K)) ⇤ of the chain complex, with coboundary maps @ i = @ ⇤ i .We set Z i ( , K) = Ker(@ i+1 ) and B i ( , K) = Im(@ i ).Then the ith reduced simplicial cohomology of over K is Since Hom K ( , K) takes exacts sequences to exact sequences, there is a canonical isomorphism e H i ( , K) ⇠ = e H i ( , K).When the simplicial complex and the field K are clear from context, we omit them from the notation, e.g.writing e H i for e H i ( , K).Let S( ) denote the suspension of the simplicial complex ; that is, S( ) is the simplicial complex on vertex set 0 [ {a, b}, where a, b are two new vertices.For any facet 2 , we assert that [ {a} and [ {b} are facets of S( ).This uniquely determines S( ).The suspension can be viewed as the union of two cones of glued along their bases.A generator matrix G of a linear code C over K is a matrix whose rowspace is C. A parity check matrix H of C is a matrix whose null space is C.In other words x 2 C if and only if Hx T = 0.The dual code C ? of C is the code whose generator matrix is H. Thus G is a parity check matrix for C ? .We do not require the rows of G or H to be linearly independent.
We make use of the following well-known fact relating minimum distance of a code to its parity check matrix.One of the main challenges in classical error correcting code theory is to find codes with large minimum distance and dimension relative to their length.More precisely, we seek a family of asymptotically good codes.A family of codes where k i n i and d i n i define the information rate and relative minimum distance of C i , respectively.
Of particular interest are Low Density Parity Check (LDPC) codes.A linear code C (usually defined over F 2 ) is an LDPC code if C has a parity check matrix H with relatively few nonzero entries.If the Hamming weight (number of nonzero entries) in each row and column of H is constant, C is called a regular LDPC code.If we relax one of these conditions, C is called an irregular LDPC code.The cycle codes in this paper have parity check matrices with fixed column weight (since the image of the boundary of any i-face has weight i + 1), but only certain ones will have fixed row weight as well.

Homological Error Correcting Codes.
Let be an m-dimensional simplicial complex and let K be a field.For each 0  i  m, we define four potentially distinct linear codes.These codes will be the main object of study in this paper.The definitions parallel those in [10] and [13].We define the ith cycle code (respectively boundary code) as Z i ( , K) (resp.B i ( , K)).Similarly, we define the ith cocycle code (respectively coboundary code) as Z i ( , K) (resp.B i ( , K)).Note that all four codes have length f i as they are subvector spaces of C i or C ⇤ i .Moreover, by their definitions it is clear that Z i ( , K) = B i ( , K) ? and B i ( , K) = Z i ( , K) ? .In particular for all i we have, 2.4.Relation to Previous Work.The definition of LDPC codes originates in the thesis of Gallager [6], [5].Such codes have recently attracted more attention because of the good iterative decoding algorithms associated to them which approach the Shannon limit.Asympotically good codes can be shown to exist by pseudorandom methods and constructed algorithmically.(See e.g.[7]).Our Theorem 4.2 shows that they can be constructed as cycle codes of two-dimensional simplicial complexes.
The earliest references we can find to the definition of homological errorcorrecting codes of a simplicial complex are the papers by Salzer [10] and Thomeier [13], where the authors use the terms "topological codes" and "polyhedral codes," respectively.Both describe the general construction of cycle and boundary codes of a simplicial complex.Both authors then compute the parameters of the ith cycle codes for an m-simplex.We recover this as a special case of our more general formulas for the dimension and minimum distance.See Theorem 3.7.
In [9], Rytíř showed that any linear code over Q or F p can be realized as a truncated homological code of some two dimensional simplicial complex.Without truncation, there are linear codes which cannot be realized.Our results give both restrictions on the parameters of homological codes and existence results for asymptotically good homological codes.
When is a one-dimensional simplicial complex, we may view as a simple graph G = (V, E) with vertex set V = 0 and edge set E = 1 .In this case Z 1 ( , F 2 ) is called the cycle code of the graph G and has been wellstudied.See [14] for a concise survey.It is easy to see that if G = (V, E) is a graph, then its cycle code has parameters [n, k, d], where n = |E|, k = |E| |V | + 1 and d is the girth of G, that is, the minimum length of a cycle in G.The well-known Moore bound states that for an r-regular graph G, the girth of G is bounded above by a term logarithmic in r and |V |.A similar bound for non-regular graphs was given in [1].Thus if we have a family of graphs Therefore, it is impossible to construct a family of asymptotically good error correcting codes from graphs or one-dimensional simplicial complexes.Our Theorem 4.2 shows that it is possible to do so with two-dimensional simplicial complexes.
Finally we comment that a there is great interest in finding quantum error correcting codes, introduced in [11], with similar properties.A well-studied family are the CSS codes [3], [12].Some constructions of CSS codes, also called homological codes, are defined from graphs, simplicial or polyhedral complexes.In the quantum setting, the existence of asymptotically good codes is still an open question.We do not discuss quantum codes further in this paper and refer the interested reader to the survey [14] and the references therein.

Results on Arbitrary Homological Codes
In this section we collect general results which hold for each of the four types of homological codes for an arbitrary simplicial complex and an arbitrary field K.When clear from context, we suppress and K from the notation.
Theorem 3.1.Let be an m-dimensional simplicial complex, K a field and Proof.Z i is a sub-vector space of C i and dim By definition, the matrix H associated to @ i is a parity check matrix for Z i .Since two i-faces of can only share at most one (i 1)-face, any two columns of H can share at most one index where that entry is nonzero.Thus each set of i + 1 columns of @ i are linearly independent.By Proposition 2.1, d i + 2. For the computation of k, we proceed by induction on i.For i = 0, we have the short exact sequence for some p 2 N.For i 0, we have the short exact sequences Then by induction we have Let be a contractible simplicial complex and let K be a field.Then, The following corollary provides an explicit formula for computing the dimension of cycle codes of graphs discussed in Section 2.3.
Corollary 3.3.Let be a connected simplicial complex.Then, Proof.By Theorem 3.1, we have Since is connected, e H 0 = 0.Moreover, f 1 = 1 for any simplicial complex.The result follows.⇤ In general, as the following example shows, the minimum distance of Z i ( , K) can be strictly bigger than i + 2. When i = 1, d represents the girth of the 1-skeleton of .If K = F 2 , then the parity check matrix of Z 1 (P, F 2 ) is the incidence matrix of P , which is also the matrix associated to @ 1 (P, F 2 ).We index the rows by the vertices and the columns by the edges of P .
Theorem 3.6.Let be an m-dimensional simplicial complex, K a field and 0  i < m.
Proof.B i is a sub-vector space of C i and dim , the formula for k follows from Theorem 3.1.Since dim( ) i + 1, the image of @ i+1 is nonempty.Each (i + 1)-face has boundary with i + 2 distinct faces.Hence there is at least one vector in B i of weight exactly i + 2. So d i + 2. But B i ✓ Z i and the minimum distance of Z i was at least i + 2. Thus d = i + 2. ⇤ Corollary 3.7.Let be an m-simplex, K a field and i < m.
Proof.By Theorem 3.1, n = f i = m+1 i+1 .Since is contractable, e H i ( ) = 0 8i.Hence, Z i = B i 8i and d = i + 2 by Theorem 3.6.Finally, we have Note that the parameters do not depend on the field K.
Remark 3.8.The family of m-simplex codes described here are not asymptotically good according to Definition 2.3.Setting i = m 2, we obtain the following: Note that there is quadratic growth in n, but linear growth in k and d.Thus, A similar analysis can be carried out on the dual codes Z i ( , K) and B i ( , K).
In general, the minimum distance depends on the minimum degree of an iface in .
Theorem 3.9.Let be an m-dimensional simplicial complex, K a field and 0  i < m.
and the value of k follows from Theorem 3.6.Each column of the matrix associated to @ ⇤ i has at least deg(i, ) nonzero entries.Since no three distinct i-faces are contained in a single (i + 1)-face, every set of at least deg(i, ) columns of @ ⇤ i is linearly independent.Applying Proposition 2.1 yields that d deg(i, ) + 1. ⇤ A similar argument gives the parameters for the coboundary codes.The proof is analogous to the previous one so we omit the details.
Theorem 3.10.Let be an m-dimensional simplicial complex, K a field and 0  i  m.
When is just the m-simplex, each i-face is contained in exactly m i (i+1)dimensional faces.Applying the previous two theorems yields the following calculation, which together with Theorem 3.7, recovers calculations in [10] and [13].
Corollary 3.11.Let be an m-simplex, K a field and It is easy to check that none of these codes form a regular LDPC family of codes that are asymptotically good.

Asymptotically Good Homological Codes
The goal of this section is to prove the existence of asymptotically good cycle codes for specially chosen simplicial complexes with dim( ) 2. We rely on the following result of Dotterer, Guth, and Kahle derived from work of Aronshtam, Linial, Luczak and Meshulam [2].Theorem 4.1 ([4, Theorem 6.2(1)]).For any ↵ > 0, and for all n suciently large, there exist simplicial complexes with n vertices and with at least ↵n 2  faces, such that every cycle in H 2 ( , F 2 ) is supported on at least C ↵ n 2 faces (where C ↵ > 0 is a constant depending only on ↵).With this result and Theorem 3.1 in hand, we can now prove our main result about the existence of asymptotically good cycle codes.

Theorem 4.2.
There is a positive constant c 2 R such that, for all m 2 N su ciently large, there exists a 2-dimensional simplicial complex m on m vertices such that Z In particular, Z 2 ( m , F 2 ) give a family of asymptotically good codes over F 2 .
Proof.Let ↵ = 1 and apply Theorem 4.1.We get an infinite family of 2-dimensional simplicial complexes m for m 0 such that m has m vertices and at least m 2 2-faces and such that every cycle of H 2 ( m , F 2 ) = Z 2 ( m , F 2 ) is supported on at least cm 2 faces where c = C 1 above.First note that we may assume that f 2 ( m ) = m 2 since deleting faces can only increase the size of the support of a cycle in H 2 ( m , F 2 ).Moreover, we may assume that all m 2 edges are present since adding edges does not a↵ect Z 2 ( m , F 2 ).Thus by Theorem Since every cycle is supported on at least cm 2 faces, d cm 2 .Finally we have where the last inequality uses that e H 0 = 0, since m is connected, and that m 2. ⇤ The results in [2] and [4] rely on probabilistic methods to prove the existence of such simplicial complexes.It would be interesting to have explicit constructions of such simplicial complexes.
Finally we remark that the previous Theorem can be extended to higher dimension by taking suspensions.⇤ Note that since the dimension is preserved, we do not get asymptotically good families by taking repeated suspensions of a given simplicial complex.However, combining with Theorem 4.2 yields the following consequence.Finally we remark that since the parity check matrix of Z r (S r 2 ( m ), F 2 ) is the matrix associated to @ r (S r 2 ( m ), F 2 ), it has exactly r + 1 ones per column.So the corresponding family of codes is a (non-regular) LDPC family of codes.

Proposition 4 . 3 .
Let be an m-dimensional simplicial complex and let K be a field.If Z m ( , K) had parameters [n, k, d], then Z m+1 (S( ), K) has parameters [2n, k, 2d].Proof.For all i 1, there is a canonical isomorphism : e H i ( , K) ⇠ = e H i+1 (S( ), K), coming from the Mayer-Vietoris sequence induced by sending an i-face to the sum [ {a} + [ {b}, where a, b are the two additional vertices.In particular, Z m ( , K) = e H m ( , K) ⇠ = e H m+1 (S( ), K) = Z m+1 (S( ), K) and the dimensions of the 2 codes agree.If n is the length of Z m ( , K), then by construction the length of S( ) is f m+1 (S( )) = 2f m ( ) = 2n.Finally, it is clear that doubles the support of any cycle in Z m ( , K) and hence doubles the minimum weight of the associated code.

Corollary 4 . 4 .
For any integer r 2, there is a family of r-dimensional simplicial complexes { m } whose cycle codes Z r ( m , F 2 ) are asymptotically good.Proof.Fix r 2. Let S r ( ) denote the r-fold suspension of .Let { m } be the family of 2-dimensional simplicial complexes from Theorem 4.2.Then by Proposition 4.3, Z r (S r 2 ( m ), F 2 ) has parameters [2 r 2 m 2 , m 2 /2, c2 r 2 m 2 ], and hence forms an asymptotically good family.⇤ 2.2.Linear Codes.A linear code C of length n over a (usually finite) field K is a K-vector subspace of K n .Elements x = (x 1 , . . ., x n ) 2 C are called codewords.We say that C is an [n, k, d]-linear code if C has length n, the dimension dim K (C) is k, and the minimum Hamming distance of C is d.The minimum Hamming distance is the minimum over all pairs x, y 2 C of distinct codewords of the number of positions i such that x i 6 = y i .The weight w(x) of a codeword x 2 C is the number of positions i such that x i 6 = 0.The minimum distance of a linear code C is equal to the minimum weight of a nonzero codewords of C.
Proposition 2.1 ([8, Lemma 1.2.3]).Let H be a parity-check matrix for a linear code C over a field K. Then every set of d 1 columns of H are linearly independent if and only if C has minimum distance at least d.