There is a notation discrepancy regarding the assignment of X- and Z-type stabilizers between QuantumTannerCode and random_quantum_Tanner_code. The latter follows the notation from gu2022efficient and former from radebold2025explicit and leverrier2022quantum -- there is no consistency which can be a bit cumbersome
In Gu's paper, page 6 the convention for the quadpartite complex is:
"An X-type stabilizer generator is defined as a codeword from a generating set of C0 = CA ⊗ CB, with support on the faces incident to a given vertex in V0 = V00 ∪ V11. [...] Similarly, the Z-type stabilizers are generated by codewords of C1 = C⊥A ⊗ C⊥B on the faces incident to vertices of V1 = V01 ∪ V10."
|
# "An X-type stabilizer generator is defined as a codeword from a generating set of |
|
# C₀ = C_A ⊗ C_B, with support on the faces incident to a given vertex in V₀ = V₀₀ ∪ V₁₁" [gu2022efficient](@cite) |
|
# "Similarly, the Z-type stabilizers are generated by codewords of C₁ = C_A^⊥ ⊗ C_B^⊥ |
|
# on the faces incident to vertices of V₁ = V₀₁ ∪ V₁₀" [gu2022efficient](@cite). |
However, for the bipartite complex, the assignment seem to be reversed:
"Each generator of the Z stabilizers of the quantum Tanner code is specified by a choice of vertex v ∈ V0 and classical codeword β [of C0]... The resulting dim(C0)|V0| Z-type stabilizer generators correspond to codewords of C0 locally at each vertex. We repeat the same process for vertices v ∈ V1 and basis elements of C1 to produce dim(C1)|V1| X-type stabilizers." Reference
& in original Leverrier–Zémor paper, [page 18](https://arxiv.org/pdf/2202.13641#page=23.48)
"For every vertex v ∈ V0 we define dim C0 generators x ∈ FQ2 of type Z"
|
# C₀ = C_A ⊗ C_B for Z-stabilizers [radebold2025explicit](@cite) |
|
# C₁ = C_A^⊥ ⊗ C_B^⊥ for X-stabilizers [radebold2025explicit](@cite) |
This means that If one used GeneralizedTannerCode to recover the code produced by random_quantum_Tanner_code, dx and dz are swapped due to this swapping of the X-and Z-basis relabelling.
There is a notation discrepancy regarding the assignment of X- and Z-type stabilizers between
QuantumTannerCodeandrandom_quantum_Tanner_code. The latter follows the notation from gu2022efficient and former from radebold2025explicit and leverrier2022quantum -- there is no consistency which can be a bit cumbersomeIn Gu's paper, page 6 the convention for the quadpartite complex is:
QuantumExpanders.jl/src/quantum_tanner_code_multigraphs.jl
Lines 124 to 125 in 1545aeb
However, for the bipartite complex, the assignment seem to be reversed:
& in original Leverrier–Zémor paper,
[page 18](https://arxiv.org/pdf/2202.13641#page=23.48)QuantumExpanders.jl/src/quantum_tanner_codes.jl
Lines 784 to 785 in 1545aeb
This means that If one used
GeneralizedTannerCodeto recover the code produced byrandom_quantum_Tanner_code, dx and dz are swapped due to this swapping of the X-and Z-basis relabelling.