Hennessy-Milner Logic (HML) #
Hennessy-Milner Logic (HML) is a logic for reasoning about the behaviour of nondeterministic and concurrent systems.
Implementation notes #
There are two main versions of HML. The original [Hennessy1985], which includes a negation connective, and a variation without negation, for example as in [Aceto1999]. We follow the former and focus on a minimal set of connectives, recovering the others as derived constructs.
Main definitions #
Proposition: the language of propositions.Satisfies lts s a: in the LTSlts, the statessatisfies the propositiona.denotation a: the denotation of a propositiona, defined as the set of states that satisfya.theory lts s: the set of all propositions satisfied by statesin the LTSlts.
Main statements #
satisfies_mem_denotation: the denotational semantics of HML is correct, in the sense that it coincides with the notion of satisfiability.not_theoryEq_satisfies: if two states have different theories, then there exists a distinguishing proposition that one state satisfies and the other does not.theoryEq_eq_bisimilarity: two states have the same theory iff they are bisimilar (seeBisimilarity).
References #
- [M. Hennessy, R. Milner, Algebraic Laws for Nondeterminism and Concurrency][Hennessy1985]
- [L. Aceto, A. Ingólfsdóttir, Testing Hennessy-Milner Logic with Recursion][Aceto1999]
Propositions.
Equations
- Cslib.Logic.Modal.HML.Proposition Label Atom = Cslib.Logic.Modal.Proposition (PFunctor.mkUnary Label) Atom
Instances For
An HML model consists of an LTS and a valuation for its states.
- lts : LTS State Label
The labelled transition system.
- v : State → Atom → Prop
Valuation of atoms at states.
Instances For
Converts an HML into a unary modal model.
Instances For
Shortcut for Modal[HML.Model.toModal m,s ⊨ φ].
Equations
- One or more equations did not get rendered due to their size.
Instances For
The list of propositions over finite μ-derivatives.
Equations
- Cslib.Logic.Modal.propositions stateMap = List.map stateMap Fintype.elems.toList
Instances For
If two states are in a bisimulation, one satisfies a proposition iff the other does.
Theory equivalence and bisimilarity coincide for image-finite LTSs.