Languages determined by pairs of states #
def
Cslib.LTS.pairLang
{Symbol : Type u_1}
{State : Type}
(lts : LTS State Symbol)
(s t : State)
:
Language Symbol
LTS.pairLang s t is the language of finite words that can take the LTS
from state s to state t.
Instances For
@[simp]
theorem
Cslib.LTS.pairLang_regular
{Symbol : Type u_1}
{State : Type}
[Finite State]
{lts : LTS State Symbol}
{s t : State}
:
LTS.pairLang s t is a regular language if there are only finitely many states.
def
Cslib.LTS.pairViaLang
{Symbol : Type u_1}
{State : Type}
(lts : LTS State Symbol)
(via : Set State)
(s t : State)
:
Language Symbol
LTS.pairViaLang via s t is the language of finite words that can take the LTS
from state s to state t via a state in via.
Equations
- lts.pairViaLang via s t = β¨ r β via, lts.pairLang s r * lts.pairLang r t
Instances For
@[simp]
@[simp]
theorem
Cslib.LTS.pairViaLang_regular
{Symbol : Type u_1}
{State : Type}
[Inhabited Symbol]
[Finite State]
{lts : LTS State Symbol}
{via : Set State}
{s t : State}
:
(lts.pairViaLang via s t).IsRegular
LTS.pairViaLang via s t is a regular language if there are only finitely many states.
theorem
Cslib.LTS.pairViaLang_append_pairLang
{Symbol : Type u_1}
{State : Type}
{lts : LTS State Symbol}
{s0 s1 s2 : State}
{xs1 xs2 : List Symbol}
{via : Set State}
(h1 : xs1 β lts.pairViaLang via s0 s1)
(h2 : xs2 β lts.pairLang s1 s2)
:
theorem
Cslib.LTS.pairLang_append_pairViaLang
{Symbol : Type u_1}
{State : Type}
{lts : LTS State Symbol}
{s0 s1 s2 : State}
{xs1 xs2 : List Symbol}
{via : Set State}
(h1 : xs1 β lts.pairLang s0 s1)
(h2 : xs2 β lts.pairViaLang via s1 s2)
:
theorem
Cslib.LTS.pairViaLang_split
{Symbol : Type u_1}
{State : Type}
{lts : LTS State Symbol}
{s0 s2 : State}
{xs1 xs2 : List Symbol}
{via : Set State}
(h : xs1 ++ xs2 β lts.pairViaLang via s0 s2)
:
theorem
Cslib.Automata.NA.Buchi.language_eq_fin_iSup_hmul_omegaPow
{Symbol : Type u_1}
{State : Type}
[Inhabited Symbol]
[Finite State]
(na : Buchi State Symbol)
:
The Ο-language accepted by a finite-state BΓΌchi automaton is the finite union of Ο-languages
of the form L * M^Ο, where all Ls and Ms are regular languages.