UCL Discovery
UCL home » Library Services » Electronic resources » UCL Discovery

Automatically Verifying Temporal Properties of Pointer Programs with Cyclic Proof

Tellez, G; Brotherston, J; (2019) Automatically Verifying Temporal Properties of Pointer Programs with Cyclic Proof. Journal of Automated Reasoning 10.1007/s10817-019-09532-0. (In press). Green open access

[thumbnail of Automatically Verifying Temporal Properties of Pointer.pdf]
Preview
Text
Automatically Verifying Temporal Properties of Pointer.pdf - Published Version

Download (1MB) | Preview

Abstract

In this article, we investigate the automated verification of temporal properties of heap-aware programs. We propose a deductive reasoning approach based on cyclic proof. Judgements in our proof system assert that a program has a certain temporal property over memory state assertions, written in separation logic with user-defined inductive predicates, while the proof rules of the system unfold temporal modalities and predicate definitions as well as symbolically executing programs. Cyclic proofs in our system are, as usual, finite proof graphs subject to a natural, decidable soundness condition, encoding a form of proof by infinite descent. We present a proof system tailored to proving CTL properties of nondeterministic pointer programs, and then adapt this system to handle fair execution conditions. We show both versions of the system to be sound, and provide an implementation of each in the Cyclist theorem prover, yielding an automated tool that is capable of automatically discovering proofs of (fair) temporal properties of pointer programs. Experimental evaluation of our tool indicates that our approach is viable, and offers an interesting alternative to traditional model checking techniques.

Type: Article
Title: Automatically Verifying Temporal Properties of Pointer Programs with Cyclic Proof
Open access status: An open access version is available from UCL Discovery
DOI: 10.1007/s10817-019-09532-0
Publisher version: https://doi.org/10.1007/s10817-019-09532-0
Language: English
Additional information: © The Author(s) 2019. This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/).
Keywords: Cyclic proof, Temporal logic, Separation logic
UCL classification: UCL
UCL > Provost and Vice Provost Offices > UCL BEAMS
UCL > Provost and Vice Provost Offices > UCL BEAMS > Faculty of Engineering Science
UCL > Provost and Vice Provost Offices > UCL BEAMS > Faculty of Engineering Science > Dept of Computer Science
URI: https://discovery.ucl.ac.uk/id/eprint/10087494
Downloads since deposit
81Downloads
Download activity - last month
Download activity - last 12 months
Downloads by country - last 12 months

Archive Staff Only

View Item View Item