Termination Analysis of C Programs Using Compiler Intermediate Languages

Authors Stephan Falke, Deepak Kapur, Carsten Sinz

Thumbnail PDF


  • Filesize: 0.6 MB
  • 10 pages

Document Identifiers

Author Details

Stephan Falke
Deepak Kapur
Carsten Sinz

Cite AsGet BibTex

Stephan Falke, Deepak Kapur, and Carsten Sinz. Termination Analysis of C Programs Using Compiler Intermediate Languages. In 22nd International Conference on Rewriting Techniques and Applications (RTA'11). Leibniz International Proceedings in Informatics (LIPIcs), Volume 10, pp. 41-50, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2011)


Modeling the semantics of programming languages like C for the automated termination analysis of programs is a challenge if complete coverage of all language features should be achieved. On the other hand, low-level intermediate languages that occur during the compilation of C programs to machine code have a much simpler semantics since most of the intricacies of C are taken care of by the compiler frontend. It is thus a promising approach to use these intermediate languages for the automated termination analysis of C programs. In this paper we present the tool KITTeL based on this approach. For this, programs in the compiler intermediate language are translated into term rewrite systems (TRSs), and the termination proof itself is then performed on the automatically generated TRS. An evaluation on a large collection of C programs shows the effectiveness and practicality of KITTeL on "typical" examples.
  • termination analysis; C programs; compiler intermediate languages


  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    PDF Downloads