proposition: Lemma parse_production_proj (len0 : nat) parse_nonterminal parse_nonterminal' (H : forall offset len0_minus_len nt, parse_nonterminal offset len0_minus_len nt = parse_nonterminal' offset len0_minus_len nt) offset len0_minus_len (prod : @production_carrierT _ data) : @parse_production' _ HSLM_lite _ (proj str) len0 parse_nonterminal offset len0_minus_len prod = @parse_production' _ HSLM_heavy _ str len0 parse_nonterminal' offset len0_minus_len prod.
proof: Proof. refine (parse_production_proj _ _ _ _ _ _ _ _); assumption. Qed.
imports: Fiat.Parsers.GenericRecognizerEquality Fiat.Parsers.BaseTypes Fiat.Parsers.ContextFreeGrammar.Core Fiat.Parsers.BooleanRecognizer