Nonlinear Craig Interpolant Generation
Ting Gan, Bican Xia, Bai Xue, Naijun Zhan, Liyun Dai

TL;DR
This paper introduces a method for generating nonlinear Craig interpolants for polynomial formulas using semi-definite programming, enhancing the scalability of formal verification techniques involving nonlinear theories.
Contribution
It proves the existence of polynomial interpolants for certain nonlinear formulas and reduces their synthesis to semi-definite programming, with a verification method to ensure soundness.
Findings
Existence of polynomial interpolants for specific nonlinear formulas.
Reduction of interpolant synthesis to semi-definite programming.
A verification approach to ensure the soundness of the interpolants.
Abstract
Interpolation-based techniques have become popularized in recent years because of their inherently modular and local reasoning, which can scale up existing formal verification techniques like theorem proving, model-checking, abstraction interpretation, and so on, while the scalability is the bottleneck of these techniques. Craig interpolant generation plays a central role in interpolation-based techniques, and therefore has drawn increasing attentions. In the literature, there are various works done on how to automatically synthesize interpolants for decidable fragments of first-order logic, linear arithmetic, array logic, equality logic with uninterpreted functions (EUF), etc., and their combinations. But Craig interpolant generation for non-linear theory and its combination with the aforementioned theories are still in infancy, although some attempts have been done. In this paper, we…
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
TopicsLogic, programming, and type systems · Formal Methods in Verification · Polynomial and algebraic computation
