Verifying Total Correctness of Graph Programs

Authors

  • Christopher Poskitt ETH Zürich
  • Detlef Plump The University of York, UK

DOI:

https://doi.org/10.14279/tuj.eceasst.61.827

Abstract

GP 2 is an experimental nondeterministic programming language based on graph transformation rules, allowing for visual programming and the solving of graph problems at a high-level of abstraction. In previous work we demonstrated how to verify graph programs using a Hoare-style proof calculus, but only partial correctness was considered. In this paper, we add new proof rules and termination functions, which allow for proofs to additionally guarantee that program executions always terminate (weak total correctness), or that programs always terminate and do so without failure (total correctness). We show that the new proof rules are sound with respect to the operational semantics of GP 2, complete for termination, and demonstrate their use on some example programs.

Downloads

Published

2013-06-25

How to Cite

[1]
C. Poskitt and D. Plump, “Verifying Total Correctness of Graph Programs”, eceasst, vol. 61, Jun. 2013.