A Symbolic Semantics for Abstract Model Checking

  • Francesca Levi
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1503)

Abstract

We present a finite symbolic semantics of value-passing concurrent processes, that can be suitably interpreted over abstract values to compute a lower approximate semantics of full μ calculus. The main feature of the semantics is that classical branching is replaced by explicit relations of non-deterministic and alternative choices among transitions. A combination of safe upper and lower approximations of the basic operators of the logic is used to handle negation. The relations of non-deterministic and alternative choices turn out to be very useful for the dual approximations of the existential next modality.

Key words

Model checking μ calculus abstract interpretation 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    S. Bensalem, A. Bouajjani, C. Loiseaux, and J. Sifakis. Property preserving simulations. In Proceedings of CAV 92, volume 663 of Lecture Notes in Computer Science, pages 260–263. Springer-Verlag, Berlin, 1992.Google Scholar
  2. 2.
    E.M. Clarke, O. Grumberg, and D.E. Long. Model Checking and Abstraction. In Proc. 19th Annual ACM Symp. on Principles of Programming Languages, pages 343–354. ACM Press, 1992.Google Scholar
  3. 3.
    E.M. Clarke, O. Grumberg, and D.E. Long. Model checking and abstraction. ACM Transactions on Programming Languages and Systems, 5(16):1512–1542, 1994.CrossRefGoogle Scholar
  4. 4.
    R. Cleaveland, P. Iyer, and D. Yankelevic. Optimality in Abstractions of Model Checking. In Proceedings of SAS 95, volume 983 of Lecture Notes in Computer Science, pages 51–63. Springer-Verlag, Berlin, 1995.Google Scholar
  5. 5.
    R. Cleaveland and J. Riely. Testing based abstractions for value-based systems. In Proceedings of CONCUR 94, volume 836 of Lecture Notes in Computer Science, pages 417–432. Springer-Verlag, Berlin, 1994.CrossRefGoogle Scholar
  6. 6.
    P. Cousot and R. Cousot. Abstract Interpretation: A Unified Lattice Model for Static Analysis of Programs by Construction or Approximation of Fixpoints. In Proc. Fourth ACM Symp. Principles of Programming Languages, pages 238–252, 1977.Google Scholar
  7. 7.
    P. Cousot and R. Cousot. Systematic Design of Program Analysis Frameworks. In Proc. Sixth ACM Symp. Principles of Programming Languages, pages 269–282, 1979.Google Scholar
  8. 8.
    D. Dams. Abstract Interpretation and Partition Refinement for Model Checking. PhD thesis, Eindhoven university of Technology, 1996.Google Scholar
  9. 9.
    D. Dams, R. Gerth, and O. Grumberg. Generation of reduced models for checking fragments of CTL. In Proceedings of CAV 93, volume 697 of Lecture Notes in Computer Science, pages 479–490. Springer-Verlag, Berlin, 1993.Google Scholar
  10. 10.
    D. Dams, R. Gerth, and O. Grumberg. Abstract Interpretation of Reactive Systems. ACM Transactions on Programming Languages and Systems, 19(2):253–291, 1997.CrossRefGoogle Scholar
  11. 11.
    D. Dams, O. Grumberg, and R. Gerth. Abstract interpretation of reactive systems: Abstractions preserving ∀CTL * ∃CTL* and CTL *. In Proceedings of the Working Conference on Programming Concepts, Methods and Calculi (PROCOMET), 1994.Google Scholar
  12. 12.
    M. Hennessy and H. Lin. Symbolic bisimulations. Theoretical Computer Science, 138:353–389, 1995.MATHCrossRefMathSciNetGoogle Scholar
  13. 13.
    P. Kelb. Model Checking and Abstraction: A framework preserving both truth and failure information. Technical report, OFFIS, Oldenburg, Germany, 1994.Google Scholar
  14. 14.
    D. Kozen. Results on the Propositional mu-Calculus. Theoretical Computer Science, 27:333–354, 1983.MATHCrossRefMathSciNetGoogle Scholar
  15. 15.
    F. Levi. Abstract model checking of value-passing processes. In A. Bossi, editor, International Workshop on Verification, Model Checking and Abstract Interpretation, 1997. http://www.dsi.unive.it/ bossi/VMCAI.html.
  16. 16.
    H. Lin. Symbolic Transition Graph with Assignment. In Proc. of CONCUR 96, volume 1119 of Lecture Notes in Computer Science, pages 50–65. Springer-Verlag, Berlin, 1996.Google Scholar
  17. 17.
    D.A. Schmidt. Abstract Interpretation of Small-Step Semantics. In Proc. of the LOMAPS Workshop on “Analysis and Verification of Multiple-Agent Languages”, volume 1192 of Lecture Notes in Computer Science, pages 76–99, 1996.Google Scholar
  18. 18.
    D.A. Schmidt. Data Flow Analysis is Model Checking of Abstract Interpretation. In Proc. of the Annual ACM Symp. on Principles of Programming Languages, pages 38–48. ACM Press, 1998.Google Scholar
  19. 19.
    B. Steffen. Data Flow Analysis as Model Checking. In A. Meyer, editor, Proceedings of Theoretical Aspects of Computer Software (TACS 91), volume 526 of Lecture Notes in Computer Science, pages 346–364. Springer-Verlag, Berlin, 1991.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1998

Authors and Affiliations

  • Francesca Levi
    • 1
    • 2
  1. 1.Dipartimento di InformaticaUniversitá di PisaItalia
  2. 2.LIX, École PolytechniqueFrance

Personalised recommendations