Langlib

Langlib.Automata.FiniteState.Inclusion.StrictDeterministicPushdown

Finite Automata Strictly Included in Deterministic Pushdown Automata #

The proof is entirely at the automata level. Inclusion is the explicit stack-ignoring simulation DPDA_of_DFA (preceded by subset determinization for NFAs). Strictness is witnessed by the explicit DPDA dpda_anbn, whose language {aⁿbⁿ} is not accepted by any DFA. Injective input relabelling transports that witness from Bool to every finite alphabet containing at least two symbols.

Main results #

theorem map_anbn_is_DPDA {T : Type} [Fintype T] (e : Bool T) :

Relabelling the explicit {aⁿbⁿ} DPDA along an alphabet embedding gives a DPDA for the relabelled language.

DFA languages are strictly contained in DPDA languages whenever Bool embeds in the alphabet.

DFA languages are strictly contained in DPDA languages over every finite alphabet with at least two symbols.

DFA languages are strictly contained in DPDA languages over every nontrivial finite alphabet.

NFA languages are strictly contained in DPDA languages whenever Bool embeds in the alphabet. Nonmembership of the witness is shown by explicitly determinizing any hypothetical accepting NFA.

NFA languages are strictly contained in DPDA languages over every finite alphabet with at least two symbols.

NFA languages are strictly contained in DPDA languages over every nontrivial finite alphabet.