fact: Definition ensemble_fold_production' (fold_nt : default_nonterminal_carrierT -> Ensemble String) (its : production Char) := List.fold_right ensemble_combine_production ensemble_on_nil_production (List.map (fun it => match it with | Terminal ch => ensemble_on_terminal ch | NonTerminal nt => fold_nt (@of_nonterminal _ (@rdp_list_predata _ G) nt) end) its).
imports: Coq.Sets.Ensembles Coq.Classes.Morphisms Fiat.Parsers.ContextFreeGrammar.PreNotations Fiat.Parsers.ContextFreeGrammar.Carriers Fiat.Parsers.ContextFreeGrammar.Core Fiat.Parsers.ContextFreeGrammar.Precompute Fiat.Parsers.BaseTypes Fiat.Parsers.Splitters.RDPList Fiat.Parsers.ContextFreeGrammar.Fix.Definitions Fiat.Common.List.ListMorphisms