Abstract
Slicing is the activity of reducing a program or a specification with respect to a given condition (the slicing criterion) such that the condition holds on the full program if and only if it holds on the reduced program. Originating from program analysis the entity to be sliced is usually a program and the slicing criterion a value of a variable at a certain program point. In this paper we present an approach to slicing Object-Z specifications with temporal logic formulae as slicing criteria and show the correctness of our approach. The underlying motivation is the goal to substantially reduce the size of the specification and subsequently facilitate verification of temporal logic properties.
This work was partly supported by the German Research Council (DFG) as part of the Transregional Collaborative Research Center “Automatic Verification and Analysis of Complex Systems” (SFB/TR 14 AVACS). See www.avacs.org for more information.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Brückner, I., Wehrheim, H.: Slicing Object-Z specifications for verification. Technical Report 3, SFB/TR 14 AVACS (2005), http://www.avacs.org/
Chang, D., Richardson, D.: Static and Dynamic Specification Slicing. In: ACM SIGSOFT international symposium on Software testing and analysis, pp. 138–153. ACM, New York (1994)
Clarke, E., Grumberg, O., Peled, D.: Model checking. MIT Press, Cambridge (1999)
Derrick, J., Smith, G.: Linear temporal logic and Z refinement. In: Rattray, C., Maharaj, S., Shankland, C. (eds.) AMAST 2004. LNCS, vol. 3116, pp. 117–131. Springer, Heidelberg (2004)
Duke, R., Rose, G.: Formal object-oriented specification using Object-Z. Macmillan, Basingstoke (2000)
Duke, R., Rose, G., Smith, G.: Object-Z: A specification language advocated for the description of standards. Computer Standards and Interfaces 17, 511–533 (1995)
Fischer, C.: CSP-OZ: A combination of Object-Z and CSP. In: Bowman, H., Derrick, J. (eds.) Formal Methods for Open Object-Based Distributed Systems (FMOODS 1997), vol. 2, pp. 423–438. Chapman & Hall, Boca Raton (1997)
Hatcliff, J., Dwyer, M., Zheng, H.: Slicing software for model construction. Higher-order and Symbolic Computation 13(4), 315–353 (2000)
Hoenicke, J., Olderog, E.-R.: Combining Specification Techniques for Processes, Data and Time. In: Butler, M., Petre, L., Sere, K. (eds.) IFM 2002. LNCS, vol. 2335, pp. 245–266. Springer, Heidelberg (2002)
Millett, L., Teitelbaum, T.: Issues in slicing PROMELA and its applications to model checking, protocol understanding, and simulation. Software Tools for Technology Transfer 2(4), 343–349 (2000)
Oda, T., Araki, K.: Specification slicing in formal methods of software development. In: Proceedings of the Seventeenth Annual International Computer Software & Applications Conference, pp. 313–319. IEEE Computer Society Press, Los Alamitos (1993)
Skakkebæk, J.U.: Liveness and fairness in duration calculus. In: Jonsson, B., Parrow, J. (eds.) CONCUR 1994. LNCS, vol. 836, pp. 283–298. Springer, Heidelberg (1994)
Smith, G.: The Object-Z Specification Language. Kluwer Academic Publishers, Dordrecht (2000)
Smith, G., Winter, K.: Proving Temporal Properties of Z specifications Using Abstraction. In: Bert, D., Bowen, J.P., King, S. (eds.) ZB 2003. LNCS, vol. 2651, pp. 260–279. Springer, Heidelberg (2003)
Tip, F.: A survey of program slicing techniques. Journal of programming languages 3(3) (1995)
Wehrheim, H.: Inheritance of Temporal Logic Properties. In: Najm, E., Nestmann, U., Stevens, P. (eds.) FMOODS 2003. LNCS, vol. 2884, pp. 79–93. Springer, Heidelberg (2003)
Wehrheim, H.: Preserving Properties under Change. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.) FMCO 2003. LNCS, vol. 3188, pp. 330–343. Springer, Heidelberg (2004)
Weiser, M.: Programmers use slices when debugging. Communications of the ACM 25(7), 446–452 (1982)
Weiser, M.: Program slicing. In: Proceedings of the 5th international conference on Software engineering, pp. 439–449. IEEE Press, Los Alamitos (1981)
Winter, K., Smith, G.: Compositional Verification for Object-Z. In: Bert, D., Bowen, J.P., King, S. (eds.) ZB 2003. LNCS, vol. 2651, pp. 280–299. Springer, Heidelberg (2003)
Chaochen, Z., Hoare, C.A.R., Ravn, A.P.: A Calculus of Durations. Information Processing Letters 40(5), 269–276 (1991)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Brückner, I., Wehrheim, H. (2005). Slicing Object-Z Specifications for Verification. In: Treharne, H., King, S., Henson, M., Schneider, S. (eds) ZB 2005: Formal Specification and Development in Z and B. ZB 2005. Lecture Notes in Computer Science, vol 3455. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11415787_24
Download citation
DOI: https://doi.org/10.1007/11415787_24
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-25559-8
Online ISBN: 978-3-540-32007-4
eBook Packages: Computer ScienceComputer Science (R0)