Exact split recursion with the classical flag and history maps
OpenQAlgorithms.Papers.Independent.Intakethird100.P14.split_channel_recursionLet be a binary-input classical–quantum channel, let , , and . Put . Its bad transform averages the second bit, and its good transform retains the first bit as a classical output:
For histories of length , relabel the two old history registers by interleaving and . Keep the physical outputs in their first-, last- order. In the good case, append the newly exposed odd bit to the interleaved history. Write and for these concrete basis relabelings. Both exact identities hold:
This is the recursion asserted in (16), with registers restored using (6)–(8) and (14)–(15). Printed (18) omits the sum and classical flag; the formal statement records the corrected channel identity rather than that ill-typed expression.
import Definitions.Def_QAlgorithms_Papers_Independent_Intakethird100_P14
noncomputable section
namespace QAlgorithms.Papers.Independent.Intakethird100.P14
open Filter MeasureTheory
open scoped ENNReal NNReal ComplexOrder BigOperators
open QAlgorithms.RealRegisters (Hilbert)
open QAlgorithms.Papers.Independent.Dependency50.P33 (IsDensity)
open QAlgorithms.Papers.Independent.Dependency50.P13 (compression)
open QAlgorithms.Papers.Independent.Renew46.P44 (wordOutput)
attribute [local instance] Classical.propDecidable Classical.decEq
/-- Proposition 7, PDF p.7, corrected (17)–(18). Printed (18) omits the
uniform sum and new odd-bit classical flag, leaving an unbound bit. Changed:
use exactly (14)–(16), pulling back by the concrete history/output maps above.
Why: already N=i=1 the printed spaces disagree; definitions (6)–(8) uniquely
fix this correction. Both exact recursive identities are included. Independent
moderation of this source correction remains required. -/
theorem split_channel_recursion {I : Type} (W : Bit → OutputCoefficients I) (hW : IsBinaryCqChannel W)
(n : ℕ) (i : PolarWire n) :
(∀ b (p q : SplitLabel I (n + 1) (childIndex i false)),
splitChannel W (n + 1) (childIndex i false) b p q =
channelMinus (splitChannel W n i) b (parentLabels i false p) (parentLabels i false q)) ∧
(∀ b (p q : SplitLabel I (n + 1) (childIndex i true)),
splitChannel W (n + 1) (childIndex i true) b p q =
channelPlus (splitChannel W n i) b (plusLabel i p) (plusLabel i q)) := by sorry
end QAlgorithms.Papers.Independent.Intakethird100.P14
end
Read-back
What the Lean code literally says, in plain math · gpt-6.1-sol
Let be any type and let , , be complex arrays on , each having an expansion with and , real nonnegative quadratic forms on every finite subset, and summable real diagonal of sum . For , put , define , where reverses bits and , and define using arithmetic in . For , let , where agrees with before , equals at , and agrees with afterward. Define the binary array on labels by . For any binary array on a label type , define
and . Fix any and . For a child label at index or , define
and ; for the child , also define . Then, for every input bit and every pair of labels of the indicated child, , and . Both identities include , with empty parent histories.
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.