Category of Labelled Transition Systems #
This file contains the definition of the category of labelled transition systems as defined in Winskel and Nielsen's handbook chapter [WN95].
References #
We first define what is denoted Tran* in [WN95]: the extension of a transition relation with idle transitions.
Equations
Instances For
LTSs and LTS morphisms form a category #
A morphism between two labelled transition systems consists of (1) a function on states, (2) a partial function on labels, and a proof that (1) preserves each transition along (2).
Mapping of states of
lts₁to states oflts₂Mapping of labels of
lts₁to labels oflts₂- labelMap_tr (s s' : lts₁.State) (l : lts₁.Label) : lts₁.lts.Tr s l s' → lts₂.lts.withIdle.Tr (self.stateMap s) (self.labelMap l) (self.stateMap s')
Stipulation that
stateMappreserve transitions
Instances For
The identity LTS morphism.
Instances For
def
Cslib.LTS.Morphism.comp
{lts₁ lts₂ lts₃ : LTSCat}
(f : Morphism lts₁ lts₂)
(g : Morphism lts₂ lts₃)
:
Morphism lts₁ lts₃
Composition of LTS morphisms.
We use Kleisli composition to define this.
Equations
Instances For
@[implicit_reducible]
Finally, we prove that these form a category.
Equations
- One or more equations did not get rendered due to their size.