OAI/NumberTheory/Ostmann/Construction/ExpandedScheduledTemplate.lean
8 declarations, 0 contain sorry, 0 declared as axioms
The atom schedule expanded into its actual prime constituents
- def
OAI.Ostmann.expandedHWordline 11 - def
OAI.Ostmann.expandedScheduledTemplateline 18Source documentation
Actual atoms may have several prime constituents. An erased pivot is replaced by its single reconstructed total; all other atoms retain their lists.
noncomputable def expandedScheduledTemplate {I σ : Type*} [Fintype I] (role : I → CopyScheduleRole) (address : ℕ → List Bool → σ) (childBound pivotBound : ℕ → ℕ) : (n : ℕ) → List Bool → (CopyScheduleAtoms role n → List σ) → WordTransferTemplate σ n | 0, _, current => .leaf ((Finset.univ.toList : List (CopyScheduleAtoms role 0)).flatMap current) | n + 1, path, current => .node ⟨address n path, expandedHWord role n true current, expandedHWord role n false current, childBound n, pivotBound n⟩ (expandedScheduledTemplate role address childBound pivotBound n (true :: path) (reverseCopyLabelMap role n true [address n path] current)) (expandedScheduledTemplate role address childBound pivotBound n (false :: path) (reverseCopyLabelMap role n false [address n path] current))Mentions: OAI.Ostmann.CopyScheduleRole, OAI.Ostmann.CopyScheduleAtoms, OAI.Ostmann.WordTransferTemplate, OAI.Ostmann.expandedHWord, OAI.Ostmann.reverseCopyLabelMap
- theorem
OAI.Ostmann.list_flatMap_length_boundline 30 - theorem
OAI.Ostmann.reverseCopyLabelMap_list_lengthline 40 - theorem
OAI.Ostmann.expandedHWord_lengthline 51 - theorem
OAI.Ostmann.expandedScheduledTemplate_words_boundedline 59 - theorem
OAI.Ostmann.list_flatMap_productline 85 - theorem
OAI.Ostmann.expandedHWord_productline 92