Proving Non-Termination via Loop Acceleration

05/27/2019
by   Florian Frohn, et al.
0

We present the first approach to prove non-termination of integer programs that is based on loop acceleration. If our technique cannot show non-termination of a loop, it tries to accelerate it instead in order to find paths to other non-terminating loops automatically. The prerequisites for our novel loop acceleration technique generalize a simple yet effective non-termination criterion. Thus, we can use the same program transformations to facilitate both non-termination proving and loop acceleration. In particular, we present a novel invariant inference technique that is tailored to our approach. An extensive evaluation of our fully automated tool LoAT shows that it is competitive with the state of the art.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
11/27/2021

A Calculus for Modular Loop Acceleration and Non-Termination Proofs

Loop acceleration can be used to prove safety, reachability, runtime bou...
research
02/09/2022

Proving Non-Termination and Lower Runtime Bounds with LoAT (System Description)

We present the new version of the Loop Acceleration Tool (LoAT), a power...
research
12/05/2022

Proving False in Object-Oriented Verification Programs by Exploiting Non-Termination

We looked at three different object-oriented program verifiers: Gobra, K...
research
08/21/2020

How to Design While Loops

Beginning students find the syntactic construct known as a while loop di...
research
01/06/2020

A Calculus for Modular Loop Acceleration

Loop acceleration can be used to prove safety, reachability, runtime bou...
research
10/25/2019

On the Decidability of Termination for Polynomial Loops

We consider the termination problem for triangular weakly non-linear loo...
research
04/02/2021

Proving Non-termination by Program Reversal

We present a new approach to proving non-termination of non-deterministi...

Please sign up or login with your details

Forgot password? Click here to reset