EPSRC Reference: 
EP/F043767/1 
Title: 
Cyclic Proofs for LogicBased Program Verification 
Principal Investigator: 
Brotherston, Dr J 
Other Investigators: 

Researcher CoInvestigators: 

Project Partners: 

Department: 
Dept of Computing 
Organisation: 
Imperial College London 
Scheme: 
Postdoc Research Fellowship 
Starts: 
01 November 2008 
Ends: 
31 October 2011 
Value (£): 
253,391

EPSRC Research Topic Classifications: 
Fundamentals of Computing 


EPSRC Industrial Sector Classifications: 
No relevance to Underpinning Sectors 


Related Grants: 

Panel History: 

Summary on Grant Application Form 
The last few years have seen a increasingly widespreadinterest, both from the academic perspective and from elementsof industry, in the mathematical verification of desirableproperties of computer programs. Such properties might state,for example, that a program does not exceed its memory bounds(``memory safety'') or that it is always able to perform acertain action (``liveness''). The development of appropriatereasoning principles for programs and of proof systems andcomputer tools supporting those principles is thus currentlyattracting considerable activity amongst the computer scienceresearch community.Despite the advances in developing various forms of programlogic, the underlying notion of a *proof* of a programproperty has changed very little; by default, a proof is afinite tree whose construction respects the particularinference rules of the logic (a.k.a. derivation tree ), sothat the leaves of the tree are axiom instances and the root ofthe tree is the theorem to be proven, with intermediate nodesrelated by logical inferences. Recently, however, analternative mode of formal proof has been mooted as a paradigmfor reasoning in logics that feature various forms ofrecursion, known as *cyclic proof*. A cyclic proof isessentially obtained by identifying some cycles in a derivationtree, i.e., a cyclic proof is really a regular, infinitederivation tree, represented in cyclic graph form. Typically,not every such proof structure represents a sound proof, so anadditional, global guardedness condition is imposed oncyclic proofs that ensures their soundness. The existing investigations of cyclic proof, first in the purelogical settings of firstorder logic and BI with inductivedefinitions, and subsequently in a separation logic systemfor proving termination of simple programs, have demonstratedits viability as a tool for formal reasoning, and its potentialpower as a proof method. Moreover, in the case of firstorderlogic with inductive definitions, a completeness result foran associated infinitary proof system establishes the semanticnaturality of the approach. We view our previous work in thesedirections as having substantially established the area ofcyclic proof as both a theoretically natural one worthy ofstudy, and ripe for applications in program verification.The broad aim of the proposed Postdoctoral Fellowship is tobuild on the developed theoretical foundations of cyclic proof,and especially its initial development into separationlogicbased reasoning about programs, in order to furtherexploit the ideas in the direction of applications. First, we wish to formulate and analyse cyclic proof systems for program verification based on separation logic, and to extend the cyclic proof concept to mixed induction and coinduction. Second, we wish to investigate the potential of cyclic proof as a vehicle for automated theorem proving.

Key Findings 
This information can now be found on Gateway to Research (GtR) http://gtr.rcuk.ac.uk

Potential use in nonacademic contexts 
This information can now be found on Gateway to Research (GtR) http://gtr.rcuk.ac.uk

Impacts 
Description 
This information can now be found on Gateway to Research (GtR) http://gtr.rcuk.ac.uk 
Summary 

Date Materialised 


Sectors submitted by the Researcher 
This information can now be found on Gateway to Research (GtR) http://gtr.rcuk.ac.uk

Project URL: 

Further Information: 

Organisation Website: 
http://www.imperial.ac.uk 