Invariant Detection with Program Verification Tools

06/27/2019
by   Wei He, et al.
0

Compilers can specialize programs having invariants for performance improvement. Detecting program invariants that span large and complex code, however, is difficult for compilers. Traditional compilers do not perform very expensive analysis and thus only identify limited invariants, which limits the potential of subsequent optimizations. We would like to address the invariant detection problem via more sophisticated analyses using program verification tools. In this paper, we reveal pitfalls of choosing program verification tools for invariant detection, identify challenges of modeling program behavior using one of these tools—CVC4, and propose some ideas about how to address the challenges.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
05/19/2020

Pegasus: Sound Continuous Invariant Generation

Continuous invariants are an important component in deductive verificati...
research
09/14/2021

The concept of class invariant in object-oriented programming

Class invariants – consistency constraints preserved by every operation ...
research
07/25/2023

Affine Disjunctive Invariant Generation with Farkas' Lemma

Invariant generation is the classical problem that aims at automated gen...
research
11/18/2019

Invariant Diffs

Software development is inherently incremental. Nowadays, many software ...
research
03/14/2019

Are My Invariants Valid? A Learning Approach

Ensuring that a program operates correctly is a difficult task in large,...
research
04/16/2019

Using Dynamic Analysis to Generate Disjunctive Invariants

Program invariants are important for defect detection, program verificat...
research
08/27/2019

Compositional Verification of Heap-Manipulating Programs through Property-Guided Learning

Analyzing and verifying heap-manipulating programs automatically is chal...

Please sign up or login with your details

Forgot password? Click here to reset