Abstract
The reasons for translating a description of a model in one notation into another are reviewed. Such model descriptions are used as input to formal verification tools or as design-level descriptions for protocols or hardware. Translations are used to produce input to a different tool to verify properties not verified in the source model, and to connect notations that have no associated verification tool to those that do.
The VeriTech framework for translation is described. A system being analyzed is seen as a collection of versions, along with a characterization of how the versions are related, and properties known to be true of each version. The versions are given in different notations connected through a core notation by compilers from and to the notations of existing tools and specification methods. The reasons that translations cannot always be exact are analyzed. To facilitate optimizations during retranslation, error tracing, and analysis, additional information is gathered during translation, and is also included with the system being analyzed.
The concept of a faithful relation among models and families of properties true of those models is presented. In this framework families of properties are provided with uniform syntactic transformations, in addition to the translations of the models. This framework generalizes common instances of relations among translations previously treated in an ad hoc way. The example of refinement translations is shown in detail. The classes of properties that can be faithful for a given translation provide a measure of the usefulness of the translation.
Similar content being viewed by others
References
Katz, S.: Faithful translations among models and specifications. In: Proceedings of FME2001: Formal Methods for Increasing Software Productivity, vol. 2021 of LNCS, pp. 419–434. Springer, Berlin Heidelberg New York (2001)
Grumberg, O., Katz, S.: VeriTech: translating among specifications and verification tools–design principles. In: Third Austria-Israel Symposium Software for Communication Technologies, April 1999 pp. 104–109, At http://www.cs.technion.ac.il/Labs/ssdl/veritech/
Korenblat, K., Grumberg, O., Katz, S.: Translations between textual transition systems and Petri nets. In: Proceedings of third IFM conference, vol. 2355 of LNCS, pp. 339–359. Springer Berlin Heidelberg New York (2002)
Katz, S., Grumberg, O.: A framework for translating models and specifications. In: Proceedings of third integrated formal methods (IFM) Conference, vol. 2355 of LNCS, pp. 145–164. Springer, Berlin Heidelberg New York (2002)
Berg, M., Katz, S.: Property transformations for translations. Technical Report CS-2002-05, Computer Science Department, The Technion (2002)
Burch J.R., Clarke E.M., McMillan K.L., Dill D., Hwang L.J. (1992). Symbolic model checking: 1020 states and beyond. Inf. Comput. 98:142–170
McMillan, K.L.: Symbolic model checking: an approach to the state explosion problem. Kluwer (1993)
Owre S., Rushby J., Shankar N., von Henke F. (1995). Formal verification for fault-tolerant architectures: prolegomena to the design of PVS. IEEE Trans. Softw Eng. 21(2):107–125
Ip C.N., Dill D.L. (1996). Better verification through symmetry. For. Methods Syst Des. 9: 41–75
Holzmann G. (1991). Design and Validation of Computer Protocols. Prentice-Hall International, New Jersey
Holzmann, G.J., Peled, D.: The state of SPIN. In: Proceedings of CAV96, vol. 1102 of LNCS, pp. 385–389. Springer, Berlin Heidelberg New York (1996)
Kurshan R.P. (1994). Computer-aided Verification of Coordinating Processes. Princeton University Press, Primeton
Reisig W. (1998). Elements of distributed algorithms– modeling and analysis with Petri Nets. Springer, Berlin Heidelberg New York
Bolognesi, T., Legemaat, J.v.d., Vissars C.A. (eds.): LOTO Sphere: software development with LOTOS. Kluwer oston, (1994)
Bjorner, N., Browne, A., Chang, E., Colon, M., Kapur, A., Manna, Z., Simpa, H.B., Uribe, T.E.: Step: The stanford temporal prover - user’s manual. Technical Report STAN-CS-TR-95-1562, Department of Computer Science, Stanford University, November (1995)
Manna Z., Pnueli A. (1992). The Temporal Logic of Reactive and Concurrent Systems: Specification. Springer, Berlin Heidelberg New York
Hatcliff, J., Dwyer, M.: Using the bandera tool set to model-check properties of concurrent java software. In: International Conference on Concurrency Theory (CONCUR), June 2001. Invited tutorial paper
Demartini, C., Iosif, R., Sisto, R.: dSPIN: a dynamic extension of SPIN. In: SPIN, pp. 261–276 (1999)
Havelund K., Pressburger T. (2000). Model checking JAVA programs using JAVA PathFinder. Int. J. Softw. Tools. Technol. Transf. 2(4):366–381
Brat, G., Havelund, K., Park, S., Visser, W.: Model checking programs. In: In IEEE International Conference on Automated Software Engineering (ASE), September (2000)
Corbett J.C. (1996). Evaluating deadlock detection methods for concurrent software. IEEE Trans. Softw. Eng. 22(3):161–180
Bensalem, S., Ganesh, V., Lakhnech, Y., Muñoz, C., Owre, S., Rueß, H., Rushby, J., Rusu, V., Saïdi, H., Shankar, , E., Tiwari, A.: An overview of SAL. In: Michael Holloway, C. (ed.) LFM 2000: Fifth NASA Langley Formal Methods Workshop, pp. 187–196, Hampton June 2000. Available at http://shemesh.larc.nasa.gov/fm/Lfm2000/Proc/
Bozga, M., Fernandez, J., Ghirva, L., Graf, S., Krimm, J., Mounier, L.: IF: a validation environment for timed asynchronous systems. In: CAV 2000, LNCS 1855, pp. 543–547, July (2000) http://www-verimag.imag.fr/DIST_SYS/IF/index.html
http://wwwbrauer.informatik.tu-muenchen.de/gruppen/theorie/KIT/
Garavel, H., Lang, F.,Mateescu, R.: An overview of CADP2001. In: EASST Newsletter, pp. 13–24 (2002)
Margaria T. (2005). Web services-based tool integration in the ETI platform. J. Softw. Syst. Model. (SoSyM) 4:141–156
Magaria, T., Nagel, R., Steffan, B.: Remote integration and coordination of verification tools in JETI. In: International Conference on Engineering of Computer-Based Systems (ECBS05), pp. 431–436 (2005)
http://www.cs.technion.ac.il/Labs/ssdl/veritech/
Clarke E.M., Grumberg O., Peled D.A. (1999). Model checking. MIT press, Cambridge
Katz, S. Refinement with global equivalence proofs in temporal logic. In: Peled, D., Pratt, V., Holzmann, G. (eds.) Partial Order Methods in Verification, DIMACS Series in Mathematics and Theoretical Computer Science, vol. 29, pp. 59–78. American Mathematical Society (1997)
Harel D. (1987). Statecharts: a visual formalism for complex systems. Sci. Comput. Program. 8:231–274
Harel D., Lachover H., Naamad A., Pnueli A., Politi M., Sherman R. Shtull-Trauring A., Trakhtenbrot M. (1990). Statemate: a working environment for the development of complex reactive systems. IEEE Trans. Softw. Eng. 16(4):403–414
Hoare C.A.R., He Jifeng. (1998). Unifying Theories of Programming. Prentice-Hall, New Jersey
Potter B., Sinclair J., Till D. (1991). An Introduction to Formal Specification and Z. Prentice Hall, New Jersey
Bolognesi T., Brinksma E. (1987). Introduction to the ISO specification language LOTOS. Comput. Netw. ISDN Syst. 14:25–59
Hughes G.E., Cresswell M.J. (1977). Introduction to Modal Logic. Methuen, London
Grumberg O., Long D.E. (1994). Model checking and modular verification. ACM Trans. on Program. Lang. Syst. 16(3):843–871
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Grumberg, O., Katz, S. VeriTech: a framework for translating among model description notations. Int J Softw Tools Technol Transfer 9, 119–132 (2007). https://doi.org/10.1007/s10009-006-0003-0
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10009-006-0003-0