14 Def 11: Tensor Product Double Complex
Let \(C\) and \(D\) be chain complexes over \(\mathbb {F}_2\). The graded object underlying the tensor product double complex is defined, for integers \(p, q \in \mathbb {Z}\), by
where \(\otimes _{\mathbb {F}_2}\) denotes the tensor product of \(\mathbb {F}_2\)-modules.
Let \(C\) and \(D\) be chain complexes over \(\mathbb {F}_2\). The horizontal differential
is defined by
that is, it applies the differential \(\partial ^C\) of \(C\) in the first (horizontal, \(p\)-)direction and the identity on \(D_q\).
Let \(C\) and \(D\) be chain complexes over \(\mathbb {F}_2\). The vertical differential
is defined by
that is, it applies the identity on \(C_p\) and the differential \(\partial ^D\) of \(D\) in the second (vertical, \(q\)-)direction.
Let \(C\) and \(D\) be chain complexes over \(\mathbb {F}_2\). The tensor product double complex \(C \boxtimes D\) is the double complex (in the sense of \(\operatorname {DoubleComplex}_{\mathbb {F}_2}\)) defined as follows:
Objects: \((C \boxtimes D)_{p,q} = C_p \otimes _{\mathbb {F}_2} D_q\) for all \(p, q \in \mathbb {Z}\).
Horizontal differential: \(\partial ^h_{p,q} = \partial ^C_p \otimes \operatorname {id}_{D_q} : C_p \otimes D_q \to C_{p-1} \otimes D_q\).
Vertical differential: \(\partial ^v_{p,q} = \operatorname {id}_{C_p} \otimes \partial ^D_q : C_p \otimes D_q \to C_p \otimes D_{q-1}\).
The double complex conditions are verified as follows. When the complex shape relation \(\operatorname {Rel}(p, p')\) (respectively \(\operatorname {Rel}(q, q')\)) does not hold, the corresponding differential vanishes. The horizontal and vertical differentials each square to zero: \(\partial ^h \circ \partial ^h = 0\) and \(\partial ^v \circ \partial ^v = 0\). Moreover, the horizontal and vertical differentials commute: \(\partial ^h \circ \partial ^v = \partial ^v \circ \partial ^h\), which over \(\mathbb {F}_2\) replaces the usual anticommutativity requirement. This is a consequence of the whisker exchange identity \((\partial ^C \otimes \operatorname {id}) \circ (\operatorname {id} \otimes \partial ^D) = (\operatorname {id} \otimes \partial ^D) \circ (\partial ^C \otimes \operatorname {id})\) in any monoidal category.
The double complex is assembled via HomologicalComplex2.ofGradedObject using the descending complex shape on \(\mathbb {Z}\) in both directions.
Let \(C, D\) be chain complexes over \(\mathbb {F}_2\) and let \(p, q \in \mathbb {Z}\). Then
This holds by reflexivity: the object at position \((p,q)\) in the tensor double complex is definitionally equal to \(C_p \otimes D_q\) by construction in the definition of \(\operatorname {tensorDoubleComplex}\).
Let \(C, D\) be chain complexes over \(\mathbb {F}_2\) and let \(p, q \in \mathbb {Z}\). The vertical differential of \(C \boxtimes D\) at position \((p,q)\) is
This holds by reflexivity: the vertical differential at \((p, q)\) is definitionally equal to \(\operatorname {tensorDv}_{p,q,q-1}\) by construction of \(\operatorname {tensorDoubleComplex}\).
Let \(C, D\) be chain complexes over \(\mathbb {F}_2\) and let \(p, q \in \mathbb {Z}\). The horizontal differential of \(C \boxtimes D\) from column \(p\) to column \(p-1\) at row \(q\) is
This holds by reflexivity: the horizontal differential at \((p,q)\) is definitionally equal to \(\operatorname {tensorDh}_{p,p-1,q}\) by construction of \(\operatorname {tensorDoubleComplex}\).
Let \(C\) and \(D\) be chain complexes over \(\mathbb {F}_2\). The tensor product complex \(C \otimes D\) is defined as the total complex of the tensor product double complex:
Concretely, its degree-\(n\) component is
and its differential is \(\partial = \partial ^C \otimes \operatorname {id} + \operatorname {id} \otimes \partial ^D\). Over \(\mathbb {F}_2\), the usual sign factor \((-1)^p\) is trivial since \(-1 = 1\).
Let \(C\) and \(D\) be chain complexes over \(\mathbb {F}_2\), and let \(p, q, n \in \mathbb {Z}\) with \(p + q = n\). The canonical inclusion of the summand \(C_p \otimes D_q\) into \((C \otimes D)_n\) is the map
defined as the total complex inclusion \(\iota _{p,q,n}\) applied to the tensor product double complex \(C \boxtimes D\).
Let \(n_1, m_1, n_2, m_2 \in \mathbb {N}\), and let
be linear maps over \(\mathbb {F}_2\) (parity-check matrices of two classical codes). The hypergraph product code is the chain complex
i.e., the tensor product complex of the parity-check complexes associated to \(\partial ^C\) and \(\partial ^D\). Concretely, the underlying 1-complexes are
and their tensor product double complex has three nontrivial degrees:
Degree \(2\): \(\mathbb {F}_2^{n_1} \otimes \mathbb {F}_2^{n_2}\),
Degree \(1\): \((\mathbb {F}_2^{n_1} \otimes \mathbb {F}_2^{m_2}) \oplus (\mathbb {F}_2^{m_1} \otimes \mathbb {F}_2^{n_2})\),
Degree \(0\): \(\mathbb {F}_2^{m_1} \otimes \mathbb {F}_2^{m_2}\).
The differential from degree \(2\) to degree \(1\) plays the role of \(H_Z^\top \), and the differential from degree \(1\) to degree \(0\) plays the role of \(H_X\) in the CSS code convention. The CSS code structure is read off from the total complex shifted by \(1\) to match the convention \(C_1 \xrightarrow {H_Z^\top } C_0 \xrightarrow {H_X} C_{-1}\).