Verifying Graph Programs with First-Order Logic

We consider Hoare-style verification for the graph programming language GP 2. In previous work, graph properties were specified by so-called E-conditions which extend nested graph conditions. However, this type of assertions is not easy to comprehend by programmers that are used to formal specificat...

Full description

Saved in:
Bibliographic Details
Published inarXiv.org
Main Authors Wulandari, Gia S, Plump, Detlef
Format Paper Journal Article
LanguageEnglish
Published Ithaca Cornell University Library, arXiv.org 03.12.2020
Subjects
Online AccessGet full text
ISSN2331-8422
DOI10.48550/arxiv.2012.01662

Cover

Loading…
More Information
Summary:We consider Hoare-style verification for the graph programming language GP 2. In previous work, graph properties were specified by so-called E-conditions which extend nested graph conditions. However, this type of assertions is not easy to comprehend by programmers that are used to formal specifications in standard first-order logic. In this paper, we present an approach to verify GP 2 programs with a standard first-order logic. We show how to construct a strongest liberal postcondition with respect to a rule schema and a precondition. We then extend this construction to obtain strongest liberal postconditions for arbitrary loop-free programs. Compared with previous work, this allows to reason about a vastly generalised class of graph programs. In particular, many programs with nested loops can be verified with the new calculus.
Bibliography:SourceType-Working Papers-1
ObjectType-Working Paper/Pre-Print-1
content type line 50
ISSN:2331-8422
DOI:10.48550/arxiv.2012.01662