Affine Disjunctive Invariant Generation with Farkas' Lemma

07/25/2023
by   Hongming Liu, et al.
0

Invariant generation is the classical problem that aims at automated generation of assertions that over-approximates the set of reachable program states in a program. We consider the problem of generating affine invariants over affine while loops (i.e., loops with affine loop guards, conditional branches and assignment statements), and explore the automated generation of disjunctive affine invariants. Disjunctive invariants are an important class of invariants that capture disjunctive features in programs such as multiple phases, transitions between different modes, etc., and are typically more precise than conjunctive invariants over programs with these features. To generate tight affine invariants, existing constraint-solving approaches have investigated the application of Farkas' Lemma to conjunctive affine invariant generation, but none of them considers disjunctive affine invariants.

READ FULL TEXT
research
06/01/2021

Porous Invariants

We introduce the notion of porous invariants for multipath (or branching...
research
07/18/2019

On the Monniaux Problem in Abstract Interpretation

The Monniaux Problem in abstract interpretation asks, roughly speaking, ...
research
12/11/2020

Probabilistic Conditional System Invariant Generation with Bayesian Inference

Invariants are a set of properties over program attributes that are expe...
research
02/06/2018

Polynomial Invariants for Affine Programs

We exhibit an algorithm to compute the strongest polynomial (or algebrai...
research
06/27/2019

Invariant Detection with Program Verification Tools

Compilers can specialize programs having invariants for performance impr...
research
05/19/2020

Pegasus: Sound Continuous Invariant Generation

Continuous invariants are an important component in deductive verificati...
research
02/26/2021

Recovering or Testing Extended-Affine Equivalence

Extended Affine (EA) equivalence is the equivalence relation between two...

Please sign up or login with your details

Forgot password? Click here to reset