kirancodes.me
To Proof Maintenance & Beyond!

PROTON: PRObes for Termination Or Not (Competition Contribution)

Ravindra Metta, Hrishikesh Karmarkar, Kumar Madhukar, R. Venkatesh, Supratik Chakraborty

Abstract

Abstract PROTON is a tool to check whether a given C program has a non-terminating behaviour or not. It is built around the C Bounded Model Checker (CBMC). CBMC cannot prove non-termination directly, as all non-terminating runs are unbounded. PROTON annotates the loops in a given program with assertions that check for a recurrent program state. Violation of such an assertion shows the existence of a recurrent state and thereby proves non-termination. PROTON also transforms the violating trace returned by CBMC into a non-termination witness for the program.

Related papers