OAI/Combinatorics/EditApproximation/Coarse/CoarseIndexedChildren.lean
1 declarations, 0 contain sorry, 0 declared as axioms
- theorem
OAI.EditApproximation.BinaryFraction.coarseIndexChildren_eqline 14Source documentation
The executable child loop carries indices and cached subtree lengths. In particular it never flattens a semantic source tree to obtain its length.
theorem coarseIndexChildren_eq {B d : ℕ} {α : Type*} (k q L : ℕ) (two : BinaryFraction) (width : Fin B → ℕ) (children : Fin B → CoarseSourceTree B α d) (evaluate : CoarseSourceTree B α d → CoarseThresholdDraws B d → BinaryFraction → ℕ → CoarseBinaryArray × ℕ) (indexed : Fin B → BinaryFraction → ℕ → CoarseBinaryArray × ℕ) (draw : Fin B → Fin B) (below : Fin B → CoarseThresholdDraws B d) (hw : ∀ i, width i = (children i).word.length) (he : ∀ i a start, indexed i a start = evaluate (children i) (below i) a start) (allowance : BinaryFraction) (indices : List (Fin B)) (start : ℕ) : coarseIndexChildren k q L two width indexed draw allowance indices start = coarseBinaryChildren k q L two evaluate allowance (indices.map fun i => (children i, draw i, below i)) start := by …Mentions: OAI.EditApproximation.BinaryFraction, OAI.EditApproximation.BinaryFraction.width, OAI.EditApproximation.CoarseSourceTree, OAI.EditApproximation.CoarseThresholdDraws, OAI.EditApproximation.BinaryFraction.CoarseBinaryArray, OAI.EditApproximation.BinaryFraction.coarseIndexChildren, OAI.EditApproximation.BinaryFraction.coarseBinaryChildren