DeepAI
Log In Sign Up

Verifying Graph Programs with First-Order Logic

12/03/2020
by   Gia S. Wulandari, et al.
0

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.

READ FULL TEXT

page 1

page 2

page 3

page 4

10/27/2020

Verifying Graph Programs with First-Order Logic (Extended Version)

We consider Hoare-style verification for the graph programming language ...
10/06/2020

The Improved GP 2 Compiler

GP 2 is a rule-based programming language based on graph transformation ...
02/07/2020

Improving the GP 2 Compiler

GP 2 is an experimental programming language based on graph transformati...
08/05/2020

Verifying Tight Logic Programs with anthem and Vampire

This paper continues the line of research aimed at investigating the rel...
04/09/2019

Reasoning about Block-based Cloud Storage Systems

Owing to the massive growth in the storage demands of big data, Cloud St...