LOUD: Synthesizing Strongest and Weakest Specifications
Kanghee Park, Xuanyu Peng, Loris D'Antoni
摘要
This paper tackles the problem of synthesizing specifications for nondeterministic programs. For such programs, useful specifications can capture demonic properties, which hold for every nondeterministic execution, but also angelic properties, which hold for some nondeterministic execution. We build on top of a recently proposed framework by Park et al. [37] in which given (i) a quantifier-free query Ψ posed about a set of function definitions (i.e., the behavior for which we want to generate a specification), and (ii) a language L in which each extracted property is to be expressed (we call properties in the language L-properties), the goal is to synthesize a conjunction 𝑖 𝜑 𝑖 of L-properties such that each of the 𝜑 𝑖 is a strongest L-consequence for Ψ: 𝜑 𝑖 is an over-approximation of Ψ and there is no other L-property that over-approximates Ψ and is strictly more precise than 𝜑 𝑖 . This framework does not apply to nondeterministic programs for two reasons: it does not support existential quantifiers in queries (which are necessary to expressing nondeterminism) and it can only compute L-consequences, i.e., it is unsuitable for capturing both angelic and demonic properties.
This paper addresses these two limitations and presents a framework, loud, for synthesizing both strongest L-consequences and weakest L-implicants (i.e., under-approximations of the query Ψ) for queries that can involve existential quantifiers. We devise algorithms for handling the quantifiers appearing in loud queries and implement them in a solver, aspire, for problems expressed in loud which can be used to describe and identify sources of bugs in both deterministic and nondeterministic programs, extract properties from concurrent programs, and synthesize winning strategies in two-player games.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper2
- Optimal Predicate Pushdown SynthesisRobert Zhang, Eric Hayden Campbell, Dixin Tang, Isil DilligPLDI 2026 · 被引用 1 次
- Nice to Meet You: Synthesizing Practical MLIR Abstract TransformersXuanyu Peng, Dominic Kennedy, Yuyou Fan, Ben Greenman 等POPL 2026
它引用的顶会 Paper8
- Incorrectness logicPeter W. O'HearnPOPL 2020 · 被引用 122 次
- Polynomial invariant generation for non-deterministic recursive programsKrishnendu Chatterjee, Hongfei Fu, Amir Kafshdar Goharshady, Ehsan Kafshdar GoharshadyPLDI 2020 · 被引用 46 次
- Data-driven inference of representation invariantsAnders Miltner, Saswat Padhi, Todd D. Millstein, David WalkerPLDI 2020 · 被引用 33 次
- Synthesizing abstract transformersPankaj Kumar Kalita, Sujit Kumar Muduli, Loris D'Antoni, Thomas W. Reps 等OOPSLA 2022 · 被引用 21 次
- Abstract interpretation repairRoberto Bruni, Roberto Giacobazzi, Roberta Gori, Francesco RanzatoPLDI 2022 · 被引用 15 次
相关 Paper
- Synthesizing SpecificationsKanghee Park, Loris D'Antoni, Thomas W. RepsOOPSLA 2023 · 被引用 9 次
- Bottom-up synthesis of recursive functional programs using angelic executionAnders Miltner, Adrian Trejo Nuñez, Ana Brendel, Swarat Chaudhuri 等POPL 2022 · 被引用 38 次
- Piecewise Analysis of Probabilistic Programs via 𝑘-InductionTengshun Yang, Shenghua Feng, Hongfei Fu, Naijun Zhan 等POPL 2026
- Expecto: Extracting Formal Specifications from Natural Language Description for Trustworthy OraclesDongjae Lee, Kihong HeoPLDI 2026
- Specification synthesis with constrained Horn clausesSumanth Prabhu S, Grigory Fedyukovich, Kumar Madhukar, Deepak D'SouzaPLDI 2021 · 被引用 24 次
