Evaluating SAT and SMT Solvers on Large-Scale Sudoku Puzzles
Amherst College(阿默斯特学院)
本研究通过在自研生成的多难度25x25大规模数独谜题上测试,对比了Z3、CVC5等现代SMT求解器与经典SAT求解器的性能,证实SMT求解器表现更优,展现了其在大规模约束满足问题中的应用价值。
2025-01-15 cs.AI cs.LO
LLM2SMT: Building an SMT Solver with Zero Human-Written Code
Czech Technical University(捷克理工大学)
LLM2SMT通过无需人工编写代码的方式,构建了一个基于DPLL(T)风格的QF_UF SMT求解器,实现了同余闭包算法并生成证明,展示了其在SMT-LIB基准测试中的竞争力。
2026-03-10 cs.LO
Extending ACL2 with SMT Solvers
我们提出了我们的扩展ACL 2与可满足性模理论(SMT)求解器使用ACL 2的可信条款处理器机制。我们对物理系统的验证特别感兴趣,包括模拟和混合信号(AMS)设计。ACL2为序列推理提供了强大的归纳能力,SMT通过快速的非线性算术求解程序补充了ACL2等演绎方法。虽然SAT求解器已经集成到ACL2在以前的工作中,SMT方法提出了新的问题,因为它们支持更广泛的域,包括实数和未解释的功能。本文介绍了Smtlink,我们的子句处理器集成SMT求解器到ACL 2。我们描述了关键的设计和实现问题,并描述了我们的经验,其使用。
2015-09-21 cs.LO cs.PL
Towards Bit-Width-Independent Proofs in SMT Solvers
许多SMT求解器实现了有效的基于SAT的过程来求解固定大小的位向量公式。然而,这些方法不能直接用于推理符号位宽的位向量。为了解决这个缺点,我们提出了一个翻译从位向量公式的非固定位宽的公式在逻辑支持SMT求解器,包括非线性整数运算,未解释的功能,和通用量化。虽然这种逻辑是不可判定的,但这种方法仍然可以通过利用SMT解决非线性算术和通用量化公式的进步来解决许多公式。我们提供了几个案例研究中,我们已经应用这种方法与有前途的结果,包括位宽独立的可逆性条件,编译器优化,位向量重写验证。
2019-06-28 cs.LO
Language and Proofs for Higher-Order SMT (Work in Progress)
可满足性模理论(SMT)求解器多年来已经能够处理从基础逻辑到完全一阶逻辑模理论的越来越多的表达公式。然而,SMT中的高阶逻辑仍然很少被探索。Matryoshka项目于2017年3月启动,其主要目标之一是将SMT求解器和其他自动证明器的推理能力扩展到一阶逻辑之外。在这份初步报告中,我们报告了SMT-LIB语言的扩展,SMT求解器的标准输入格式,以处理高阶结构。我们还讨论了如何增强SMT求解器veriT的证明格式,以适应这些新的构造和它们所需的求解技术。
2017-12-05 cs.LO
An Incremental Abstraction Scheme for Solving Hard SMT-Instances over Bit-Vectors
基于位向量理论的SMT问题的决策过程是最先进的软件和硬件验证器中的基本组成部分。虽然通常非常有效,但某些SMT实例对于最先进的求解器仍然具有挑战性(特别是当此类实例包括计算成本高的函数时)。在这项工作中,我们提出了一种基于增量SMT求解和抽象细化的无量化器位向量理论(QF_BV在SMT-LIB)的方法。我们定义了四个具体的近似步骤的乘法,除法和余数运算符,并将它们组合成一个增量抽象方案。我们实现了这个计划在一个原型扩展SMT求解器布尔向量和测量的整体性能和性能的单一近似步骤。评估表明,我们的抽象方案有助于解决更多的不满意的基准测试实例,包括七个SMT-LIB中的未知状态的实例。
2020-08-23 cs.LO
Towards SMT Solver Stability via Input Normalization
针对 SMT 求解器因输入微小变化导致性能波动的问题,提出输入归一化方法及近似算法,证明其可低开销降低运行时变异并统一大量变异基准。
2025-05-15 cs.LO
Hint-Based SMT Proof Reconstruction
Carnegie Mellon University(卡内基梅隆大学);Universidade Federal de Minas Gerais(米纳斯吉拉斯联邦大学)
本文提出一种基于提示的SMT证明重建方法,利用cvc5求解器生成的提示提升Lean自动化性能。
2026-01-20 cs.LO
Vibe-Coded and Tuned: A State-of-the-Art SMT Solver for QF-LRA
Czech Technical University(捷克理工大学)
本文提出完全由 vibe-coding 生成并调优的 SMT 求解器 primo,在 QF-LRA 上超越 SMT-COMP 2026 冠军,证明该开发方式对自动推理工具前景广阔。
2026-09-16 cs.LO
AltGr-Ergo, a Graphical User Interface for the SMT Solver Alt-Ergo
由于一阶逻辑的不可判定性和复杂性,SMT求解器可能不会终止于某些问题或需要很长的时间。当这种情况发生时,人们希望找到求解器失败的原因。为此,我们设计了AltGr-Ergo,这是SMT求解器Alt-Ergo的交互式图形界面,允许用户和工具开发人员帮助求解器完成一些证明。AltGr-Ergo提供实时的反馈,以评估和量化求解器的进度,并提供各种语法操作选项,以允许与Alt-Ergo进行更细粒度的交互。本文描述了这些功能及其实现,并给出了其中大多数功能的使用场景。
2017-01-25 cs.HC cs.LO
Smtlink 2.0
Smtlink是ACL 2的扩展,具有可满足性模理论(SMT)求解器。我们在ACL 2 '2015上展示了早期版本。Smtlink 2.0在可靠性、可扩展性、易用性以及支持的类型和相关理论求解器的范围方面对初始版本进行了重大改进。想要使用SMT求解器证明的大多数定理必须首先转换为仅使用SMT求解器支持的基本操作--这种转换包括函数扩展和类型推断。Smtlink 2.0使用一系列步骤执行此转换,这些步骤由经过验证的子句处理器和计算的提示执行。确保这些步骤是健全的。从ACL 2到Z3的Python接口的最终音译需要一个可信子句处理器。这在可靠性和可扩展性方面比原始的Smtlink有了很大的改进,原始的Smtlink是作为一个单一的、单片的、可信的子句处理器实现的。通过使用Z3的数组和用户定义的数据类型,Smtlink 2.0提供了对FTY defprod、deflist、defalist和defoption类型的支持。我们已经确定了常见的使用模式,并简化了使用Smtlink所需的配置和提示信息。
2018-10-10 cs.LO
Predicting SMT Solver Performance for Software Verification
Maynooth University(梅努斯大学)
Why 3 IDE和验证系统通过基于驱动程序的架构促进了广泛的可满足性模理论(SMT)求解器的使用。我们提出Where 4:一种基于投资组合的方法来履行Why 3证明义务。我们使用数据分析和机器学习技术对程序源代码的静态指标。我们的方法通过提供一个单一的实用程序来将证明义务委托给最有可能返回有用结果的求解器,从而使软件工程师受益。它使用现有的Why 3和求解器安装以一种高效的方式实现这一点-而不需要用户对SMT求解器操作的低层次知识。
2017-01-30 cs.LG cs.LO cs.SE
Computing Tropical Prevarieties with Satisfiability Modulo Theories (SMT) Solvers
一种新的方法,使用SMT(可满足性模理论)求解器来计算热带前变(分别)。平衡)的多项式系统。新的方法是基准对一个天真的方法,使用纯粹的多面体的方法。事实证明,SMT方法比多面体方法更快,否则需要一分钟以上的计算时间,在许多情况下是60倍或更多,在最坏的情况下只是慢了两倍。此外,新的方法是一个随时算法,从而提供了一种方法来计算部分的解决方案时,多面体的方法是不可行的。
2020-06-26 cs.CG cs.LO
SMT-Layout: A MaxSMT-based Approach Supporting Real-time Interaction of Real-world GUI Layout
SMT-Layout首次将布尔变量编码层级关系引入约束布局,通过预处理与增量求解实现真实GUI布局在低算力设备上的毫秒级实时交互。
2024-11-19 cs.HC cs.LO
SMT-based Constraint Answer Set Solver EZSMT+
University of Maryland, College Park(马里兰大学帕克分校);University of Nebraska at Omaha(内布拉斯加大学奥马哈分校)
约束回答集编程将回答集编程与约束处理相结合。系统EZSMT+是一个约束答案集编程工具,利用可满足性模理论求解器进行搜索。它的理论基础是对Niemela关于逻辑程序的回答集的水平排序的刻画的推广。
2019-06-03 cs.AI cs.LO
Automated Verification of Silq Quantum Programs using SMT Solvers
本文提出自动化工具 SilVer,通过量子 RAM 式编程模型连接 Silq 程序与 SMT 证明义务,支持经典/量子条件及测量标志规约,并以纠缠态和 oracle 算法案例验证其有效性。
2024-06-05 cs.LO cs.SE quant-ph
System ASPMT2SMT:Computing ASPMT Theories by SMT Solvers
School of Computing, Informatics, and Decision Systems Engineering(计算、信息与决策系统工程学院);Arizona State University(亚利桑那州立大学)
本研究提出实现ASPMT紧片段到SMT转换的编译器aspsmt2smt,结合gringo部分基化与z3求解变量,可有效处理实数计算以支持连续变化推理。
2025-06-12 cs.AI cs.LO
MCSat-based Finite Field Reasoning in the Yices2 SMT Solver
本文为Yices2 SMT求解器引入基于MCSat框架和零分解技术的有限域非线性多项式推理新插件,使其成为首个基于MCSat的有限域推理引擎,并在基准测试中与cvc5进行了对比评估。
2024-04-29 cs.LO
Alethe: Towards a Generic SMT Proof Format (extended abstract)
SMT求解器veriT所使用的证明格式的第一次迭代于十年前在第一次PxTP研讨会上提出。从那时起,格式已经成熟。veriT证明在多个应用程序中使用,其他求解器以相同的格式生成证明。我们现在希望收集社区的反馈意见,以指导未来的发展。为此,我们回顾了格式的历史,提出了我们的务实的方法来开发格式,并讨论了可能出现的问题时,其他求解器使用的格式。
2021-07-06 cs.LO
First-Order Logic in Finite Domains: Where Semantic Evaluation Competes with SMT Solving
在本文中,我们比较了由数学模型检查器RISCAL支持的两种用于确定有限域上一阶公式有效性的替代机制:首先,语义评价的原始方法(基于RISCAL语言的指称语义的实现),第二,SMT求解的后一种方法(基于RISCAL公式到SMT-LIB公式的可满足性保持转换,作为SMT求解器的输入)。在简短介绍了这两种方法并讨论了它们的基本优点和缺点之后,我们通过一组人工基准和一组来自RISCAL实际应用的基准对它们进行了定量评估;为此,我们应用了最先进的SMT求解器Boolector,CVC 4,Yices和Z3。我们的基准测试表明,(虽然SMT解决一般大大优于语义评估),各种SMT求解器表现出很大的性能差异。更重要的是,我们确定类的公式,语义评估是能够竞争(甚至优于)可满足性解决,概述了一些改进的空间,在翻译的RISCAL公式SMT-LIB公式,以及在目前的SMT技术。
2021-09-07 cs.LO
lazybvtoint at the SMT Competition 2020
lazybvtoint是一个新的原型SMT求解器,它将参与\qfbv逻辑的增量和非增量跟踪。
2021-05-07 cs.LO
Advances in Symmetry Breaking for SAT Modulo Theories
对称破缺是一种常用的技术,它利用公式中变量和子句的对称性来减少SAT求解的搜索空间。其关键思想是首先确定属于同一对称类的赋值集,然后施加排序约束,称为对称性破坏谓词(SBP),使得这些赋值中只有一个(或一个小子集)被允许是原始SAT公式的解。虽然这项技术已被广泛利用在SAT文献,有很少的工作使用对称性破缺SAT模理论(SMT)。在SMT中,SAT理论中的逻辑约束与定义在非布尔变量(如整数、实数等)上的另一组理论运算相结合。SMT求解器通常使用SAT求解技术的组合,并通过调用理论求解器来增强。在这项工作中,我们采取了SAT对称性破缺的进展,并将其应用到域的SMT。我们的关键技术贡献是制定对称性破缺的布尔骨架变量,这是占位符的实际理论操作SMT解决。然后,这些SBP应用于SMT求解器的SAT求解部分。我们在最先进的SMT求解器CVC 4之上实现SBP理念。与最先进的方法相比,我们的方法可以在几个基准问题上获得更快的解决方案。我们的最终求解器是原始CVC 4求解器和基于SBP的求解器的混合体,与该类别中表现最好的CVC 4相比,在2018年和2019年SMT基准的QF_NIA类别中,分别可以解决高达3.8%和3.1%的问题。
2020-01-16 cs.LO
Analyzing Alloy Formulas using an SMT Solver: A Case Study
本文介绍了如何Yices,一个现代SAT模理论求解器,可以用来分析的地址簿问题表示的合金,一阶关系逻辑与传递闭包。当前Alloy模型的分析-由Alloy Analyzer执行-基于SAT求解,因此仅针对有限类型进行。我们的分析概括了这种方法,利用Yices中的背景理论,并在可能的情况下避免类型有限化。因此,它可能能够证明断言是同义反复-Alloy Analyzer完全缺少这种能力。本文还报告了我们的实验结果,比较我们的分析性能的合金分析仪的各种版本的地址簿问题。
2015-05-04 cs.LO
Layered and Staged Monte Carlo Tree Search for SMT Strategy Synthesis
University of Waterloo(滑铁卢大学);University of Göttingen(哥廷根大学);CIDAS;Georgia Institute of Technology(佐治亚理工学院);Loughborough University(拉夫堡大学)
本文提出基于分层分阶段蒙特卡洛树搜索的SMT策略自动合成方法Z3alpha,以低成本高效探索策略空间,在多个基准上超越FastSMT、默认Z3和CVC5。
2024-04-30 cs.AI cs.LO cs.SE
Using SMT Solvers to Validate Models for AI Problems
Alexandru Ioan Cuza University of Iaşi(雅西亚历山德鲁·伊万·库扎大学)
人工智能问题,从规划/调度到游戏控制,包括一个重要的关键步骤:描述一个模型,该模型准确定义了问题所需的数据,要求,允许的过渡和既定的目标。模型失败的方式有很多,并且通常会导致搜索策略无法提供快速、最佳甚至任何解决方案。本文提出使用SMT(可满足性模理论)求解器,如Z3,来检查模型的有效性。我们提出两个测试:检查最终(目标)状态是否存在于模型描述的问题空间中,并检查所描述的转换是否可以提供从所识别的初始状态到任何目标状态的路径(意味着已经找到解决方案)。使用SMT求解器进行AI模型检验的优点在于,它们替代了实际的搜索策略,并且它们处理模型的抽象表示,即一组逻辑公式。在抽象层面上进行推理并不像探索整个解决方案空间那样昂贵。SMT求解器使用有效的决策过程,为与AI模型相对应的逻辑公式提供证明。Z3最近添加的一个功能允许我们将转换序列描述为递归函数,因此我们可以检查是否可以在定义的模型中找到解决方案。
2019-03-22 cs.AI cs.LO
Approximate Counting in SMT and Value Estimation for Probabilistic Programs
Max Planck Institute for Software Systems (MPI-SWS)(马克斯·普朗克软件系统研究所)
#SMT,或逻辑理论的模型计数,是一个众所周知的难题,它概括了诸如计算布尔公式的满意赋值的数量和计算多面体的体积等任务。在可满足性模理论(SMT)领域中,对来自若干应用领域(定量信息流、概率程序的静态分析)的模型计数求解器的需求日益增长。在本文中,我们展示了从#SMT到SMT的近似版本的减少。重点介绍了整数算术和线性实数算术的理论。我们提出了模型计数算法,提供近似解的近似误差的正式界限。它们在多项式时间内运行,并对SMT求解器进行多项式数量的查询以获得基础理论,从而“免费”利用现代SMT求解器内实现的复杂的几何学。我们已经实现了算法,并使用它们来解决一个模型的无循环概率程序的不确定性的值问题。
2015-10-29 cs.AI cs.LO
Bounded Model Checking of Multi-threaded Software using SMT solvers
从单核处理器到多核处理器的过渡使得多线程软件成为计算机辅助验证的一个重要课题。在这里,我们描述和评估的ESBMC模型检查器的扩展,以支持验证多线程软件共享的变量和锁使用有界模型检验(BMC)的基础上可满足性模理论(SMT)。我们描述了三种方法来模型检查多线程软件和我们的建模的同步原语的Pthread库。在惰性方法中,我们生成所有可能的交织,并分别对每个交织调用BMC过程,直到我们找到一个bug,或者系统地探索了所有交织。在时间表记录方法中,我们将所有可能的交织编码成一个单一的公式,然后利用SMT求解器的高速。在欠近似加宽方法中,我们通过从SMT求解器生成的不可满足性证明中提取状态变量和交织的数量来减少状态空间。在所有这三种方法中,我们都使用了部分降阶(POR)技术来减少交织的数量。实验表明,我们的方法可以分析更大的问题,并大大减少验证时间相比,国家的最先进的技术,结合经典的POR方法与符号算法和其他实现反例引导抽象细化技术。
2010-03-19 cs.LO cs.SE
On Solving Quantified Bit-Vectors using Invertibility Conditions
提出了一种基于位向量算子符号逆运算的可满足性模理论(SMT)量化位向量公式求解方法。我们推导出的条件,精确地表征时,位向量的约束是可逆的一组代表性的位向量运算符通常支持SMT求解器。我们利用语法指导的合成技术来帮助建立这些条件,并通过使用几个SMT求解器独立验证它们。我们表明,可逆性条件可以嵌入到量词实例使用希尔伯特选择表达式,并给出实验证据,一个反例引导的方法,利用这些技术的量词实例化,导致性能改善相对于最先进的求解器量化的位向量约束。
2018-05-11 cs.LO
Partitioning Strategies for Distributed SMT Solving
针对并行SMT求解受限于串行性能的问题,本文提出多种新的分治划分策略,实验证明融入该策略的混合组合求解器在大量难例基准上性能显著优于传统组合方案。
2023-06-08 cs.DC cs.LO
Equational Bit-Vector Solving via Strong Gröbner Bases
本文利用强Gröbner基刻画位向量模算术的代数性质,改进乘法逆元计算并解决量化等式性质中的不变式生成问题,实验证明其在时间和内存上优于现有SMT求解方法。
2024-02-26 cs.LO cs.PL
On Deciding Local Theory Extensions via E-matching
可满足性模理论(SMT)求解器结合了通常出现在软件中的数据类型的理论的决策过程。这使它们成为自动化验证问题的重要工具。经常遇到的一个限制是验证问题通常无法在求解器原生支持的理论中完全表达。许多求解器允许将特定于应用的理论规范为量化的公理,但它们的处理在狭窄的特殊情况之外是不完整的。在这项工作中,我们将展示如何SMT求解器可以用来获得完整的决策程序的局部理论扩展,一类重要的理论,是使用有限的公理实例判定。我们提出了一种算法,使用E-匹配在搜索过程中逐步生成实例,显着减少了生成的实例的数量相比,渴望实例化策略。我们已经使用了两个SMT求解器来实现该算法,并进行了广泛的实验评估的基准来自验证条件堆操作程序。我们相信,我们的研究结果是感兴趣的SMT求解器的用户以及他们的开发人员。
2015-08-27 cs.LO
A Decision Procedure for Separation Logic in SMT
本文提出了一个完整的决策过程的整个量化器的分离逻辑($\seplog$)的片段解释的heaplet的数据元素范围内的参数多排序(可能是无限的)域。该算法使用了理论的组合,并被用作一个专门的求解器内的DPLL($T$)架构。在CVC 4 SMT求解器中实现了原型。初步评估表明,使用此程序作为一个更详细的定理证明SL与归纳谓词的积木,或作为后端的有界模型检查程序与低级别的指针和数据操作的可能性。
2016-05-19 cs.LO
Disjoint Projected Enumeration for SAT and SMT without Blocking Clauses
University of Trento(特伦托大学);University of Freiburg(弗赖堡大学)
本文提出两种新型求解器,结合CDCL与时间顺序回溯,实现高效且不相交的枚举。通过改进的implicant shrinking算法减少部分赋值数量,提升搜索效率,并在投影枚举和SMT推理中表现优异。
2024-11-21 cs.LO
DRAT-based Bit-Vector Proofs in CVC4
用于固定大小位向量理论的许多最先进的可满足性模理论(SMT)求解器采用称为位爆破的方法,其中给定公式被转换成布尔可满足性(SAT)问题并委托给SAT求解器。因此,在SMT求解器中生成位向量证明需要将SAT证明合并到其证明基础结构中。在本文中,我们描述了三种方法,用于将DRAT证明由现成的SAT求解器生成到SMT求解器CVC 4的证明基础设施中,并探索它们的优点和缺点。我们使用cryptominisat作为其比特爆破引擎的SAT后端实现了所有三种方法,并在校对生产和校对方面评估了性能。
2019-07-02 cs.LO
An Encoding for CLP Problems in SMT-LIB
本文为 Eldarica CHC 求解器提出新前端,支持 Prolog 输入,并形式化翻译 Prolog 子集至 SMT-LIB 命令,初步实验证明该方法有效且惠及 CHC 求解与 CLP 社区。
2024-04-23 cs.LO cs.PL
Optimization in SMT with LA(Q) Cost Functions
DISI(DISI(信息工程与计算机科学系))
在自动推理和形式化验证的背景下,重要的决策问题被有效地编码到可满足性模理论(SMT)。在过去的十年中,已经为几种实际感兴趣的理论开发了有效的SMT求解器(例如,线性算术、数组、位向量)。令人惊讶的是,很少有工作已经做了扩展SMT处理优化问题,特别是,我们不知道任何工作SMT求解器能够产生的解决方案,最大限度地减少成本函数的算术变量。这是不幸的,因为一些感兴趣的问题需要这个功能。在本文中,我们将开始填补这一空白。我们提出并讨论了两个一般程序,利用SMT处理LA(Q)成本函数的最小化,SMT与标准的最小化技术相结合。我们已经实现了所提出的方法在MathSAT SMT求解器。由于缺乏竞争对手在AR和SMT领域,我们实验评估我们的实现对国家的最先进的工具,为域的线性广义析取编程(LGDP),这是最接近的精神,我们的域,对一组问题,已被提出作为基准,后者的工具。结果表明,我们的工具是非常有竞争力的,往往优于这些工具对这些问题,清楚地表明了该方法的潜力。
2012-02-07 cs.AI cs.LO
Neuro-Symbolic Compliance: Integrating LLMs and SMT Solvers for Automated Financial Legal Analysis
Department of Management Information Systems, National ChengChi University, Taipei, Taiwan(管理信息系,中华大学,台北,台湾);Department of Electrical Engineering, National Taiwan University, Taipei, Taiwan(电子工程系,台湾大学,台北,台湾)
本研究整合大语言模型与SMT求解器,提出神经符号合规框架,用于自动化金融法律分析,实现形式可验证性和基于优化的合规修正。
2026-01-07 cs.AI cs.FL cs.LG
Exploiting Hierarchy in the Abstraction-Based Verification of Statecharts Using SMT Solvers
在基于状态的系统设计中,状态图经常被用作建模形式。形式化验证技术也经常用于证明系统行为的某些属性。形式化验证最有效的技术之一是反例引导的抽象精化(CEGAR),它通过自动构建和精化抽象来降低系统的复杂性。在我们的论文中,我们提出了一种新的适应CEGAR方法层次状态图模型。首先,我们引入一个编码的状态图的逻辑公式,保留有关的状态层次结构的信息。基于这种编码,我们提出了抽象和细化技术,这些技术利用状态图的分层结构,并处理模型中的变量。编码使我们能够使用SMT求解器的系统的探索和验证的抽象模型,也包括有界模型检验。我们证明了我们的抽象技术的适用性和效率与测量行业的动机的例子。
2017-03-21 cs.LO cs.SE
CVC4 at the SMT Competition 2018
本文介绍了参加2018年SMT竞赛的CVC 4 SMT求解器。我们只列出与2017年SMT竞赛版CVC 4的重要差异。有关CVC 4的更多详细信息,请参阅原始论文,CVC 4网站或GitHub上的源代码。
2018-06-20 cs.LO
Machine Learning with Guarantees using Descriptive Complexity and SMT Solvers
Hokkaido University(北海道大学);Google Brain(谷歌大脑);CNRS (LIAFA)(法国国家科学研究中心(LIAFA))
机器学习是计算机科学的一个蓬勃发展的部分。有许多有效的机器学习方法并没有提供强有力的理论保证,以及一个漂亮的通用学习理论。不幸的是,提供强有力的理论保证的机器学习方法还不够有效,无法应用。在本文中,我们介绍了一种逻辑方法来机器学习。模型由逻辑公式的元组表示,输入和输出都是逻辑结构。我们提出了我们的框架与几个应用程序,我们使用SAT和SMT求解器进行评估。我们认为这种机器学习方法特别适合于弥合效率和理论合理性之间的差距。我们利用描述性复杂性理论的结果来证明我们的方法的强有力的理论保证。为了证明其适用性,我们提出了实验结果,包括学习棋盘游戏的复杂性理论的减少规则。我们还解释了神经网络如何适应我们的框架,尽管目前的实现不能扩展到为现实世界的神经网络提供保证。
2016-09-09 cs.LG cs.LO
OSTRICH2: Solver for Complex String Constraints
本文提出字符串约束 SMT 求解器 OSTRICH2,扩展支持 Unicode、ECMAScript 正则表达式和用户定义转换器,并在直线与无链片段上提供完备性保证,实验显示其在 SMT-COMP 基准上具有竞争力。
2025-08-15 cs.LO
Matching Multiplications in Bit-Vector Formulas
由硬件验证问题产生的位向量公式通常包含字级算术运算。经验证据表明,国家的最先进的SMT求解器是不是很有效的推理与乘法的位向量公式。当乘法运算符被分解并以替代方式表示在formula.We提出了一个预处理的启发式识别某些类型的分解乘数,并添加特殊的断言的输入公式编码的子项字级乘法的等价。然后使用SMT求解器求解预处理的公式。我们的实验与三个SMT求解器表明,我们的启发式算法可以快速解决几个公式,而相同的公式超时,而无需预处理步骤。
2016-12-12 cs.LO
On Neural Network Equivalence Checking using SMT Solvers
Aristotle University of Thessaloniki(塞萨洛尼基亚里士多德大学);Northeastern University(东北大学)
如果两个预训练的神经网络对相同的输入产生相似的输出,则它们被认为是等效的。神经网络的等价性检查是非常重要的,因为当需要满足额外的要求或解决安全威胁时,其在用等价的组件替换学习使能的组件中的实用性,例如当使用知识蒸馏、对抗训练等时。SMT求解器可以潜在地提供对神经网络等价性检查的问题的解决方案,其将是健全和完整的,但是正如所预期的,任何这样的解决方案都与关于要检查的神经网络的大小的显著限制相关联。这项工作提出了第一个基于SMT的编码的等价性检查问题,探讨其效用和局限性,并提出了未来的研究和改进途径,以实现更可扩展和实际适用的解决方案。我们目前的实验结果,揭示了上述问题,不同类型的神经网络模型(分类器和回归网络)和等价性标准,对一个通用的和应用程序无关的等价性检查方法。
2022-03-22 cs.AI cs.LG cs.LO
Proof Tree Preserving Interpolation
克雷格插值在SMT是困难的,因为,e。例如,在一个实施例中,理论组合和整数割引入了混合文字,即。例如,包含来自两个输入公式的局部符号的文字。在本文中,我们提出了一个计划,计算克雷格插值混合文字的存在。与现有方法相反,该方案既不限制SMT求解器所做的推理,也不在提取插值之前转换证明树。我们的计划工程未解释的功能和线性算术的组合,但可扩展到其他理论。该方案在插值SMT求解器SMTInterpol中实现。
2017-05-15 cs.LO
Optimization Modulo Theories with Linear Rational Costs
在自动推理(AR)和形式化验证(FV)的背景下,重要的决策问题被有效地编码到可满足性模理论(SMT)。在过去的十年中,已经为几种实际感兴趣的理论开发了有效的SMT求解器(例如,线性算术、数组、位向量)。令人惊讶的是,几乎没有工作已经做了扩展SMT处理优化问题,特别是,我们不知道任何以前的工作SMT求解器能够产生的解决方案,最大限度地减少成本函数的算术变量。这是不幸的,因为一些感兴趣的问题需要这个功能。在本文所描述的工作中,我们开始填补这一空白。我们提出并讨论了两个一般程序,利用SMT处理线性有理成本函数的最小化,SMT与标准的最小化技术相结合。我们已经在MathSAT SMT求解器中实现了这些程序。由于在AR,FV和SMT领域的竞争对手的情况下,我们已经通过实验评估了我们的实现对国家的最先进的工具,线性广义析取编程(LGDP),这是最接近的精神,我们的域,在一组问题,以前已经提出了后者的工具作为基准。结果表明,我们的工具是非常有竞争力的,往往优于这些工具对这些问题,清楚地表明了该方法的潜力。
2014-10-22 cs.LO
Encoding TLA+ set theory into many-sorted first-order logic
我们提出了一个编码的Zermelo-Fraenkel集理论到许多排序的一阶逻辑,输入语言的国家的最先进的SMT求解器。这种转换是基于TLA+ Proof System中SMT求解器的后端证明器的主要组件。
2015-08-16 cs.LO
Local Search For Satisfiability Modulo Integer Arithmetic Theories
开发了首个直接操作变量的SMT(IA)局部搜索算法LS-IA,设计针对整数算术的操作符、评分函数和两级选择启发式,实验证明其与Z3组合提升了SMT-LIB可满足基准集上的现有水平。
2023-05-17 cs.LO
An SMT Solver for Regular Expressions and Linear Arithmetic over String Length
针对正则表达式成员谓词上的无量词一阶理论和字符串长度上的线性算术,提出了一种新的长度感知求解算法。我们在Z3定理证明器中实现并评估了该算法和相关算法。支撑我们算法的一个关键见解是,现实世界的实例包含大量关于约束条件下字符串长度的上下界的信息,这些信息可以非常有效地用于简化表示正则表达式的自动机上的操作。此外,我们提出了一些新的通用算法,如前缀/后缀的方法,可以与各种正则表达式求解算法结合使用,使它们更有效。我们通过对57256个regex重实例的大型和多样化的基准进行广泛的实证评估,展示了我们的算法和算法的强大功能,其中近75%来自工业应用程序或由其他求解器开发人员贡献。我们的求解器优于其他五个最先进的字符串求解器,即CVC 4,OSTRICH,Z3 seq,Z3 str 3和Z3-Trau,在这个基准测试中,特别是实现了2.4倍的加速比CVC 4,4.4倍的加速比Z3 seq,6.4倍的加速比Z3-Trau,9.1倍的加速比Z3 str 3,和13倍的加速比OSTRICH。
2021-05-07 cs.LO
Automated and Sound Synthesis of Lyapunov Functions with SMT Solvers
University of Oxford(牛津大学);Amazon Inc(亚马逊公司)
在本文中,我们采用SMT求解器来合理地合成李雅普诺夫函数,断言一个给定的动力学模型的稳定性。寻找一个李雅普诺夫函数的框架作为一个二阶逻辑公式的可满足性,询问是否存在一个函数满足所需的规格(稳定性)的所有可能的初始条件的模型。我们合成李雅普诺夫函数的线性,非线性(多项式),和参数模型。对于非线性模型,该算法还确定了李雅普诺夫函数的有效区域。我们利用一个归纳框架来合成李雅普诺夫函数,从参数模板。归纳框架包括两个元素:学习者提出一个李雅普诺夫函数,验证者检查其有效性-它的缺乏通过一个反例(状态空间上的一个点)表示,供学习者进一步使用。虽然验证者使用SMT求解器Z3,从而确保程序的整体稳健性,但我们为学习者研究了两种替代方案:基于优化工具Guesthouse的数值方法和基于Z3的合理方法。整体技术进行了评估,在一个广泛的基准,这表明,这种方法不仅规模在合理的计算时间内的10维模型,但也提供了一个新的合理性证明所产生的李雅普诺夫函数和他们的域的有效性。
2020-07-21 cs.LG cs.LO cs.SY
Optimization Modulo the Theories of Signed Bit-Vectors and Floating-Point Numbers
优化模理论(OMT)是SMT的一个重要扩展,它允许找到优化给定目标函数的模型,通常包括线性算术或伪布尔项。然而,许多SMT和OMT应用,特别是来自SW和HW验证的应用,需要处理数字的位精确表示,这在SMT中分别借助于用于整数的位向量(BV)理论和用于实数的浮点数(FP)理论来处理。尽管Nadel和Ryvchin已经提出了一种用于OMT(无符号)BV的方法,但不幸的是,我们不知道任何现有的用于OMT FP的方法。在本文中,我们填补了这一空白。我们提出了一种新的OMT方法,基于吸引子和动态吸引子的新概念,将Nadel和Ryvchin的工作扩展到签名BV,最重要的是,FP。我们已经实现了一些OMT(BV)和OMT(FP)的OptiMathSAT程序,并测试了后者从SMT-LIB库修改后的问题。实证结果支持了新方法的有效性和可行性。
2019-05-07 cs.LO
Proving the Incompatibility of Efficiency and Strategyproofness via SMT Solving
Technische Universität München(慕尼黑工业大学)
当聚合多个代理的偏好时,两个重要的要求是结果应该是经济有效的,并且聚合机制不应该是可操纵的。在本文中,我们提供了一个全面的不可能使用这两个条件的随机聚集机制的计算机辅助证明。更确切地说,我们表明,每一个有效的聚合机制,可以操纵所有预期的效用表示的代理人的喜好。这解决了一个开放的问题,并加强了一些现有的定理,包括声明中所示的特殊领域的分配。我们的证明是通过制定索赔作为一个可满足性问题的谓词从实值算术,然后检查使用SMT(可满足性模理论)求解器。为了验证结果的正确性,SMT求解器返回的最小不可满足约束集被翻译回高阶逻辑中的证明,该证明由交互式定理证明器自动验证。据我们所知,这是SMT求解器在计算社会选择中的首次应用。
2017-09-06 cs.AI cs.GT cs.LO
Integer Reasoning Modulo Different Constants in SMT
针对现有求解器难以处理密码协议验证中多模整数约束系统的问题,提出按模划分约束、结合加权Gröbner基通过升降技术共享子系统信息的反驳方法,在相关密码实现验证上性能优于现有最优求解器。
2025-05-21 cs.LO
A Hybrid SMT-NRA Solver: Integrating 2D Cell-Jump-Based Local Search, MCSAT and OpenCAD
Peking University(北京大学);Zhongguancun Laboratory(中关村实验室)
本文提出了一种用于 SMT-NRA 的混合求解框架,通过引入二维单元跳跃的局部搜索方法,并结合 MCSAT 与 OpenCAD 进行信息交换,有效提升了搜索效率与求解性能。
2026-11-02 cs.AI cs.LO cs.SC
Translating Answer-Set Programs into Bit-Vector Logic
Aalto University School of Science(阿尔托大学理学院)
答案集编程(ASP)是一种用于声明性问题解决的范例,其中问题首先被形式化为规则集,即,答案集程序,在一个统一的方式,然后通过计算程序的答案集解决。可满足性模理论(SMT)框架遵循类似的建模哲学,但语法是基于命题逻辑的扩展,而不是规则。最近,提供了从答案集程序到差分逻辑的翻译-使特定SMT求解器能够用于答案集的计算。在本文中,翻译的另一个SMT片段,即固定宽度的位向量理论的基础上进行了修改。因此,甚至可以利用更多的SMT求解器来计算答案集。初步的实验比较的结果也报告。他们建议的性能水平,这是通过不同的逻辑实现类似。
2011-08-30 cs.AI cs.LO