fact: Definition split_list_is_complete `{HSL : StringLike Char} (str : String) (offset len : nat) (p : production Char) (splits : list nat) : Prop := len = 0 \/ offset + len <= length str -> let str := substring offset len str in forall it its, p = it::its -> forall n, n <= length str -> production_is_reachable G (it::its) -> parse_of_item G (take n str) it -> parse_of_production G (drop n str) its -> List.In n (List.map (min (length str)) splits).
imports: Fiat.Parsers.ContextFreeGrammar.Core Fiat.Parsers.ContextFreeGrammar.SimpleCorrectness Fiat.Parsers.ContextFreeGrammar.PreNotations Fiat.Parsers.ContextFreeGrammar.Carriers