带递归定义的SMT公式求解技术综述
作者:
作者单位:

作者简介:

通讯作者:

中图分类号:

TP301

基金项目:

中国科学院战略性先导科技专项 (XDA0320101)


Survey on Solving SMT Formulas with Recursive Definitions
Author:
Affiliation:

Fund Project:

  • 摘要
  • |
  • 图/表
  • |
  • 访问统计
  • |
  • 参考文献
  • |
  • 相似文献
  • |
  • 引证文献
  • |
  • 资源附件
  • |
  • 文章评论
    摘要:

    带有递归数据结构, 如列表(list) 和二叉树(tree) 等数据类型的程序, 在计算机领域被广泛使用. 程序验证问题通常将程序转换为可满足性模理论(satisfiability modulo theories, SMT)公式进行求解. 递归数据结构通常会转换为代数数据类型(algebraic data type, ADT)和整数等混合理论的一阶逻辑公式. 另外, 为表示递归数据结构的性质, 程序中通常需要包含递归函数, 递归函数在SMT中则需要通过包含量词和未解释函数的断言来表示. 关注带有ADT和递归函数这两类递归定义SMT公式的求解方法. 从SMT求解器、自动定理证明器和约束霍恩子句(constrained Horn clause, CHC)求解器这3方面对现有技术进行梳理和介绍. 同时, 对主流的求解工具进行统一实验对比, 探究现有求解工具和技术在各类问题上的优势和缺陷, 尝试寻找潜在的优化方向, 为研究者提供有价值的分析和参考.

    Abstract:

    Programs with recursive data structures, such as list and tree, are widely used in computer science. Program verification problems are often translated into satisfiability modulo theories (SMT) formulas for solving. Recursive data structures are usually converted into first-order logic formulas combining algebraic data types (ADTs) and other theories such as integers. To express properties of recursive data structures, programs often include recursive functions, which in SMT are represented using assertions with quantifiers and uninterpreted functions. This study focuses on solving methods for SMT formulas with both ADTs and recursive functions. Existing techniques are reviewed from three perspectives: SMT solvers, automated theorem provers, and constrained Horn clause (CHC) solvers. Furthermore, the study conducts unified experiments to compare state-of-the-art tools on different benchmarks. It investigates the advantages and limitations of existing solving tools and techniques on various types of problems and explores potential optimization directions, providing valuable analyses and references for researchers.

    参考文献
    相似文献
    引证文献
引用本文

冯维直,刘嘉祥,张立军,吴志林.带递归定义的SMT公式求解技术综述.软件学报,2026,37(2):508-542

复制
相关视频

分享
文章指标
  • 点击次数:
  • 下载次数:
  • HTML阅读次数:
  • 引用次数:
历史
  • 收稿日期:2025-02-18
  • 最后修改日期:2025-07-23
  • 录用日期:
  • 在线发布日期: 2025-12-10
  • 出版日期: 2026-02-06
文章二维码
您是第位访问者
版权所有:中国科学院软件研究所 京ICP备05046678号-3
地址:北京市海淀区中关村南四街4号,邮政编码:100190
电话:010-62562563 传真:010-62562533 Email:jos@iscas.ac.cn
技术支持:北京勤云科技发展有限公司

京公网安备 11040202500063号