Operational Annotations: A New Method for Sequential Program Verification

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

I present a new method for specifying and verifying the partial correctness of sequential programs. The key observation is that, in Hoare logic, assertions are used as selectors of states, that is, an assertion specifies the set of program states that satisfy the assertion. Hence, the usual meaning of the partial correctness Hoare triple {f}P{g} : if execution is started in any of the states that satisfy assertion f, then, upon termination, the resulting state will be some state that satisfies assertion g. There are of course other ways to specify a set of states. Given a program α, the post-states of α are the states that α may terminate in, given that α starts executing in an arbitrary initial state. I introduce the operational triple [α]P[β] to mean: if execution of P is started in any post-state of α, then upon termination, the resulting state will be some post-state of β. Here, α is the pre-program, and plays the role of a pre-condition, and β is the post-program, and plays the role of a post-condition.

Original languageEnglish (US)
Title of host publicationNASA Formal Methods - 14th International Symposium, NFM 2022, Proceedings
EditorsJyotirmoy V. Deshmukh, Klaus Havelund, Ivan Perez
PublisherSpringer Science and Business Media Deutschland GmbH
Pages597-615
Number of pages19
ISBN (Print)9783031067723
DOIs
StatePublished - 2022
Event14th International Symposium on NASA Formal Methods, NFM 2022 - Pasadena, United States
Duration: May 24 2022May 27 2022

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume13260 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Conference

Conference14th International Symposium on NASA Formal Methods, NFM 2022
Country/TerritoryUnited States
CityPasadena
Period5/24/225/27/22

Keywords

  • Hoare logic
  • Program verification

ASJC Scopus subject areas

  • Theoretical Computer Science
  • General Computer Science

Fingerprint

Dive into the research topics of 'Operational Annotations: A New Method for Sequential Program Verification'. Together they form a unique fingerprint.

Cite this