Empirical/QM: the register's single-error channel as a joint unitary with an environment #
Category: 3-Local. QM-validity layer (the register-level companion of BitFlipDilation.lean;
matrix algebra over the K2 Channel / Stinespring layer, no CSD content).
BitFlipDilation.lean realises the one-qubit bit-flip channel as the environment marginal of a
joint unitary on qubit ⊗ qubit. This file does the same for the three-qubit register and its
mixed single-error channel singleFlipChannel q (SyndromeRecovery.lean), as the instance
e = Fin 4, E = errorOp of the generic controlled-error dilation of ControlledDilation.lean
(BACKLOG #52): the environment is a four-level "which-error" register, and
errorVec q = ∑ₖ √qₖ eₖis the unit environment vector carrying the error weights;errorRotation qis a unitary on the environment withR e₀ = errorVec q, obtained fromMatrix.UnitaryGroup.exists_unitary_single_eq(a unitary with a prescribed first column);controlledError = blockDiagonal errorOpappliesEₖto the register when the environment iseₖ— the controlled error, unitary because eachEₖis;registerUnitary q = controlledError · (1 ⊗ R_q), soU_q (ψ ⊗ e₀) = ∑ₖ √qₖ (Eₖ ψ) ⊗ eₖ;krausBlock_registerUnitary_embedEnv— the environment blocks ofU_q (· ⊗ e₀)are exactly the Kraus operators√qₖ Eₖ, and ★stinespringChannel_registerUnitary— the single-error channel is the Stinespring channel ofU_qwith a ready environment, as channels.
Every statement is the generic one specialised (singleFlipChannel_eq_mixedUnitaryChannel is
rfl); the names are kept for the consumers (Empirical/CSD/QEC/RegisterFlow.lean reads U_q
as a Σ-flow on register ⊗ environment).
Source #
Stinespring 1955; Nielsen–Chuang §8.2.3 (environmental models of noise), §10.1 (the three-qubit bit-flip code).
Each error Eₖ ∈ {I, X₁, X₂, X₃} is unitary.
The environment side: weights as a unit vector, and a unitary reaching it #
The environment amplitude vector ∑ₖ √qₖ eₖ.
Equations
Instances For
A unitary on the environment taking the ready vector e₀ to errorVec q.
Equations
- CSD.Empirical.QM.QEC.errorRotation q hq0 hq1 = CSD.Empirical.QM.QEC.weightRotation q hq0 hq1 0
Instances For
The controlled error and the joint unitary #
The controlled error: apply Eₖ to the register when the environment is eₖ. Index
(register, environment).
Instances For
The register's joint unitary U_q = controlledError · (1 ⊗ R_q): rotate the environment
into the weight vector, then apply the error the environment names.
U_q (ψ ⊗ e₀) = ∑ₖ √qₖ (Eₖ ψ) ⊗ eₖ.
Equations
Instances For
The environment blocks of U_q (· ⊗ e₀) are the Kraus operators √qₖ Eₖ of the single-error
channel.
The single-error channel is the mixed-unitary channel (CanonicalChannels.lean) of the error
family.
★ The single-error channel is the Stinespring channel of U_q with a ready environment,
as channels (equal Kraus families).