Theorem 2: Fault Tolerance of Gauging Measurement #
Statement #
The fault-tolerant implementation of Algorithm 1 with a suitable graph G has spacetime fault-distance d, where d is the distance of the original code. Specifically, if:
- The graph G satisfies the Cheeger constant condition h(G) ≥ 1, and
- The number of measurement rounds satisfies (t_o - t_i) ≥ d,
then any spacetime logical fault (a fault pattern causing a logical error without triggering any detector) has weight at least d.
Main Results #
FaultToleranceConfig: Configuration bundling all preconditionsspacetimeFaultDistance_ge_d: Lower bound d_ST ≥ dspacetimeFaultDistance_le_d: Upper bound d_ST ≤ d via original logicalFaultToleranceTheorem: Main result d_ST = dspacetimeFaultDistance_eq_d_iff: Characterization theorem
Proof Structure (combining Lem_2, Lem_5, Lem_6, Lem_7) #
Step 1: Decomposition (Lem_6) Any spacetime logical fault F is equivalent (up to spacetime stabilizers) to the product of a space-like fault F_space and a time-like fault F_time: F ∼ F_space · F_time
Step 2: Time fault-distance (Lem_5) Any time-like logical fault (measurement/initialization errors only) has weight ≥ (t_o - t_i). Since (t_o - t_i) ≥ d, nontrivial F_time has weight ≥ d.
Step 3: Space fault-distance (Lem_2) Any logical operator in the deformed code has weight ≥ min(h(G), 1) · d. Since h(G) ≥ 1, this gives min(h(G), 1) = 1, so F_space has weight ≥ d.
Step 4: Combined bound (Lem_7)
- Case A: F_time nontrivial → |F| ≥ |F_time| ≥ d
- Case B: F_time trivial → |F| ≥ |F_space| ≥ d In both cases, |F| ≥ d.
Step 5: Matching upper bound Original logical operator L_orig (weight d) applied at t < t_i gives a weight-d logical fault.
Final Result: d_ST = d
Helper: minCheegerOne (from Lem_2, defined locally to avoid import conflict) #
min(h(G), 1) - local copy to avoid diamond import with Lem_2
Equations
- minCheegerOne hG = min hG 1
Instances For
Section 1: Fault Tolerance Configuration #
This section bundles all the preconditions for the fault tolerance theorem:
- Code distance d > 0
- Cheeger constant h(G) ≥ 1 (strong expansion)
- Number of measurement rounds (t_o - t_i) ≥ d
Configuration for the fault tolerance theorem. Bundles all preconditions needed to establish d_ST = d.
- d : ℕ
The code distance of the original code
Distance is positive
- t_i : ℕ
Initial time of gauging deformation
- t_o : ℕ
Final time of gauging deformation
t_i < t_o (deformation interval is nonempty)
Number of measurement rounds satisfies (t_o - t_i) ≥ d
- hG : ℝ
Cheeger constant of G
Cheeger constant is at least 1 (strong expander)
Instances For
Number of measurement rounds
Instances For
The number of rounds is at least d.
This reformulates the precondition rounds_ge_d : t_o - t_i ≥ d in terms of numRounds.
Since numRounds = t_o - t_i by definition, this follows directly.
h(G) ≥ 0 (follows from h(G) ≥ 1)
min(h(G), 1) = 1 when h(G) ≥ 1
Convert to FaultDistanceConfig from Lem_7
Equations
Instances For
Convert to DeformationInterval from Lem_5
Instances For
Convert to GaugingInterval from Lem_6
Instances For
Section 2: The Interval Rounds #
The interval of measurement rounds [t_i, t_o)
Equations
- FaultTolerance.intervalRounds cfg = Finset.Ico cfg.t_i cfg.t_o
Instances For
Section 3: Space Distance Bound (from Lem_2) #
By Lem_2, any logical operator on the deformed code has weight ≥ min(h(G), 1) · d. When h(G) ≥ 1, this gives weight ≥ d.
Step 3: Space distance bound from Lem_2. When h(G) ≥ 1, any space-like logical fault has weight ≥ d.
Section 4: Time Distance Bound (from Lem_5) #
By Lem_5, any time-like logical fault (measurement/initialization errors only) has weight ≥ (t_o - t_i). Since (t_o - t_i) ≥ d, this gives weight ≥ d.
Step 2: Time distance bound from Lem_5. Any nontrivial time-like logical fault has weight ≥ (t_o - t_i) ≥ d.
Note: This uses the PRECONDITION (t_o - t_i) ≥ d from the theorem statement.
Lem_5 establishes that time-like faults have weight ≥ (t_o - t_i),
and the precondition rounds_ge_d ensures (t_o - t_i) ≥ d.
Together: weight ≥ (t_o - t_i) ≥ d.
Section 5: Spacetime Decoupling (from Lem_6) #
By Lem_6, any spacetime logical fault F is equivalent (up to stabilizers) to F_space · F_time, where F_space is a single-time-step fault and F_time is pure time.
Predicate capturing the decoupling result from Lem_6: There exist F_space and F_time such that F ∼ F_space · F_time with the appropriate properties
Equations
- One or more equations did not get rendered due to their size.
Instances For
Section 6: Case Analysis for Lower Bound (from Lem_7) #
The lower bound d_ST ≥ d follows from case analysis:
- Case 1: F_time is nontrivial → |F_time| ≥ (t_o - t_i) ≥ d
- Case 2: F_time is trivial → |F| ∼ |F_space| ≥ d
Case enumeration for the lower bound proof
- timeNontrivial
{V : Type u_1}
{E : Type u_2}
{M : Type u_3}
[DecidableEq V]
[DecidableEq E]
[DecidableEq M]
[Fintype V]
[Fintype E]
[Fintype M]
{DC : DetectorCollection V E M}
{baseOutcomes : OutcomeAssignment M}
{logicalEffect : SpacetimeFault V E M → Prop}
{cfg : FaultToleranceConfig}
{F : SpacetimeFault V E M}
(F_time : SpacetimeFault V E M)
(h_pure : SpacetimeDecoupling.isPureTimeFault F_time)
(h_weight : F_time.weight (intervalRounds cfg) ≥ cfg.numRounds)
(h_F_weight : F.weight (intervalRounds cfg) ≥ F_time.weight (intervalRounds cfg))
: LowerBoundCase DC baseOutcomes logicalEffect cfg F
Case 1: Time component is nontrivial (contributes weight ≥ d)
- spaceLogical
{V : Type u_1}
{E : Type u_2}
{M : Type u_3}
[DecidableEq V]
[DecidableEq E]
[DecidableEq M]
[Fintype V]
[Fintype E]
[Fintype M]
{DC : DetectorCollection V E M}
{baseOutcomes : OutcomeAssignment M}
{logicalEffect : SpacetimeFault V E M → Prop}
{cfg : FaultToleranceConfig}
{F : SpacetimeFault V E M}
(F_space : SpacetimeFault V E M)
(h_pure : SpacetimeDecoupling.isPureSpaceFaultAtSingleTime F_space cfg.t_i)
(h_weight : F_space.weight (intervalRounds cfg) ≥ cfg.d)
(h_F_weight : F.weight (intervalRounds cfg) ≥ F_space.weight (intervalRounds cfg))
: LowerBoundCase DC baseOutcomes logicalEffect cfg F
Case 2: Space component contributes weight ≥ d
Instances For
Case 1: When time component is nontrivial, |F| ≥ d
Case 2: When space component is the dominant contributor, |F| ≥ d
Combined Lower Bound: Every spacetime logical fault has weight ≥ d
Section 7: Upper Bound via Original Logical Operator #
We exhibit a weight-d spacetime logical fault by applying the original code's minimum-weight logical operator L_orig at a time t < t_i.
Convert original logical to spacetime fault
Equations
- One or more equations did not get rendered due to their size.
Instances For
The original logical has no time errors
Weight computation for original logical
Upper Bound: There exists a weight-d spacetime logical fault
Section 8: Main Fault Tolerance Theorem #
Combining the lower bound (d_ST ≥ d) and upper bound (d_ST ≤ d), we get d_ST = d.
Main Theorem (Fault Tolerance): The spacetime fault-distance equals d.
This is the central result of the fault-tolerant gauging measurement: Under the conditions:
- h(G) ≥ 1 (Cheeger constant at least 1)
- (t_o - t_i) ≥ d (sufficient measurement rounds)
The spacetime fault-distance d_ST equals exactly d (the distance of the original code).
Proof Structure:
Lower bound (d_ST ≥ d) via Lem_6 decomposition + case analysis:
- By Lem_6 (spacetimeDecoupling): F ∼ F_space · F_time
- Case 1: F_time nontrivial → By Lem_5, |F_time| ≥ (t_o - t_i) ≥ d
- Case 2: F_time trivial → |F| ∼ |F_space| ≥ d (by Lem_2 with h(G) ≥ 1)
Upper bound (d_ST ≤ d):
- Apply original logical L_orig (weight d) at time t < t_i
- This gives a weight-d spacetime logical fault
Conclusion: d ≤ d_ST ≤ d, so d_ST = d.
Section 9: Corollaries and Characterizations #
Corollary: The spacetime fault distance is positive
Corollary: Faults with weight < d are either detectable or stabilizers
Corollary: The code can correct up to ⌊(d-1)/2⌋ faults
Characterization: d_ST = d iff both bounds hold
Section 10: The Key Lemma Dependencies #
This section documents how the theorem uses results from:
- Lem_2 (SpaceDistanceBound): d* ≥ min(h(G), 1) · d for deformed code
- Lem_5 (TimeFaultDistance): Pure time faults have weight ≥ (t_o - t_i)
- Lem_6 (SpacetimeDecoupling): F ∼ F_space · F_time decomposition
- Lem_7 (SpacetimeFaultDistanceLemma): Combined d_ST = d result
The lower bound uses the decomposition from Lem_6
The time bound uses Lem_5 result
The space bound uses Lem_2 result (when h(G) ≥ 1)
Section 11: Relationship to Algorithm 1 #
The fault-tolerant implementation of Algorithm 1 consists of:
- Prepare edge qubits in |0⟩
- Perform d rounds of error correction in original code
- Measure Gauss's law operators A_v for (t_o - t_i) ≥ d rounds
- Measure flux operators B_p
- Perform d rounds of error correction in original code
- Read out edge qubits
Under this implementation:
- Space faults = Pauli errors on vertex/edge qubits
- Time faults = measurement/initialization errors
The theorem guarantees that any fault pattern of weight < d either:
- Triggers a detector (detectable), or
- Is equivalent to the identity (stabilizer)
Therefore, the decoder can correct any fault pattern of weight ⌊(d-1)/2⌋.
Summary of Algorithm 1 fault tolerance properties as a record (non-Prop)
- all_decompose (F : SpacetimeFault V E M) : IsSpacetimeLogicalFault DC baseOutcomes logicalEffect F → LowerBoundCase DC baseOutcomes logicalEffect cfg F
Every logical fault has a decomposition case
- exists_weight_d : ∃ (F : SpacetimeFault V E M), IsSpacetimeLogicalFault DC baseOutcomes logicalEffect F ∧ F.weight (intervalRounds cfg) = cfg.d
There exists a weight-d logical fault (upper bound witness)
Instances For
Given Algorithm1FaultToleranceData, the spacetime fault distance equals d
Summary #
This formalization proves the Fault Tolerance Theorem:
Theorem (Fault Tolerance): Under the conditions:
- The Cheeger constant h(G) ≥ 1 (strong expansion)
- The number of measurement rounds (t_o - t_i) ≥ d
The spacetime fault-distance d_ST equals exactly d (the distance of the original code).
Proof structure:
Lower bound (d_ST ≥ d) via Lem_6 decomposition + case analysis:
- Step 1 (Lem_6): Any spacetime logical fault F decomposes as F ∼ F_space · F_time
- Case 1 (F_time nontrivial): By Lem_5, |F_time| ≥ (t_o - t_i) ≥ d
- Case 2 (F_time trivial): By Lem_2 with h(G) ≥ 1, |F_space| ≥ d
Upper bound (d_ST ≤ d):
- Apply original code logical operator L_orig (weight d) at time t < t_i
- This gives a weight-d spacetime logical fault
Conclusion: d ≤ d_ST ≤ d, so d_ST = d.
Key dependencies:
- Lem_2 (SpaceDistanceBound): d* ≥ min(h(G), 1) · d for deformed code
- Lem_5 (TimeFaultDistance): Pure time logical faults have weight ≥ (t_o - t_i)
- Lem_6 (SpacetimeDecoupling): F ∼ F_space · F_time decomposition
- Lem_7 (SpacetimeFaultDistanceLemma): Combined d_ST = d result (which this theorem refines)
Corollaries:
- The code can correct up to ⌊(d-1)/2⌋ faults
- Faults with weight < d are either detectable or stabilizers
- The spacetime fault distance is positive (d_ST > 0)