# Moderate-length lifted quantum Tanner codes

Virgile Guémard, Gilles Zémor

► To cite this version:

Virgile Guémard, Gilles Zémor. Moderate-length lifted quantum Tanner codes. 2026. hal-05463467

HAL Id: hal-05463467

https://hal.science/hal-05463467v1

Preprint submitted on 17 Jan 2026

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons CC BY 4.0 - Attribution - International License
Moderate-length lifted quantum Tanner codes

Virgile Guemard¹,²      Gilles Zemor³,⁴

¹Aix Marseille Université, I2M, UMR 7373, 13453 Marseille, France

²Inria Paris, France

³Institut de Mathématiques de Bordeaux, UMR 5251

⁴Institut universitaire de France

November 17, 2025

Abstract

We introduce new families of quantum Tanner codes, a class of quantum codes that first appeared in the work of Leverrier and Zémor [LZ22]. These codes are built from two classical Tanner codes, for which the underlying graphs are extracted from coverings of 2D geometrical complexes, and the local linear codes are tensor-products of cyclic or double-circulant linear codes. The advantage of code lifting is that, for any lift of odd index $t$ of an [[*n*, *k*, *d*]]-code, we can adapt the study of the transfer homomorphism arising in cellular homology to describe symmetries of its logical operators and to establish that its dimension is lower bounded by *k*, and its distance is upper bounded by $t \cdot d$. Moreover, when the dimension of the lifted code is equal to *k*, its distance is lower bounded by *d*. These parameter bounds also apply to the previous methods of code lifting [Gue25]. Finally, We present several explicit families, and identify instances of moderate length quantum codes which are degenerate, have low check weight, and whose distance surpasses the square root of the code length. Among them, we report the existence of a [[96, 2, 12]]-code whose distance growth saturates our bound, and for which half of the checks are of weight 8 and the other half of weight 4.

# 1 Introduction

Quantum error correcting codes are believed to be unavoidable constituents of quantum computing architectures. Among them, quantum low-density parity-check (LDPC) codes are the leading candidates for physical implementations, because their low connectivity translates into a limitation of the error propagation between the hardware constituents. Significant progress has been made recently in the construction of good quantum LDPC codes [PK22a, LZ22, LH22], i.e. codes families with constant rate and relative distance in the asymptotic limit. These families can constitute a valuable source of inspiration to devise new types of codes of moderate length, following the effort in the design of near term implementable codes [PK22b, PSK22, BCG$^{+24}$].

In 2022, Leverrier and Zémor [LZ22] generalized the Sipser-Spielman version [SS96] of classical Tanner codes [Tan81] to devise a new family of asymptotically good CSS codes, which they call quantum Tanner codes. The methodology of [LZ22] relies on two components: a family of geometric complexes and a set of short linear codes. They instantiated it by considering a class of 2D square complexes known as left-right Cvayley complexes, first used in the coding context in [DEL$^{+21}$]. Given one of these complexes, its face-vertex incidence structure generates two graphs, each used to define a classical Tanner code. The local structure of the complex allows for classical tensor-product codes to be used as local codes, which is key to ensure commutation between stabilizers of the quantum code. Although this CSS construction is state-of-the-art in the asymptotic regime, short-length examples based on the same ideas have not yet been developed.

This article introduces new families of quantum Tanner codes, inspired by the Leverrier-Zémor construction [LZ22, LZ23]. The main novelty of our approach is that we start by defining a quantum Tanner code on a square complex, which is not necessarily a left-right Cayley complex or a constant-degree graph as in [MRL24]. Recall that exploring beyond constant degree Tanner graphs has been key to devise capacity-approaching classical LDPC codes [RSU01]. We then use our construction to build larger quantum Tanner codes based on the idea of code lifting.

Our approach to lift is also largely inspired by the method of [PK22a] to lift classical Tanner codes. Here, instead of using only a graph and a local code, we work with a 2-dimensional square complex over which two classical Tanner codes can be defined, forming an input CSS code. A covering of the square
complex then allows us to simultaneously define lifts of these two classical Tanner codes. The maximum
weight of the rows and columns of the lifted check matrices remains equal to that of the input code, making
it well-suited for LDPC constructions. A peculiarity of our lifting method is that the size of the overlapping
support of an X- and a Z-check can be reduced under lifting. This shows that this method is different from
the one defined in [Gue25] for which the size of the overlap is conserved under lifting.

The drawback of our method is that lifting a CSS code does not always yield a valid CSS code. To ensure that lifting yields a valid CSS code, the symmetries of the local codes must be compatible with the structure of the underlying 2D complex. The advantage is that for lifts of odd indices, we can adapt the study of the transfer homomorphism, arising in cellular homology [Hat02], to establish a lower bound on the dimension of lifted codes and to describe the structure of their logical operators. Namely, a lifted [[*n*, *k*, *d*]]-code of odd index *t* of a [[*n*, *k*, *d*]]-code, has *n* = *tn*, *k* ≥ *k* and *d* ≤ *td*. Moreover, when *k* = *k*, it follows that *d* ≥ *d*. The technics and parameter bounds developed here also apply to the code lifting method of [Gue25], based on coverings of the Tanner cone-complex.

We illustrate the lifting of quantum Tanner codes through explicit examples. In [Gue25], new code
constructions were introduced using certain 2D geometric complexes, namely square subdivisions of presen-
tation complexes of finitely presented groups; the CSS codes were built by interpreting the vertices, in the
subdivision of these complexes, as parity checks and qubits. Here, following [LZ22], we adopt a different
perspective and interpret the faces as qubits. The novelty of our method is to first construct short-length
quantum Tanner codes on these subdivided complexes by fixing a specific configuration of the local codes.
We then obtain the lifted Tanner code by generating coverings of these square complexes and lift the local
code configuration to the covering spaces. In certain cases, the effect of the local code is to suppress the
short codewords, causing the support of minimal codewords to spread out across the complex. In this way,
we are able to construct LDPC codes whose distance squared exceeds the blocklength.

It has proven challenging to determine analytically the parameters of our lifted Tanner codes. We therefore follow a numerical approach. For selected input quantum Tanner codes, we generate all possible lifts of index 1 to 30, producing codes of length less than 800 qubits. An upper bound for the distance is computed using GAP and the package QDistRnd [PSK22]. We report only the codes with the highest parameters and leave a more rigorous analysis for future work.

This article is organized as follows. In Section 2, we set the notation for graphs, square-complexes and covering maps. We also review classical Tanner codes and our preferred method for lifting them.

In Section 3, we present a method to lift a quantum Tanner code. The idea is a generalization of the lift of a classical Tanner code, where the central object is a covering of a square complex rather than a graph. We also extend the study of the transfer homomorphism from cellular homology to characterize the structure of any lifted codes of odd index.

Lastly, in Section 4, we introduce new explicit constructions of quantum Tanner codes. We then perform
an exhaustive numerical search for lifted codes and report specific instances with the highest distances.

2 Preliminaries

## 2.1 Graphs and square-complexes

In this work, crucial components of the linear and quantum code constructions are graphs and square
complexes. We therefore set some notations and state elementary facts about these objects, which will be
used throughout this article.

**Graphs.** We denote by $\mathcal{G} := (V, E)$ an undirected graph with set of vertices $V$ and edges $E$. An *edge* between two vertices $u$ and $v$ is an unordered pair $\{u, v\} = \{v, u\}$. In this work, graphs have no self-loops, i.e., edges of the form $\{u, u\}$, unless otherwise stated, but they can have multi-edges. A *directed edge* associated to $\{u, v\} \in E$ is an edge for which the order matters, written $e = [u, v]$ for an edge with initial vertex $u$ and terminal vertex $v$. The inverse of an edge is defined as $[u, v]^{-1} := [v, u]$. We denote by $E^*$ the set of oriented edges. Its cardinality is twice that of $E$. A path of length $t$ in the graph is a sequence of directed edges $e_1 \cdot e_2 \dots e_t$ such that the terminal vertex of $e_i$ is the initial vertex of $e_{i+1}$, for $i < t$. A path is closed if the terminal vertex of $e_t$ is the initial vertex of $e_1$. The edge-neighborhood of a vertex $v$, denoted $E(v)$, is the set of edges connected to $v$, and its cardinality is the *degree* of $v$. A *t-cycle* in $\mathcal{G}$ is a connected subgraph constituted of $t$ vertices (of degree 2 in the subgraph) and $t$ edges, forming a single cycle in $\mathcal{G}$.
**Square complexes.** A square complex is defined as a graph with a set of preferred subgraphs which are 4-cycles. We denote it $\mathcal{S} := (V, E, F)$, where $(V, E)$ is the underlying graph, also called its 1-skeleton, and $F$ is a set of 4-cycles. Notice that a square complex with an empty set of faces is also a graph. We say that $\mathcal{S}$ is a bipartite square complex if $(V, E)$ is a bipartite graph. A face $f \in F$ can be described by its corresponding 4-cycle, or by a closed path, such as $\alpha_f = [v_1, v_2].[v_2, v_3].[v_3, v_4].[v_4, v_1]$. The face-neighborhood of a vertex $v$ is the set of faces to which it is incident, and is denoted $F(v)$. Moreover, we say that two faces are adjacent in $\mathcal{S}$ if they share a common edge.

**Topological realization.** the topological realization of a square complex is a topological space divided into 2D and 1D subspaces. For us, it is most convenient to view the topological realization of a square complex as a regular 2D cell complex [Hat02] (or CW complex). These are topological spaces obtained by successively gluing cells, with gluing maps being homeomorphisms<fnref n="1" />. More precisely, in the topological realization of a square complex, for each combinatorial face, we glue an actual face, which is homeomorphic to a two-dimensional disk $D^2$, along the path formed by a 4-cycle. The resulting complex is then endowed with the topology of a CW complex.

Here, when we construct graphs and square complexes, we identify them with their topological realization. This is because we consider their *fundamental group*, defined in the next section, and perform geometrical operations on them. It is important to note that every abstract 2D complex defines a topological one and vice versa.

## 2.2 Fundamental group

For considerations related to covering spaces in Section 2.3, it will be important to introduce the fundamental group, a central object in algebraic topology [Hat02, LS01].

**Definition.** We first recall that given a topological space $K$ the fundamental group $\pi_1(K, v)$ is the group of homotopy classes of loops based at $v$, with group operation given by loop concatenation. For any other choice of basepoint $v'$, the groups $\pi_1(K, v)$ and $\pi_1(K, v')$ are isomorphic. In what follows, we will often omit the choice of basepoint and simply write $\pi_1(K)$. A space is called *simply connected* if its fundamental group is trivial.

**Combinatorial approach for square-complexes.** As previously mentioned, a square complex can be viewed as a 2D cell complex via its topological realization. In that setting, the fundamental group is defined as above. Moreover, there is an equivalent description of the fundamental group that solely relies on the combinatorial data of the square complex. This description, which we now review, is convenient for computations, and it is often used to determine presentations of the fundamental group.

