一句话:提出跨理论近似方法并实现 Iris,通过理论间最优解一致性检测 OMT 求解器缺陷。
优化模理论(OMT)求解器在程序语言应用中广泛使用,但其可能因隐蔽缺陷给出错误最优解,且最优解真值难获取、现有 SMT 测试难以覆盖可满足性与优化推理的交互。本文提出跨理论近似验证方法:利用不同逻辑理论解空间之间的关系,定义跨理论一致性属性,并通过理论特定变换比较最优解,例如整数最优解应能一致地映射到实数算术域,偏离则提示潜在缺陷。作者实现 Iris 框架,在 Z3 和 OptiMathSAT 等先进 OMT 求解器上测试,发现 24 个此前未知缺陷,其中 20 个已被开发者修复,且大多为正确性问题,表明该方法能有效提升 OMT 求解器可靠性。
Optimization Modulo Theories (OMT) extends Satisfiability Modulo Theories (SMT) by integrating logical reasoning with numerical optimization to address constrained optimization problems across diverse theories. Optimizing SMT solvers (also known as OMT solvers), designed to handle such problems, serve as foundational components in numerous applications within programming languages research and practice. However, despite their widespread adoption, OMT solvers are susceptible to subtle yet critical bugs that can silently mislead downstream applications by providing incorrect optimal solutions, potentially leading to severe consequences. Validating these solvers poses a fundamental challenge, as obtaining precise ground truth for optimal solutions is inherently difficult, particularly under complex or theory-specific objective functions. Moreover, existing SMT solver testing techniques are inadequate, as they fail to capture the intricate interplay between satisfiability checking and optimization reasoning in OMT. To overcome these challenges, we propose cross-theory approximation, a novel validation methodology that leverages the relationships between solution spaces of different logical theories. The key insight is that an optimal solution produced in one theory should maintain expected relationships when interpreted in another comparable theory's solution space. By defining these cross-theory consistency properties and comparing optimal solutions obtained through theory-specific transformations, we can detect discrepancies that indicate potential solver bugs. For instance, an integer-optimal solution should map cleanly into the broader real-arithmetic domain; deviations from this expected relationship signal incorrect optimization behavior. We implement this methodology in Iris, a practical framework for validating OMT solvers. When testing on the advanced OMT solvers, including Z3 and OptiMathSAT, Iris uncovers 24 previously unknown bugs, 20 of which were subsequently resolved by developers. Notably, most of our reported bugs are correctness issues, emphasizing the effectiveness of our approach in enhancing OMT solver reliability.
@article{paperbot12125,
title = {Validating Optimizing SMT Solvers via Cross-Theory Approximation},
author = {Maolin Sun and Fuqi Jia and Yibiao Yang and Yuming Zhou},
journal = {Proceedings of the ACM on Programming Languages},
volume = {10},
number = {OOPSLA2},
year = {2026},
doi = {10.1145/3839537}
}