Regular Closure Under Substitution #
Proof idea: replace each transition labeled by a symbol a with an epsilon-NFA
for the regular language assigned to a, wiring copies of those NFAs between
the source and target states of the original automaton. Runs therefore choose
one substituted word for each input symbol.
Regular Closure Under Substitution #
This file proves that the class of regular languages is closed under substitution by constructing an ε-NFA from a DFA and a family of DFAs.
Main results #
Language.IsRegular.subst'— ifLis regular over a finite alphabet and eachf ais regular, thenL.subst fis regular.
noncomputable def
Language.substεNFA
{α β σ : Type}
(M : DFA α σ)
(τ : α → Type)
(N : (a : α) → DFA β (τ a))
:
ε-NFA for the substitution of a DFA language by a family of DFA languages.
Equations
- One or more equations did not get rendered due to their size.