Given a closed path $e_1 \cdot e_2 \dots e_n$ an elementary reduction consists of either removing two consecutive edges $e_i$ and $e_{i+1}$ if $e_{i+1} = e_i^{-1}$, or removing four consecutive edges if the corresponding sequence forms a face in the square complex $K$. The equivalence relation generated by such reductions is called *homotopy*; it is compatible with concatenation of closed path, where the concatenation of two paths $\alpha := e_1 \cdot e_2 \dots e_t$ and $\alpha' := e'_1 \cdot e'_2 \dots e'_{t'}$, such that the terminal vertex of $e_t$ is the initial vertex of $e'_1$, is the path $\alpha \cdot \alpha' := e_1 \cdot e_2 \dots e_t \cdot e'_1 \cdot e'_2 \dots e'_{t'}$. The fundamental group $\pi_1(S, v)$ is then isomorphic to the set of homotopy classes of closed paths based at $v$, with concatenation as the group operation. It can be shown that $\pi_1(S, v) \cong \pi_1(S, v')$ for any two vertices $v, v'$, if its 1-skeleton $S^1 := (V, E)$ is a connected graph, and thus we often write $\pi_1(S)$.

If a square complex $(V, E, F)$ has no faces, i.e. it is just the connected graph $(V, E)$, then the fundamental group of its topological realization is a free group of rank $|E| - |V| + 1$. For a general 2D complex having a graph $\mathcal{G}$ for 1-skeleton, the fundamental group is given by the quotient $\pi_1(\mathcal{G})/N$, where $N$ is the normal closure of the subgroup generated by elements corresponding to 4-cycles.

## 2.3 Covering maps

We now review some results about covering maps from [GT77, Hat02, LS01]. While some of them apply to topological spaces in general, we will only consider them in the context of graphs and square-complexes of finite degrees with a single connected component.

<footnote n="1">¹Examples of gluing maps that are not homeomorphisms: the map $\partial \Upsilon \to p$, mapping both end-points of an interval to the same point, yielding a 1D-sphere; the map $\partial D^2 \to p$, mapping the boundary of the disk, a circle, to a point, yielding a 2D-sphere.</footnote>
**Graph coverings.** Let $\mathcal{G}$ be a graph, that we identify with its topological realization. A map between graphs $p: \mathcal{G}' \to \mathcal{G}$ is a covering if and only if it is continuous, it maps interior of edges homeomorphically onto interior of edges, and every vertex of $\mathcal{G}'$ has a neighborhood on which the restriction of $p$ is a homeomorphism.

For graphs, we may prefer a combinatorial definition of covering. Let us now see the graphs above simply as sets of vertices and edges with no self-loops. Then, a graph covering is a surjective map $p: \mathcal{G}' \to \mathcal{G}$ that maps edges to edges and vertices to vertices and such that the restriction of $p$ to the edge neighborhood of every vertex is a bijection. It follows that a vertex $v$ in $\mathcal{G}'$ and its image $p(v)$ have the same degree. The cardinality of the inverse image of any vertex or edge is a constant called the *index* of the covering.

From [GT87], such a map can be given a topological realization, which is a continuous function from a topological realization of $\mathcal{G}'$ to a topological realization of $\mathcal{G}$ whose restriction to the interior of any edge of $\mathcal{G}'$ is a homeomorphism and is consistent with $p$. A map $p$ between graphs is a combinatorial covering if and only if a topological realization of $p$ is a covering in the usual sense.

**Permutation voltage.** We now summarize a construction for graph coverings that can generate all possible finite coverings, as shown in [GT77]. Let $r > 0$ be an integer and $S_r$ be the symmetric group on the set $[r] := \{0, \dots, r-1\}$. Given a graph $\mathcal{G} = (V, E)$, we first assign a permutation $\pi_e \in S_r$ to each oriented edge $e \in E^*$, with the constraint that $\pi_{e-1} = \pi_e^{-1}$. This step is called a *permutation voltage assignment*. We construct a graph $\tilde{\mathcal{G}}$, called a *lifted graph*, with set of vertices in bijection with $V \times [r]$ and set of edges in bijection with $E \times [r]$, where an element $c$ of $\tilde{\mathcal{G}}$, vertex or edge, is written $(c, i)$ for $i \in [r]$. An edge $(e, i)$ in the graph $\tilde{\mathcal{G}}$, where $e = [u, v]$, connects $(u, i)$ and $(v, \pi_e(i))$.

As proved in [GT77], given a *lifted graph* constructed as above, it is possible to define a *covering map* $p: \tilde{\mathcal{G}} \to \mathcal{G}$ acting on an element $(c, i)$, vertex or edge, by $p((c, i)) = c$. Conversely, for any $r$-sheeted graph covering $p: \mathcal{G}' \to \mathcal{G}$, there exists a permutation voltage assignment of $\mathcal{G}$ in $S_r$, such that the associated *lifted graph* is isomorphic to $\mathcal{G}'$. We indeed verify that all the conditions are verified, and in particular a vertex $(v, i)$ and its projection $v$ have the same degree. Moreover, an edge $\tilde{e} = [\tilde{u}, \tilde{v}]$ projects onto an edge $e = [p(\tilde{u}), p(\tilde{v})]$.

**Square complex coverings.** Given a square complex $\mathcal{S} = (V, E, F)$, an index-$r$ covering $\tilde{\mathcal{S}}$ is a graph covering $p: \tilde{\mathcal{G}} \to \mathcal{G}$ which does not break the faces. That is, if $\alpha$ is a 4-cycle in $\mathcal{G}$ describing a face of $F$, then $p^{-1}(\alpha)$ is a set of $r$ disjoint 4-cycles. The set of faces in the covering is in bijection with $F \times [r]$, and given a face $f \in F$ described by the path

$$e_1.e_2.e_3.e_4 = [v_1, v_2].[v_2, v_3].[v_3, v_4].[v_4, v_1],$$

then for all $i \in [r]$, the face labeled $(f, i)$ in $\tilde{\mathcal{S}}$ can be described by the following 4-cycle:

<figure><img src="image_2.png" /></figure>

in other words, for any 4-cycle described by a closed path $e_1.e_2.e_3.e_4$ corresponding to an element of $F$, the permutation $\pi_{e_4} \circ \pi_{e_3} \circ \pi_{e_2} \circ \pi_{e_1}$ is the identity. We can then define an index-$r$ covering map $p: \tilde{\mathcal{S}} \to \mathcal{S}$ acting on an element $(c, i)$ (vertex, edge or face) by $p((c, i)) = c$, and therefore $p$ maps faces to faces. The inverse image of any vertex, edge or face is a set of $r$ vertices, edges or faces.

**Deck transformations.** We now consider a square-complex $\mathcal{S}$, possibly with an empty set of faces, i.e. a graph. Given a covering $p: \tilde{\mathcal{S}} \to \mathcal{S}$, a *deck transformation*<fnref n="2" /> is an automorphism $\psi: \tilde{\mathcal{S}} \to \tilde{\mathcal{S}}$ such that $p \circ \psi = p$. The set of deck transformations, endowed with the operation of composition of maps, forms a group denoted deck($p$). It is called the *group of deck transformations* and acts on the left on $\tilde{\mathcal{S}}$. A Galois covering is a covering enjoying a left, free and transitive action of deck($p$) on the fiber. For any Galois covering, $p: \tilde{\mathcal{S}} \to \mathcal{S}$, it can be shown that deck($p$) \ $\tilde{\mathcal{S}} \cong \mathcal{S}$.

In the rest of this section, by a covering $p: \tilde{\mathcal{S}} \to \mathcal{S}$ we always mean a *finite connected* covering, i.e. one whose index is finite and for which $\tilde{\mathcal{S}}$ is also a connected complex. The following crucial results of this section apply in this context.

<footnote n="2">²This name suggests an analogy to the mixing of a deck of cards, which are called sheets in the context of covering spaces.</footnote>
**Classification of coverings.** The theory of connected covering maps over a complex depends on the structure of its fundamental group in the following way. For every index $r$ subgroup $H$ of the fundamental group $\pi_1(S)$ there exists an index $r$ covering $p: S_H \to S$, mapping the basepoint $\tilde{v}$ of $S_H$ to $v$, and inducing an injective homomorphism $p_\#: \pi_1(S_H, \tilde{v}) \to \pi_1(S, v)$, such that $p_\#\pi_1(S_H, \tilde{v}) = H$. A covering $p: S_H \to S$ is called Galois or normal when $H$ is a normal subgroup of $\pi_1(S, v)$. All the coverings that we will study in Section 4 are of this form. It can be shown that, for such a covering map, we have the isomorphism deck($p$) $\cong \pi_1(S, v)/H$. The most important result on coverings is the classification theorem known as the Galois correspondence, which we state in our restricted setting of finite index coverings of complexes with finitely many cells.<fnref n="3" />

**Theorem 2.1 (Galois correspondence).** For all $r \in \mathbb{N}$, there is a bijection between the set of basepoint-preserving isomorphism classes of index-$r$ connected covering spaces of a complex $S$ and the set of index-$r$ subgroups of $\pi_1(S)$. Given such a covering $p: \tilde{S} \to S$, it is obtained by associating the subgroup $H = p_\#\pi_1(\tilde{S})$ to the covering space $\tilde{S}$. The index of the associated covering is equal to the index $[\pi_1(S) : H]$.

This theorem motivates our exhaustive searches of all possible Galois coverings in Section 4.

## 2.4 Tanner codes and their lifts

In this section, we recall some definitions and set up notations related to linear codes. The central components of our quantum codes are classical Tanner codes. We review their construction and a method to lift them into larger codes.

**Linear codes.** We denote the parameters of a binary linear code $C \subseteq \mathbb{F}_2^n$ as $[n, k, d]$, where $n$ its the length, $k$ its dimension and $d$ its distance, defined as $d = \min_{c \in C \setminus \{0\}} |c|$. If $k=0$, our convention is to set $d = \infty$. In what follows, a linear code will be defined by the image of a linear map $g: \mathbb{F}_2^k \to \mathbb{F}_2^n$, or the kernel of a linear map, $h: \mathbb{F}_2^k \to \mathbb{F}_2^m$, respectively represented in a preferred basis $B$ by a generator matrix $G := \text{Mat}_B(g)$, and a parity-check matrix $H := \text{Mat}_B(h)$. Given $x \in \mathbb{F}_2^n$, the vector $s = Hx$ is called the syndrome of $x$. The generator matrix of $C$ is the parity-check matrix of its dual $C^\perp = \{x \in \mathbb{F}_2^n : \forall c \in C, \langle x, c \rangle = 0\}$. A code is called self-dual when $C^\perp = C$.

**Classical Tanner codes.** The central components of our quantum codes are classical Tanner codes, introduced in [Tan81], and made popular by Sipser and Spielman [SS96]. We first review their construction, and then we describe a natural method to lift them into larger Tanner codes.

Let $\mathcal{G} = (V, E)$ be a graph on $|E| = n$ edges. In the following, $\mathbb{F}_2E := \bigoplus_{e \in E} \mathbb{F}_2e$ denotes the space of formal linear combinations of elements of the set $E$, playing the role of basis vectors. Given a vertex, $v$, the space $\mathbb{F}_2E(v)$, is the restriction of $\mathbb{F}_2E$ to the edge neighborhood of $v$. We define a set of binary local codes $C_V := (C_v)_{v \in V}$ on the vertices of $\mathcal{G}$, where an element indexed by $v \in V$ is a code defined on the edge neighborhood of $v$, i.e. $C_v \subseteq \mathbb{F}_2E(v)$. For a vector $c \in \mathbb{F}_2E$, we denote by $c|_{E(v)}$ its restriction to the edge-neighborhood of $v$.

**Definition 2.2 (Classical Tanner code).** Let $\mathcal{G} = (V, E)$ be a graph and $C_V = (C_v)_{v \in V}$ be a set of binary local codes. We define the Tanner code associated to $\mathcal{G}$ and $C_V$ as

$$T(\mathcal{G}, C_V) := \{c \in \mathbb{F}_2E : c|_{E(v)} \in C_v \text{ for all } v \in V\}.$$

**Parity-check matrix.** A Tanner code can also be defined as the kernel of a parity-check matrix. Suppose that $C_v$ is the kernel of a linear map $h_v: \mathbb{F}_2E(v) \to \mathbb{F}_2^{r_v}$ and let $i_v: \mathbb{F}_2^{r_v} \to \bigoplus_{u \in V} \mathbb{F}_2^{r_u}$ be the canonical linear embedding map. The Tanner code $C = T(\mathcal{G}, C_V)$ is the kernel of the map $h: \mathbb{F}_2E \to \bigoplus_{u \in V} \mathbb{F}_2^{r_u}$ defined on an edge $e$ between vertices $v$ and $w$ by

$$h(e) = i_v \circ h_v(e) + i_w \circ h_w(e), \quad (1)$$

and extended by linearity over $\mathbb{F}_2E$. All vector spaces being given with a preferred basis, $h_v$ can be represented by a matrix $H_v$ of size $r_v \times |E(v)|$, and $h$ by a matrix $H$ of size $r \times n$, where $r = \sum_{v \in V} r_v$. Denoting $w, w_v$, the maximum row-weight of $H$ and $H_v$, respectively, and $q, q_v$ their column-weight, we have

$$w = \max_{v \in V} w_v, \quad q \le \max_{\{v,w\} \in E} q_v + q_w.$$

This justifies why this technique is particularly suitable for constructing LDPC codes.

<footnote n="3">³This theorem applies in a much broader context, but this is sufficient for our applications.</footnote>
## 2.5 Lift of Tanner codes

Linear code lifting is an operation of major interest to produce interesting LDPC codes [Tho03] in a wide range of block lengths. Recall that lifting amounts to constructing a covering of the Tanner graph representation of the code. In this work, we focus on lifts of Tanner codes. In that case, out of the many possible lifts, there exists a preferred choice that we simply refer to as the *lift of a Tanner code*, as we will not use other types of lifts. From now on, we consider a graph $\mathcal{G}$ that has no self-loops. Given a graph covering $p: \tilde{\mathcal{G}} \to \mathcal{G}$, where $\tilde{\mathcal{G}} = (\tilde{V}, \tilde{E})$, the linear extension $p_{\#}$ of $p$ on the set of edges induces an isomorphism$^4$

$$ \mathbb{F}_2 \tilde{E}(\tilde{v}) \stackrel{p_{\#}}{=} \mathbb{F}_2 E(v), $$

for any $\tilde{v} \in p^{-1}(v)$. By definition, $p_{\#}$ sends basis vectors to basis vectors, i.e. edges to edges.

**Definition 2.3 (Lift of Tanner code).** Let $C = T(\mathcal{G}, C_V)$ and $p: \tilde{\mathcal{G}} \to \mathcal{G}$ be a graph covering, with $\tilde{\mathcal{G}} = (\tilde{V}, \tilde{E})$. For each vertex $\tilde{v} \in \tilde{V}$, we associate the code $C_{\tilde{v}} \subseteq \mathbb{F}_2 E(\tilde{v})$, such that $C_{\tilde{v}} \stackrel{p_{\#}}{=} C_{p(\tilde{v})}$. The lifted Tanner code associated to $p$ is the code $\tilde{C} = T(\tilde{\mathcal{G}}, C_{\tilde{V}})$, where $C_{\tilde{V}} = (C_{\tilde{v}})_{\tilde{v} \in \tilde{V}}$. In other words,

$$ T(\tilde{\mathcal{G}}, C_{\tilde{V}}) = \{c \in \mathbb{F}_2 \tilde{E} : p_{\#}(c|_{\tilde{E}(\tilde{v})}) \in C_{p(\tilde{v})}, \text{ for all } \tilde{v} \in \tilde{V}\}. $$

**Parity-check matrix.** Suppose that for each $v \in V$, $C_v$ is the kernel of a map $h_v$ represented by a matrix $H_v$, as described after Equation (1). This induces a parity-check matrix $H$ of size $r \times n$ for the Tanner code $C$. In this context, by lifting we always mean that for any $\tilde{v} \in p^{-1}(v)$, we define the code $C_{\tilde{v}}$ as the kernel of a map $h_{\tilde{v}}$ represented by the matrix $H_{\tilde{v}} = H_v$. In this way, fixing a matrix representation $H$ induces a matrix representation $\tilde{H}$, the parity-check matrix of $\tilde{C}$, up to permutation of the rows. For a covering of index $t$, this matrix has size $tr \times tn$. Denoting $\tilde{w}, \tilde{q}$ as the maximum row and column-weight of $\tilde{H}$, we have

$$ \tilde{q} = q, \quad \tilde{w} = w. \tag{2} $$

This can also be deduced from the fact that the lift of a Tanner code is an example of lift of a classical code associated to a specific type of covering over the Tanner graph associated to $H$.

## 2.6 Local codes

Throughout this work, for an integer $\ell \ge 1$, we denote $[\ell] := \{0, \dots, \ell - 1\}$.

**Classical tensor-product codes.** The classical local codes that will constitute our Tanner codes are built as duals of tensor-product codes. The tensor-product of two linear codes, $C \subseteq \mathbb{F}_2^{\ell_C}$ and $D \subseteq \mathbb{F}_2^{\ell_D}$, is the linear code denoted

$$ \Pi = C \otimes D \subseteq \mathbb{F}_2^{\ell_C} \otimes \mathbb{F}_2^{\ell_D}. $$

The canonical bases of $\mathbb{F}_2^{\ell_C}$ and $\mathbb{F}_2^{\ell_D}$ are indexed by the elements of $[\ell_C]$ and $[\ell_D]$, respectively. These bases naturally induce the canonical product basis for $\mathbb{F}_2^{\ell_C} \otimes \mathbb{F}_2^{\ell_D}$, whose elements are indexed by $[\ell_C] \times [\ell_D]$. In this basis, the codewords of the product code can be seen as the $\ell_C \times \ell_D$ matrices all of whose rows and columns are, respectively, codewords of $C$ and $D$. We may describe a parity-check matrix of $\Pi$ as follows. Let $H_C$ and $H_D$ be parity-check matrices for $C$ and $D$, respectively. Then the codewords of $\Pi$ are the vectors $x \in \mathbb{F}_2^{\ell_C} \otimes \mathbb{F}_2^{\ell_D}$ satisfying both

$$ (H_C \otimes I)x = 0 \quad \text{and} \quad (I \otimes H_D)x = 0. $$

The first condition ensures that every row vector of $x$, seen as a $\ell_C \times \ell_D$ matrix, is in $C$, and the second that every column vector is in $D$. A parity-check matrix $H$ of $\Pi$ is hence given by vertically joining these two sets of equations:

$$ H = \begin{bmatrix} H_C \otimes I \\ I \otimes H_D \end{bmatrix}. $$

It follows that the dual of the tensor-product is

$$ \Pi^{\perp} = C^{\perp} \otimes \mathbb{F}_2^{\ell_D} + \mathbb{F}_2^{\ell_C} \otimes D^{\perp}. \tag{3} $$

<footnote>$^4$In the context of coverings of cell complexes, $p_{\#}$ acts on chains of $\mathbb{F}_2 \tilde{E}$ and $\mathbb{F}_2 \tilde{V}$ in the cellular chain complex and is a chain map.</footnote>
Indeed, the rows of a parity-check matrix generate the dual code, and the first and second sets of equations of H generate the first and second summands of Equation (3), respectively.

In the tensor codes considered later, one of the factors is a repetition code of length 2 and the other one is either a cyclic or a double-circulant code. We therefore recall some essential facts about these two types of codes, taken from [MS78].

**Cyclic codes.** A binary cyclic code $C \subseteq \mathbb{F}_2^\ell$ is a code that is stable under the action of the automorphism $\rho: \mathbb{F}_2^\ell \to \mathbb{F}_2^\ell, (c_0, \dots, c_{\ell-1}) \mapsto (c_{\ell-1}, c_0, \dots, c_{\ell-2})$.

A practical way to define a cyclic code is to identify $\mathbb{F}_2^\ell$ and the polynomial ring $R_\ell := \mathbb{F}_2[X]/(X^\ell - 1)$, using the $\mathbb{F}_2$-linear isomorphism

$$ \varphi: R_{\ell} \to \mathbb{F}_{2}^{\ell}, \quad g_0 + g_1 X + \dots + g_{\ell-1} X^{\ell-1} \mapsto (g_0, \dots, g_{\ell-1}). $$

In $R_\ell$, the transformation corresponding to the rotation $\rho$ is multiplication by $X$. A code $C \subseteq R_\ell$ is cyclic if it is stable under this operation, and by linearity it is an ideal of $R_\ell$. These ideals are in one-to-one correspondence with the divisors of $X^\ell - 1$. Given $g \in \mathbb{F}_2[X]$ such that $g | X^\ell - 1$, the code $\mathcal{C}_\ell(g)$ is defined as the code equal to the ideal generated by $g$, and $g$ is referred to as the *generating polynomial* of the code. It is well-known that $\mathcal{C}_\ell(g)$ has dimension $\ell - \deg(g)$.

The dual of a cyclic code is cyclic, and its generating polynomial can be obtained as follows. Given a polynomial $h \in R_\ell$, let $\bar{h} := X^{\deg h}h(1/X)$ denote the reciprocal polynomial of $h$. Over $\mathbb{F}_2$, $X^\ell - 1$ is equal to its reciprocal polynomial so, if $h | X^\ell - 1$, then $\bar{h} | X^\ell - 1$. Letting $h$ be the polynomial such that $gh = X^\ell - 1$, also called the check-polynomial, we have $\mathcal{C}_\ell(g)^\perp = \mathcal{C}_\ell(\bar{h})$.

Given any polynomial $f \in R_\ell$, we define $\mathcal{G}(f)$ as the circulant matrix whose first row is $\varphi(f)$. Note that $\mathcal{G} = \mathcal{G}(g)$ is a square generator matrix of the code. The row-weight of $\mathcal{G}$ is hence directly given by the weight of $g$, i.e. its number of non-zero coefficients.

**Double-circulant codes.** The second type of linear codes considered in the tensor-product are double-circulant codes. They form a subclass of quasi-cyclic codes, built from any polynomial $f \in R_\ell$. The double-circulant code $\mathcal{D}_{2\ell}(f) \subseteq \mathbb{F}_2^{2\ell}$ is defined as the image of the generator matrix

$$ G = [ \mathcal{G}(1) | \mathcal{G}(f) ], $$

where $\mathcal{G}(1)$ corresponds to the $\ell \times \ell$ identity matrix. In Section 4.3, the ambient space $\mathbb{F}_2^{2\ell}$ of a double-circulant code $\mathcal{D}_{2\ell}(f)$ is always understood to be given with the canonical basis indexed by the columns of the generating matrix in the above form. It is important to note that the code generated by $G$ is invariant under simultaneous cyclic permutation within the left and right blocks. That is, the code is stable under the automorphism

$$ \sigma: \left\{ \begin{array}{l} \mathbb{F}_2^{2\ell} \to \mathbb{F}_2^{2\ell} \\ (c_0, c_1, \dots, c_{2\ell-1}) \mapsto (c_{\ell-1}, c_0, \dots, c_{\ell-2}, c_{2\ell-1}, c_\ell, \dots, c_{2\ell-2}). \end{array} \right. $$

Hence, $\mathbb{Z}_\ell$ is a subgroup of the automorphism group Aut($\mathcal{D}_{2\ell}(f)$). The dual of $\mathcal{D}_{2\ell}(f)$ is generated by the matrix

$$ H = [ \mathcal{G}(\bar{f}) | \mathcal{G}(1) ], $$

and is also invariant under simultaneous cyclic permutations within the left and right blocks.

# 3 Quantum Tanner codes and their lifts

## 3.1 Quantum Tanner codes

**Quantum CSS codes.** CSS codes are instances of stabilizer quantum error correcting codes, which first appeared in the seminal work of Calderbank, Shor and Steane [CS96, Ste96a, Ste96b]. Let $C_X$ and $C_Z$ be two linear codes with parity-check matrices $H_X$ and $H_Z$, such that $C_X^\perp \subseteq C_Z$, referred to as the orthogonality condition. The CSS code $\text{CSS}(C_X, C_Z)$ is the subspace

$$ \text{Span} \left\{ \sum_{z \in C_Z^\perp} |x+z\rangle : x \in C_X \right\} $$
<figure><img src="image_3.png" /><figcaption>FIG. 1: Bipartite square complex $\mathcal{S} = (V, E, F)$ in which one set of vertices is denoted $V_X$ and the other set $V_Z$. They give rise to two diagonal graphs, $\mathcal{G}_X^{\square} = (V_X, F)$ represented in blue, and $\mathcal{G}_Z^{\square} = (V_Z, F)$ in red.</figcaption></figure>

<figure><img src="image_4.png" /><figcaption>FIG. 2: Subgraph of a bipartite square complex with a local product structure.</figcaption></figure>

of $(\mathbb{C}^2)^{\otimes n}$. Its parameters, denoted $[[n, k, d]]$, are its length $n$, dimension $k = \dim(C_X/C_Z^{\perp})$ and distance $d$. The latter is defined as $d := \min(d_X, d_Z)$, with

$$d_X = \min_{c \in C_Z \setminus C_X^{\perp}} |c|, \quad d_Z = \min_{c \in C_X \setminus C_Z^{\perp}} |c|.$$

The maximum row weight and column weight in the parity check matrix $H_X$, respectively $H_Z$, are denoted $w_X, q_X$, respectively $w_Z, q_Z$. We denote $W := \max(w_X, q_X, w_Z, q_Z)$. A family of codes is called *Low Density Parity Check (LDPC)* if $W$ is upper bounded by a constant. If $k = 0$, our convention is to set $d = \infty$.

The only CSS codes that we consider in this article are *quantum Tanner codes*, a class of codes introduced by Leverrier and Zémor [LZ22], in which $C_X, C_Z$ is a pair of classical Tanner codes.

**Square complexes and diagonal graphs.** A practical way to build two Tanner codes $C_X$ and $C_Z$ satisfying the orthogonality condition is to generate them simultaneously by considering two specific graphs embedded in a square complex. Let $\mathcal{S} := (V, E, F)$ be a bipartite square complex and denote the partition $V = V_X \sqcup V_Z$. As remarked in [LZ22], if we restrict the vertex set to $V_X$, each square face is now incident to only two vertices located at opposite corners. The set of squares $F$ can now be seen as a set of edges on $V_X$, and therefore it defines a graph that we denote by $\mathcal{G}_X^{\square} = (V_X, F)$ and call the *diagonal graph* on $V_X$. Similarly, restricting the vertex set to those of $V_Z$, we obtain the diagonal graph $\mathcal{G}_Z^{\square} = (V_Z, F)$. These graphs, illustrated in Figure 1, can then be treated as the graph components of two classical Tanner codes whose set of bits are identified with $F$, and as so we can identify the ambient space of these codes as $\mathbb{F}_2F$.

**Local product structure.** The idea behind quantum Tanner codes is to use a square complex endowed with a specific structure.

**Definition 3.1.** Let $\mathcal{S} = (V, E, F)$ be a square complex. We say that $\mathcal{S}$ has a *local product structure* if, for every vertex $v \in V$, there exist sets $A_v$ and $B_v$, and bijections $(\phi_v)_{v \in V}$ such that $\phi_v : F(v) \to A_v \times B_v$, where $F(v)$ is the face neighborhood of $v$. Moreover, for any pair of adjacent vertices $v$ and $v'$, either $A_v = A_{v'}$ or $B_v = B_{v'}$. In the former case, there are elements $b \in B_v$ and $b' \in B_{v'}$ such that $\phi_v^{-1}(A_v \times \{b\}) = \phi_{v'}^{-1}(A_{v'} \times \{b'\})$. In the latter case there are elements $a \in A_v$ and $a' \in A_{v'}$ such that $\phi_v^{-1}(\{a\} \times B_v) = \phi_{v'}^{-1}(\{a'\} \times B_{v'})$.

We say that a local product structure is *strict* if $\phi_v^{-1}(\{a\} \times \{b\}) = \phi_{v'}^{-1}(\{a\} \times \{b'\})$ for every $a \in A_v$ in the former case, and if $\phi_v^{-1}(\{a\} \times \{b\}) = \phi_{v'}^{-1}(\{a'\} \times \{b\})$ for every $b \in B_v$ in the latter case.

The local product structure of a square complex is illustrated in Figure 2. The left-right Cayley complex of $[DEL^{+21}]$ can be given a strict local product structure. This was exploited in the quantum Tanner code construction of [LZ22].
<figure><img src="image_5.png" /><figcaption>FIG. 3: Face neighborhood $F(v_x)$ and $F(v_z)$, identified with two product sets and represented as matrices. The gray column in the left array and in the right array corresponds to identical faces in the square complex. A X-check can be seen as a codeword of the product code $C \otimes C'$ in the left array, and a Z-check as a codeword of the product code $C^{\perp} \otimes C''^{\perp}$ in the right array. The restriction of the two codewords to the gray columns are orthogonal vectors, ensuring that the X-check and the Z-check commute.</figcaption></figure>

**Choice of local codes.** To fully define $C_X$ and $C_Z$, we must coherently assign local codes $C_{V_X}$ and $C_{V_Z}$ to the vertices of the graphs $\mathcal{G}_X^{\square}$ and $\mathcal{G}_Z^{\square}$, respectively. When $S$ has a local product structure, it is natural to choose the local codes to be classical tensor product codes. Here, for simplicity we detail the case where the local product structure is strict. However, we will later go beyond this constraint, which will require our local codes to have certain symmetries.

Given two adjacent vertices $v_x$ and $v_z$ in such a square complex, let us assume that $\phi_{v_x} : F(v_x) \to [\ell] \times [\ell']$ and $\phi_{v_z} : F(v_z) \to [\ell] \times [\ell'']$, where $\ell, \ell'$ and $\ell''$ are all positive integers. We can see these bijections as indexings of face neighborhoods. Suppose also that the intersection of their neighborhoods is of the form $[\ell] \times \{i\}$ according to the indexing of $F(v_x)$, and $[\ell] \times \{j\}$ for that of $F(v_z)$. We can extend $\phi_{v_x}$ by linearity into a map $\phi_{v_x} : \mathbb{F}_2 F(v_x) \to \mathbb{F}_2^\ell \otimes \mathbb{F}_2^{\ell'}$ mapping faces to canonical basis vectors. We consider local codewords of the product code $C \otimes C' \subseteq \mathbb{F}_2^\ell \otimes \mathbb{F}_2^{\ell'}$, where $C$ is a code of length $\ell$ and $C'$ is a code of length $\ell'$. This code can be represented as the set of binary $\ell \times \ell'$ matrices, all of whose rows and columns are elements of $C$ and $C'$, respectively. By extending $\phi_{v_z}$ by linearity into a map $\phi_{v_z} : \mathbb{F}_2 F(v_z) \to \mathbb{F}_2^\ell \otimes \mathbb{F}_2^{\ell''}$, we can also consider local codewords of the product code $C^{\perp} \otimes C''^{\perp}$ defined in $F(v_z)$, where $C$ is as previously, and $C''$ is a code of length $\ell''$. Codewords can be similarly represented in a $\ell \times \ell''$ matrix. When the local indexing of the faces is strict, the intersection $F(v_x) \cap F(v_z)$ is mapped by $\phi_{v_x}$ and $\phi_{v_z}$ to a column in each of the two matrices. This column supports codewords of $C$ in the first, and codewords of $C^{\perp}$ in the second, as shown in Figure 3. Since we chose a code and its dual, they overlap on an even number of positions in $\tilde{F} := F(v_x) \cap F(v_z)$. That is, given $c_x \in C \otimes C'$ and $c_z \in C^{\perp} \otimes C''^{\perp}$, we denote $\tilde{c}_x$ and $\tilde{c}_z$ the restrictions of $\phi_{v_x}^{-1}(c_x)$ and $\phi_{v_z}^{-1}(c_z)$ to $\mathbb{F}_2 \tilde{F}$, respectively. By our choice of local codes, we automatically have $\langle \tilde{c}_x, \tilde{c}_z \rangle = 0$. We can hence define the local codewords $\phi_{v_x}^{-1}(c_x)$ and $\phi_{v_z}^{-1}(c_z)$ as parity-check constraints associated with the code $C_{v_x}$ and $C_{v_z}$, respectively.

When making such a consistent choice of local product codes across the entire square complex, we obtain two Tanner codes

$$C_X = T(\mathcal{G}_X^{\square}, C_{V_X}), \quad C_Z = T(\mathcal{G}_Z^{\square}, C_{V_Z}),$$

such that $C_X^{\perp} \subseteq C_Z$. Such a pair of classical codes defines a quantum Tanner code denoted $T(S, C_{V_X}, C_{V_Z})$.

The procedure above is better carried out case by case, especially when the local product structure is not strict. In that case, the assignment of the local codes depends on the global structure of the square complex. We illustrate it on explicit examples in Section 4.

## 3.2 Lifting quantum Tanner codes

We now describe a lifting procedure for quantum Tanner codes which differs from that of [Gue25]. Our approach is an extension of the method applied in [PK22a] to design a family of Sipser-Spielman codes [SS96] with optimal parameters. Here, we use a covering of a bipartite square complex in order to create a covering for each of its two diagonal graphs.
<figure><img src="image_6.png" /><figcaption>FIG. 4: Face neighborhood of a vertex $v$ in the topological realization of a square complex. It is composed of four faces and its closure forms a subcomplex that is not simply connected: a cylinder.</figcaption></figure>

Suppose that CSS$(C_X, C_Z)$ is a quantum Tanner code, built over a bipartite square complex $S = (V = V_X \sqcup V_Z, E, F)$, with $C_X = T(\mathcal{G}_X^{\square}, C_{V_X})$ and $C_Z = T(\mathcal{G}_Z^{\square}, C_{V_Z})$. Given a covering map $p: \tilde{S} \to S$, the 1-skeleton of $\tilde{S} = (\tilde{V}, \tilde{E}, \tilde{F})$ is also bipartite with bipartition $\tilde{V} = \tilde{V}_X \sqcup \tilde{V}_Z$, where $\tilde{V}_X = p^{-1}(V_X)$ and $\tilde{V}_Z = p^{-1}(V_Z)$. We can hence consider the diagonal graphs $\tilde{\mathcal{G}}_X^{\square} = (\tilde{V}_X, \tilde{F})$ and $\tilde{\mathcal{G}}_Z^{\square} = (\tilde{V}_Z, \tilde{F})$.

Using the notation above, we have the following lemma.

**Lemma 3.2.** The covering map $p$ induces two covering maps $p_X: \tilde{\mathcal{G}}_X^{\square} \to \mathcal{G}_X^{\square}$ and $p_Z: \tilde{\mathcal{G}}_Z^{\square} \to \mathcal{G}_Z^{\square}$.

*Proof.* Suppose that $p: \tilde{S} \to S$ is an index-$t$ covering defined by an assignment of permutations to all the oriented edges of $S$, i.e $\pi_e \in S_t$ for $t > 0$ such that $\pi_{e^{-1}} = \pi_e^{-1}$. It is essential to note that $\tilde{V}_X = p^{-1}(V_X)$, $\tilde{V}_Z = p^{-1}(V_Z)$, and $\tilde{F} = p^{-1}(F)$, so that we have $t$ vertices or faces in $\tilde{\mathcal{G}}_X^{\square}$ projected by $p$ onto each vertex or face in $\mathcal{G}_X^{\square}$, and similarly for the diagonal graph on $V_Z$. We now need to show that these cells are assembled into coverings of the diagonal graphs.

Given a face $f \in F$ described by the closed path of oriented edges $e_1.e_2.e_3.e_4 = [v_1, v_2].[v_2, v_3].[v_3, v_4].[v_4, v_1]$, then for all $i \in [r]$, the face labeled $(f, i)$ in $\tilde{S}$ can be defined by the 4-cycle as described in Section 2.3. Therefore, if $e = [v_1, v_3]$ is an edge in $\tilde{\mathcal{G}}_X^{\square}$, then an edge $(e, i)$ in the covering $\tilde{\mathcal{G}}_X^{\square}$, projected onto $e$ by $p$, is given by $[(v_1, i), (v_3, \pi_{e_2} \circ \pi_{e_1}(i))]$. Let us assign the permutation $\pi_{e_2} \circ \pi_{e_1} \in S_t$ to $e$. We can similarly assign a composition of two permutations to each diagonal edge of $\tilde{\mathcal{G}}_X^{\square}$, according to the corresponding square in $S$. This defines a covering map $p_X: \tilde{\mathcal{G}}_X^{\square} \to \mathcal{G}_X^{\square}$. A similar procedure on $\tilde{\mathcal{G}}_Z^{\square}$ defines a covering map $p_Z: \tilde{\mathcal{G}}_Z^{\square} \to \mathcal{G}_Z^{\square}$. $\square$

We now have all the elements to define the lift of a quantum Tanner code. Notice that we can define two lifted classical Tanner codes from our square complex covering. Let $\tilde{C}_X = T(\tilde{\mathcal{G}}_X^{\square}, C_{\tilde{V}_X})$ be the lift of $C_X = T(\mathcal{G}_X^{\square}, C_{V_X})$ associated to $p_X$, and $\tilde{C}_Z = T(\tilde{\mathcal{G}}_Z^{\square}, C_{\tilde{V}_Z})$ be the lift of $C_Z = T(\mathcal{G}_Z^{\square}, C_{V_Z})$ associated to $p_Z$. The codes $\tilde{C}_X$ and $\tilde{C}_Z$ are subspaces of a common vector space $\mathbb{F}_2^{t \cdot n}$, where $t$ is the index of the cover, and they are candidates for defining a new CSS code. This is conditioned on the fact that $\tilde{C}_X$ and $\tilde{C}_Z$ must satisfy the orthogonality condition, namely $\tilde{C}_X^{\perp} \subseteq \tilde{C}_Z$. If that condition is satisfied, we define the lifted quantum Tanner code associated to $p$ as the code CSS$(\tilde{C}_X, \tilde{C}_Z)$.

This definition suggests that the lifted classical Tanner codes associated to $p_X$ and $p_Z$ do not necessarily satisfy the orthogonality condition. This depends on certain properties of the complex $S$, and on the choice of local codes. However, there are cases where they always do, as shown below.

**Proposition 3.3.** Let CSS$(C_X, C_Z)$ be a quantum Tanner code over a bipartite square complex $S$ for which the face neighborhood of every vertex has a simply connected closure$^5$, when seen as a cell complex. Then, the lifting procedure above, applied to every finite covering space $p: \tilde{S} \to S$, defines a valid CSS code.

*Proof.* The face neighborhood of every vertex having a simply connected closure, the support intersection between a check of $\tilde{C}_X$ and one of $\tilde{C}_Z$, associated to two incident vertices of $\tilde{S}$, is isomorphic to the support intersection of their projections in $S$ by the covering map. $\square$

In Figure 4, we show an example of a vertex in a square complex whose face neighborhood has a closure that is not simply connected. The condition of Proposition 3.3 is satisfied for a wide range of quantum Tanner codes, including those built from square complexes which are products of two graphs, or left-right Cayley complexes satisfying the total-no-conjugacy-class condition [DEL$^+$21]. It was shown in [Gue25], that the quadripartite version of the left-right Cayley-complex of [DEL$^+$21] can be obtained as a covering of a Cartesian product of graphs. This can be used to show that the quantum Tanner code family defined in [LZ22, LZ23] on such left-right Cayley-complex can be obtained by quantum Tanner code lifting, similarly to the approach of [Gue25, Section IV.A].

<footnote>$^5$The closure of a set of faces is the subcomplex composed of those faces along with the set of vertices and edges incident to them.</footnote>
Hereafter, we define quantum Tanner code families beyond the restriction on $\mathcal{S}$ stated in Proposition 3.3. It means that the number of qubits shared by a pair of $X$- and $Z$-checks in the base codes is not necessarily preserved under lifting. In particular, this shows that the lifting technique presented here is not equivalent to that of [Gue25], where lifting a code preserved the size of the overlap between any pairs of $X$- and $Z$-checks. In Section 4, we give explicit examples where this phenomenon occurs.

In the rest of this article, we focus on specific types of square complex coverings.

**Lemma 3.4.** Let $\mathcal{S}$ be a connected square complex for which every edge is incident to at least two faces, and let $p: \tilde{\mathcal{S}} \to \mathcal{S}$ be covering.

1. If $p$ is connected, then $p_X$ and $p_Z$ are also connected coverings.

2. If $p$ is a Galois covering with group of deck transformations $\Gamma$, then $p_X$ and $p_Z$ are also Galois with group of deck transformations $\Gamma$.

*Proof.* 1. If every edge in $\mathcal{S}$ is incident to at least two faces, then its diagonal graphs are also connected. Indeed, if two faces are adjacent in $\mathcal{S}$, then their induced edges in either of the two diagonal graphs must also be adjacent, and by repeating this argument for any two distant faces in $\mathcal{S}$ shows that any two edges in the diagonal graphs are connected by a path. This local property is preserved under taking a covering, showing that the diagonal graphs of $\tilde{\mathcal{S}}$ are also connected.

2. If $p: \tilde{\mathcal{S}} \to \mathcal{S}$ is a Galois covering, the diagonal graphs in $\tilde{\mathcal{S}}$ must be connected as a consequence of the first item. Moreover, $\tilde{\mathcal{G}}_X^\square$ inherits the free transitive action of the group deck($p$), since we can see $\tilde{\mathcal{G}}_X^\square$ as a subcomplex of $\tilde{\mathcal{S}}$ and $p_X$ as a restriction of $p$ to this subcomplex. Therefore, $p_X: \tilde{\mathcal{G}}_X^\square \to \mathcal{G}_X^\square$ is also a Galois covering with a group of deck transformations deck($p$), and similarly for $p_Z$. $\square$

In this work, we say that the lift of a CSS code is *Galois* if it is associated to a Galois covering.

An automorphism of a quantum code $C = \text{CSS}(C_X, C_Z)$ is defined as a permutation of the coordinates of the qubits which is equivalent to a permutation of the parity checks of both $H_X$ and $H_Z$. The set of automorphisms of $C$ forms the group Aut($C$). In the case of a lifted quantum Tanner code $\tilde{C}$, notice that the group of deck transformations of $p: \tilde{\mathcal{S}} \to \mathcal{S}$ is a symmetry group of the Tanner graph of the quantum code. It is also a symmetry group of each of the Tanner graphs associated to $\tilde{H}_X$ and $\tilde{H}_Z$. Thus, given an element$^6 \gamma \in \text{deck}(p)$, a vector $c \in \mathbb{F}_2\tilde{F}$ with syndrome $\tilde{H}_Xc = s_X$ and $\tilde{H}_Zc = s_Z$, there exist two permutations $\sigma_X$ and $\sigma_Z$ of the syndrome coordinates such that $\tilde{H}_X\gamma(c) = \sigma_X(s_X)$ and $\tilde{H}_Z\gamma(c) = \sigma_Z(s_Z)$. Therefore, deck($p$) is a subgroup of Aut($\tilde{C}$). We will use this feature in Section 3.3 to characterize the logical operators of certain lifted codes.

## 3.3 Parameter bounds from transfer homomorphism

For a lift defined from a Galois cover of odd index, we can use our information on the base code and leverage covering theory to lower bound the dimension of the lifted code and to characterize the structure of the logical operators. To this end, we use the language of chain complexes, and a specific chain map called the transfer homomorphism [Hat02] usually arising in the context of cellular homology, or more generally in group theory. Although the discussion and parameters bounds presented here holds for code lifting in general, such as the method of [Gue25], we focus on lifted classical and quantum Tanner codes. Our findings can be straightforwardly applied to the codes of Example 4.7, and show that logical operators are invariant under cyclic permutations. More formally, the aim of this section is to prove the following bounds on the parameters of a lifted code.

**Proposition 3.5.** Let $\tilde{C}$ be a quantum Tanner code obtained by a Galois t-lift, with $t$ odd, of a quantum Tanner code $C$ with parameters $[[n, k, d]]$. Then, the parameters $[[\tilde{n}, \tilde{k}, \tilde{d}]]$ of $\tilde{C}$ satisfy $\tilde{n} = tn, \tilde{k} \ge k$, and $\tilde{d} \le td$. Moreover, if $\tilde{k} = k$, then $\tilde{d} \ge d$.

**Remark 3.6.** The validity of Proposition 3.5 extends to the code lifting method of [Gue25], as made clear from the technics, which does not depend on the structural specificities of quantum Tanner codes. In particular, the result just relies on the lifted quantum code $\tilde{C}$ to be a chain complex of free modules over a group $\Gamma$ of order $t$.

<footnote>$^6$The action of $\gamma$ is naturally extended to the $\mathbb{F}_2$-space of the lifted codes.</footnote>
**Classical and quantum codes as chain complexes.** Recall that a classical code can be seen as the first homology group of the chain complex $C_1 \xrightarrow{h} C_0 := \mathbb{F}_2^n \xrightarrow{h} \mathbb{F}_2^m$. By abuse of language, we directly refer to the chain complex as a classical code. Moreover, given a CSS code $CSS(C_X, C_Z)$ the orthogonality between $C_X$ and $C_Z$ is equivalent to $H_X H_Z^T = 0$. This orthogonality condition is analogous to the composition property of two boundary maps in a chain complex. Since a CSS code is fully specified by two parity-check matrices, it can naturally be represented by a 3-term chain complex (or its dual),

$$C := \mathbb{F}_2^{m_Z} \xrightarrow{\partial_2 = h_Z^*} \mathbb{F}_2^n \xrightarrow{\partial_1 = h_X} \mathbb{F}_2^{m_X}. \qquad (4)$$

Here, $n$ in the number of physical qubits, while $m_X$ and $m_Z$ are the number of rows in $H_X$ and $H_Z$, respectively. Conversely, any CSS code defines a chain-complex of finite dimensional $\mathbb{F}_2$-vector-spaces, and we obtain a correspondence between these 2 sets of objects. It follows that the homology group $H_1(C)$ is equal to $C_X/C_Z^\perp$ and corresponds to logical $Z$-operators. Similarly, the co-homology group $H^1(C)$ is equal to $C_Z/C_X^\perp$ and corresponds to logical $X$-operators.

**Classical Tanner codes.** For linear codes, lifting may induce the presence of symmetries in $T(\tilde{\mathcal{G}}, C_{\tilde{V}})$. An automorphism of a binary linear code is a permutation of the coordinates mapping the code to itself. The set of automorphisms of a code $C$ forms a group denoted Aut($C$). This feature can be conveniently formulated in the language of chain complexes. Lifting a linear code with the method of [Gue25] yields a length 2-chain complex which is a free module over the group of deck transformations For lifts of classical Tanner codes, we similarly obtain the following.

**Lemma 3.7.** Let $C := C_1 \xrightarrow{h} C_0$ be a classical (Tanner) code and $\tilde{C}$ a connected Galois lift of $C$ with group of deck transformations $\Gamma$. Then, $\tilde{C}$ is a chain complex of free $\Gamma$-modules.

*Proof.* Given $C$ a Tanner code defined from a graph $\mathcal{G}$, let $p: \tilde{\mathcal{G}} \to \mathcal{G}$ be the Galois covering associated to lifted code $\tilde{C}$. Now, by fixing an arbitrary parity-check matrix $H := \text{Mat}(h)$, and given a row $r_i$ of $H$, i.e a check localized at a vertex $v$, we may associate $|\Gamma|$ lifted checks of the lifted parity-check $\tilde{H}$, one denoted $\tilde{r}_i$ for each vertex $\tilde{v} \in p^{-1}(v)$. We may refer to this set of elements as the fiber above $r_i$ and notice that $\Gamma$ acts fiberwise, freely and transitively. Moreover, given an edge $e = [v, v']$, and a lift $\tilde{e} = [\tilde{v}, \tilde{v}']$, we have that $\tilde{r}_i$ acts on the bit associated to $\tilde{e}$ if and only if $r_i$ acts on the bit associated to $r_i$. From this, it is clear that $\Gamma$ is a symmetry group of the Tanner graph associated to the lifted parity-check matrix $\tilde{H}$, and $\Gamma$ acts freely and transitively both on the fiber above the bit and check vertices. Therefore, by extending the action of $\Gamma$ by linearity over elements of $C_1$ and $C_0$, these spaces become free $\Gamma$-modules. In addition, given an element $\gamma \in \text{deck}(p)$ and a vector $x \in \mathbb{F}_2 \tilde{E}$ with syndrome $\tilde{H}x = s$, we have $\tilde{H}\gamma(x) = \gamma(s)$. In the language of chain complexes, it means that the action of $\Gamma$ on the constituent spaces commutes with boundary maps. $\square$

A lift induces a chain map, i.e. a map commuting with boundary operators, which we denote $\pi_\# : \tilde{C}_i \to C_i$. This map sends a basis vector $\tilde{x} \in \tilde{C}_i$ of the lifted code to its projection in the base code. To this map corresponds a cochain map between the dual chain complexes, $\pi_\# : C^i \to \tilde{C}^i$.

Notice also that there exists a chain map from our base code to the lifted code, denoted $\tau_\# : C_i \to \tilde{C}_i$, and sending a basis vector in $C_i$ to the sum of its $t$ distinct lifts in $\tilde{C}_i$, namely, for $x \in C_i$,

$$\tau_\#(x) = \sum_{\tilde{x} \in p^{-1}(x)} \tilde{x}.$$

The composition $\pi_\# \circ \tau_\#$ is multiplication by $t$, and since we consider $\mathbb{F}_2$-vector spaces, this map is the zero map when $t$ is even.

**Quantum Tanner codes.** We now show how to extend these maps to chain maps on a lifted quantum code. While here we focus on quantum Tanner code, it is valid also for the method of [Gue25]. This approach provides valuable information only when $t$ is odd, and can be applied to codes of Table 2.

We consider a quantum Tanner code $C = T(S, C_{V_X}, C_{V_Z})$, interpreted as a chain complex $C := C_2 \xrightarrow{h_Z} C_1 \xrightarrow{h_X} C_0$ defined by two classical Tanner codes $C_X = T(\mathcal{G}_X^\square, C_{V_X})$ and $C_Z^* = T(\mathcal{G}_Z^\square, C_{V_Z})$, seen as the chain complexes $C_X := C_1 \xrightarrow{h_X} C_0$ and $C_Z := C_2 \xrightarrow{h_Z^*} C_1$, respectively, with $\text{Mat}(h_X) = H_X$ and $\text{Mat}(h_Z^*) = H_Z^T$. Here, we interpret the cochain complex of the code $C_Z$ as a chain complex. By performing a lift of $C$ corresponding to an index-$t$ covering $p: \tilde{S} \to S$, we obtain $t$-lifts $\tilde{C}_X, \tilde{C}_Z$ for each of the constituent codes, with $\tilde{h}_X \circ \tilde{h}_Z^* = 0$. From the previous discussion on the structure of the constituent classical codes, we obtain the following.
**Lemma 3.8.** Let $\mathcal{C}$ be a quantum (Tanner) code and $\tilde{\mathcal{C}}$ a connected Galois lift of $\mathcal{C}$ with group of deck transformations $\Gamma$. Then, $\tilde{\mathcal{C}}$ is a chain complex of free $\Gamma$-modules.

*Proof.* From Lemma 3.7 and Section 3.2, when $p$ is Galois the spaces of $\tilde{\mathcal{C}}$ inherit the free and transitive action (on the fiber) of the group of deck transformations $\Gamma$. Since this action commutes with boundary map of $\tilde{\mathcal{C}}_X$ and $\tilde{\mathcal{C}}_Z$, it also commutes with the boundary maps of $\tilde{\mathcal{C}}$. $\square$

We also obtain two chain maps,

<figure><img src="image_7.png" /></figure>

Notice that these maps have the same action on the space $\tilde{\mathcal{C}}_1$. This also holds for the associated cochain map denoted $\pi^\#$. Similarly, from code lifting, we obtain two chain maps in the other direction, $\tau_\# : C_X \to \tilde{\mathcal{C}}_X$ and $\tau_\# : C_Z \to \tilde{\mathcal{C}}_Z$, having the same action on the space $C_1$. This also holds for the associated cochain map $\tau^\#$. Therefore, we obtain a chain map $\pi_\#$ from the lifted CSS code to the base CSS code, and a chain map $\tau_\#$ in the other direction,

<figure><img src="image_8.png" /></figure>

Furthermore, the composition of these two chain maps $\pi_\# \circ \tau_\#$ remains multiplication by $t$.

These maps and cochain maps induce homomorphisms at the level of homology and cohomology, which we denote

$$ \pi_* : H_i(\tilde{C}) \to H_i(C), \quad \tau_* : H_i(C) \to H_i(\tilde{C}), $$

$$ \pi^* : H^i(C) \to H^i(\tilde{C}), \quad \tau^* : H^i(\tilde{C}) \to H^i(C), $$

where all homology groups are understood to be with $\mathbb{F}_2$-coefficients. In the context of coverings of cell complexes, $\tau_*$ and $\tau^*$ are referred to as transfer homomorphisms. For an element $\gamma \in \Gamma$, we also denote by $\gamma^*$ the induced action of $\gamma$ on homology.

By studying the compositions $\pi^* \circ \tau^*$ and $\tau^* \circ \pi^*$, we may obtain information on the dimension of $\mathcal{C}$ and on the structure of its logical operators (homology classes). The following proposition is adapted from [Hat02, Proposition 3G.1], where it is stated for homology of cell complexes.

**Proposition 3.9.** Let $p : \tilde{S} \to S$ be a Galois covering of odd index $t$, with group of deck transformations denoted $\Gamma$. Then the map $\pi^* : H^i(C) \to H^i(\tilde{C})$ is injective. Its image is the subgroup $H^i(\tilde{C})^\Gamma$ consisting of classes $\alpha$, such that for $\gamma \in \Gamma$, $\gamma^*(\alpha) = \alpha$.

*Proof.* We have all the ingredients to study transfer homomorphisms: a covering $p$ inducing a free transitive (on the fiber) linear action of the group $\Gamma \cong \text{deck}(p)$ on the chain complex $\mathcal{C}$ associated with our code, and chain maps $\pi_\#$ and $\tau_\#$ with composition equal to multiplication by $t$. We may therefore revisit the proof of [Hat02, Proposition 3G.1] and verify that no additional conditions are needed.

To study the kernel of $\pi^*$, recall that the composition $\pi_\# \circ \tau_\#$, and hence also $\tau^\# \circ \pi^\#$, acts on a chain by multiplication by $t$. Therefore, $\tau^* \circ \pi^* : H^i(C) \to H^i(C)$ acts on a class by sending $\alpha \mapsto t\alpha$. Supposing $\pi^*(\alpha) = 0$, we have $\tau^* \circ \pi^*(\alpha) = t\alpha = 0$, and since we assume that $t$ is odd, we must have $\alpha = 0$. This shows that $\ker(\pi^*) = 0$ and that $\pi^*$ is injective.

To describe the image of $\pi^*$, we study the composition $\tau_\# \circ \pi_\#$, which sends a basis vector $\tilde{x}$ in the lifted code to the sum of all basis vectors in its orbit, namely $\tau_\# \circ \pi_\#(x) = \sum_{\gamma \in \Gamma} \gamma(x)$. The induced map on cohomology acts on a class $\alpha \in H^i(\tilde{C})$ as $\pi^* \circ \tau^*(\alpha) = \sum_{\gamma \in \Gamma} \gamma^*(\alpha)$. To prove that $H^i(\tilde{C})^\Gamma \subseteq \text{Im}(\pi^*)$, suppose $\alpha \in H^i(\tilde{C})^\Gamma$, namely that $\gamma^*(\alpha) = \alpha$. Then, $\pi^* \circ \tau^*(\alpha) = t\alpha = \alpha$ since $t$ is odd, and hence $\alpha \in \text{Im}(\pi^*)$. To prove that $\text{Im}(\pi^*) \subseteq H^i(\tilde{C})^\Gamma$, notice that $\pi_\# \circ \gamma = \pi_\#^*$ for all $\gamma \in \Gamma$. Therefore, for any class $\alpha \in H^i(C)$, we have that $\gamma^* \circ \pi^*(\alpha) = \pi^*(\alpha)$, and hence the class $\pi^*(\alpha)$ is invariant under the action of $\Gamma$. $\square$
We can repeat the same work to prove that the map $\tau_* : H_i(C) \to H_i(\tilde{C})$ is injective, with image equal to the subgroup of $H_i(\tilde{C})$ consisting of homology classes invariant under the action of $\Gamma$.

This proposition directly gives the bounds on the dimension and distance of lifted quantum code, as stated in Proposition 3.5.

**Proof of Proposition 3.5.** The lower bound on the dimension of $\tilde{C}$ follows directly from the injectivity of $\pi_*(\tilde{C})$ (and $\tau_*$). For the distance, consider a class $\alpha \in H_i(C)$ represented by a vector $x$ of Hamming weight $d$. Then, $\tau_*(x)$ is a vector of Hamming weight $td$, and this represents a non-trivial homology class $\tilde{\alpha} = \tau_*(\alpha)$ in $H_i(\tilde{C})$. Therefore, we conclude that the distance of the code $\tilde{C}$ is upper bounded by $td$. A similar upper bound is obtained by considering the image of a cohomology class under $\pi_*$. Finally, when $\tilde{k} = k$, the maps $\tau_*$ and $\pi^*$ become isomorphism, which means that a non-trivial (co)homology class $\tilde{\alpha}$ of $\tilde{C}$, represented by a vector $\tilde{x}$ of weight $w$, must be mapped onto a representative $\tilde{x}$ of a non-trivial (co)homology class $\alpha$ of $C$ under $\pi_*$ or $\tau^*$. By covering property, this mapping must decrease the weight, and therefore $\tilde{d} \ge d$. $\square$

# 4 New constructions of quantum Tanner codes

## 4.1 General procedure

In this section and the next one, we introduce new codes constructed by lifting short quantum Tanner codes. As described previously, to define a code, we need a square complex and a set of local codes associated with its vertices. The possibility of lifting a code is governed by the topology of its square complex, as stated in Theorem 2.1. For the purpose of generating families of lifted codes, we seek a square complex having a fundamental group with infinitely many finite-index subgroups. Our strategy is to select a group $G$ and construct a bipartite square complex $S$ whose fundamental group is $G$, and has a local product structure. In Section 4.2 and Section 4.3, we obtain $S$ by cellulating the presentation complex of a finitely-presented group, or a homotopy equivalent space.

**Presentation complex.** For completeness, we recall the construction of a presentation complex, as exposed in [Hat02]. Let $G = \langle S|R \rangle$ be a group presentation, where $S$ is the set of generators denoted $g_i$ and $R$ the set of relations denoted $r_j$. The group $G$ is the quotient of a free group $F_{|S|}$ on the generators of $S$ by the normal closure of the group generated by $R$. The relations of $R$ are the generators of the kernel of the map $F_{|S|} \to G$. For any group presentation, we can utilize this quotient structure to construct a two-dimensional cell complex $M_G$, called the *presentation complex* of $G$, having one 0-cell, exactly $|S|$, 1-cells and $|R|$ 2-cells, and such that $\pi_1(M_G) = G$. To construct it, we start from its 1-skeleton: a wedge of circles $\vee_i S_i^1$ attached to a vertex $v$, namely directed edges denoted $e_{g_i}$ with both endpoints attached to $v$. This gives a space with fundamental group $F_{|S|}$. A relation is a product of the generators and it specifies a closed path in the graph. For each relation $r_j$, we attach one 2-cell labeled $f_j$ along the closed path specified by $r_j$. For example, if $r_j = g_i g_j \dots g_k$, then we attach a face along the closed path $e_{g_i} \cdot e_{g_j} \dots e_{g_k}$. The effect is to trivialize the element of $F_{|S|}$ corresponding to $r_j$.

**Construction of square complexes.** We will focus on group presentations with two generators and one relation. As such, all of their associated presentation complexes have two edges and one face. It is, however, important to note that these 2D spaces are not square complexes in general. Nevertheless, given such a group, by subdividing the face of its presentation complex, or a homotopy equivalent space, into squares, we will be able to obtain a bipartite square complex $S = (V = V_X \sqcup V_Z, E, F)$ that has locally the structure of a product space.

**Base quantum Tanner code.** From the diagonal graphs of $S$, and a choice of local linear codes, it is possible to generate two Tanner codes $C_X = T(\mathcal{G}_X^{\square}, C_{V_X})$ and $C_Z = T(\mathcal{G}_Z^{\square}, C_{V_Z})$, satisfying $C_X^{\perp} \subseteq C_Z$. Their local codes must be chosen to have a symmetry group adapted to the periodic boundary conditions of $S$. These will be duals of tensor products of cyclic or double-circulant codes.

**Lifted codes.** Finally, we construct new square complexes by considering connected Galois covering spaces, such as $p: \tilde{S} \to S$. By restricting $p$ to $\mathcal{G}_X^{\square}$ and $\mathcal{G}_Z^{\square}$, we define the covering maps $p_X: \tilde{\mathcal{G}}_X^{\square} \to \mathcal{G}_X^{\square}$ and $p_Z: \tilde{\mathcal{G}}_Z^{\square} \to \mathcal{G}_Z^{\square}$, which are also connected and Galois, as discussed in Section 3.2. We then use the procedure of Section 3.2 to lift CSS$(C_X, C_Z)$ into CSS$(\tilde{C}_X, \tilde{C}_Z)$. Recall that for each lift, the group of deck transformations is a subgroup of the automorphism group of the corresponding code.
<figure><img src="image_9.png" /><figcaption>FIG. 5: Left: space homotopy equivalent to the presentation complex of L(3). Right: its subdivision into a square complex and the indexing of the faces by (i, j) ∈ [2] × [ℓ].</figcaption></figure>

<figure><img src="image_10.png" /><figcaption>FIG. 6: Diagonal graphs of the complex $S_ℓ$ corresponding to the group $L(ℓ)$ for $ℓ = 3$.</figcaption></figure>

**Numerical method.** To compute subgroups and quotient groups of $G$, needed for the Galois covering-space constructions, we use the GAP package LINS [GAP24]. As we are interested in short codes, we only compute normal finite-index subgroups up to index 30. To compute an upper bound on the distances $d_X$, $d_Z$ of CSS($\tilde{C}_X$, $\tilde{C}_Z$), we use the GAP package QDistRnd [PSK22].

## 4.2 Quantum Tanner code with cyclic local code

Our first example of quantum Tanner code is obtained by considering a space that is homotopy equivalent to the presentation complex of the group defined by

$$L(\ell) := \langle a, b | a^{\ell} b^{-\ell} \rangle,$$

combined with a set of local tensor-product codes of length $2\ell$, and their dual.

**Square complex.** A space with $L(\ell)$ for fundamental group can be constructed on the model of Figure 5, corresponding to the case $\ell = 3$. For higher values of $\ell$, we have $\ell$ identifications on the top and $\ell$ on the bottom. We build a square complex by subdividing each horizontal edge into two edges. We also connect the new vertices by additional vertical edges, which may be multi-edges, hence subdividing the unique face. This forms the bipartite square complex $S_\ell = (V = V_X \cup V_Z, E, F)$ which has $|V| = 4$, $|E| = 2\ell + 4$, and $|F| = 2\ell$. The subdivision for $\ell = 3$ is also shown in Figure 5, and the two diagonal graphs $G_X^{\square}$, $G_Z^{\square}$ are depicted in Figure 6. Notice that the 1-skeleton of this complex is a bipartite multi-graph, which is adequate to define a quantum Tanner code.

We first identify the faces of this complex by the product set $[2] \times [\ell]$, where the index $(i, j)$ corresponds to the face in the $(i+1) \cdot (j+1)$-th position, when counting from left to right in Figure 5. We can see that each vertex is incident to all the $2\ell$ faces. The associated $2\ell$ edges of the diagonal graphs $G_X^{\square}$ and $G_Z^{\square}$ inherit the indexing of the faces of $S_\ell$.

**Local codes.** To construct local codes, we first consider $\mathscr{C}_2(1+X)$, the repetition code of length 2, and $\mathscr{C}_\ell(g)$, the cyclic code of length $\ell$ generated by $g$. We define the tensor code $\Pi_X, \Pi_Z \subseteq \mathbb{F}_2^2 \otimes \mathbb{F}_2^\ell$, where

$$\Pi_X = \mathscr{C}_2(1+X) \otimes \mathscr{C}_\ell(g), \\ \Pi_Z = \mathscr{C}_2(1+X) \otimes \mathscr{C}_\ell(g)^\perp,$$

and $\mathbb{F}_2^2 \otimes \mathbb{F}_2^\ell$ is endowed with the canonical product basis indexed by $[2] \times [\ell]$, as described in Section 2.6. We will subsequently justify this particular choice of product codes.
**Definition of $C_X$.** We start by defining a classical Tanner code associated to $\mathcal{G}_X^\square$. The graph $\mathcal{G}_X^\square = (V_X, F)$ has only two vertices, $V_X = \{x_0, x_1\}$, as shown in Figure 5. The edge-neighborhood of these vertices, in the graph, is equal to their face-neighborhood in the complex $S$, and $F(x_0) = F(x_1) = F$.

We notice a natural local product structure relative to the vertices of $V_X$. These are defined by the bijections

$$ \phi_{x_0} : \left\{ \begin{array}{l} F \to [2] \times [\ell] \\ (i, j) \mapsto (i, i + j \bmod \ell), \end{array} \right. \quad \text{and} \quad \phi_{x_1} : \left\{ \begin{array}{l} F \to [2] \times [\ell] \\ (i, j) \mapsto (i, j). \end{array} \right. $$

Each local code associated to these vertices is set to be isomorphic to the dual of the tensor code $C_{x_t} \cong \Pi_X^\perp$, $t = 0, 1$. For $t = 0$, the isomorphism is induced by extending $\phi_{x_0}$ by linearity into $\phi_{x_0} : \mathbb{F}_2F \to \mathbb{F}_2^2 \otimes \mathbb{F}_2^\ell$ sending faces to the canonical basis vectors, where our choices of indexing for basis elements in the case of product codes and cyclic codes are described in Section 2.6. Similarly, we obtain the bijection $\phi_{x_1} : \mathbb{F}_2F \to \mathbb{F}_2^2 \otimes \mathbb{F}_2^\ell$. This completes the characterization of the local codes $C_{V_X} = (C_{x_i})_{i \in \{0, 1\}}$ and of the classical Tanner code $C_X := T(\mathcal{G}_X^\square, C_{V_X})$.

**Definition of $C_Z$.** The classical Tanner code associated to $\mathcal{G}_Z^\square$ is defined similarly. The graph $\mathcal{G}_Z^\square = (V_Z, F)$ also has two vertices, $V_Z = \{z_0, z_1\}$, which are incident to all the faces, i.e., $F(z_0) = F(z_1) = F$. Each local code associated with these vertices is set to be isomorphic to the dual of the same tensor code, $C_{z_t} \cong \Pi_Z^\perp$ where each isomorphism is induced by $\phi_{z_t} = \phi_{x_t}$, for $t = 0, 1$. This completes the characterization of $C_{V_Z} = (C_{z_i})_{i \in \{0, 1\}}$ and $C_Z := T(\mathcal{G}_Z^\square, C_{V_Z})$.

**Orthogonality condition.** Let us now explain in words why the code CSS($C_X, C_Z$) is well-defined. The first factor of each product code $\Pi_X, \Pi_Z$ is a repetition code to ensure that the checks associated with $x_0$ and $x_1$ commute with the checks associated with the vertices $z_0$ and $z_1$, respectively.

Moreover, due to the identification of the left and right edges of the presentation complex, our local product structure is not strict. To remedy this problem, the linear codes need to have a cyclic symmetry in order for a check associated with $x_0$ to commute with one associated with $z_1$. More precisely, with our choice of indexing, a codeword $c_x = (1, 1) \otimes c$, representing a X-check, and a codeword $c_z = (1, 1) \otimes c'$, representing a Z-check, are orthogonal to each other if

$$ \langle c, c' \rangle + \langle c, \rho(c') \rangle = 0, $$

where the rotation map $\rho$ is defined in Section 2.6. This can be written as $\langle c, c' + \rho(c') \rangle = 0$, which is automatically satisfied if the second factor of $\Pi_X$ and $\Pi_Z$ are a cyclic code and its dual, respectively. Overall, these conditions ensure that $C_X^\perp \subseteq C_Z$.

**Parity-check matrices.** Another way to describe $C_X$ and $C_Z$ is by the kernels of parity-check matrices $H_X$ and $H_Z$, as explained in Section 2.4. We denote $h$ the check polynomial of $\mathcal{C}_\ell(g)$. In a certain basis, the parity-check matrix can be written

$$ H_X = \left[ \begin{array}{c|c} \mathcal{G}(Xg(X)) & \mathcal{G}(g(X)) \\ \hline \mathcal{G}(g(X)) & \mathcal{G}(g(X)) \end{array} \right], \quad H_Z = \left[ \begin{array}{c|c} \mathcal{G}(\bar{h}(X)) & \mathcal{G}(\bar{h}(X)) \\ \hline \mathcal{G}(Xh(X)) & \mathcal{G}(h(X)) \end{array} \right]. $$

It is straightforward to verify that $H_X \cdot H_Z^T = 0$, using that $\mathcal{G}(Xg(X))$ is a cyclic permutation of $\mathcal{G}(g(X))$, and that $\mathcal{G}(g(X))\mathcal{G}(\bar{h}(X))^T = 0$.

**Code lifting.** Now that we have described quantum Tanner codes constructed on the square complex $S_\ell$, we can consider their lifts, as given in Section 3.2. Our first objective is to prove that our construction behaves well under lifting.

**Proposition 4.1.** Let $p : \tilde{S}_\ell \to S_\ell$ be a covering map and $\tilde{C}_X = T(\tilde{\mathcal{G}}_X^\square, C_{\tilde{V}_X})$, $\tilde{C}_Z = T(\tilde{\mathcal{G}}_Z^\square, C_{\tilde{V}_Z})$, the lifted classical Tanner codes associated to $p$. Then $\tilde{C}_X^\perp \subseteq \tilde{C}_Z$.

*Proof.* Our objective is to determine the intersection of the face neighborhood $F(\tilde{x}_s) \cap F(\tilde{z}_t)$, for any pair of vertices $\tilde{x}_s \in p^{-1}(x_s)$ and $\tilde{z}_t \in p^{-1}(z_t)$, $s, t \in \{0, 1\}$, and show that the support intersection of any X- and Z-checks associated with these vertices is of even size. By symmetry of the code structure, it is sufficient to verify this condition for pairs $(\tilde{x}_0, \tilde{z}_0)$ and $(\tilde{x}_0, \tilde{z}_1)$ in $\tilde{S}_\ell$.

It is clear that any adjacent vertices $\tilde{x}_0, \tilde{z}_0$ share at least 2 faces, which are attached to an edge $\tilde{e} = \{\tilde{x}_0, \tilde{z}_0\}$, drawn vertically on Figure 5. Since an X-check is a codeword of the product code $\Pi_X$, if it acts
<table><caption>Table 1: Parameters of selected lifted quantum Tanner codes built from the space of Figure 5, whose homotopy group is isomorphic to L(ℓ). Different groups in a single entry of the 4th column correspond to different lifted codes with the same parameters. Here, W denotes the maximum row or column-weight of the parity-check matrices. The value of d is an upper bound found with the GAP package QDistRnd [PSK22], and in all these cases $d_X = d_Z$. The specific local codes involved in these constructions are described in Examples 4.2 and 4.3.</caption><thead><tr><th>ℓ</th><th>W</th><th>Lift index</th><th>deck(p)</th><th>[[n, k, d]]</th><th>d<sup>2</sup>/n</th></tr></thead><tbody><tr><td rowspan="2">10</td><td rowspan="2">4</td><td>1</td><td>1</td><td>[[20, 2, 2]]</td><td>0.2</td></tr><tr><td>20</td><td>D<sub>20</sub>, Z<sub>5</sub> &times; Z<sub>4</sub></td><td>[[400, 2, 20]]</td><td>1</td></tr><tr><td rowspan="5">14</td><td rowspan="5">12</td><td>1</td><td>1</td><td>[[28, 2, 6]]</td><td>1.25</td></tr><tr><td>4</td><td>Z<sub>2</sub> &times; Z<sub>2</sub>, Z<sub>4</sub></td><td>[[112, 2, 12]]</td><td>1.25</td></tr><tr><td>7</td><td>Z<sub>7</sub></td><td>[[196, 2, 18]]</td><td>1.65</td></tr><tr><td>16</td><td>Z<sub>4</sub> &times; Z<sub>4</sub>, Z<sub>8</sub> &times; Z<sub>2</sub>, Q<sub>16</sub></td><td>[[448, 2, 24]]</td><td>1.25</td></tr><tr><td>28</td><td>Z<sub>28</sub></td><td>[[784, 2, 36]]</td><td>1.65</td></tr></tbody></table>

on the qubit associated to one of the two faces, then it must also act on the other, and similarly for a Z-check. Therefore, the support of an X- and Z-check associated with the vertices $\tilde{x}_0$ and $\tilde{z}_0$, respectively, must intersect on an even number of qubits.

A pair of adjacent vertices of the form $\tilde{x}_0, \tilde{z}_1$ are connected by an edge incident to $ℓ$ faces in $\tilde{S}_ℓ$. The restriction of the support vector of an X-check associated with $\tilde{x}_0$ on these faces is a codeword of $\mathcal{C}_ℓ(g)$, while that of a Z-check associated $\tilde{z}_1$ is a codeword of $\mathcal{C}_ℓ(g)^\perp$. These vectors being orthogonal, their support intersection is even. □

To illustrate this construction, we instantiate the case $ℓ = 10$ and $ℓ = 14$ in the examples below, and we summarize the parameters of selected lifted codes in Table 1.

**Example 4.2.** The instances for $ℓ = 10$ in Table 1 are obtained for a cyclic code $\mathcal{C}_ℓ(g)$ with generating polynomial $g(X) = 1 + X^5$, and check polynomial $h(X) = g(X)$. Used as a local code, this produces Tanner codes with check-weight 4. As in the Tanner version of the toric code, they could be seen as rotated versions of certain topological codes.

**Example 4.3.** The instances for $ℓ = 14$ in Table 1, are obtained by using the shortest example of non-trivial cyclic self-dual binary code [ST83]. This has parameters [14, 7, 4], and is generated by the polynomial

$$g(X) = (X + 1)(X^3 + X + 1)^2 = 1 + X + X^2 + X^3 + X^6 + X^7.$$

The generator matrix associated to $g$ has row-weight 6, but by elementary operations, we can turn it into a full-rank generator matrix with 6 rows of weight 4, and one row of weight 6. This means that for the associated quantum Tanner code and its lifts, one-seventh of the checks are of weight 12 and the others are of weight 8. We emphasize that the last four lines of Table 1 represent LDPC codes with distance $d > \sqrt{n}$.

**Remark 4.4.** In the base code, an X- and a Z-check overlap on all the qubits, while in the lifted code, their overlap must be reduced, otherwise the square complex would not remain connected. This shows that these codes, which do not satisfy the assumption of Proposition 3.3, constitute examples of lifts beyond the technique of [Gue25], where lifting a code preserved the size of the overlap between any pair of X- and Z-checks.

## 4.3 Quantum Tanner code with double-circulant local code

Our second construction is based on the presentation complex $M_ℓ$ of the Baumslag-Solitar group defined as

$$\mathrm{BS}(\ell, \ell) = \langle a, b | ab^{\ell}a^{-1}b^{-\ell} \rangle,$$

where $ℓ \in \mathbb{N}$, combined with a set of local tensor-product codes.

**Square complex.** The presentation complex of $\mathrm{BS}(ℓ)$ is constructed on the model of Figure 5, which is for $ℓ = 3$. For higher values of $ℓ$, we identify $ℓ$ segments along the top and $ℓ$ along the bottom. The presentation complex always has two directed edges, $e_a$ and $e_b$, associated with the generators $a$ and $b$ of the group presentation, respectively. It is modified into a bipartite square complex by subdividing the unique face into two rows of $4ℓ$ square faces. This process also subdivides the horizontal edge $e_b$ into four
<figure><img src="image_11.png" /><figcaption>FIG. 7: Left: presentation complex $M_\ell$ of $\text{BS}(\ell, \ell)$ for $\ell = 3$. Right: its subdivision into a bipartite square complex $S_3$, and the indexing of the faces by $(i, j, \kappa) \in [4] \times [\ell] \times [2]$.</figcaption></figure>

<figure><img src="image_12.png" /><figcaption>FIG. 8: Diagonal graphs of the complex $S_\ell$ corresponding to the group $\text{BS}(\ell)$ for $\ell = 3$.</figcaption></figure>

edges (indexed by [4]), and the vertical edge $e_a$ into two edges (indexed by [2]). This also adds new new horizontal and vertical edges. This forms the bipartite square complex $S_\ell := (V = V_X \sqcup V_Z, E, F)$ having $|V| = 4\ell + 4$, $|E| = 8\ell + 4$, and $|F| = 8\ell$. Each new vertex of the subdivided edge $e_b$ is incident to $4\ell$ faces, and each vertex along the middle cycle of edges is incident to 4 faces. The two diagonal graphs $G_X^{\square}$ and $G_Z^{\square}$ of $S_\ell$ are depicted in Figure 6

We identify the faces of this complex with elements of the product set $[4] \times [\ell] \times [2]$, where $(i, j, \kappa)$ represents the face in the upper row if $\kappa = 0$ and in the upper row if $\kappa = 1$, placed in the $(i+1) \cdot (j+1)$-th position when counting from left to right in Figure 7. The face $(i, j, \kappa)$ is therefore incident to the edge indexed $i$ in the subdivision of $e_b$. The $8\ell$ edges of the diagonal graphs $G_X^{\square}$ and $G_Z^{\square}$ inherit the indexing of the faces of $S_\ell$.

**Local codes.** To construct the local codes, we consider $\mathscr{C}_2(1+X)$, the repetition code of length 2, and the double-circulant code $\mathscr{D}_{2\ell}(f)$, with polynomial $f \in R_\ell$. We define the tensor codes $\Pi_X, \Pi_Z \subseteq \mathbb{F}_2^2 \otimes \mathbb{F}_2^{2\ell}$, where

$$ \Pi_X = \mathscr{C}_2(1+X) \otimes \mathscr{D}_{2\ell}(f) \\ \Pi_Z = \mathscr{C}_2(1+X) \otimes \mathscr{D}_{2\ell}(f)^{\perp}. $$

Recall that $\mathbb{F}_2^2 \otimes \mathbb{F}_2^{2\ell}$ is endowed with the product basis indexed by the set $[2] \times [2\ell]$ as described in Section 2.6. We will subsequently justify why this particular choice of product codes ensures orthogonality of $X$- and $Z$-checks.

**Definition of $C_X$.** We first define a classical Tanner code on $G_X^{\square} = (V_X, F)$, where $V_X = (x_i)_{i \in [2\ell+2]}$. This graph has two-vertices of degree $4\ell$, labeled $x_0$ and $x_1$, which result from subdividing the edge $e_b$. Their edge neighborhood in $G_X^{\square}$ is equal to their face neighborhood in $S_\ell$, and they satisfy $F(x_0) \cap F(x_1) = \emptyset$, $F(x_0) \cup F(x_1) = F$.

We notice a natural local product structure relative to the vertices of $V_X$. These are defined by the bijections

$$ \phi_{x_0} : \left\{ \begin{array}{l} F(x_0) \to [2] \times [2\ell] \\ (0, j, \kappa) \mapsto (0, \kappa\ell + j) \\ (3, j, \kappa) \mapsto (1, \kappa\ell + (j + 1 \mod \ell)) \end{array} \right\} \quad \text{and} \quad \phi_{x_1} : \left\{ \begin{array}{l} F \to [2] \times [\ell] \\ (i, j, \kappa) \mapsto (i \mod 2, \kappa\ell + j). \end{array} \right. $$

Each local code associated with these vertices is set to be isomorphic to the dual of the tensor code $C_{x_t} \cong \Pi_X^{\perp}$, where the isomorphism is obtained by extending $\phi_{x_t}$ by linearity into $\phi_{x_t} : \mathbb{F}_2 F(x_t) \to \mathbb{F}_2^2 \otimes \mathbb{F}_2^{2\ell}$ for $t = 0, 1$, sending each face to a canonical basis vectors.
The graph $\mathcal{G}_X^{\square}$ also has $2\ell$ vertices of degree 4, labeled $x_t$, $t = 2, \dots, 2\ell + 1$. They belong to the central horizontal cycle of edges, as shown in Figure 7. For all of them, we set $C_{x_t}$ to be the parity code of length 4, i.e. the single parity check assigned to vertex $x_t$ has full support over its face neighborhood $F(x_t)$ in $S_\ell$. This completes the characterization of $C_{V_X} = (C_{x_i})_{i \in [2\ell+1]}$ of the classical Tanner code $C_X := T(\mathcal{G}_X^{\square}, C_{V_X})$.

**Definition of $C_Z$.** The classical Tanner code associated to $\mathcal{G}_Z^{\square}$ is defined similarly. The graph $\mathcal{G}_Z^{\square} = (V_Z, F)$, where $V_Z = \{z_i, i \in [2\ell + 2]\}$, has two vertices of degree $4\ell$ labeled $z_0$ and $z_1$. They satisfy $F(z_0) \cap F(z_1) = \emptyset$, $F(z_0) \cup F(z_1) = F$.

We notice again a natural local product structure relative to the vertices of $V_Z$, that is defined by the bijections

$$ \phi_{z_t} : \begin{cases} F(z_t) & \to [2] \times [2\ell] \\ (i, j, \kappa) & \mapsto (i \bmod 2, \kappa\ell + j), \end{cases} $$

for $t = 0, 1$. For each of these vertices, we define a local code $C_{z_t} \cong \Pi_Z^\perp$, where this isomorphism is obtained by extending $\phi_{z_t}$ into a map $\phi_{z_t} : \mathbb{F}_2 F(z_t) \to \mathbb{F}_2^2 \otimes \mathbb{F}_2^{2\ell}$. The graph $\mathcal{G}_Z^{\square}$ has also $2\ell$ vertices of degree 4, labeled $z_t$, $t = 2, \dots, 2\ell + 1$. They belong to the central horizontal cycle of edges, as depicted in Figure 7. For them, we set $C_{z_t}$ to be the parity code of length 4. This completes the characterization of $C_{V_Z} = (C_{z_i})_{i \in [2\ell+1]}$ and $C_Z := T(\mathcal{G}_Z^{\square}, C_{V_Z})$.

**Orthogonality condition.** We next explain why the code CSS($C_X, C_Z$) is well-defined. To begin with, the first factor of the product codes $\Pi_X, \Pi_Z$ is a repetition code to ensure that the checks associated with $x_t, z_t, t = 0, 1$ commute with the middle checks, those for $t = 2, \dots, 2\ell + 1$.

Next, due to the identification of the left and right edges of the presentation complex, our local product structure is not strict. To resolve this issue, the second linear codes must have a simultaneous cyclic symmetry for $\kappa = 0, 1$ so that a check associated with $x_0$ commutes with one associated with $z_1$. To be precise, following our choice of indexing for the local codes, the condition for a codeword $c_x = (1, 1) \otimes c$, representing an X-check, and a codeword $c_z = (1, 1) \otimes c'$, representing a Z-check, to be mutually orthogonal is

$$ \langle c, c' \rangle = 0 \text{ and } \langle \sigma(c), c' \rangle = 0, $$

where the map $\sigma$ is defined in Section 2.6. This is automatically satisfied if the second factor of $\Pi_X$ and $\Pi_Z$ are a double-circulant code and its dual, respectively. The two conditions above thus ensure $C_X^\perp \subseteq C_Z$.

**Code lifting.** Now that we have described quantum Tanner codes constructed over the square complex $S_\ell$, we can consider their lifts, as in Section 3.2. Our first objective is to prove that our construction behaves well under the operation of code lifting.

**Proposition 4.5.** Let $p : \tilde{S}_\ell \to S_\ell$ be a covering map and $\tilde{C}_X = T(\tilde{\mathcal{G}}_X^{\square}, C_{\tilde{V}_X})$, $\tilde{C}_Z = T(\tilde{\mathcal{G}}_Z^{\square}, C_{\tilde{V}_Z})$ be the *lifted classical Tanner codes associated to p*. Then $\tilde{C}_X^\perp \subseteq \tilde{C}_Z$.

*Proof.* Our objective is to determine the intersection of the face neighborhood $F(\tilde{x}_s) \cap F(\tilde{z}_t)$, for any pair of vertices $\tilde{x}_s \in p^{-1}(x_s)$ and $\tilde{z}_t \in p^{-1}(z_t)$, $s, t \in \{0 \dots 2\ell + 1\}$, and show that the support intersection of any X- and Z-checks associated with these vertices is of even size. By symmetry of the code, it is sufficient to check for pairs $(\tilde{x}_0, \tilde{z}_0)$ and $(\tilde{x}_0, \tilde{z}_2)$ in $\tilde{S}_\ell$.

It is clear that any adjacent vertices $\tilde{x}_0, \tilde{z}_2$ are incident to either two or four common faces. It is possible to partition this set of faces into pairs of adjacent faces and sharing an edge $\tilde{e}$ whose image by $p$ is an edge $\{x_0, z_2\}$ represented vertically in Figure 7. Since an X-check is a codeword of the product code $\Pi_X = \mathscr{C}_2(1+X) \otimes \mathscr{D}_{2\ell}(f)$, if it acts on the qubit associated with one of the two faces of a given pair, then it must also act on the other. Moreover, a Z-check has full support on the qubits associated to the face neighborhood of $\tilde{z}_2$. Therefore, the support of an X-and a Z-check associated with the vertices $\tilde{x}_0$ and $\tilde{z}_0$, respectively, must intersect on an even number of qubits.

A pair of adjacent vertices of the form $\tilde{x}_0, \tilde{z}_1$ are connected by an edge incident to $2\ell$ faces in $\tilde{S}_\ell$. The restriction of the support vector of an X-check associated with $\tilde{x}_0$ is a codeword of $\mathscr{D}_{2\ell}(f)$ on these $2\ell$ faces, while that of a Z-check associated with $\tilde{z}_1$ is a codeword of $\mathscr{D}_{2\ell}(f)^\perp$. These vectors being orthogonal, their support intersection is even. $\square$

We examine two specific instances and their lifts in the examples below, for $\ell = 3$ and $\ell = 4$. We list the parameters of selected lifted codes in Table 2.
<table><caption>Table 2: Parameters of selected lifted quantum Tanner codes built over the presentation complex of BS(ℓ, ℓ). Different groups in an entry of the 4th column correspond to different lifted codes with the same parameters. Here W denotes the maximum row or column-weight of the parity-check matrices. The value of d is an upper bound found with the GAP package QDistRnd [PSK22], and in all these cases, $d_X = d_Z$. The specific local codes involved in these constructions are described in Examples 4.6 and 4.7.</caption><thead><tr><th>ℓ</th><th>W</th><th>lift index</th><th>deck(p)</th><th>[[n, k, d]]</th><th>d<sup>2</sup>/n</th></tr></thead><tbody><tr><td rowspan="3">3</td><td rowspan="3">6</td><td>1</td><td>1</td><td>[[24, 0, ∞]]</td><td>∞</td></tr><tr><td>12</td><td>Z<sub>12</sub>, D<sub>12</sub>, Z<sub>3</sub> × Z<sub>4</sub></td><td>[[288, 4, 6]]</td><td>0.125</td></tr><tr><td>24</td><td>Z<sub>2</sub> × (Z<sub>3</sub> × Z<sub>4</sub>), Z<sub>3</sub> × Z<sub>8</sub>, Z<sub>4</sub> × S<sub>3</sub></td><td>[[576, 4, 24]]</td><td>1</td></tr><tr><td rowspan="3">4</td><td rowspan="3">8</td><td>1</td><td>{e}</td><td>[[32, 2, 4]]</td><td>0.5</td></tr><tr><td>3</td><td>Z<sub>3</sub></td><td>[[96, 2, 12]]</td><td>1.5</td></tr><tr><td>5</td><td>Z<sub>5</sub></td><td>[[160, 2, 16]]</td><td>1.6</td></tr></tbody></table>

**Example 4.6.** The smallest non-trivial quantum Tanner code arises for $ℓ = 3$. In Table 2, the double-circulant code used in the tensor product is either the [6, 3, 3] code $\mathcal{D}_6(f)$ with $f(X) = X + X^2$, or its dual. In this case, we notice that the quantum Tanner code has zero dimension. However, by lifting it, we find codes of check weight 6 with positive dimension.

The following example, corresponding to the last three rows of Table 2 constitutes our best lifted codes.

**Example 4.7.** The case $ℓ = 4$ in Table 2 is obtained by using the shortest example of non-trivial double circulant self-dual binary code. This is the [8, 4, 4] extended Hamming code $\mathcal{D}_8(f)$ with $f(X) = X + X^2 + X^3$. The generator matrix of $\mathcal{D}_8(f)$ has row-weight 4, meaning that each of the classical Tanner codes $C_X$ and $C_Z$ has 16 parity checks, 8 of which being of weight 8. The other 8 are defined on vertices indexed by $t = 2, \dots, 9$ and are checks of parity codes of weight 4. The weights of the parity-checks are found in the same proportions in the lifted codes. We emphasize that in the last two lines of Table 2, the codes are obtained by cyclic lifts, and their distances satisfy $d > \sqrt{n}$.

In Figure 9, we illustrate the covering of $S_4$ associated with the [[96, 2, 12]] code. Because of the symmetry of the non-local checks, all obtained by cyclic shifts of the one represented in the figure, this may provide a biplanar layout of the physical qubits suitable for experimental implementation. We leave a rigorous analysis for future work.

**Remark 4.8.** The codes introduced in this section do not satisfy the assumption of Proposition 3.3 and also constitute examples beyond the lifting technique of [Gue25], similarly to those described in Remark 4.4.

Propositions 3.9 and 3.5 can be applied to the last two codes of Table 2, corresponding to Example 4.7. In those cases, the codes with parameters [[96, 2, 12]] and [[160, 2, 16]] are index-$t$ lifts with $t = 3$ and $t = 5$, respectively, and the group of deck transformations is $\Gamma = \mathbb{Z}_t$. Using Proposition 3.9, we obtain a lower bound on the parameters of these codes, which is consistent with $k = 2$. Moreover, since in those cases lifting preserves the dimension of the base code, $\pi^*$ and $\tau_*$ are isomorphisms. Therefore, the logical operators, which correspond to classes in $H^i(\tilde{C})$ and $H_i(\tilde{C})$, respectively, are invariant under cyclic permutations of $\Gamma$. Finally, the [[96, 2, 12]] code saturates the distance upper bound given by Proposition 3.5.

## Acknowledgement

The first author would like to thank Benjamin Audoux and Anthony Leverrier for valuable discussions throughout this work. We acknowledge the Plan France 2030 through the project NISQ2LSQ ANR-22-PETQ-0006.
<figure><img src="image_13.png" /><figcaption>FIG. 9: Covering space of the square complex $S_4$ associated to the group $Z_3$ in Table 2 and Example 4.7. Directed edges with an arrow of the same color and type are identified. The support of an X-stabilizer associated with the local code defined in $\tilde{x}_1 \in p^{-1}(x_1)$ is represented by the eight gray faces. The other checks of weight 8 are obtained by cyclic shifts of this pattern. Each vertex of the middle cycle supports a check of weight four (on its entire face neighborhood). This leads to the code with parameters [[96, 2, 12]]. This figure directly provides a planar layout of the physical qubits.</figcaption></figure>

## References

[BCG$^{+24}$] Sergey Bravyi, Andrew W. Cross, Jay M. Gambetta, Dmitri Maslov, Patrick Rall, and Theodore J. Yoder. High-threshold and low-overhead fault-tolerant quantum memory. *Nature*, 627(8005):778-782, March 2024.

[CS96] A. R. Calderbank and Peter W. Shor. Good quantum error-correcting codes exist. *Physical Review A*, 54(2):1098-1105, August 1996.

[DEL$^{+21}$] Irit Dinur, Shai Evra, Ron Livne, Alexander Lubotzky, and Shahar Mozes. Locally Testable Codes with constant rate, distance, and locality, 2021.

[GAP24] The GAP Group. *GAP – Groups, Algorithms, and Programming, Version 4.13.0*, 2024.

[GT77] Jonathan L. Gross and Thomas W. Tucker. Generating all graph coverings by permutation voltage assignments. *Discrete Mathematics*, 18(3):273-283, 1977.

[GT87] Jonathan L. Gross and Thomas W. Tucker. *Topological graph theory*. Wiley-Interscience, USA, 1987.

[Gue25] Virgile Guemard. Lifts of quantum CSS codes. *IEEE Transactions on Information Theory*, 71(7):5418-5442, 2025.

[Hat02] Allen Hatcher. *Algebraic topology*. Cambridge University Press, Cambridge, 2002.

[LH22] Ting-Chun Lin and Min-Hsiu Hsieh. Good quantum LDPC codes with linear time decoder from lossless expanders, 2022.

[LS01] Roger C. Lyndon and Paul E. Schupp. *Combinatorial Group Theory*. Springer Berlin Heidelberg, 2001.

[LZ22] Anthony Leverrier and Gilles Zémor. Quantum Tanner codes. In *FOCS 2022 - IEEE 63rd Annual Symposium on Foundations of Computer Science*, pages 872-883, Denver, United States, October 2022. IEEE.
[LZ23] Anthony Leverrier and Gilles Zémor. Decoding quantum tanner codes. *IEEE Transactions on Information Theory*, 69(8):5100–5115, 2023.

[MRL24] Olai Å. Mostad, Eirik Rosnes, and Hsuan-Yin Lin. Generalizing quantum tanner codes. In *2024 IEEE International Symposium on Information Theory Workshops (ISIT-W)*, pages 1–6, 2024.

[MS78] F.J. MacWilliams and N.J.A. Sloane. *The Theory of Error-Correcting Codes*. North-holland Publishing Company, 2nd edition, 1978.

[PK22a] Pavel Panteleev and Gleb Kalachev. Asymptotically good Quantum and locally testable classical LDPC codes. In *Proceedings of the 54th Annual ACM SIGACT Symposium on Theory of Computing*, STOC '22. ACM, June 2022.

[PK22b] Pavel Panteleev and Gleb Kalachev. Quantum ldpc codes with almost linear minimum distance. *IEEE Transactions on Information Theory*, 68(1):213–229, 2022.

[PSK22] Leonid P. Pryadko, Vadim A. Shabashov, and Valerii K. Kozin. QDistRnd: A GAP package for computing the distance of quantum error-correcting codes. *Journal of Open Source Software*, 7(71):4120, 2022.

[RSU01] T.J. Richardson, M.A. Shokrollahi, and R.L. Urbanke. Design of capacity-approaching irregular low-density parity-check codes. *IEEE Transactions on Information Theory*, 47(2):619–637, 2001.

[SS96] M. Sipser and D.A. Spielman. Expander codes. *IEEE Transactions on Information Theory*, 42(6):1710–1722, 1996.

[ST83] N. Sloane and J. Thompson. Cyclic self-dual codes. *IEEE Transactions on Information Theory*, 29(3):364–366, 1983.

[Ste96a] A. M. Steane. Error Correcting Codes in Quantum Theory. *Physical Review Letters*, 77(5):793–797, July 1996.

[Ste96b] A. M. Steane. Multiple-particle interference and quantum error correction. *Proceedings of the Royal Society of London. Series A: Mathematical, Physical and Engineering Sciences*, 452(1954):2551–2577, November 1996.

[Tan81] Robert Michael Tanner. A recursive approach to low complexity codes. *IEEE Trans. Inf. Theory*, 27:533–547, 1981.

[Tho03] J. Thorpe. Low-Density Parity-Check (LDPC) Codes Constructed from Protographs. *Interplanetary Network Progress Report*, 42-154:1–7, August 2003.
A Connected covering of a square-complex

In this section, we describe a procedure to explicitly construct a connected covering of a square-complex, which was introduced in [Gue25]. It is based on the voltage assignment technique of [GT77, PK22a] and adapted from [LS01, Hat02] to generate connected covering maps.

We consider a connected square-complex $\mathcal{S} = (V, E, F)$ which has finitely many cells. Recall that the graph $\mathcal{G} = (V, E)$, can be seen as the 1-skeleton of $\mathcal{S}$. The fundamental group of a square-complex is defined in Section 2.1.

From the Galois correspondence, Theorem 2.1, connected coverings of $\mathcal{S}$ are in one-to-one correspondence with subgroups of $\pi_1(\mathcal{S}, v)$, where $v$ is an arbitrary choice of basepoint that we later omit. Let $H$ be a subgroup of $\pi_1(\mathcal{S})$. There exists a unique covering map,

$$p: S_H \to S, \qquad (5)$$

associated to $H$, and it has index $r = [\pi_1(\mathcal{S}) : H]$. To construct the covering above we will construct one for $\mathcal{G}$. For that, we have to consider the following subgroups and homomorphisms,

$$\begin{array}{ccc}
\pi_1(\mathcal{S}) & \geq & H \\
\phi & & \downarrow \phi^{-1}, \\
\pi_1(\mathcal{G}) & \geq & H^1
\end{array}$$

where $\phi$ is the natural homomorphism taking the quotient of $\pi_1(\mathcal{G})$ by the normal closure of the subgroup generated by relations coming from 4-cycles in $\mathcal{S}$. Moreover, $H^1$ is the preimage of $H$ in $\pi_1(\mathcal{G})$ by this homomorphism. We now denote $\Gamma := \pi_1(K)/H$ and $\Gamma^1 := \pi_1(\mathcal{G})/H^1$. When $H$ is normal, $\Gamma$ and $\Gamma^1$ are isomorphic, otherwise this is a bijection between the cosets (here, all cosets are taken on the right).

To construct the covering map of Equation (5), it is shown in [LS01] that we only need to construct the following covering,

$$p_1: \mathcal{G}_{H^1} \to \mathcal{G}, \qquad (6)$$

which is unique by Theorem 2.1.

We explain the steps to create the components of Equation (6), and we detail a combinatorial technique specifically designed to produce connected coverings. The graph $\mathcal{G}_{H^1}$ has a set of vertices $V \times \Gamma^1$, and set of edges in bijection with $E \times \Gamma^1$. We now describe how to connect the edges. Since $\mathcal{G}$ is a connected graph, it admits a maximal spanning tree $T$ with basepoint $v$, and by definition a unique reduced path from vertex to vertex. We denote $E^*$ the set of oriented edges (its cardinality is twice the one of $E$).

We define a map called voltage assignment on the set of oriented edges,

$$\nu^T: E^* \to \pi_1(\mathcal{G}), \qquad (7)$$

mapping an edge $e = [v_1, v_2]$ to an element of $\pi_1(\mathcal{G})$ in the following manner. Let a path $\alpha$ from vertex $a$ to $b$ be denoted as a sequence of oriented edges, for example $\alpha = [a, u_1].[u_1, u_2]...[u_j, b]$. Moreover, let $((a, b))$ denote the path from $a$ to $b$ in the tree $T$. Then the equivalence class of circuits obtained by adding $e$ to $T$ is $\nu^T(e) := [((v, v_1)).e.((v_2, v))]$, where $[\alpha]$ is the standard notation for the homotopy class of a circuit $\alpha$ based at $v$.

We define a connected lift of the graph $\mathcal{G}$ associated to a certain subgroup of its fundamental group, using the notation above.

**Definition A.1 (Connected lift of a graph).** The lift of $\mathcal{G}$ associated to the subgroup $H^1 \leq \pi_1(\mathcal{G})$ is the graph $\mathcal{G}_{H^1}$ with set of vertices $V \times \Gamma^1$ and set of edges in bijection with $E \times \Gamma^1$, so that a vertex or edge is written $(c, gH^1)$ with $c \in \mathcal{G}$ and $g \in \pi_1(\mathcal{G})$. An oriented edge $\tilde{e} = (e, gH^1)$ in the graph $\mathcal{G}_{H^1}$, with $e = [u, v]$, connects $(u, gH^1)$ and $(v, g\nu^T(e)H^1)$, where the multiplication by $\nu^T(e)$ is on the right.

When $H^1$ is a normal subgroup of $\pi_1(\mathcal{G})$, the resulting covering is Galois.

In general, a graph admits more than one spanning tree. Following this procedure with another choice of spanning tree will modify the parametrization of the vertices and edges, but the graphs will be isomorphic, by the Galois correspondence. If $H^1$ is chosen as an arbitrary subgroup of $\pi_1(\mathcal{G})$, it can be shown [Gue25, LS01] that Definition A.1 can generate all connected regular and non-regular covers of $\mathcal{G}$. We define $p_1$ as the map projecting any cell of $\mathcal{G}_{H^1}$, vertex or edge, to its first coordinate. This is a valid covering map, equivalent to what we have done in Section 2.3.

Here $H^1$ is not arbitrary; it is the preimage of $H$ by $\phi$. It is also possible to prove that $p_1$ induces an isomorphism $p_{1\#} : \pi_1(\mathcal{G}_{H^1}, \tilde{v}) \to H^1$, for any choice of basepoint $\tilde{v}$ in the preimage of $v$, see [LS01], Chapter
III. 3. Moreover, for a 4-cycle $f \in F$, we can show that $p_1^{-1}(f)$ is a set of $r$ 4-cycles, and hence $p_1$ can be extended into a covering of the square-complex $\tilde{S} := (p_1^{-1}(V), p_1^{-1}(E), p_1^{-1}(F))$. It is finally proven in [LS01] that $p_1$ induces an isomorphism $p_{1\#} : \pi_1(S_H, v') \to H$ so that $p_H = p_1$ and $\tilde{S} = S_H$.