OAI/NumberTheory/Ostmann/Construction/ExpandedScheduleState.lean
5 declarations, 0 contain sorry, 0 declared as axioms
Updating a fresh pivot coordinate performs the original atom reconstruction
- theorem
OAI.Ostmann.wordTransferLeftState_nodeline 12Source documentation
Expose the child assignment with any decidable equality instance.
theorem wordTransferLeftState_node {σ : Type*} [DecidableEq σ] {n : ℕ} (d : WordTransferNode σ) (l r : WordTransferTemplate σ n) (x : σ → ℕ) (P : ℕ) : (wordTransferSystem σ).leftState ((WordTransferTemplate.node d l r).state x) P = l.state (Function.update x d.target P) := by …Mentions: OAI.Ostmann.WordTransferNode, OAI.Ostmann.WordTransferTemplate, OAI.Ostmann.wordTransferSystem
- theorem
OAI.Ostmann.wordTransferRightState_nodeline 21 - theorem
OAI.Ostmann.word_product_update_of_freshline 30 - theorem
OAI.Ostmann.reverseCopyLabelMap_product_updateline 40Source documentation
At the reconstructed pivot we read P, at H the selected copy, and at Y the common retained value. This equality includes composite atom words.
theorem reverseCopyLabelMap_product_update {I σ : Type*} [DecidableEq σ] (role : I → CopyScheduleRole) (n : ℕ) (b : Bool) (pivot : σ) (P : ℕ) (current : CopyScheduleAtoms role (n + 1) → List σ) (x : σ → ℕ) (hfresh : ∀ i j, j ∈ current i → j ≠ pivot) (i : CopyScheduleAtoms role n) : ((reverseCopyLabelMap role n b [pivot] current i).map (Function.update x pivot P)).prod = reverseCopyLabelMap role n b P (fun j => ((current j).map x).prod) i := by …Mentions: OAI.Ostmann.CopyScheduleRole, OAI.Ostmann.CopyScheduleAtoms, OAI.Ostmann.reverseCopyLabelMap
- theorem
OAI.Ostmann.expandedHWord_product_updateline 55Source documentation
The inserted coordinate does not alter any of the actual H-copy products that enter the reversing numerator.
theorem expandedHWord_product_update {I σ : Type*} [Fintype I] [DecidableEq σ] (role : I → CopyScheduleRole) (n : ℕ) (b : Bool) (current : CopyScheduleAtoms role (n + 1) → List σ) (x : σ → ℕ) (pivot : σ) (P : ℕ) (hfresh : ∀ i j, j ∈ current i → j ≠ pivot) : ((expandedHWord role n b current).map (Function.update x pivot P)).prod = ((expandedHWord role n b current).map x).prod := by …Mentions: OAI.Ostmann.CopyScheduleRole, OAI.Ostmann.CopyScheduleAtoms, OAI.Ostmann.expandedHWord