Reducing behavioural to structural properties of programs with procedures
2013 (English)In: Theoretical Computer Science, ISSN 0304-3975, Vol. 480, 69-103 p.Article in journal (Refereed) Published
There is an intimate link between program structure and behaviour. Exploiting this link to phrase program correctness problems in terms of the structural properties of a program graph rather than in terms of its unfoldings is a useful strategy for making analyses more tractable. The present paper presents a characterisation of behavioural program properties through sets of structural properties by means of a translation. The characterisation is given in the context of a program model based on control flow graphs of sequential programs with procedures, abstracting away completely from program data, and properties expressed in a fragment of the modal mu-calculus with boxes and greatest fixed-points only. The property translation is based on a tableau construction that conceptually amounts to symbolic execution of the behavioural formula, collecting structural constraints along the way. By keeping track of the subformulae that have been examined, recursion in the structural constraints can be identified and captured by fixed-point formulae. The tableau construction terminates, and the characterisation is exact, i.e., the translation is sound and complete. A prototype implementation has been developed. In addition, we show how the translation can be extended beyond the basic flow graph model and safety logic to richer behavioural models (such as open programs) and richer program models (including Boolean programs), and discuss possible extensions for more complex logics. We present several applications of the characterisation, in particular sound and complete compositional verification for behavioural properties based on maximal models.
Place, publisher, year, edition, pages
2013. Vol. 480, 69-103 p.
Compositional reasoning, Control-flow behaviour, Control-flow structure, Modal mu-calculus, Program verification, Safety properties
IdentifiersURN: urn:nbn:se:kth:diva-122330DOI: 10.1016/j.tcs.2013.02.006ISI: 000317700600004ScopusID: 2-s2.0-84875518346OAI: oai:DiVA.org:kth-122330DiVA: diva2:622479
FunderEU, European Research Council, IST-FP6-STREP-27004 S3MS IST-2005-015905 MOBIUS
QC 201305222013-05-222013-05-202013-05-22Bibliographically approved