Conference item icon

Conference item

Synthesising interprocedural bit-precise termination proofs

Abstract:
Proving program termination is key to guaranteeing absence of undesirable behaviour, such as hanging programs and even security vulnerabilities such as denial-of-service attacks. To make termination checks scale to large systems, interprocedural termination analysis seems essential, which is a largely unexplored area of research in termination analysis, where most effort has focussed on difficult single-procedure problems. We present a modular termination analysis for C programs using template-based interprocedural summarisation. Our analysis combines a context-sensitive, over-approximating forward analysis with the inference of under-approximating preconditions for termination. Bit-precise termination arguments are synthesised over lexicographic linear ranking function templates. Our experimental results show that our tool 2LS outperforms state-of-the-art alternatives, and demonstrate the clear advantage of interprocedural reasoning over monolithic analysis in terms of efficiency, while retaining comparable precision.
Publication status:
Published
Peer review status:
Peer reviewed

Actions

Access Document

Files:
Publisher copy:
10.1109/ASE.2015.10

Authors

More by this author
Institution:
University of Oxford
Division:
MPLS
Department:
Computer Science
Role:
Author

Contributors

Role:
Editor
Role:
Editor
Role:
Editor


Publisher:
IEEE
Host title:
30th IEEE/ACM International Conference on Automated Software Engineering (ASE)
Journal:
30th IEEE/AC30th IEEE/ACM International Conference on Automated Software Engineering (ASE) More from this journal
Pages:
53-64
Publication date:
2016-01-04
DOI:
ISBN:
9781509000241


Keywords:
Pubs id:
pubs:606648
UUID:
uuid:33745f28-a242-499c-8a57-d106df7ad2f3
Local pid:
pubs:606648
Source identifiers:
606648
Deposit date:
2017-01-28
ARK identifier:

Terms of use


Views and Downloads

Views and downloads will return soon






If you are the owner of this record, you can report an update to it here: Report update to this record

TO TOP