PROTON: PRObes for Termination Or Not (Competition Contribution)

Published: 01 Jan 2024, Last Modified: 03 Aug 2025TACAS (3) 2024EveryoneRevisionsBibTeXCC BY-SA 4.0
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.
Loading