Advertisement

Slicing Concurrent Real-Time System Specifications for Verification

  • Ingo Brückner
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4591)

Abstract

The high-level specification language CSP-OZ-DC has been shown to be well-suited for modelling and analysing industrially relevant concurrent real-time systems. It allows us to model each of the most important functional aspects such as control flow, data, and real-time requirements in adequate notations, maintaining a common semantic foundation for subsequent verification. Slicing on the other hand has become an established technique to complement the fight against state space explosion during verification which inherently accompanies increasing system complexity. In this paper, we exploit the special structure of CSP-OZ-DC specifications by extending the dependence graph—which usually serves as a basis for slicing—with several new types of dependencies, including timing dependencies derived from the specification’s DC part. Based on this we show how to compute a specification slice and prove correctness of our approach.

Keywords

Model Check Dependence Graph Parallel Composition Control Dependence State Space Explosion 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Brückner, I.: Slicing CSP-OZ-DC Specifications for Verification. Technical report, Univ. Oldenburg (2007) http://csd.informatik.uni-oldenburg.de/~ingo/ifm07.pdf
  2. 2.
    Brückner, I., Dräger, K., Finkbeiner, B., Wehrheim, H.: Slicing Abstractions (to appear). In: FSEN 2007. LNCS, Springer, Heidelberg (to appear, 2007)Google Scholar
  3. 3.
    Brückner, I., Wehrheim, H.: Slicing an Integrated Formal Method for Verification. In: Lau, K.-K., Banach, R. (eds.) ICFEM 2005. LNCS, vol. 3785, pp. 360–374. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  4. 4.
    Brückner, I., Wehrheim, H.: Slicing Object-Z Specifications for Verification. In: Treharne, H., King, S., Henson, M.C., Schneider, S. (eds.) ZB 2005. LNCS, vol. 3455, pp. 414–433. Springer, Heidelberg (2005)Google Scholar
  5. 5.
    Chang, D., Richardson, D.: Static and Dynamic Specification Slicing. In: SIGSOFT ISSTA, pp. 138–153. ACM Press, New York (1994)Google Scholar
  6. 6.
    Clarke, E.M., Grumberg, O., Jha, S., Lu, Y., Veith, H.: Counterexample-Guided Abstraction Refinement. In: CAV 2000, pp. 154–169 (2000)Google Scholar
  7. 7.
    Dwyer, M.B., Hatcliff, J., Hoosier, M., Ranganath, V., Wallentine, R., Wallentine, T.: Evaluating the Effectiveness of Slicing for Model Reduction of Concurrent Object-Oriented Programs. In: Hermanns, H., Palsberg, J. (eds.) TACAS 2006 and ETAPS 2006. LNCS, vol. 3920, Springer, Heidelberg (2006)CrossRefGoogle Scholar
  8. 8.
    Faber, J., Meyer, R.: Model Checking Data-Dependent Real-Time Properties of the European Train Control System. In: FMCAD 2006, pp. 76–77. IEEE Computer Society Press, Los Alamitos (2006)Google Scholar
  9. 9.
    Hansen, M.R., Chaochen, Z.: Duration Calculus: Logical Foundations. Formal Aspects of Computing 9, 283–330 (1997)zbMATHCrossRefGoogle Scholar
  10. 10.
    Hatcliff, J., Dwyer, M., Zheng, H.: Slicing Software for Model Construction. Higher-order and Symbolic Computation 13(4), 315–353 (2000)zbMATHCrossRefGoogle Scholar
  11. 11.
    Hoare, C.A.R.: Communicating Sequential Processes. Prentice-Hall, Englewood Cliffs (1985)zbMATHGoogle Scholar
  12. 12.
    Hoenicke, J.: Combination of Processes, Data, and Time. PhD thesis, Univ. of Oldenburg (2006)Google Scholar
  13. 13.
    Hoenicke, J., Maier, P.: Model-checking specifications integrating processes, data and time. In: Fitzgerald, J.A., Hayes, I.J., Tarlecki, A. (eds.) FM 2005. LNCS, vol. 3582, pp. 465–480. Springer, Heidelberg (2005)Google Scholar
  14. 14.
    Janowska, A., Janowski, P.: Slicing Timed Systems. Fundamenta Informaticae 60(1-4), 187–210 (2004)zbMATHMathSciNetGoogle Scholar
  15. 15.
    Mahony, B., Dong, J.S.: Timed communicating Object-Z. IEEE Transactions on Software Engineering 26(2), 150–177 (2000)CrossRefGoogle Scholar
  16. 16.
    Meyer, R., Faber, J., Rybalchenko, A.: Model Checking Duration Calculus: A Practical Approach. In: Barkaoui, K., Cavalcanti, A., Cerone, A. (eds.) ICTAC 2006. LNCS, vol. 4281, pp. 332–346. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  17. 17.
    Millett, L., Teitelbaum, T.: Issues in Slicing Promela and its Applications to Model Checking. STTT 2(4), 343–349 (2000)zbMATHCrossRefGoogle Scholar
  18. 18.
    Peled, D.A.: Ten years of partial order reduction. In: Vardi, M.Y. (ed.) CAV 1998. LNCS, vol. 1427, pp. 17–28. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  19. 19.
    Podelski, A., Rybalchenko, A.: ARMC: the logical choice for software model checking with abstraction refinement. In: Hanus, M. (ed.) PADL 2007. LNCS, vol. 4354, Springer, Heidelberg (2006)Google Scholar
  20. 20.
    Smith, G.: The Object-Z Specification Language. Kluwer Academic Publishers, Dordrecht (2000)zbMATHGoogle Scholar
  21. 21.
    Smith, G., Hayes, I.J.: An introduction to Real-Time Object-Z. Formal Aspects of Computing 13(2), 128–141 (2002)zbMATHCrossRefGoogle Scholar
  22. 22.
    Syspect. Endbericht der Projektgruppe Syspect. Technical report, Univ. of Oldenburg (2006), http://syspect.informatik.uni-oldenburg.de/
  23. 23.
    Tip, F.: A Survey of Program Slicing Techniques. Journal of Programming Languages 3(3), 121–189 (1995)Google Scholar
  24. 24.
    Treharne, H., Schneider, S.A.: Communicating B Machines. In: Bert, D., Bowen, J.P., Henson, M.C., Robinson, K. (eds.) B 2002 and ZB 2002. LNCS, vol. 2272, pp. 416–435. Springer, Heidelberg (2002)Google Scholar
  25. 25.
    Weiser, M.: Programmers use slices when debugging. Communications of the ACM 25(7), 446–452 (1982)CrossRefGoogle Scholar
  26. 26.
    Woodcock, J.C.P., Cavalcanti, A.L.C.: The Semantics of Circus. In: Bert, D., Bowen, J.P., Henson, M.C., Robinson, K. (eds.) B 2002 and ZB 2002. LNCS, vol. 2272, pp. 184–203. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  27. 27.
    Wu, F., Yi, T.: Slicing Z Specifications. SIGPLAN 39(8), 39–48 (2004)CrossRefGoogle Scholar
  28. 28.
    Xu, B., Qian, J., Zhang, X., Wu, Z., Chen, L.: A brief survey of program slicing. SIGSOFT SEN 30(2), 1–36 (2005)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Ingo Brückner
    • 1
  1. 1.Universität Oldenburg, Department Informatik, 26111 OldenburgGermany

Personalised recommendations