Remark 8: Freedom in Deformed Checks #
Statement #
The deformed code is uniquely determined (as a codespace), but there is freedom in choosing the generating set:
- The A_v checks are fixed.
- The B_p checks can use any generating set of cycles for G.
- The s̃_j checks have freedom in choosing the paths γ_j.
Different choices of γ give equivalent codes: if γ and γ' both satisfy ∂γ = ∂γ' = S_Z(s)|_V, then s̃(γ') = s̃(γ) · B_c for some product of flux operators B_c. In particular, the difference γ + γ' lies in ker(∂) (the cycle space).
Main Results #
deformedCheck_diff_is_pure_Z_edge: s̃(γ') = s̃(γ) · (pure Z on edges from γ + γ')diff_path_in_ker_boundary: γ + γ' ∈ ker(∂) when both satisfy the boundary conditiondeformedCheck_diff_eq_fluxProduct: the difference operator has the form of a product of Z on edgesdifferent_paths_same_code: two DeformedCodeData produce codes with the same stabilizer group
Path Difference Lies in Cycle Space #
If two edge-paths both satisfy the boundary condition for the same check, their difference lies in ker(∂).
The path difference is in the kernel of the boundary map (LinearMap.ker version).
Deformed Checks Differ by a Pure-Z Edge Operator #
The pure-Z edge operator for an edge vector δ: acts as identity on vertices,
Z on edges according to δ. This is exactly deformedOpExt G 1 δ.
Equations
Instances For
A pure-Z edge operator is pure Z-type: no X-support.
A pure-Z edge operator is self-inverse.
The deformed check with path γ' equals the deformed check with path γ multiplied by the pure-Z edge operator for the path difference γ + γ'.
Equivalently: s̃(γ') = s̃(γ) · B where B = pureZEdgeOp(γ' + γ).
The Difference Operator Commutes with All Checks #
The pure-Z edge operator for a cycle (boundary-zero edge vector) commutes with all Gauss's law operators.
The pure-Z edge operator commutes with all flux operators (both are pure Z-type).
The pure-Z edge operator commutes with deformed checks (both have no X-support on edges, and the pure-Z op has no Z-support on vertices).
Different Paths Yield the Same Stabilizer Group #
Helper: a deformed check with path γ' is in the stabilizer group generated by the deformed code using path γ, provided γ + γ' ∈ ker(∂) and the flux operators for the cycle are in the stabilizer group. More precisely, s̃_j(γ'_j) equals s̃_j(γ_j) times a pure-Z edge operator, and both factors are in the stabilizer group.
Main theorem: Different choices of edge-paths produce the same deformed code (up to stabilizer equivalence). Specifically, if data and data' are two DeformedCodeData with potentially different edge-paths, then for each check index j, the deformed check from data' differs from that of data by a pure-Z edge operator whose edge support lies in ker(∂) (the cycle space). This means the two deformed checks are related by multiplication with an element that is a product of flux operators.
We prove the concrete algebraic fact: for each j, s̃_j(γ'_j) = s̃_j(γ_j) · pureZEdgeOp(γ_j + γ'_j) where ∂(γ_j + γ'_j) = 0.
The path difference for any check lies in the cycle space (ker ∂).
Gauss's Law Checks Are Fixed #
The Gauss's law checks do not depend on the choice of DeformedCodeData.
The flux checks do not depend on the choice of DeformedCodeData.
The Difference Operator Commutes with All Deformed Code Checks #
The pure-Z edge operator for a path difference commutes with every check in the deformed code, when the path difference is in ker(∂).
Corollaries #
Two deformed checks for the same original check always commute.
The pure-Z edge operator for a path difference is self-inverse.
Recovering one deformed check from another: s̃(γ) = s̃(γ') · pureZEdgeOp(γ' + γ).