Horn-ICE Learning for Synthesizing Invariants and Contracts

12/26/2017
by   Deepak D'Souza, et al.
0

We design learning algorithms for synthesizing invariants using Horn implication counterexamples (Horn-ICE), extending the ICE-learning model. In particular, we describe a decision-tree learning algorithm that learns from Horn-ICE samples, works in polynomial time, and uses statistical heuristics to learn small trees that satisfy the samples. Since most verification proofs can be modeled using Horn clauses, Horn-ICE learning is a more robust technique to learn inductive annotations that prove programs correct. Our experiments show that an implementation of our algorithm is able to learn adequate inductive invariants and contracts efficiently for a variety of sequential and concurrent programs.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
05/12/2022

Probabilistic Program Verification via Inductive Synthesis of Inductive Invariants

A desired property of randomized systems, represented by probabilistic p...
research
12/15/2017

Invariant Synthesis for Incomplete Verification Engines

We propose a framework for synthesizing inductive invariants for incompl...
research
11/26/2019

OASIS: ILP-Guided Synthesis of Loop Invariants

Finding appropriate inductive loop invariants for a program is a key cha...
research
02/12/2019

Polynomial Invariant Generation for Non-deterministic Recursive Programs

We present a sound and complete method to generate inductive invariants ...
research
04/16/2019

Using Dynamic Analysis to Generate Disjunctive Invariants

Program invariants are important for defect detection, program verificat...
research
06/25/2018

Finding models through graph saturation

We give a procedure that can be used to automatically satisfy invariants...
research
12/12/2021

A simple proof of three properties on Simpson's 4-slot Algorithm

In this paper we present an invariance proof of three properties on Simp...

Please sign up or login with your details

Forgot password? Click here to reset