Terminator: Beyond Safety (Tool Paper)

Previous symbolic software model checkers (i.e., program analysis tools based on predicate abstraction, pushdown model check- ing and iterative counterexample-guided abstraction refinement, etc.) are restricted to safety properties. Terminator is the first software model checker for termination. It is now being used to prove that device driver dispatch routines always return to their caller (or return counterexamples if they if they fail to terminate).

[1]  Alexander Serebrenik,et al.  TermiLog: A System for Checking Termination of Queries to Logic Programs , 1997, CAV.

[2]  Jürgen Giesl,et al.  Automated Termination Proofs with AProVE , 2004, RTA.

[3]  Thomas A. Henzinger,et al.  Abstractions from proofs , 2004, POPL.

[4]  Andreas Podelski,et al.  Transition invariants , 2004, Proceedings of the 19th Annual IEEE Symposium on Logic in Computer Science, 2004..

[5]  Andreas Podelski,et al.  Abstraction Refinement for Termination , 2005, SAS.

[6]  Andreas Podelski,et al.  Termination proofs for systems code , 2006, PLDI '06.

[7]  Henny B. Sipma,et al.  Practical Methods for Proving Program Termination , 2002, CAV.

[8]  Michael Codish,et al.  A Semantic Basis for the Termination Analysis of Logic Programs , 1999, J. Log. Program..

[9]  Henny B. Sipma,et al.  Termination of Polynomial Programs , 2005, VMCAI.

[10]  Alex Groce,et al.  Modular verification of software components in C , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[11]  Andreas Podelski,et al.  Transition predicate abstraction and fair termination , 2005, POPL '05.

[12]  Andreas Podelski,et al.  A Complete Method for the Synthesis of Linear Ranking Functions , 2004, VMCAI.

[13]  Neil D. Jones,et al.  The size-change principle for program termination , 2001, POPL '01.

[14]  Patrick Cousot,et al.  Systematic design of program analysis frameworks , 1979, POPL.

[15]  Sriram K. Rajamani,et al.  Thorough static analysis of device drivers , 2006, EuroSys.

[16]  Edmund M. Clarke,et al.  Counterexample-guided abstraction refinement , 2003, 10th International Symposium on Temporal Representation and Reasoning, 2003 and Fourth International Conference on Temporal Logic. Proceedings..

[17]  Patrick Cousot,et al.  Proving Program Invariance and Termination by Parametric Abstraction, Lagrangian Relaxation and Semidefinite Programming , 2005, VMCAI.