As described in Ost99, Timed Transitions Models (TTMs) are used to describe reactive systems with timing constraints. The graphical model-checking tool, described in Ost99, is no longer supported. In the paper by Lawford et. al., Fundamenta Informaticae, 2006, a nuclear reactor shutdown system is described in terms of TTMs. The TTMs were manually encoded into Uppaal and SAL model-checkers in order to check their safety and liveness properties. The manual encoding into Uppaal or SAL requires substantial effort before a TTM can be checked.
This site makes available a TTM plug-in for the PAT toolset for model-checking TTMs. Encodings to labelled transitions systems are done automatically, so that TTMs can be simulated and checked using the efficient algorithms of the PAT tool. PAT is a self-contained framework that supports composing, simulating and reasoning about concurrent, real-time systems and other possible domains. It comes with support for user friendly interfaces, model editors and animated simulators. PAT provides various model checking algorithms for checking deadlock-freeness, divergence-freeness, reachability, LTL properties with fairness assumptions, refinement checking and probabilistic model checking. Partial order reduction, symmetry reduction, process counter abstraction, and parallel model checking algorithms are supported.
For the TTM plug-in, we propose a convenient and expressive textual syntax for TTMs and a corresponding one-step operational semantics. In the TTM syntax, a tick transition (representing a global discrete clock) and implicit event clocks are no longer a (significant) burden of the specifier but are derived automatically. Modules allow for compositional reasoning and include an interface in which monitored and controlled variables are declared. Events in a module can be specified, individually, as spontaneous, fair or real-time. An event action specifies a before-after predicate by a set of (possibly non-deterministic) assignments and (possibly nested) conditionals. The TTM assertion language, LTL, allows references to event occurrences, including clock ticks (thus allowing for a check that the behaviour is non-zeno). Tool support, including an editor with static type checking, a graphical simulator and a LTL verifier, is provided as a plug-in for the PAT toolset. The TTM tool performs significantly better on a nuclear shutdown system than the manually encoded version in Uppaal and SAL.
Acknowledgements: The TTM/PAT plug-in was developed by a team in the Software Engineering Laboratory, at York University (Jonathan S. Ostroff, Chen-Wei Wang and Simon Hudon). Our sincere thanks to Prof. Yang Liu (School of Computer Engineering, Nanyang Technological University) and to Prof. Jun Sun (Singapore University of Technology and Design) for their development of the PAT toolset and for their help in developing the plug-in.
Jonathan S. Ostroff, Chen-Wei Wang, and Simon Hudon. TTM/PAT: A Tool for Modelling and Verifying Timed Transition Models. Tech Report CSE-2013-05, York University, 2013. [PDF]
Jonathan S. Ostroff, Chen-Wei Wang, Simon Hudon, Yang Liu, and Jun Sun. TTM/PAT: Specifying and Verifying Timed Transition Models. In Formal Techniques for Safety-Critical Systems (FTSCS), volume 419 of Communications in Computer and Information Science (CCIS), pages 107–124. Springer, 2013. [PDF]
C:\Program Files\Process Analysis Toolkit\Process Analysis Toolkit 3.4.4\
. We refer to this directory as $PAT.PAT.common.dll
in $PAT. PAT.Module.TTM.dll
and Syntax.xshd
in the TTM folder. Notations:
Download the above grammar of textual TTM.
Results of comparing TTM/PAT and other real-time model checking tools are available here.