Title
A data-driven CHC solver.
Abstract
We present a data-driven technique to solve Constrained Horn Clauses (CHCs) that encode verification conditions of programs containing unconstrained loops and recursions. Our CHC solver neither constrains the search space from which a predicate's components are inferred (e.g., by constraining the number of variables or the values of coefficients used to specify an invariant), nor fixes the shape of the predicate itself (e.g., by bounding the number and kind of logical connectives). Instead, our approach is based on a novel machine learning-inspired tool chain that synthesizes CHC solutions in terms of arbitrary Boolean combinations of unrestricted atomic predicates. A CEGAR-based verification loop inside the solver progressively samples representative positive and negative data from recursive CHCs, which is fed to the machine learning tool chain. Our solver is implemented as an LLVM pass in the SeaHorn verification framework and has been used to successfully verify a large number of nontrivial and challenging C programs from the literature and well-known benchmark suites (e.g., SV-COMP).
Year
DOI
Venue
2018
10.1145/3192366.3192416
PLDI
Keywords
Field
DocType
Constrained Horn Clauses (CHCs), Data-Driven Analysis, Invariant Inference, Program Verification
Logical connective,Horn clause,Data-driven,Computer science,Theoretical computer science,Invariant (mathematics),Solver,Predicate (grammar),Recursion,Bounding overwatch
Conference
Volume
Issue
ISSN
53
4
0362-1340
ISBN
Citations 
PageRank 
978-1-4503-5698-5
4
0.39
References 
Authors
18
3
Name
Order
Citations
PageRank
He Zhu14411.69
Stephen Magill2844.44
Suresh Jagannathan328720.35