Hennessy–Milner logic
In computer science, Hennessy–Milner logic (HML) is a dynamic logic used to specify properties of a labeled transition system (LTS), a structure similar to an automaton. It was introduced in 1980 by Matthew Hennessy and Robin Milner in their paper "On observing nondeterminism and concurrency"[1] (ICALP). Another variant of the HML involves the use of recursion to extend the expressibility of the logic, and is commonly referred to as 'Hennessy-Milner Logic with recursion'.[2] Recursion is enabled with the use of maximum and minimum fixed points.
Syntax
A formula is defined by the following BNF grammar for Act some set of actions:
- [math]\displaystyle{ \Phi ::= \textit{tt} \,\,\, | \,\,\,\textit{ff}\,\,\, | \,\,\,\Phi_1 \land \Phi_2 \,\,\, | \,\,\,\Phi_1 \lor \Phi_2\,\,\, | \,\,\,[Act] \Phi\,\,\, | \,\,\, \langle Act \rangle \Phi }[/math]
That is, a formula can be
- constant truth [math]\displaystyle{ \textit{tt} }[/math]
- always true
- constant false [math]\displaystyle{ \textit{ff} }[/math]
- always false
- formula conjunction
- formula disjunction
- [math]\displaystyle{ \scriptstyle{[Act]\Phi} }[/math] formula
- for all Act-derivatives, Φ must hold
- [math]\displaystyle{ \scriptstyle{\langle Act \rangle \Phi} }[/math] formula
- for some Act-derivative, Φ must hold
Formal semantics
Let [math]\displaystyle{ L = (S, \mathsf{Act}, \rightarrow) }[/math] be a labeled transition system, and let [math]\displaystyle{ \mathsf{HML} }[/math] be the set of HML formulae. The satisfiability relation [math]\displaystyle{ {} \models {} \subseteq (S \times \mathsf{HML}) }[/math] relates states of the LTS to the formulae they satisfy, and is defined as the smallest relation such that, for all states [math]\displaystyle{ s \in S }[/math] and formulae [math]\displaystyle{ \phi, \phi_1, \phi_2 \in \mathsf{HML} }[/math],
- [math]\displaystyle{ s \models \textit{tt} }[/math],
- there is no state [math]\displaystyle{ s \in S }[/math] for which [math]\displaystyle{ s \models \textit{ff} }[/math],
- if there exists a state [math]\displaystyle{ s' \in S }[/math] such that [math]\displaystyle{ s \xrightarrow{a} s' }[/math] and [math]\displaystyle{ s' \models \phi }[/math], then [math]\displaystyle{ s \models \langle a \rangle \phi }[/math],
- if for all [math]\displaystyle{ s' \in S }[/math] such that [math]\displaystyle{ s \xrightarrow{a} s' }[/math] it holds that [math]\displaystyle{ s' \models \phi }[/math], then [math]\displaystyle{ s \models [ a ] \phi }[/math],
- if [math]\displaystyle{ s \models \phi_1 }[/math], then [math]\displaystyle{ s \models \phi_1 \lor \phi_2 }[/math],
- if [math]\displaystyle{ s \models \phi_2 }[/math], then [math]\displaystyle{ s \models \phi_1 \lor \phi_2 }[/math],
- if [math]\displaystyle{ s \models \phi_1 }[/math] and [math]\displaystyle{ s \models \phi_2 }[/math], then [math]\displaystyle{ s \models \phi_1 \land \phi_2 }[/math].
See also
- The modal μ-calculus, which extends HML with fixed point operators
- Dynamic logic, a multimodal logic with infinitely many modalities
References
- ↑ Hennessy, Matthew; Milner, Robin (1980-07-14). "On observing nondeterminism and concurrency" (in en). Automata, Languages and Programming. Lecture Notes in Computer Science. 85. Springer, Berlin, Heidelberg. pp. 299–309. doi:10.1007/3-540-10003-2_79. ISBN 978-3540100034.
- ↑ Holmström, Sören (1990). "Hennessy-Milner Logic with recursion as a specification language, and a refinement calculus based on it". Specification and Verification of Concurrent Systems. Workshops in Computing. pp. 294–330. doi:10.1007/978-1-4471-3534-0_15. ISBN 978-3-540-19581-8.
Sources
- Colin P. Stirling (2001). Modal and temporal properties of processes. Springer. pp. 32–39. ISBN 978-0-387-98717-0. https://archive.org/details/modaltemporalpro00stir.
- Sören Holmström. 1988. "Hennessy-Milner Logic with Recursion as a Specification Language, and a Refinement Calculus based on It". In Proceedings of the BCS-FACS Workshop on Specification and Verification of Concurrent Systems, Charles Rattray (Ed.). Springer-Verlag, London, UK, 294–330.
Original source: https://en.wikipedia.org/wiki/Hennessy–Milner logic.
Read more |