FMOODS 2008: Formal Methods for Open Object-Based Distributed Systems pp 96-112 | Cite as
Symbolic Step Encodings for Object Based Communicating State Machines
Abstract
In this work, novel symbolic step encodings of the transition relation for object based communicating state machines are presented. This class of systems is tailored to capture the essential data manipulation features of UML state machines when enriched with a Java-like object oriented action language. The main contribution of the work is the generalization of the \(\exists\)-step semantics approach, which Rintanen has used for improving the efficiency of SAT based AI planning, to a much more complex class of systems. Furthermore, the approach is extended to employ a dynamic notion of independence. To evaluate the encodings, UML state machine models are automatically translated into NuSMV models and then symbolically model checked with NuSMV. Especially in bounded model checking (BMC), the \(\exists\)-step semantics often significantly outperforms the traditional interleaving semantics without any substantial blowup in the BMC encoding as a SAT formula.
Keywords
State Machine Model Check Transition Relation Symbolic Model Check Bound Model CheckReferences
- 1.Cimatti, A., Clarke, E., Giunchiglia, E., Giunchiglia, F., Pistore, M., Roveri, M., Sebastiani, R., Tacchella, A.: NuSMV version 2: An opensource tool for symbolic model checking. In: Brinksma, E., Larsen, K.G. (eds.) CAV 2002. LNCS, vol. 2404, pp. 359–364. Springer, Heidelberg (2002)CrossRefGoogle Scholar
- 2.Holzmann, G.J.: The Spin Model Checker. Addison-Wesley, Reading (2004)Google Scholar
- 3.Biere, A., Cimatti, A., Clarke, E.M., Zhu, Y.: Symbolic model checking without BDDs. In: Cleaveland, W.R. (ed.) ETAPS 1999 and TACAS 1999. LNCS, vol. 1579, pp. 193–207. Springer, Heidelberg (1999)CrossRefGoogle Scholar
- 4.Valmari, A.: The state explosion problem. In: Reisig, W., Rozenberg, G. (eds.) APN 1998. LNCS, vol. 1491, pp. 429–528. Springer, Heidelberg (1998)Google Scholar
- 5.Jussila, T., Dubrovin, J., Junttila, T., Latvala, T., Porres, I.: Model checking dynamic and hierarchical UML state machines. In: Proc. MoDeV2a: Model Development, Validation and Verification, pp. 94–110 (2006)Google Scholar
- 6.Rintanen, J., Heljanko, K., Niemelä, I.: Planning as satisfiability: parallel plans and algorithms for plan search. Artificial Intelligence 170(12-13), 1031–1080 (2006)MATHCrossRefMathSciNetGoogle Scholar
- 7.Heljanko, K.: Bounded reachability checking with process semantics. In: Larsen, K.G., Nielsen, M. (eds.) CONCUR 2001. LNCS, vol. 2154, pp. 218–232. Springer, Heidelberg (2001)CrossRefGoogle Scholar
- 8.Best, E., Devillers, R.R.: Sequential and concurrent behaviour in Petri net theory. Theoretical Computer Science 55(1), 87–136 (1987)MATHCrossRefMathSciNetGoogle Scholar
- 9.Kautz, H.A., Selman, B.: Pushing the envelope: Planning, propositional logic and stochastic search. In: AAAI 1996/IAAI 1996, vol. 2, pp. 1194–1201. AAAI Press, Menlo Park (1996)Google Scholar
- 10.Dimopoulos, Y., Nebel, B., Koehler, J.: Encoding planning problems in nonmonotonic logic programs. In: Steel, S. (ed.) ECP 1997. LNCS, vol. 1348, pp. 169–181. Springer, Heidelberg (1997)CrossRefGoogle Scholar
- 11.Wehrle, M., Rintanen, J.: Planning as satisfiability with relaxed \(\exists\)-step plans. In: Orgun, M.A., Thornton, J. (eds.) AI 2007. LNCS (LNAI), vol. 4830, pp. 244–253. Springer, Heidelberg (2007)CrossRefGoogle Scholar
- 12.Ogata, S., Tsuchiya, T., Kikuno, T.: SAT-based verification of safe Petri nets. In: Wang, F. (ed.) ATVA 2004. LNCS, vol. 3299, pp. 79–92. Springer, Heidelberg (2004)Google Scholar
- 13.Jussila, T.: BMC via dynamic atomicity analysis. In: ACSD 2004, pp. 197–206. IEEE Computer Society, Los Alamitos (2004)Google Scholar
- 14.Jussila, T., Heljanko, K., Niemelä, I.: BMC via on-the-fly determinization. International Journal on Software Tools for Technology Transfer 7(2), 89–101 (2005)CrossRefGoogle Scholar
- 15.Jussila, T.: On Bounded Model Checking of Asynchronous Systems. Doctoral dissertation, Helsinki Univ.of Technology (2005)Google Scholar
- 16.Dubrovin, J., Junttila, T., Heljanko, K.: Symbolic step encodings for object based communicating state machines. Technical Report B24, Helsinki Univ.of Technology, Lab.for Theoretical Computer Science (2007)Google Scholar
- 17.Dubrovin, J.: Jumbala — An action language for UML state machines. Research Report A101, Helsinki Univ.of Technology, Lab.for Theoretical Computer Science (2006)Google Scholar
- 18.Gosling, J., Joy, B., Steele, G., Bracha, G.: The Java Language Specification, 3rd edn. Addison-Wesley, Reading (2005)Google Scholar
- 19.Dubrovin, J., Junttila, T.: Symbolic model checking of hierarchical UML state machines. In: ACSD (to appear, 2008)Google Scholar
- 20.Kamel, M., Leue, S.: Formalization and validation of the General Inter-ORB Protocol (GIOP) using PROMELA and SPIN. International Journal on Software Tools for Technology Transfer 2(4), 394–409 (2000)MATHCrossRefGoogle Scholar
- 21.Heljanko, K., Junttila, T., Latvala, T.: Incremental and complete bounded model checking for full PLTL. In: Etessami, K., Rajamani, S.K. (eds.) CAV 2005. LNCS, vol. 3576, pp. 98–111. Springer, Heidelberg (2005)Google Scholar
- 22.Biere, A., Heljanko, K., Junttila, T., Latvala, T., Schuppan, V.: Linear encodings of bounded LTL model checking. Logical Methods in Computer Science 2(5:5) (2006)Google Scholar
- 23.Heljanko, K., Niemelä, I.: Bounded LTL model checking with stable models. Theory and Practice of Logic Programming 3(4&5), 519–550 (2003)MATHCrossRefMathSciNetGoogle Scholar