Abstract
A “dual-language approach” is one in which two formalisms, an operational and a descriptive one, co-exist to describe different aspects of the problem at hand. In the most typical setting, an operational language describes the system under design, whereas a descriptive (usually logic) language formalizes the desired system properties. Then, suitable methods are used to establish that the modeled system satisfies the stated properties.In this chapter, we present the essentials of dual-language approaches within the field of timing analysis. First, we describe the principles underlying model checking, in which properties expressed in temporal logic are verified for systems modeled as transition systems. Then, we present the TTM/RTTL approach, which relies upon Timed Transition Models to represent the system, and on formulae of the companion Real Time Temporal Logic to formalize the properties of interest. Finally, we discuss an approach combining timed Petri nets as operational notation and the TRIO logic language. The chapter concludes with a brief review of the tools supporting dual-language approaches.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsNotes
- 1.
This is a notational convenience that is common when depicting automata corresponding to LTL formulae; the automaton in Fig. 11.1 uses the more common convention of indicating on the transitions all and only the events that hold.
- 2.
Recall that guards are combinations of clock constraints, where a clock constraint has the form x ∼ c, with x a clock, c a natural number, and \(\sim \in \{<,\leq , =,\geq ,>\}\).
- 3.
Place P is not an argument of \(\mathsf{tokenF}\) because hypothesis J1 guarantees that i and o uniquely determine P.
References
Alur, R., Dill, D.L.: A theory of timed automata. Theor. Comput. Sci. 126(2), 183–235 (1994)
Baier, C., Haverkort, B., Hermanns, H., Katoen, J.P.: Model-checking algorithms for continuous-time Markov chains. IEEE Trans. Softw. Eng. 29(6), 524–541 (2003)
Baier, C., Katoen, J.P.: Principles of Model Checking. MIT, Cambridge (2008)
Biere, A., Cimatti, A., Clarke, E.M., Zhu, Y.: Symbolic model checking without BDDs. In: Proceedings of the 5th International Conference on Tools and Algorithms for Construction and Analysis of Systems, TACAS ’99, pp. 193–207. Springer, London (1999)
Biere, A., Heljanko, K., Junttila, T.A., Latvala, T., Schuppan, V.: Linear encodings of bounded LTL model checking. Log. Method Comput. Sci. 2(5) (2006)
Cimatti, A., Clarke, E.M., Giunchiglia, E., Giunchiglia, F., Pistore, M., Roveri, M., Sebastiani, R., Tacchella, A.: NuSMV 2: An opensource tool for symbolic model checking. In: Proceedings of the 14th International Conference on Computer Aided Verification, CAV ’02, pp. 359–364. Springer, London (2002)
Clarke, E.M., Emerson, E.A.: Design and synthesis of synchronization skeletons using branching-time temporal logic. In: Logic of Programs, Workshop, pp. 52–71. Springer, London (1982)
Clarke, E.M., Emerson, E.A., Sistla, A.P.: Automatic verification of finite-state concurrent systems using temporal logic specifications. ACM Trans. Program. Lang. Syst. 8(2), 244–263 (1986)
Clarke, E.M., Grumberg, O., Peled, D.A.: Model Checking. MIT, Cambridge (2000)
Dijkstra, E.W.: Guarded commands, nondeterminacy and formal derivation of programs. Commun. ACM 18(8), 453–457 (1975)
Dijkstra, E.W.: A Discipline of Programming. Prentice-Hall, Englewood Cliffs (1976)
Felder, M., Mandrioli, D., Morzenti, A.: Proving properties of real-time systems through logical specifications and Petri net models. IEEE Trans. Softw. Eng. 20(2), 127–141 (1994)
Floyd, R.W.: Assigning meanings to programs. In: Schwartz, J.T. (ed.) Mathematical Aspects of Computer Science, Proceedings of Symposia in Applied Mathematics, vol. 19, pp. 19–32. American Mathematical Society, Providence (1967)
Hoare, C.A.R.: An axiomatic basis for computer programming. Commun. ACM 12(10), 576–580 (1969)
Holzmann, G.J.: The SPIN Model Checker: Primer and Reference Manual. Addison-Wesley, Boston (2003)
Kwiatkowska, M., Norman, G., Parker, D., Sproston, J.: Verification of real-time probabilistic systems. In: S. Merz, N. Navet (eds.) Modeling and Verification of Real-Time Systems: Formalisms and Software Tools, pp. 249–288. Wiley, London (2008)
Ostroff, J.S.: Temporal Logic for Real Time Sytems. Advanced Software Development Series. Wiley, New York (1989)
Ostroff, J.S.: A visual toolset for the design of real-time discrete-event systems. IEEE Trans. Control Syst. Technol. 5(3), 320–337 (1997)
Ostroff, J.S.: Composition and refinement of discrete real-time systems. ACM Trans. Softw. Eng. Methodol. 8(1), 1–48 (1999)
Pnueli, A.: Specification and development of reactive systems (invited paper). In: IFIP Congress, pp. 845–858. North-Holland, Amsterdam (1986)
Pradella, M., Morzenti, A., San Pietro, P.: A metric encoding for bounded model checking. In: A. Cavalcanti, D. Dams (eds.) FM 2009: Formal Methods, Second World Congress, Eindhoven, 2–6 November, 2009. Proceedings, Lecture Notes in Computer Science, pp. 741–756. Springer, Berlin (2009)
Queille, J.P., Sifakis, J.: Specification and verification of concurrent systems in CESAR. In: Symposium on Programming, pp. 337–351. Springer, Berlin (1982)
The \(\mathbb{Z}\)ot bounded model/satisfiability checker. http://zot.googlecode.com
The MRMC model checker. http://www.mrmc-tool.org/
The NuSMV model checker. http://nusmv.fbk.eu/
The PRISM model checker. http://www.prismmodelchecker.org/
The SPIN model checker. http://spinroot.com
The UPPAAL model checker. http://www.uppaal.org
Vardi, M.Y., Wolper, P.: An automata-theoretic approach to automatic program verification (preliminary report). In: Proceedings, Symposium on Logic in Computer Science, 16–18 June 1986, Cambridge, pp. 332–344. IEEE Computer Society, Washington, DC (1986)
Author information
Authors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Furia, C.A., Mandrioli, D., Morzenti, A., Rossi, M. (2012). Dual-Language Approaches. In: Modeling Time in Computing. Monographs in Theoretical Computer Science. An EATCS Series. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-32332-4_11
Download citation
DOI: https://doi.org/10.1007/978-3-642-32332-4_11
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-32331-7
Online ISBN: 978-3-642-32332-4
eBook Packages: Computer ScienceComputer Science (R0)