Learning the boundary of inductive invariants

@article{Feldman2021LearningTB,
  title={Learning the boundary of inductive invariants},
  author={Yotam M. Y. Feldman and Shmuel Sagiv and Sharon Shoham and James R. Wilcox},
  journal={Proceedings of the ACM on Programming Languages},
  year={2021},
  volume={5},
  pages={1 - 30}
}
We study the complexity of invariant inference and its connections to exact concept learning. We define a condition on invariants and their geometry, called the fence condition, which permits applying theoretical results from exact concept learning to answer open problems in invariant inference theory. The condition requires the invariant's boundary---the states whose Hamming distance from the invariant is one---to be backwards reachable from the bad states in a small number of steps. Using… Expand
On Symmetry and Quantification: A New Approach to Verify Distributed Protocols
TLDR
This work proposes symmetric incremental induction, an extension of the finite-domain IC3/PDR algorithm, that automatically derives the required quantified inductive invariant by exploiting the connection between symmetry and quantification, and describes a procedure to automatically find a minimal finite size that yields a quantified invariant proving safety for any size. Expand
On Symmetry and Quantification: A New Approach to Verify Distributed Protocols.
TLDR
This work proposes symmetric incremental induction, an extension of the finite-domain IC3/PDR algorithm, that automatically derives the required quantified inductive invariant by exploiting the connection between symmetry and quantification, and describes a procedure to automatically find a minimal finite size that yields a quantified invariant proving safety for any size. Expand
Property-Directed Reachability as Abstract Interpretation in the Monotone Theory
TLDR
This paper shows that, surprisingly, propositional PDR can be formulated as an abstract interpretation algorithm in a logical domain, and defines a version of PDR, called Λ-PDR, in which all generalizations of counterexamples are used to strengthen a frame. Expand

References

SHOWING 1-10 OF 93 REFERENCES
Verification as Learning Geometric Concepts
TLDR
It is shown that invariants in program verification can be regarded as geometric concepts in machine learning, and the learning algorithm is extended to obtain a sound procedure that can generate proofs containing invariants that are arbitrary boolean combinations of polynomial inequalities. Expand
Complexity and information in invariant inference
TLDR
It is shown, for the first time, that by utilizing rich Hoare queries, as done in PDR, inference can be exponentially more efficient than approaches such as ICE learning, which only utilize inductiveness checks of candidates. Expand
A Data Driven Approach for Algebraic Loop Invariants
TLDR
It is shown how Guess-and-Check can be extended to generate arbitrary boolean combinations of linear equalities as invariants, which enables the technique to generate expressive invariants to be consumed by tools that cannot handle non-linear arithmetic. Expand
Automatically inferring loop invariants via algorithmic learning†
TLDR
By combining algorithmic learning, decision procedures, predicate abstraction and simple templates for quantified formulae, an automated technique for finding loop invariants is presented, able to find quantified invariants for loops from the Linux source and other realistic programs. Expand
Inductive invariant generation via abductive inference
TLDR
A backtracking search that combines Hoare-style verification condition generation with a logical abduction procedure based on quantifier elimination to speculate candidate invariants that are expressible as boolean combinations of linear integer constraints is presented. Expand
Inferring Inductive Invariants from Phase Structures
TLDR
This paper proposes user-guided invariant inference based on phase invariants, which capture the different logical phases of the protocol, and finds that phase structures are pleasantly well matched to the intuitive reasoning routinely used by domain experts to understand why distributed protocols are correct. Expand
Property-Directed Inference of Universal Invariants or Proving Their Absence
TLDR
An analyzer based on PDR∀ was able to automatically infer universal invariants strong enough to establish memory safety and certain functional correctness properties, show the absence of such invariants for certain natural programs and specifications, and detect bugs without the need for user-supplied abstraction predicates. Expand
Complexity and Algorithms for Monomial and Clausal Predicate Abstraction
TLDR
This paper presents a symbolic encoding that reduces the predicate abstraction problem to checking the satisfiability of a single formula whose size is polynomial in the size of the program and the set of predicates. Expand
Symmetry and Completeness in the Analysis of Parameterized Systems
It is shown that the cutoff method--which summarizes a parameterized system by a finite set of its instances--is complete for proving safety properties. This implies completeness of other, lessExpand
Predicate abstraction for software verification
TLDR
A novel feature of this approach is that it infers universally-quantified loop invariants, which are crucial for verifying programs that manipulate unbounded data such as arrays, and presents heuristics for generating appropriate predicates for each loop automatically. Expand
...
1
2
3
4
5
...