Program Verification via Predicate Constraint Satisfiability Modulo Theories
Hiroshi Unno, Yuki Satake, Tachio Terauchi, Eric Koskinen

TL;DR
This paper introduces a new verification framework using predicate Constraint Satisfaction Problems (pCSP) that generalizes existing methods and can encode complex verification problems like termination and modal mu-calculus model checking.
Contribution
It proposes a novel class of predicate CSPs, extends CLP with muCLP for richer expressiveness, and develops a sound, complete reduction and a stratified CEGIS-based solving method.
Findings
Implemented framework shows promising results on diverse verification problems.
pCSP can encode a wide range of verification tasks including termination and modal mu-calculus.
The approach outperforms previous CHC-based frameworks in expressiveness and efficiency.
Abstract
This paper presents a verification framework based on a new class of predicate Constraint Satisfaction Problems called pCSP where constraints are represented as clauses modulo first-order theories over function variables and predicate variables that may represent well-founded predicates. The verification framework generalizes an existing one based on Constrained Horn Clauses (CHCs) to arbitrary clauses, function variables, and well-foundedness constraints. While it is known that the satisfiability of CHCs and the validity of queries for Constrained Logic Programs (CLP) are inter-reducible, we show that, thanks to the added expressiveness, pCSP is expressive enough to express muCLP queries. muCLP itself is a new extension of CLP that we propose in this paper. It extends CLP with arbitrarily nested inductive and co-inductive predicates and is equi-expressive as first-order fixpoint logic.…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsFormal Methods in Verification · Logic, programming, and type systems · Logic, Reasoning, and Knowledge
