OAI/LinearAlgebra/MatrixState/Postselection.lean
93 declarations, 0 contain sorry, 0 declared as axioms
- def
OAI.RowColumn.WordOrbits.transporterEquivline 15Source documentation
All transporters between two words are exactly the independent bijections between corresponding color fibres.
def transporterEquiv (a b : S → A) : {p : Equiv.Perm S // ∀ x, b (p x) = a x} ≃ (∀ c : A, {x : S // a x = c} ≃ {x : S // b x = c}) where … - lemma
OAI.RowColumn.WordOrbits.card_transportersline 37 - lemma
OAI.RowColumn.WordOrbits.type_card_factorialline 56Source documentation
Orbit-stabilizer with all factors explicit. It is the exact multinomial cardinality needed for the finite postselection probability.
lemma type_card_factorial (a : S → A) : Fintype.card {b : S → A // counts b = counts a} * (∏ c : A, (Fintype.card {x : S // a x = c})!) = (Fintype.card S)! := by …Mentions: OAI.RowColumn.WordOrbits.counts
- lemma
OAI.RowColumn.WordOrbits.factorial_le_factorial_mul_powline 96 - lemma
OAI.RowColumn.WordOrbits.factorial_modeline 107 - lemma
OAI.RowColumn.WordOrbits.prod_by_countsline 127 - lemma
OAI.RowColumn.WordOrbits.sum_countsline 137 - lemma
OAI.RowColumn.WordOrbits.empirical_type_modeline 142Source documentation
Under its own empirical product distribution, a type is a mode among all types. This gives a polynomial lower bound without Stirling or entropy.
lemma empirical_type_mode (a b : S → A) : Fintype.card {w : S → A // counts w = counts b} * (∏ c : A, (counts a c).val ^ (counts b c).val) ≤ Fintype.card {w : S → A // counts w = counts a} * (∏ c : A, (counts a c).val ^ (counts a c).val) := by …Mentions: OAI.RowColumn.WordOrbits.counts
- def
OAI.RowColumn.WordOrbits.typeMassline 171 - lemma
OAI.RowColumn.WordOrbits.typeMass_le_modeline 174 - lemma
OAI.RowColumn.WordOrbits.sum_typeMassline 183 - lemma
OAI.RowColumn.WordOrbits.empirical_mass_lowerline 199Source documentation
Elementary finite postselection mass bound: an empirical type has at least the inverse number of possible occupation tables.
lemma empirical_mass_lower (a : S → A) : (Fintype.card S)^(Fintype.card S) ≤ (Fintype.card S+1)^(Fintype.card A) * typeMass a (counts a) := by …Mentions: OAI.RowColumn.WordOrbits.typeMass, OAI.RowColumn.WordOrbits.counts
- def
OAI.RowColumn.Postselection.empiricalAmplitudeline 213 - def
OAI.RowColumn.Postselection.tensorVectorline 216 - lemma
OAI.RowColumn.Postselection.normSq_empiricalAmplitudeline 219 - lemma
OAI.RowColumn.Postselection.empiricalAmplitude_normalizedline 226 - lemma
OAI.RowColumn.Postselection.normSq_tensorVectorline 233 - lemma
OAI.RowColumn.Postselection.normSq_empirical_tensorline 238 - lemma
OAI.RowColumn.Postselection.empirical_type_probabilityline 247 - abbrev
OAI.RowColumn.Postselection.CountIndexline 266 - abbrev
OAI.RowColumn.Postselection.Phasesline 267 - def
OAI.RowColumn.Postselection.countCharacterline 269 - lemma
OAI.RowColumn.Postselection.countCharacter_singleline 275 - lemma
OAI.RowColumn.Postselection.countCharacter_injectiveline 279 - lemma
OAI.RowColumn.Postselection.character_orthogonalityline 290 - lemma
OAI.RowColumn.Postselection.phase_parsevalline 303Source documentation
Finite exact phase integration: order n+1 resolves every occupation vector with entries in 0,...,n, with no analytical Haar integral.
lemma phase_parseval (f : CountIndex A n → ℂ) : (∑ θ : Phases A n, Complex.normSq (∑ q, countCharacter q θ * f q)) = (Fintype.card (Phases A n) : ℝ) * ∑ q, Complex.normSq (f q) := by …Mentions: OAI.RowColumn.Postselection.CountIndex, OAI.RowColumn.Postselection.Phases, OAI.RowColumn.Postselection.countCharacter
- lemma
OAI.RowColumn.Postselection.phase_single_boundline 321 - lemma
OAI.RowColumn.Postselection.normSq_sum_mul_leline 333 - abbrev
OAI.RowColumn.Postselection.Typesline 346 - def
OAI.RowColumn.Postselection.typeSizeline 347 - def
OAI.RowColumn.Postselection.typeSumline 348 - def
OAI.RowColumn.Postselection.typeAverageline 351 - def
OAI.RowColumn.Postselection.typeRepresentativeline 354 - lemma
OAI.RowColumn.Postselection.representative_countsline 358 - lemma
OAI.RowColumn.Postselection.typeAverage_pairline 364 - lemma
OAI.RowColumn.Postselection.typeAverage_normSqline 385 - lemma
OAI.RowColumn.Postselection.invariant_vector_boundline 403 - lemma
OAI.RowColumn.Postselection.char_sumline 417 - def
OAI.RowColumn.Postselection.typeAmplitudeline 425 - lemma
OAI.RowColumn.Postselection.tensorVector_by_countsline 429 - def
OAI.RowColumn.Postselection.twistedAmplitudeline 432 - lemma
OAI.RowColumn.Postselection.twistedAmplitude_normalizedline 436 - lemma
OAI.RowColumn.Postselection.countCharacter_eq_prodline 445 - lemma
OAI.RowColumn.Postselection.tensorVector_twistedline 454 - lemma
OAI.RowColumn.Postselection.twisted_pairline 462 - lemma
OAI.RowColumn.Postselection.type_phase_boundline 475 - lemma
OAI.RowColumn.Postselection.type_representative_boundline 486 - theorem
OAI.RowColumn.Postselection.symmetric_postselectionline 522Source documentation
Exact finite symmetric-vector postselection, with a polynomial cost in the slot number and alphabet size. Every mixture vector is a normalized identical-slot tensor power; the construction is explicit and finite.
theorem symmetric_postselection (a₀ : S → A) (hn : 0 < Fintype.card S) (v x : (S → A) → ℂ) (hv : ∀ a b, counts a = counts b → v a = v b) : Complex.normSq (∑ w, v w * x w) ≤ (∑ w, Complex.normSq (v w)) * (((Fintype.card S+1)^(Fintype.card A) : ℕ) / (Fintype.card (Phases A (Fintype.card S)) : ℝ) * ∑ q : Types (S := S) (A := A), …Mentions: OAI.RowColumn.Postselection.Phases, OAI.RowColumn.Postselection.Types
- def
OAI.RowColumn.Postselection.truncateAmplitudeline 545Source documentation
Truncating purification letters preserves positivity after partial trace. It is how the postselection mixture is constrained to even one-slot states.
def truncateAmplitude (good : A → Prop) [DecidablePred good] (z : A → ℂ) : A → ℂ := …
- lemma
OAI.RowColumn.Postselection.tensorVector_truncateline 549 - lemma
OAI.RowColumn.Postselection.truncated_twisted_subnormalizedline 560 - theorem
OAI.RowColumn.Postselection.supported_symmetric_postselectionline 573Source documentation
Symmetric postselection retaining a prescribed alphabet support. In the application good(c,e) means that the physical and auxiliary parities agree, so the resulting Gram states are block diagonal.
theorem supported_symmetric_postselection (a₀ : S → A) (hn : 0 < Fintype.card S) (good : A → Prop) [DecidablePred good] (v x : (S → A) → ℂ) (hv : ∀ a b, counts a = counts b → v a = v b) (hsupp : ∀ w, ¬ (∀ i, good (w i)) → v w = 0) : Complex.normSq (∑ w, v w * x w) ≤ (∑ w, Complex.normSq (v w)) * (((Fintype.card S+1)^(Fintype.card A) : ℕ) / (Fintype.card (Phases A (Fintype.card S)) : ℝ) * ∑ q : Types (S := S) (A := A), …Mentions: OAI.RowColumn.Postselection.Phases, OAI.RowColumn.Postselection.Types
- def
OAI.RowColumn.Postselection.pairWordsEquivline 603 - def
OAI.RowColumn.Postselection.purificationVectorline 609 - def
OAI.RowColumn.Postselection.purificationTestline 612 - def
OAI.RowColumn.Postselection.productPurifierline 615 - def
OAI.RowColumn.Postselection.purifierQuadraticline 617 - def
OAI.RowColumn.Postselection.purifierTraceline 620 - lemma
OAI.RowColumn.Postselection.purification_pairline 623 - lemma
OAI.RowColumn.Postselection.purification_normSqline 632 - lemma
OAI.RowColumn.Postselection.productPurifier_pairline 639 - lemma
OAI.RowColumn.Postselection.purification_invariantline 645 - theorem
OAI.RowColumn.Postselection.matrix_postselectionline 663Source documentation
Explicit positive identical-slot domination at the purification level. The matrix factor is symmetric under actual slot permutations and has the specified letter support. This is the quantitative local-state dependency of the occupied-board main, not an assumed main overlap estimate.
theorem matrix_postselection (a₀ : S → C × C) (hn : 0 < Fintype.card S) (good : C × C → Prop) [DecidablePred good] (B : (S → C) → (S → C) → ℂ) (hB : ∀ (p : Equiv.Perm S) (w v : S → C), B (fun i => w (p i)) (fun i => v (p i)) = B w v) (hsupp : ∀ w v, ¬ (∀ i, good (w i,v i)) → B w v = 0) (x : (S → C) → ℂ) : purifierQuadratic B x ≤ purifierTrace B * (((Fintype.card S+1)^(Fintype.card (C × C)) : ℕ) / (Fintype.card (Phases (C × C) (Fintype.card S)) : ℝ) * ∑ q : Types (S := S) (A := C × C), …Mentions: OAI.RowColumn.Postselection.purifierQuadratic, OAI.RowColumn.Postselection.purifierTrace, OAI.RowColumn.Postselection.Phases, OAI.RowColumn.Postselection.Types
- lemma
OAI.RowColumn.MatrixState.sqrt_commuteline 699 - lemma
OAI.RowColumn.MatrixState.commute_perm_iffline 704 - lemma
OAI.RowColumn.MatrixState.sqrt_permutation_invariantline 716 - lemma
OAI.RowColumn.MatrixState.commute_diagonal_iffline 721 - lemma
OAI.RowColumn.MatrixState.sqrt_block_supportedline 730 - def
OAI.RowColumn.MatrixState.quadraticline 746Source documentation
Bilinear-coordinate quadratic form. Complex conjugation is placed in the second coordinate, matching the purification formulas used below.
def quadratic (A : Matrix I I ℂ) (x : I → ℂ) : ℝ := …
- def
OAI.RowColumn.MatrixState.factorQuadraticline 749 - lemma
OAI.RowColumn.MatrixState.normSq_eq_reline 752 - lemma
OAI.RowColumn.MatrixState.factorQuadratic_eqline 757 - lemma
OAI.RowColumn.MatrixState.sqrt_factorQuadraticline 774 - lemma
OAI.RowColumn.MatrixState.sqrt_traceline 779 - def
OAI.RowColumn.MatrixState.tensorMatrixline 801 - lemma
OAI.RowColumn.MatrixState.tensorMatrix_mulline 805 - lemma
OAI.RowColumn.MatrixState.tensorMatrix_starline 812 - lemma
OAI.RowColumn.MatrixState.tensorMatrix_traceline 818 - lemma
OAI.RowColumn.MatrixState.tensorMatrix_oneline 824 - lemma
OAI.RowColumn.MatrixState.tensorMatrix_posSemidefline 833 - def
OAI.RowColumn.MatrixState.letterMatrixline 845 - def
OAI.RowColumn.MatrixState.gramStateline 848Source documentation
A purification letter z is an actual one-slot substate after partial trace.
def gramState (z : C × C → ℂ) : Matrix C C ℂ := …
- lemma
OAI.RowColumn.MatrixState.gramState_posSemidefline 852 - lemma
OAI.RowColumn.MatrixState.gramState_traceline 858 - lemma
OAI.RowColumn.MatrixState.gramState_parity_supportedline 871 - def
OAI.RowColumn.Postselection.reindexWordline 889 - lemma
OAI.RowColumn.Postselection.productPurifier_quadraticline 896 - def
OAI.RowColumn.Postselection.localAmplitudeline 903 - def
OAI.RowColumn.Postselection.localStateline 908 - lemma
OAI.RowColumn.Postselection.localState_positiveline 913 - lemma
OAI.RowColumn.Postselection.localState_trace_le_oneline 918 - lemma
OAI.RowColumn.Postselection.localState_evenline 926 - theorem
OAI.RowColumn.Postselection.positive_state_postselectionline 937Source documentation
Quantitative positive mixture of genuine even identical-slot states for a PSD matrix invariant under unsigned slot permutations and supported on physical parity blocks. The polynomial includes only the explicitly finite type count; no structural duality or postselection axiom is assumed.
theorem positive_state_postselection (a₀ : S → C × C) (hn : 0 < Fintype.card S) (odd : C → Prop) [DecidablePred odd] (A : Matrix (S → C) (S → C) ℂ) (hA : A.PosSemidef) (hinv : ∀ (p : Equiv.Perm S) (w v : S → C), A (fun i => w (p i)) (fun i => v (p i)) = A w v) (hsupp : ∀ w v, ¬ (∀ i, odd (w i) ↔ odd (v i)) → A w v = 0) (x : (S → C) → ℂ) : quadratic A x ≤ A.trace.re * (((Fintype.card S+1)^(Fintype.card (C × C)) : ℕ) / (Fintype.card (Phases (C × C) (Fintype.card S)) : ℝ) * ∑ q : Types (S := S) (A := C × C), …Mentions: OAI.RowColumn.Postselection.Phases, OAI.RowColumn.Postselection.Types