DeepAI AI Chat
Log In Sign Up

Data-driven Numerical Invariant Synthesis with Automatic Generation of Attributes

by   Ahmed Bouajjani, et al.

We propose a data-driven algorithm for numerical invariant synthesis and verification. The algorithm is based on the ICE-DT schema for learning decision trees from samples of positive and negative states and implications corresponding to program transitions. The main issue we address is the discovery of relevant attributes to be used in the learning process of numerical invariants. We define a method for solving this problem guided by the data sample. It is based on the construction of a separator that covers positive states and excludes negative ones, consistent with the implications. The separator is constructed using an abstract domain representation of convex sets. The generalization mechanism of the decision tree learning from the constraints of the separator allows the inference of general invariants, accurate enough for proving the targeted property. We implemented our algorithm and showed its efficiency.


page 1

page 2

page 3

page 4


Data-Driven Loop Invariant Inference with Automatic Feature Synthesis

We present LoopInvGen, a tool for generating loop invariants that can pr...

Toward Neural-Network-Guided Program Synthesis and Verification

We propose a novel framework of program and invariant synthesis called n...

Decision Tree Learning in CEGIS-Based Termination Analysis

We present a novel decision tree-based synthesis algorithm of ranking fu...

SymInfer: Inferring Program Invariants using Symbolic States

We introduce a new technique for inferring program invariants that uses ...

A Decision Tree Lifted Domain for Analyzing Program Families with Numerical Features (Extended Version)

Lifted (family-based) static analysis by abstract interpretation is capa...

Data Invariants: On Trust in Data-Driven Systems

The reliability and proper function of data-driven applications hinge on...

Data-Driven Inference of Representation Invariants

A representation invariant is a property that holds of all values of abs...