Synthesizing Invariants for Polynomial Programs by Semidefinite Programming

CoRR(2023)

引用 0|浏览35
暂无评分
摘要
Constraint-solving-based program invariant synthesis involves taking a parametric template, encoding the invariant conditions, and attempting to solve the constraints to obtain a valid assignment of parameters. The challenge lies in that the resulting constraints are often non-convex and lack efficient solvers. Consequently, existing works mostly rely on heuristic algorithms or general-purpose solvers, leading to a trade-off between completeness and efficiency. In this paper, we propose two novel approaches to synthesize invariants for polynomial programs using semidefinite programming (SDP). For basic semialgebraic templates, we apply techniques from robust optimization to construct a hierarchy of SDP relaxations. These relaxations induce a series of sub-level sets that under-approximate the set of valid parameter assignments. Under a certain non-degenerate assumption, we present a weak completeness result that the synthesized sets include almost all valid assignments. Furthermore, we discuss several extensions to improve the efficiency and expressiveness of the algorithm. We also identify a subclass of basic semialgebraic templates, called masked templates, for which the non-degenerate assumption is violated. Regarding masked templates, we present a substitution-based method to strengthen the invariant conditions. The strengthened constraints again admit a hierarchy of SDP approximations. Both of our approaches have been implemented, and empirical results demonstrate that they outperform the state-of-the-art methods.
更多
查看译文
关键词
polynomial programs,invariants,semidefinite
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要