FLOC 2018: FEDERATED LOGIC CONFERENCE 2018
Procedure-Modular Termination Analysis

Authors: Cristina David, Daniel Kroening and Peter Schrammel

Paper Information

Title:Procedure-Modular Termination Analysis
Authors:Cristina David, Daniel Kroening and Peter Schrammel
Proceedings:WST WST2018proceedings
Editor: Salvador Lucas
Keywords:verification, termination, interprocedural analysis
Abstract:

ABSTRACT. Non-termination is the root cause of a variety of program bugs, such as hanging programs and denial-of-service vulnerabilities. This makes an automated analysis that can prove the absence of such bugs highly desirable. To scale termination checks to large systems, an interprocedural termination analysis seems essential. This is a largely unexplored area of research in termination analysis, where most effort has focused on small but 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 the advantage of interprocedural reasoning over monolithic analysis in terms of efficiency, while retaining comparable precision.

Pages:1
Talk:Jul 18 11:00 (Session 126Q: Program termination and orderings (I))
Paper: