From Hoare Logic to Matching Logic Reachability
Matching logic reachability has been recently proposed as an alternative program verification approach. Unlike Hoare logic, where one defines a language-specific proof system that needs to be proved sound for each language separately, matching logic reachability provides a language-independent and sound proof system that directly uses the trusted operational semantics of the language as axioms. Matching logic reachability thus has a clear practical advantage: it eliminates the need for an additional semantics of the same language in order to reason about programs, and implicitly eliminates the need for tedious soundness proofs. What is not clear, however, is whether matching logic reachability is as powerful as Hoare logic. This paper introduces a technique to mechanically translate Hoare logic proof derivations into equivalent matching logic reachability proof derivations. The presented technique has two consequences: first, it suggests that matching logic reachability has no theoretical limitation over Hoare logic; and second, it provides a new approach to prove Hoare logics sound.
Unable to display preview. Download preview PDF.
- 6.Ellison, C.: Roşu, G.: An executable formal semantics of C with applications. In: POPL, pp. 533–544 (2012)Google Scholar
- 7.Felleisen, M., Findler, R.B., Flatt, M.: Semantics Engineering with PLT Redex. MIT (2009)Google Scholar
- 8.George, C., Haxthausen, A.E., Hughes, S., Milne, R., Prehn, S., Pedersen, J.S.: The RAISE Development Method. BCS Practitioner Series. Prentice-Hall (1995)Google Scholar
- 14.Roşu, G., Ştefănescu, A.: Matching logic: A new program verification approach (NIER track). In: ICSE, pp. 868–871 (2011)Google Scholar
- 15.Roşu, G., Ştefănescu, A.: From Hoare logic to matching logic reachability. Tech. Rep. Univ. of Illinois (June 2012), http://hdl.handle.net/2142/31335