A type of transition labels that includes a special 'internal' transition τ.
- τ : Label
The internal transition label, also known as τ.
Instances
@[reducible, inline]
Checking whether an element is τ is decidable.
Equations
- Cslib.DecidableEqTau α = ((a : α) → Decidable (a = Cslib.HasTau.τ))
Instances For
inductive
Cslib.LTS.STr
{Label : Type u_1}
{State : Type u_2}
[HasTau Label]
(lts : LTS State Label)
:
State → Label → State → Prop
Saturated transition relation.
- refl {Label : Type u_1} {State : Type u_2} [HasTau Label] {lts : LTS State Label} {s : State} : lts.STr s HasTau.τ s
- tr {Label : Type u_1} {State : Type u_2} [HasTau Label] {lts : LTS State Label} {s1 s2 : State} {μ : Label} {s3 s4 : State} : lts.τSTr s1 s2 → lts.Tr s2 μ s3 → lts.τSTr s3 s4 → lts.STr s1 μ s4
Instances For
def
Cslib.LTS.τClosure
{Label : Type u_1}
{State : Type u_2}
[HasTau Label]
(lts : LTS State Label)
(S : Set State)
:
Set State
The τ-closure of a set of states S is the set of states reachable by any state in S
by performing only τ-transitions.
Equations
- lts.τClosure S = lts.saturate.setImage S Cslib.HasTau.τ
Instances For
inductive
Cslib.LTS.SMTr
{Label : Type u_1}
{State : Type u_2}
[HasTau Label]
(lts : LTS State Label)
:
Saturated multistep transition relation.
- τ {Label : Type u_1} {State : Type u_2} [HasTau Label] {lts : LTS State Label} {s s' : State} : lts.STr s HasTau.τ s' → lts.SMTr s [] s'
- stepL {Label : Type u_1} {State : Type u_2} [HasTau Label] {lts : LTS State Label} {s1 : State} {μ : Label} {s2 : State} {μs : List Label} {s3 : State} : lts.STr s1 μ s2 → lts.SMTr s2 μs s3 → lts.SMTr s1 (μ :: μs) s3