paperbot · PL 论文追踪

全部论文 待读 收藏

P2 LOUD: Synthesizing Strongest and Weakest Specifications

LOUD:合成最强和最弱规范
OOPSLA 9(OOPSLA1)2025匹配度 4/10 · 该论文属于程序验证/规范合成方向(存在量词规范合成、非确定程序),与用户关注的形式化验证领域相邻,但完全没有涉及 LLM/Agent 与静态分析的交叉,也不涉及浮点或贝叶斯程序分析,因此只与画像的边缘相关。引用 1 inbox
Kanghee Park, Xuanyu Peng, Loris D'Antoni
crossref: 2026-09-10

AI 速览

一句话:提出 LOUD 框架,为含存在量词的非确定程序同时合成最强 ℒ-推论与最弱 ℒ-蕴含式规范。

本文研究非确定程序的规范合成问题。此类程序既有对所有非确定执行成立的 demonic 性质,也有对某些执行成立的 angelic 性质。现有 spyro 框架只能处理无量词查询并合成最强的 ℒ-推论(过近似),无法表达非确定性和 angelic 性质。作者提出 LOUD 框架,支持带存在量词的查询,并同时合成最强 ℒ-推论与最弱 ℒ-蕴含式(欠近似)。文中给出处理查询中量词的算法,并实现求解器 ASPIRE。该求解器可用于定位确定/非确定程序中的缺陷、从并发程序中抽取性质,以及合成双人博弈的获胜策略。

问题
为包含非确定性的程序合成能同时刻画 demonic 与 angelic 性质的规范;现有 spyro 框架无法处理存在量词,也不能生成欠近似规范。
方法
提出 LOUD 框架,将 spyro 扩展到可含存在量词的查询,设计量词处理算法,同时合成最强 ℒ-推论与最弱 ℒ-蕴含式,并实现求解器 ASPIRE。
评估
通过 ASPIRE 求解器在确定/非确定程序缺陷定位、并发程序性质抽取和双人博弈获胜策略合成等任务上展示框架的适用性。
原文摘要(Abstract)

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 spyro framework 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 ℒ in which each extracted property is to be expressed (we call properties in the language ℒ-properties), the goal is to synthesize a conjunction ∧ 𝑖 𝜑 𝑖 of ℒ-properties such that each of the 𝜑 𝑖 is a strongest ℒ -consequence for Ψ: 𝜑 𝑖 is an overapproximation of Ψ and there is no other ℒ-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 ℒ-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 ℒ -consequences and weakest ℒ -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.

链接与引用

DOI 原文 · PDF(开放获取) ·

BibTeX
@article{paperbot3214,
  title = {LOUD: Synthesizing Strongest and Weakest Specifications},
  author = {Kanghee Park and Xuanyu Peng and Loris D'Antoni},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {9},
  number = {OOPSLA1},
  year = {2025},
  doi = {10.1145/3720470}
}