Skip to Main content Skip to Navigation
Conference papers

Polynomial Reachability Witnesses via Stellensätze

Abstract : We consider the fundamental problem of reachability analysis over imperative programs with real variables. Previous works that tackle reachability are either unable to handle programs consisting of general loops (e.g. symbolic execution), or lack completeness guarantees (e.g. abstract interpretation), or are not automated (e.g. incorrectness logic). In contrast, we propose a novel approach for reachability analysis that can handle general and complex loops, is complete, and can be entirely automated for a wide family of programs. Through the notion of Inductive Reachability Witnesses (IRWs), our approach extends ideas from both invariant generation and termination to reachability analysis. We first show that our IRW-based approach is sound and complete for reachability analysis of imperative programs. Then, we focus on linear and polynomial programs and develop automated methods for synthesizing linear and polynomial IRWs. In the linear case, we follow the well-known approaches using Farkas' Lemma. Our main contribution is in the polynomial case, where we present a pushbutton semicomplete algorithm. We achieve this using a novel combination of classical theorems in real algebraic geometry, such as Putinar's Positivstellensatz and Hilbert's Strong Nullstellensatz. Finally, our experimental results show we can prove complex reachability objectives over various benchmarks that were beyond the reach of previous methods.
Complete list of metadata
Contributor : Amir Goharshady Connect in order to contact the contributor
Submitted on : Monday, March 29, 2021 - 7:56:01 AM
Last modification on : Tuesday, March 30, 2021 - 10:15:47 AM
Long-term archiving on: : Wednesday, June 30, 2021 - 6:09:15 PM


Files produced by the author(s)


  • HAL Id : hal-03183862, version 1


Ali Asadi, Krishnendu Chatterjee, Hongfei Fu, Amir Kafshdar Goharshady, Mohammad Mahdavi. Polynomial Reachability Witnesses via Stellensätze. 42nd ACM Conference on Programming Language Design and Implementation, PLDI 2021, Jun 2021, Montreal (virtual), Canada. ⟨hal-03183862⟩



Record views


Files downloads