Def_9: Syndrome #
Statement #
The syndrome of a spacetime fault F is the set of detectors violated by F. Formally: $$\text{syndrome}(F) = \{D : D \text{ is a detector and } D \text{ reports } -1 \text{ in the presence of } F\}$$
Equivalently, the syndrome is the binary vector over the set of all detectors, where entry D is 1 if detector D is violated and 0 otherwise.
Key properties:
- The syndrome function is Z₂-linear: syndrome(F₁ · F₂) = syndrome(F₁) + syndrome(F₂) (symmetric difference).
- A spacetime stabilizer (trivial fault) has empty syndrome.
- A logical fault is a non-trivial fault with empty syndrome.
Main Definitions #
Syndrome: The syndrome of a spacetime fault (set of violated detectors)syndrome: Function computing the syndrome of a faultsyndromeVector: Binary vector representation of the syndromehasEmptySyndrome: Predicate for faults with no violated detectors
Key Properties #
syndrome_identity: Identity fault has empty syndromesyndrome_mul: Syndrome is Z₂-linear (symmetric difference under composition)syndrome_inv: Syndrome of inverse equals syndrome of originalisLogicalFault_iff: A logical fault is non-trivial with empty syndrome
Syndrome Definition #
The syndrome of a spacetime fault is the set of detectors it violates. We use Finset directly rather than a wrapper type.
The syndrome of a spacetime fault: the set of detectors violated by the fault. A detector is violated if the observed parity differs from expected parity.
Instances For
The empty syndrome (no detectors violated)
Equations
Instances For
Combine two syndromes via symmetric difference (Z₂ addition)
Instances For
Syndrome addition is commutative
Syndrome addition is associative
Empty syndrome is additive identity (right)
Empty syndrome is additive identity (left)
Every syndrome is its own inverse (self-inverse in Z₂)
The cardinality of the syndrome (number of violated detectors)
Equations
- s.card = Finset.card s
Instances For
A syndrome is empty iff its cardinality is 0
Computing the Syndrome #
Given a detector collection and measurement outcomes, compute which detectors are violated.
Apply a spacetime fault to measurement outcomes. Time-faults flip the classical measurement outcome.
Equations
- applyFaultToOutcomes' baseOutcomes fault m t = if fault.timeErrors m t = true then baseOutcomes m t + 1 else baseOutcomes m t
Instances For
Compute the syndrome of a spacetime fault given a detector collection. Returns the set of detectors violated by the fault.
Equations
- syndrome DC baseOutcomes fault = {D ∈ DC.detectors | D.isViolated (applyFaultToOutcomes' baseOutcomes fault)}
Instances For
A fault has empty syndrome if it violates no detectors
Equations
- hasEmptySyndrome' DC baseOutcomes fault = (syndrome DC baseOutcomes fault = ∅)
Instances For
Equations
- decHasEmptySyndrome' DC baseOutcomes fault = inferInstanceAs (Decidable (syndrome DC baseOutcomes fault = ∅))
Syndrome as Binary Vector #
The syndrome can equivalently be viewed as a binary vector indexed by detectors.
The syndrome as a function to ZMod 2: 1 if violated, 0 if satisfied
Equations
Instances For
Syndrome vector is 1 iff detector is violated
Key Properties #
The identity fault has empty syndrome when base outcomes satisfy all detectors
Empty syndrome iff all detectors in the collection are satisfied
Z₂-Linearity of Syndrome #
The key property: syndrome(F₁ · F₂) = syndrome(F₁) + syndrome(F₂) (symmetric difference).
This holds when faults only affect detectors through time-faults (measurement flips), and each detector monitors a fixed set of measurements.
Helper: applying two faults in sequence
Condition for Z₂-linearity: detectors depend only on time-faults in a simple way. Specifically, each detector's violation status depends on the XOR of time-faults over its measurement events.
- localDependence (f g : SpacetimeFault V E M) (D : Detector V E M) : D ∈ DC.detectors → (∀ e ∈ D.measEvents, f.timeErrors e.measurement e.time = g.timeErrors e.measurement e.time) → (D.isViolated (applyFaultToOutcomes' baseOutcomes f) ↔ D.isViolated (applyFaultToOutcomes' baseOutcomes g))
Each detector's violation only depends on time-faults at its measurement events
- parityDetermines (f : SpacetimeFault V E M) (D : Detector V E M) : D ∈ DC.detectors → (D.isViolated (applyFaultToOutcomes' baseOutcomes f) ↔ {e ∈ D.measEvents | f.timeErrors e.measurement e.time = true}.card % 2 = 1)
Violation is determined by parity of time-faults on measurement events
Instances For
Under linearity conditions, syndrome respects multiplication (symmetric difference)
Syndrome of inverse equals syndrome of original (since XOR is self-inverse)
Spacetime Stabilizers and Logical Faults #
Based on the syndrome definition, we can characterize:
- Spacetime stabilizers: trivial faults with empty syndrome
- Logical faults: non-trivial faults with empty syndrome
A spacetime stabilizer has empty syndrome by definition
Equations
- IsSpacetimeStabilizer' DC baseOutcomes isTrivial fault = (hasEmptySyndrome' DC baseOutcomes fault ∧ isTrivial fault)
Instances For
A logical fault is non-trivial with empty syndrome
Equations
- IsLogicalFault DC baseOutcomes isTrivial fault = (hasEmptySyndrome' DC baseOutcomes fault ∧ ¬isTrivial fault)
Instances For
Stabilizers and logical faults partition empty-syndrome faults
Stabilizers and logical faults are mutually exclusive
A logical fault is characterized as non-trivial with empty syndrome
Syndrome Membership Characterization #
A detector is in the syndrome iff it is violated by the fault
Syndrome is a subset of the detector collection
Summary #
This formalization captures the syndrome concept from fault-tolerant quantum error correction:
Syndrome Definition: The syndrome of a fault F is the set of detectors violated by F. Equivalently, it's a binary vector where entry D is 1 iff detector D is violated.
Z₂-Linearity: Under appropriate conditions, the syndrome function satisfies:
- syndrome(F₁ · F₂) = syndrome(F₁) + syndrome(F₂) (symmetric difference)
- syndrome(F⁻¹) = syndrome(F)
- syndrome(1) = ∅
Partition of Empty-Syndrome Faults:
- Spacetime stabilizers: trivial faults with empty syndrome
- Logical faults: non-trivial faults with empty syndrome
- These are mutually exclusive and exhaustive
Key properties proven:
- Syndrome addition (symmetric difference) is commutative, associative, has identity
- Every syndrome is self-inverse
- Identity fault has empty syndrome
- Syndrome respects fault composition (Z₂-linear)
- Empty-syndrome faults partition into stabilizers and logical faults