Solving Invariant Generation for Unsolvable Loops

06/14/2022
by   Daneshvar Amrollahi, et al.
0

Automatically generating invariants, key to computer-aided analysis of probabilistic and deterministic programs and compiler optimisation, is a challenging open problem. Whilst the problem is in general undecidable, the goal is settled for restricted classes of loops. For the class of solvable loops, introduced by Kapur and Rodríguez-Carbonell in 2004, one can automatically compute invariants from closed-form solutions of recurrence equations that model the loop behaviour. In this paper we establish a technique for invariant synthesis for loops that are not solvable, termed unsolvable loops. Our approach automatically partitions the program variables and identifies the so-called defective variables that characterise unsolvability. We further present a novel technique that automatically synthesises polynomials, in the defective variables, that admit closed-form solutions and thus lead to polynomial loop invariants. Our implementation and experiments demonstrate both the feasibility and applicability of our approach to both deterministic and probabilistic programs.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
06/02/2023

(Un)Solvable Loop Analysis

Automatically generating invariants, key to computer-aided analysis of p...
research
05/08/2017

Automated Generation of Non-Linear Loop Invariants Utilizing Hypergeometric Sequences

Analyzing and reasoning about safety properties of software systems beco...
research
08/16/2018

Aligator.jl - A Julia Package for Loop Invariant Generation

We describe the Aligator.jl software package for automatically generatin...
research
05/07/2019

Automatic Generation of Moment-Based Invariants for Prob-Solvable Loops

One of the main challenges in the analysis of probabilistic programs is ...
research
07/18/2020

Analysis of Bayesian Networks via Prob-Solvable Loops

Prob-solvable loops are probabilistic programs with polynomial assignmen...
research
06/12/2023

Exact and Approximate Moment Derivation for Probabilistic Loops With Non-Polynomial Assignments

Many stochastic continuous-state dynamical systems can be modeled as pro...
research
04/30/2019

Targeted Synthesis for Programming with Data Invariants

Programmers frequently maintain implicit data invariants, which are rela...

Please sign up or login with your details

Forgot password? Click here to reset