skip to main content
10.1145/2384616.2384656acmconferencesArticle/Chapter ViewAbstractPublication PagessplashConference Proceedingsconference-collections
research-article

Checking reachability using matching logic

Authors Info & Claims
Published:19 October 2012Publication History

ABSTRACT

This paper presents a verification framework that is parametric in a (trusted) operational semantics of some programming language. The underlying proof system is language-independent and consists of eight proof rules. The proof system is proved partially correct and relatively complete (with respect to the programming language configuration model). To show its practicality, the generic framework is instantiated with a fragment of C and evaluated with encouraging results.

References

  1. A. W. Appel. Verified software toolchain. In ESOP, volume 6602 of LNCS, pages 1--17, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. C. Barrett and C. Tinelli. CVC3. In CAV, pages 298--302, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. G. Berry and G. Boudol. The chemical abstract machine. Th. Comp. Sci., 96(1):217--248, 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. S. Blazy and X. Leroy. Mechanized semantics for the Clight subset of the C language. J. Autom. Reasoning, 43(3):263--288, 2009.Google ScholarGoogle ScholarCross RefCross Ref
  5. A. Chlipala. Mostly-automated verification of low-level pro-grams in computational separation logic. In PLDI, pages 234--245, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. M. Clavel, F. Durán, S. Eker, J. Meseguer, P. Lincoln, N. Martí-Oliet, and C. Talcott. All About Maude, volume 4350 of LNCS. 2007.Google ScholarGoogle Scholar
  7. O. Danvy and L. Nielsen. Refocusing in reduction semantics. Technical Report RS-04-26, BRICS, 2004.Google ScholarGoogle ScholarCross RefCross Ref
  8. L. M. de Moura and N. Bjørner. Z3: An efficient SMT solver. In TACAS, volume 4963 of LNCS, pages 337--340, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. D. Distefano, P. W. O'Hearn, and H. Yang. A local shape analysis based on separation logic. In TACAS, volume 3920 of LNCS, pages 287--302, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. C. Ellison and G. Rosu. An executable formal semantics of C with applications. In POPL, pages 533--544, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. M. Felleisen and R. Hieb. The revised report on the syntactic theories of sequential control and state. Th. Comp. Sci., 103 (2):235--271, 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. M. Felleisen, R. B. Findler, and M. Flatt. Semantics Engineer-ing with PLT Redex. MIT, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. R. W. Floyd. Assigning meaning to programs. In Symposium on Applied Mathematics, volume 19, pages 19--32, 1967.Google ScholarGoogle ScholarCross RefCross Ref
  14. J. Goguen and G. Malcolm. Algebraic Semantics of Imperative Programs. MIT Press, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. D. Harel, D. Kozen, and J. Tiuryn. Dynamic logic. In Handbook of Philosophical Logic, pages 497--604, 1984.Google ScholarGoogle ScholarCross RefCross Ref
  16. A. Hobor, A. W. Appel, and F. Z. Nardelli. Oracle semantics for concurrent separation logic. In ESOP, volume 4960 of LNCS, pages 353--367, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. T. Hubert and C. Marché. A case study of C source code verification: the Schorr-Waite algorithm. In SEFM, pages 190--199, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. A. Loginov, T. W. Reps, and M. Sagiv. Automated verification of the Deutsch-Schorr-Waite tree-traversal algorithm. In SAS, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. J. Meseguer. Conditioned rewriting logic as a united model of concurrency. Theor. Comput. Sci., 96(1):73--155, 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. P. D. Mosses. CASL Reference Manual, volume 2960 of LNCS. Springer, 2004.Google ScholarGoogle Scholar
  21. T. Nipkow. Winskel is (almost) right: Towards a mechanized semantics textbook. Formal Aspects of Computing, 10:171--186, 1998.Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. P. W. O'Hearn and D. J. Pym. The logic of bunched implications. Bulletin of Symb. Logic, 5(2):215--244, 1999.Google ScholarGoogle ScholarCross RefCross Ref
  23. P. W. O'Hearn, J. C. Reynolds, and H. Yang. Local reasoning about programs that alter data structures. In CSL, pages 1--19, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. D. Pavlovic and D. R. Smith. Composition and refinement of behavioral specifications. In ASE, pages 157--165, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. J. C. Reynolds. Separation logic: A logic for shared mutable data structures. In LICS, pages 55--74, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. G. Rosu and T.-F. Serbanuta. An overview of the K semantic framework. J. Log. Algebr. Program., 79(6):397--434, 2010.Google ScholarGoogle ScholarCross RefCross Ref
  27. G. Rosu and A. Stefanescu. Matching logic: a new program verification approach (NIER track). In ICSE, pages 868--871, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. G. Rosu and A. Stefanescu. Towards a unified theory of operational and axiomatic semantics. In ICALP (2), volume 7392 of LNCS, pages 351--363, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. G. Rosu and A. Stefanescu. From Hoare logic to matching logic. In FM, To appear, 2012.Google ScholarGoogle Scholar
  30. G. Rosu and A. Stefanescu. Checking reachability using matching logic. Technical Report http://hdl.handle.net/2142/33771, Univ. of Illinois, Aug. 2012.Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. G. Rosu, C. Ellison, and W. Schulte. Matching logic: An alternative to Hoare/Floyd logic. In AMAST, volume 6486 of LNCS, pages 142--162, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. S. Sagiv, T. W. Reps, and R. Wilhelm. Parametric shape analysis via 3-valued logic. ACM Trans. Prog. Lang. Syst., 24(3):217--298, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. G. Winskel. The formal semantics of programming languages - an introduction. Foundation of computing series. MIT Press, 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. A. Wright and M. Felleisen. A syntactic approach to type soundness. Inf. & Computation, 115(1):38--94, 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Checking reachability using matching logic

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Conferences
      OOPSLA '12: Proceedings of the ACM international conference on Object oriented programming systems languages and applications
      October 2012
      1052 pages
      ISBN:9781450315616
      DOI:10.1145/2384616
      • cover image ACM SIGPLAN Notices
        ACM SIGPLAN Notices  Volume 47, Issue 10
        OOPSLA '12
        October 2012
        1011 pages
        ISSN:0362-1340
        EISSN:1558-1160
        DOI:10.1145/2398857
        Issue’s Table of Contents

      Copyright © 2012 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 19 October 2012

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article

      Acceptance Rates

      Overall Acceptance Rate268of1,244submissions,22%

      Upcoming Conference

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader