OAI/Combinatorics/BinaryEdit/TaggedArrayPrerequisites.lean
2 declarations, 0 contain sorry, 0 declared as axioms
Literal array-to-slice hypotheses for the common tagged alignment lemma.
- theorem
OAI.TreeEdit.BinaryLower.TaggedExtraction.local_slice_capacityline 14Source documentation
A blockwise deficit bound gives the local slice capacity, with all slices taken from the actual nested concatenation.
theorem local_slice_capacity {α : Type*} {T m B : ℕ} (X Y : Fin T → Fin m → Word α B) (tag : α → Fin m) (hX : ∀ (a : Fin T) (i : Fin m) (s : α), s ∈ (X a i).val → tag s = i) (hY : ∀ (a : Fin T) (i : Fin m) (s : α), s ∈ (Y a i).val → tag s = i) {d : ℝ} (hd : ∀ a b, d ≤ ∑ i, (deficit B (X a i).val (Y b i).val : ℝ)) (a b : Fin T) : (lcs (((rows X).drop (a.val * (m * B))).take (m * B)) (((rows Y).drop (b.val * (m * B))).take (m * B)) : ℝ) ≤ (m : ℝ) * B - d := by …Mentions: OAI.TreeEdit.Word, OAI.TreeEdit.BinaryLower.deficit, OAI.TreeEdit.lcs, OAI.TreeEdit.BinaryLower.TaggedExtraction.rows
- theorem
OAI.TreeEdit.BinaryLower.TaggedExtraction.exists_array_decoderline 31Source documentation
Pairwise disjoint alphabets admit a common tag decoder.
theorem exists_array_decoder {α : Type*} {T m B : ℕ} (X Y : Fin T → Fin m → Word α B) (hm : 0 < m) (Γ : Fin m → Set α) (hΓ : Pairwise fun i j => Disjoint (Γ i) (Γ j)) (hX : ∀ (a : Fin T) (i : Fin m) (s : α), s ∈ (X a i).val → s ∈ Γ i) (hY : ∀ (a : Fin T) (i : Fin m) (s : α), s ∈ (Y a i).val → s ∈ Γ i) : ∃ tag : α → Fin m, (∀ (a : Fin T) (i : Fin m) (s : α), s ∈ (X a i).val → tag s = i) ∧ (∀ (a : Fin T) (i : Fin m) (s : α), s ∈ (Y a i).val → tag s = i) := by …Mentions: OAI.TreeEdit.Word