SigmaLayer/MixedLuders: the outcome-conditioned mixed update #
Category: dynamical measurement — MixedSwap.lean's recorded extension, delivered
(the fourth external review's "mixed conditioned update" row).
Two theorems close the row:
★ mixed_post_bayes — the outcome-conditioned post-measurement ensemble of a mixed
preparation is the Bayes-posterior mixture of the per-eigenray post-ensembles: the
posterior weight of spectral component j after outcome i is
λⱼ · pᵢ|ⱼ / Tr(ρ|eᵢ⟩⟨eᵢ|) with likelihood pᵢ|ⱼ = momentMap [ψⱼ] i — classical Bayes
updating of classical ignorance, as a theorem about the protocol's postMeasure. The
engine is the new staged ProbabilityTheory.cond_finsetSum (Bayes for finite mixtures).
★★ mixed_luders_followup — the record, not the pedigree, fixes the post-state:
after outcome i on the mixed preparation, follow-up statistics in every context are
c'.rate [eᵢ] — exactly the pure preparation's rank-one Lüders update. At rank one the
posterior components all collapse to the same vertex state, so classical ignorance of the
preparation is erased by the record: the conditioned mixture behaves as a fresh
preparation of eᵢ. This is the density-operator update ρ ↦ Πᵢ ρ Πᵢ / Tr(ρ Πᵢ) at rank
one, dynamically.
The spine: mixedSwapPrep factors — the mixture lives entirely on the system-and-
register factor, with the calibrated bank common (mixedSwapPrep_eq_prod), so the pure
theorem swap_luders_born (already stated for an arbitrary probability preparation)
applies verbatim once the outcome has nonzero mixed Born weight (mixed_outcome_pos,
licensed by Tr(ρ|eᵢ⟩⟨eᵢ|) ≠ 0 through the spectral bridge — no measure hypothesis).
⚠️ Honest scope. Degenerate outcomes on mixtures (block-Lüders composed with Bayes)
would ride delivered 2026-08-06
(JoinClosure the same way and are not restatedSigmaLayer/MixedJoinLuders.lean, BACKLOG D3 first half): it rides JoinClosure
exactly as predicted, and at rank ≥ 2 the posterior components are proven genuinely
distinct — mixed_join_luders exhibits the conditioned mixture as the Bayes mixture of
the per-component block posts epistemicMeasure [Πᵢψⱼ], nothing collapsing to a vertex.
The spectral ensemble is the canonical mixture realisation; nothing here depends on the
choice (MixedSwap.lean).
References #
specs/BACKLOG.md (the outcome-conditioned mixed update row — this discharges it; fourth
external review 2026-08-03); SigmaLayer/MixedSwap.lean (mixedSwapPrep, eigRay,
spectral_born_eq_traceForm, mixed_swap_sector_born), SigmaLayer/SwapClosure.lean
(swapPrep, readyPrep, calibratedBank, prep_outcome_pos, swap_sector_born),
SigmaLayer/SwapLuders.lean (swap_luders_born),
CsdLean4/Mathlib/Probability/ConditionalProbability.lean (cond_finsetSum).
The mixture factors through the bank #
The mixed system-and-register preparation: the eigenvalue mixture of the pure ready preparations — the bank is not part of the ignorance.
Equations
- CSD.RecordLayer.mixedReadyPrep ρ = ∑ j : Fin N, ENNReal.ofReal (⋯.eigenvalues j) • CSD.RecordLayer.readyPrep (CSD.RecordLayer.eigRay ρ j)
Instances For
The mixed preparation factors: the mixture lives on the system-and-register
factor, with the calibrated bank common to every spectral component. This is what lets
every pure-preparation theorem stated for an arbitrary μ12 apply to mixtures
verbatim.
hpos is a theorem for mixtures: nonzero mixed Born weight Tr(ρ|eᵢ⟩⟨eᵢ|) ≠ 0
gives the outcome sector nonzero mixed measure — through the spectral bridge, some
component has both nonzero eigenvalue and nonzero pure Born weight, and
prep_outcome_pos does the rest.
★ The Bayes-posterior ensemble #
★ The outcome-conditioned mixed post-measurement ensemble is the Bayes-posterior
mixture: after outcome i, spectral component j carries posterior weight
λⱼ · pᵢ|ⱼ / Tr(ρ|eᵢ⟩⟨eᵢ|) — prior times likelihood over evidence — and the ensemble is
that mixture of the per-eigenray post-ensembles. Classical Bayes updating of the
classical ignorance, as a theorem about the protocol.
★★ The record fixes the post-state #
★★ The record, not the pedigree, fixes the post-state: after outcome i on the
mixed preparation, follow-up statistics in every context are exactly the pure rank-one
Lüders update's — c'.rate [eᵢ]. At rank one every Bayes-posterior component collapses
to the same vertex state, so the record erases the classical ignorance of the
preparation: the conditioned mixture is dynamically indistinguishable from a fresh
preparation of eᵢ. The density-operator update ρ ↦ Πᵢ ρ Πᵢ / Tr(ρ Πᵢ) at rank one.