pith. sign in

arxiv: 1712.05581 · v2 · pith:AWRGLLBOnew · submitted 2017-12-15 · 💻 cs.PL · cs.LG· cs.LO

Invariant Synthesis for Incomplete Verification Engines

classification 💻 cs.PL cs.LGcs.LO
keywords verificationenginesframeworksynthesisinductiveinformationinvariantinvariants
0
0 comments X
read the original abstract

We propose a framework for synthesizing inductive invariants for incomplete verification engines, which soundly reduce logical problems in undecidable theories to decidable theories. Our framework is based on the counter-example guided inductive synthesis principle (CEGIS) and allows verification engines to communicate non-provability information to guide invariant synthesis. We show precisely how the verification engine can compute such non-provability information and how to build effective learning algorithms when invariants are expressed as Boolean combinations of a fixed set of predicates. Moreover, we evaluate our framework in two verification settings, one in which verification engines need to handle quantified formulas and one in which verification engines have to reason about heap properties expressed in an expressive but undecidable separation logic. Our experiments show that our invariant synthesis framework based on non-provability information can both effectively synthesize inductive invariants and adequately strengthen contracts across a large suite of programs.

This paper has not been read by Pith yet.

discussion (0)

Sign in with ORCID, Apple, or X to comment. Anyone can read and Pith papers without signing in.