ω-Regular languages #
This file defines ω-regular languages and proves some properties of them.
An ω-language is ω-regular iff it is accepted by a finite-state nondeterministic Buchi automaton.
Equations
- p.IsRegular = ∃ (State : Type) (_ : Finite State) (na : Cslib.Automata.NA.Buchi State Symbol), Cslib.Automata.ωAcceptor.language na = p
Instances For
theorem
Cslib.ωLanguage.isRegular_iff
{Symbol : Type u}
{p : ωLanguage Symbol}
:
p.IsRegular ↔ ∃ (σ : Type v) (_ : Finite σ) (na : Automata.NA.Buchi σ Symbol), Automata.ωAcceptor.language na = p
The state space of the accepting finite-state nondeterministic Buchi automaton can in fact be universe-polymorphic.
theorem
Cslib.ωLanguage.IsRegular.of_da_buchi
{Symbol : Type u}
{State : Type}
[Finite State]
(da : Automata.DA.Buchi State Symbol)
:
The ω-language accepted by a finite-state deterministic Buchi automaton is ω-regular.
theorem
Cslib.ωLanguage.IsRegular.not_da_buchi :
∃ (Symbol : Type) (p : ωLanguage Symbol),
p.IsRegular ∧ ¬∃ (State : Type) (da : Automata.DA.Buchi State Symbol), Automata.ωAcceptor.language da = p
There is an ω-regular language that is not accepted by any deterministic Buchi automaton, where the automaton is not even required to be finite-state.
@[simp]
The empty language is ω-regular.