A Formal Model to Prove Instantiation Termination for E-matching-Based Axiomatisations (Extended Version)
本文提出一种新形式化模型,通过操作语义一劳永逸地证明将复杂基于E-matching的公理化提供给Z3或cvc5等SMT求解器不会导致非终止,并以Dafny和Viper的集合论公理化终止性证明验证有效性。
2024-04-27 cs.LO
On Counterexample Guided Quantifier Instantiation for Synthesis in CVC4
我们介绍的第一个程序合成引擎内实现的SMT求解器。我们提出了一种方法,提取解决方案的功能,从不可满足性证明的否定形式的合成图。我们还讨论了新的反例引导的量词实例化技术,我们使用找到这样的证明实际上是可行的。一类特别重要的规范是单调用属性,我们提出了一个专用的算法。为了支持生成的解决方案的语法限制,我们的方法可以转换到所需的语法形式的解决方案,没有限制。作为一种替代方案,我们展示了如何使用评价函数公理嵌入到代数数据集的约束语法限制,然后使用代数数据类型的决策过程来驱动合成。我们的实验评估的语法指导的合成基准表明,我们的实现在CVC 4 SMT求解器是有竞争力的国家的最先进的合成工具。
2015-06-23 cs.LO
Adapting Real Quantifier Elimination Methods for Conflict Set Computation
实闭域上的可满足性问题是可判定的。在可满足性模理论的背景下,限制于文字的合取集,即多项式约束集的问题是特别重要的。中心问题之一是计算这些集合的不可满足性的良好解释,即获得其合取已经不可满足的输入约束的小子集。我们采用两种常用的实量词消去方法,柱形代数分解和虚拟替代,提供这样的冲突集,并证明我们的方法在实践中的性能。
2015-11-03 cs.LO
Towards Learning Infinite SMT Models (Work in Progress)
该研究提出在SMT公式求解过程中学习模型,聚焦UFLIA逻辑问题的分段线性无限模型,可服务于可满足问题并为MBQI提供新的驱动方式。
2025-03-21 cs.LO
Proving and Disproving Programs with Shared Mutable Data
我们提出了一个工具,用于验证确定性程序与共享的可变引用对规范,如断言,先决条件,后置条件,和读/写效果。我们实现我们的工具编码程序可变引用到注释纯函数递归程序。然后,我们依靠函数展开和SMT求解器Z3来证明或反驳安全性并建立程序终止。我们的工具使用了一种新的程序翻译,其中框架条件使用一阶逻辑中的无量词公式进行编码(而不是依赖于量词或分离逻辑)。这种无量词编码使SMT求解器能够证明安全性或报告相对于过程规范的语义的反例。我们的编码是可能的,这要归功于Z3 SMT求解器的扩展数组理论的表达能力。除了能够报告反例,我们的工具保留了效率的推理纯功能层的数据结构,提供可变数据的表现力,但也是一个显着水平的自动化纯功能方面的软件。我们通过操纵可变链接结构和数组的例子来说明我们的工具。
2021-03-13 cs.LO
Fast Approximations of Quantifier Elimination
针对精确量词消去计算成本高的问题,提出基于egraph数据结构的QEL框架,统一支持量化约简与基于模型的投影,实现了数组和ADT理论的MBP,集成到Z3后在相关任务中性能优于现有最优方法。
2023-06-16 cs.LO
DRAT Proofs of Unsatisfiability for SAT Modulo Monotonic Theories
针对SMT重要子集SMMT缺乏高效不可满足性证明生成方法的问题,提出基于理论谓词命题定义生成紧致Horn近似以得到DRAT证明的方法,开销低且可处理此前难处理的问题。
2024-04-18 cs.LO
A Deeper Look at Depth: Stable Generation Accounting for Quantifier Reasoning
EPFL(洛桑联邦理工学院);Microsoft Research(微软研究院)
本文指出SMT求解器中量词实例化的深度记账非合流导致结果不稳定,提出一种稳定的新记账方法,在Z3中实现,使Mariposa基准不稳定核心的结果不稳定性降低94%且无性能回退。
2026-11-06 cs.LO
Machine Learning for Quantifier Selection in cvc5
Czech Institute of Informatics, Robotics and Cybernetics(捷克信息学、机器人学与自动控制研究所);Czech Technical University in Prague(布拉格捷克技术大学);Institute for Computing and Information Sciences(计算与信息科学研究所);Radboud University(拉德博德大学)
本研究通过机器学习优化cvc5中量词选择,提升SMT求解效率。
2025-12-11 cs.AI cs.LG cs.LO
Ramsey Quantifiers in Linear Arithmetics
本研究提出一种可从LIA、LRA、LIRA三种线性算术SMT理论中消除拉姆齐量词的多项式时间算法,解决了相关良基性检查、一元可分解性等开放问题,并在原型测试中取得良好效果。
2023-11-07 cs.FL cs.LO
Resolution Proof Transformation for Compression and Interpolation
基于SAT、SMT和定理证明的验证方法通常依赖于不可满足性证明作为提取信息的强大工具,以减少总体工作量。例如,可以遍历证明以识别导致不可满足性的最小原因,用于计算抽象或用于导出克雷格插值。在本文中,我们专注于两个重要的方面,涉及有效处理证明的不满足性:压缩和操纵。首先,由于证明的大小通常可以非常大(输入问题的大小呈指数级),因此采用技术来压缩它以进行进一步处理确实是有益的。其次,证明可以作为一个灵活的预处理步骤,为插值计算做准备。这两种技术都是在一个框架中实现的,该框架利用本地重写规则来转换证明。我们表明,仔细使用的规则,结合现有的算法,可以导致有效的简化原始证明。我们已经评估了几个算法在广泛的不满意的问题,来自SAT和SMT测试用例。
2014-04-15 cs.LO
Delta-Decision Procedures for Exists-Forall Problems over the Reals
解决实数上的非线性SMT问题在机器人和人工智能中有着广泛的应用。虽然该领域在解决无量词SMT公式方面取得了重大进展,但量化公式的研究却少得多。我们提出了第一个Delta-完全算法,用于解决实数上的非线性SMT的可满足性,具有泛量化和广泛的非线性函数。我们的方法结合了反例指导的合成,间隔约束传播和局部优化的想法。特别是,我们展示了如何特别小心处理交织的数值和符号推理,以确保三角洲的完整性。在实验中,我们表明,所提出的算法可以处理许多新的问题超出了现有的SMT求解器。
2018-07-21 cs.LO
A Survey of Satisfiability Modulo Theory
可满足性模理论(SMT)是检验一阶公式在线性整数或实数算术或其他理论上的可满足性。在这篇综述中,我们解释了命题可满足性和合取的决策过程的组合,称为DPLL(T),以及替代的“自然域”方法。我们还涵盖了量词,克雷格插值,多项式算术,以及SMT求解器如何用于自动软件分析。
2016-06-15 cs.LO
Local Search For SMT On Linear and Multilinear Real Arithmetic
本文针对线性和多线性实数算术的无量词SMT问题,提出首个局部搜索算法LocalSMT(RA),通过基于区间的算子和打破平局机制提升性能,在SMT-LIB基准上表现优异,尤其擅长多线性实例。
2023-08-02 cs.LO
Model Checking for Rectangular Hybrid Systems: A Quantified Encoding Approach
可满足性模理论(SMT)求解器已经成功地应用于解决形式化验证中的许多问题,例如从集成电路到信息物理系统的许多类系统的有界模型检验(BMC)。通常,BMC是通过检查一个可能很长但没有量词的公式的可满足性来执行的。然而,BMC问题可以自然地编码为BMC步骤数量的量化公式。在这种方法中,我们然后使用决策程序支持量词来检查这些量化公式的可满足性。该方法先前已被应用于使用量化布尔公式(QBF)编码来执行用于纯离散系统的BMC,然后使用QBF求解器来释放QBF检查。在本文中,我们提出了一个新的量化编码的BMC矩形混合自动机(RHA),这需要使用更一般的逻辑,由于实(密集)时间和实值状态变量建模连续状态。我们已经实现了一个初步的实验原型的方法,使用HyST模型转换工具生成量化BMC(QBMC)查询的Z3 SMT求解器。我们描述了几个时间和混合自动机的基准,如费舍尔和林奇-斯考特互斥算法的实验结果。我们将我们的方法与无量化器的BMC方法进行比较,例如使用dReal SMT求解器的dReach工具中的方法,以及使用MathSAT SMT求解器构建在nuXmv之上的HyComp工具。基于我们有前途的实验结果,QBMC可能在未来是一个有效的和可扩展的分析方法RHA和其他类的混合自动机的进一步改进,在SMT求解器,如Z3的量词处理。
2022-07-14 cs.FL cs.LO cs.SC
Monadic Decomposition in Integer Linear Arithmetic (Technical Report)
一元可分解性是变量独立性的概念,它询问一阶理论中的给定公式是否可以表示为理论中一元谓词的布尔组合。最近,Veanes等人在SMT的上下文中展示了一元可分解性的有用性(即输入公式是无量词的),并发现了各种有趣的应用,包括字符串分析。然而,检查一元可分解性通常是不可判定的。某些理论的可判定性是已知的(例如,Presburger算术,Tarski的实闭域),但关于它们的计算复杂性的结果很少。本文研究了整数线性算术在SMT下的一元可分解性。我们表明,这个决策问题是CONP-完全的,当monadically可分解,一个公式承认在最坏的情况下分解的指数大小。我们提供了一个新的应用程序,我们的结果字符串约束求解长度约束。然后,我们扩展我们的结果变元分解,谓词可以承认多个自由变量(相对于一元分解)。最后,我们给出了整数线性算术中的量词消去的一个应用,其中量词块中的变量,如果是独立的,可以用指数(而不是标准的双指数)爆破消除。
2020-04-26 cs.LO
An Instantiation-Based Approach for Solving Quantified Linear Arithmetic
本文提出了一个基于实例的一阶理论中量化公式可满足性决策过程的框架,包括其正确性,实现和评估。使用这个框架,我们推导出线性实数算术(LRA)和线性整数算术(LIA)公式与一个量词交替的决策程序。我们的程序可以集成到典型的SMT求解器使用的解决架构。从模型检验,静态分析和合成标准化基准的实验结果表明,我们的SMT求解器CVC 4中的程序的实现优于现有的工具,量化的线性运算。
2016-02-11 cs.LO
Subtropical Satisfiability
无量化器非线性算法(QF_NRA)在可满足性模理论求解(SMT)的许多应用中出现。因此,SMT理论求解器中相应约束的有效推理是高度相关的。我们提出了一个新的不完整的,但有效的和终止的方法来识别可满足的实例。该方法是来自亚热带方法最近推出的符号计算的背景下,计算单个非常大的多元多项式的实零点。我们的方法需要作为输入的严格的多项式不等式,这代表了超过40%的QF_NRA节的SMT-LIB库的基准连接。该方法将多项式抽象为自然数上的指数向量,并标记相应系数的符号。然后,依次使用SMT来解决实数上的线性问题,以探索性地找到合适的点,这些点可以转换回原始问题的满意点。SMT-LIB系统的实验表明,我们的方法本身不是一个足够强大的决策过程,但一个有价值的启发式使用的技术组合。
2017-06-28 cs.LO
Incomplete SMT Techniques for Solving Non-Linear Formulas over the Integers
本文提出了一种新的方法来解决可满足性模理论问题,该方法是在无量词非线性代数算法SMT(QF-NIA)理论的基础上,对整数多项式约束下的基公式的可满足性进行判定.根据以前的工作,我们建议解决SMT(QF-NIA)的情况下,通过减少他们的线性算术:非线性单项式线性化,通过抽象他们与新鲜的变量和执行情况分裂的整数变量与有限域。对于没有有限域的变量,我们可以人为地通过施加一个下限和一个上限来引入一个,并迭代地扩大它,直到找到一个解(或过程超时)。该方法成功的关键是在每次迭代中确定哪些域必须扩展。以前,不可满足的核心被用来识别要改变的域,但没有得到关于新域应该有多大的线索。在这里,我们解释了两种新的方法来指导这个过程,通过分析优化问题的解决方案:(i)最大限度地减少违反人工域边界的数量,通过Max-SMT求解器解决,以及(ii)最小化相对于人工域的距离,通过优化模理论(OMT)求解器解决。使用这种基于SMT的优化技术允许平滑地扩展该方法,也可以通过非线性整数运算来解决Max-SMT问题。最后,我们利用得到的最大SMT(QF-NIA)技术来解决$\exists \forall$公式的量化的非线性算术的一个片段,通常出现在验证和合成应用。
2020-08-31 cs.LO
CDCL-inspired Word-level Learning for Bit-vector Constraint Solving
无量化位向量(QF_BV)理论在软件验证中具有重要意义。可满足性检查的标准方法将位向量问题简化为布尔问题,利用强大的SAT求解技术及其冲突驱动子句学习(CDCL)机制。然而,这种位级方法丢失了初始位向量问题的结构。我们提出了一个冲突驱动的,字级的,可组合的约束学习理论的量词免费位向量。这项工作铺平了道路,真正字级的决策程序的位向量,充分利用最近在CP和SMT社区设计的字级传播。
2017-06-28 cs.LO
Tunable Automation in Automated Program Verification
New York University(纽约大学);Microsoft Research(微软研究院);MPI-SWS(德国马克斯·普朗克软件系统研究所)
本文提出了一种在自动程序验证中调节自动化的机制,通过细粒度控制量词事实的可用性,使开发者能够根据需求选择不同的自动化级别。
2025-12-03 cs.LO cs.PL cs.SE
Flat Model Checking for Counting LTL Using Quantifier-Free Presburger Arithmetic
本文提出了一种近似方法来验证计数器系统相对于线性时态逻辑的表达计数扩展中制定的属性。它可以表达,例如,通过对运行中的特定位置进行计数并施加算术约束,确保应答的数量永远不会超过对服务的请求的数量。所解决的问题是不可判定的,因此解决了平坦的下近似的系统。这提供了一个灵活的可调整的穷举和计算工作量之间的权衡,类似于有界模型检验。最近的技术和结果的平坦Kripke结构的模型检查频率特性的解除和构造一个参数化编码的(近似)问题的量化器免费Presburger算法。基于z3 SMT求解器的原型实现证明了基于RERS挑战赛问题的方法的有效性。
2019-01-17 cs.LO cs.SE
Compositional Verification of Procedural Programs using Horn Clauses over Integers and Arrays
我们提出了一个组合SMT为基础的算法的安全程序,考虑到堆以及。现有的基于SMT的方法要么在很大程度上限于处理线性算术运算和属性,或者是非组合的。我们使用约束角子句(CHCs)来表示验证条件,其中使用阵列的扩展理论(ARR)的内存操作建模。首先,我们描述了一个指数时间量词消去(QE)算法的ARR,它可以引入新的量词的索引和值排序。其次,我们适应QE算法,以有效地获得下近似使用模型,从而在多项式时间基于模型的投影(MBP)算法。第三,我们集成的MBP算法的框架中的组合推理的过程性程序使用的可能和必须的摘要,我们最近提出的。我们对CHC的解决方案目前仅限于无量词公式。最后,我们描述了我们的实践经验,在SV-COMP'15基准测试中使用的工具SPACER的实现。
2015-08-06 cs.LO cs.PL cs.SE
Automating Bitvector and Finite Field Equivalence Proofs in Lean
Stanford University(斯坦福大学);Galois
本文提出Lean战术BitModEq,通过范围引理和案例分析,实现有限域到位向量的验证转换,提升零知识证明电路验证效率。
2026-05-14 cs.LO
Revisiting Incremental Linearization for Nonlinear Integer Arithmetic
Czech Technical University in Prague(布拉格捷克理工大学)
本文针对非线性整数算术SMT问题,提出改进的增量线性化公理集,基于Z3实现独立求解器,在SMT-LIB的NIA基准上整体性能与顶尖求解器相当,在多项式约束基准上表现更优。
2026-08-06 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
Extending SMT Solving with Non-Ground Clause Learning
Max Planck Institute for Informatics(马克斯·普朗克信息学研究所);Graduate School of Computer Science, Saarland Informatics Campus(萨尔兰信息学园区计算机科学研究生院)
本文提出一种结合基实例化、CDCL(T)风格规则与非基冲突分析的演算,通过非基子句学习生成更一般的子句,并支持时间回溯,可模拟多种SMT求解方法。
2026-09-11 cs.AI 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
Generating Non-Linear Interpolants by Semidefinite Programming
基于插值的技术已经广泛且成功地应用于硬件和软件的验证,例如,在有界模型检验、CEGAR、SMT等中,最难的部分是如何合成插值。为发现命题逻辑的内插、一阶理论的无量词片段及其组合而进行的各种工作已经被提出。然而,很少有工作集中在发现多项式插值在文献中。本文给出了一种基于半定规划的非线性插值的构造方法,并通过实例说明了如何将这些结果应用于程序的验证。
2013-03-03 cs.LO
Equational Bit-Vector Solving via Strong Gröbner Bases
本文利用强Gröbner基刻画位向量模算术的代数性质,改进乘法逆元计算并解决量化等式性质中的不变式生成问题,实验证明其在时间和内存上优于现有SMT求解方法。
2024-02-26 cs.LO cs.PL
Decidability of Difference Logic over the Reals with Uninterpreted Unary Predicates
研究了带未解释一元谓词的差分逻辑的可判定性,证明实数上带单个未解释一元谓词的量化差分逻辑不可判定,而整数差分逻辑结合实数序与未解释一元谓词仍可判定。
2023-05-24 cs.LO
Local Search for Solving Satisfiability of Polynomial Formulas
非线性实数算术理论的模可满足性(Satisfiability Modulo the Theory of Nonlinear Real Arithmetic,简称SMT,NRA)涉及多项式公式的可满足性,多项式公式是具有整数系数和实变量的多项式方程和不等式的无量词布尔组合。在本文中,我们提出了一个局部搜索算法的一个特殊子类的SMT(NRA),其中所有的约束是严格的不等式。一个重要的事实是,给定一个含有$n$变量的多项式公式,公式中多项式的零水平集将$n$维实空间分解为100个分量(单元),并且每个多项式在每个单元中具有常数符号。我们的算法的关键点是一个新的操作的基础上真正的根隔离,称为细胞跳跃,更新当前分配沿给定的方向,使分配可以“跳”从一个单元到另一个。一个单元格跳跃可以调整多个变量的值,而传统的局部搜索操作,如SAT的翻转和SMT的临界移动(LIA),只改变一个变量的值。为了平衡成功率和效率,我们还设计了两级操作选择。此外,我们的算法可以很容易地推广到一个更广泛的子类SMT(NRA)的多项式方程线性关于一些变量是允许的。实验结果表明,该算法与现有的SMT求解器相比具有很好的竞争力,尤其是在高次多项式的公式上。
2023-03-21 cs.LO cs.SC
On using floating-point computations to help an exact linear arithmetic decision procedure
CNRS / VERIMAG(法国国家科学研究中心 / VERIMAG)
提出一种可选的预处理阶段,通过浮点计算加速基于单纯形法的SMT求解器,保持正确性和完备性,实验表明该方法能显著提升效率。
2009-04-22 cs.LO cs.NA math.NA
Delta-Complete Decision Procedures for Satisfiability over the Reals
我们引入了“δ-完备决策过程”的概念来解决实数上的SMT问题,目的是处理包括超越函数和Lipschitz连续常微分方程的解在内的广泛的非线性函数.给定一个SMT问题φ和一个正有理数δ,一个δ-完全决策过程要么确定φ是不可满足的,要么确定φ的“δ-弱化”是可满足的。这里,φ的δ-弱化是φ的一个变体,它允许φ上的δ-有界数值扰动。我们证明了具有上述函数的实数上有界SMT的δ-完全判定过程的存在性。对于类型2复杂性类C的函数,在温和的假设下,有界δ-SMT问题是NP^C。δ-完备决策过程可以利用可扩展的数值方法来处理非线性,我们建议使用这个概念作为数值驱动决策过程的理想要求。作为一个具体的例子,我们对<ICP>DPLL(T)中集成了区间约束传播(ICP)的DPLL框架进行了形式化分析,建立了其δ-完备性的充分必要条件。我们讨论了δ-完备决策过程在正确性关键应用中的实际应用,包括形式化验证和定理证明。
2012-09-17 cs.LO cs.SC
Complete first-order reasoning for functional programs
University of Wisconsin-Madison(威斯康星大学麦迪逊分校);University of Illinois Urbana-Champaign(伊利诺伊大学厄巴纳-香槟分校);University of California San Diego(加州大学圣地亚哥分校)
本文揭示并形式化了基于递归函数展开的启发式方法,证明其在代数数据类型与背景理论的一阶组合理论中具有推理完备性。
2026-05-21 cs.LO cs.PL
Boosting MCSat Modulo Nonlinear Integer Arithmetic via Local Search
University of Cagliari(卡利亚里大学);University of Genoa(热那亚大学);TU Wien(维也纳科技大学);SRI International(国际人工智能研究所)
针对MCSat求解非线性整数算术SMT问题时赋值选择影响性能的问题,提出融合局部搜索的引导框架,结合加速爬山与可行集跳转实现于Yices2,并在SMT-LIB基准上完成评估。
2025-07-23 cs.LO
Proving Non-Termination and Lower Runtime Bounds with LoAT (System Description)
我们提出了新版本的循环加速工具(LoAT),一个强大的工具,用于证明非终止和最坏情况下的下界程序操作的整数。它是基于一个新的演算循环加速,即,将循环转换为不确定的直线代码,以及用于寻找非终止配置。为了有效地实现它,LoAT使用了一种基于SMT求解和unsat内核的新方法。一项广泛的评估表明,LoAT与其他最先进的证明非终止性的工具相比具有很强的竞争力。虽然没有其他工具能够推导出完整整数规划的最坏情况下的下限,但我们也证明了LoAT的性能显着优于其前辈。
2022-05-16 cs.LO
Quantified Linear and Polynomial Arithmetic Satisfiability via Template-based Skolemization
Institute of Science and Technology Austria(奥地利科学技术研究所);Hong Kong University of Science and Technology(香港科技大学);Vienna University of Technology(维也纳工业大学);Singapore Management University(新加坡管理大学)
针对量词化线性与非线性实算术公式可满足性判定中量词消去成本高昂的瓶颈,提出基于模板的Skolem化方法,利用代数几何定理自动合成函数消去量词,在理论与实验上均优于现有SMT求解器。
2024-12-18 cs.AI cs.LO
MCSAT Modulo Transcendental Arithmetics
IMDEA Software Institute(IMDEA软件研究所);Universidad Politécnica de Madrid(马德里理工大学);University of Cagliari(卡利亚里大学)
提出一个基于MCSAT的框架,通过抽象为非线性实算术并利用实分析方法,解决含超越函数的无量词公式,并在Yices2中实现,实验表明在SAT和UNSAT实例上优于现有求解器。
2026-05-30 cs.LO
Verified Quadratic Virtual Substitution for Real Arithmetic
本文提出了一种在Isabelle/HOL中通过线性和二次虚拟替换(VS)实现的一阶实数运算的形式化量词消去(QE)算法. Tarski-Seidenberg定理证明了实数运算的一阶逻辑可以由QE判定。然而,在实践中,QE算法是高度复杂的,并且经常结合多种方法来提高性能。VS是一个实际上成功的QE方法,目标是具有低次多项式的公式。据我们所知,这是第一个工作,正式VS二次实数算术,包括不等式。证明需要各种贡献,现有的多元多项式库在伊莎贝尔/HOL。我们的框架是模块化的,易于扩展(以方便集成未来的优化),并可以作为开发实用的通用QE算法的基础。此外,由于我们的形式化设计考虑到了实用性,我们将我们的开发导出到SML,并在文献中的378个基准上测试生成的代码,与Redlog,Z3,Wolfram Engine和SMT-RAT进行比较。这发现了一些工具中的不一致之处,强调了一种经过验证的方法对真实算术的复杂性的重要性。
2021-11-22 cs.LO
The Satisfiability of Extended Word Equations: The Boundary Between Decidability and Undecidability
字方程的研究(或自由幺半群上方程的存在理论)是数学和理论计算机科学的中心课题。决定一个给定的词方程是否有解的问题在20世纪70年代末被Makanin证明是可判定的,从那时起,在这个问题上做了大量的工作。近年来,这个可判定性问题在安全分析的字符串SMT求解器的背景下变得至关重要。此外,许多扩展(例如,在长度函数上具有线性算术的无量词字等式)和片段(例如,对变量数目的限制)从理论观点以及对于程序分析应用来说是重要的。出于这些考虑,我们证明了几个新的结果,从而揭示了许多片段和扩展的一阶理论的字方程的可判定性和不可判定性之间的边界。
2018-02-02 cs.FL cs.LO
An Infinite Needle in a Finite Haystack: Finding Infinite Counter-Models in Deductive Verification
针对演绎验证中可满足含量词公式仅有无限模型、现有求解器只能找有限反例且易发散的问题,提出符号结构、符号模型搜索过程及涵盖多种类 EPR 的新可判定片段。
2024-09-10 cs.LO cs.PL
Undecidability of a Theory of Strings, Linear Arithmetic over Length, and String-Number Conversion
近年来,在形式化验证、软件工程和安全社区中,对字符串方程、长度函数和字符串数转换谓词的理论有相当大的兴趣。这些理论的SMT求解器,如Z3 str 2,CVC 4和S3,在暴露字符串密集型程序中的安全漏洞方面具有巨大的实用价值。此外,在弦理论的背景下,还有许多开放的可判定性和复杂性理论问题,这些问题引起了数学家的极大兴趣。基于上述应用和未解决的问题,我们研究了弦方程的一阶、多排序、无量词理论$T_{s,n}$,弦长度上的线性算术,以及弦数转换谓词,并证明了三个定理.首先,我们证明了理论$T_{s,n}$的可满足性问题是不可判定的,通过一个带有幂谓词的自然数上的线性算术理论的约化,我们称之为幂算术。其次,我们表明,字符串-数字转换谓词是可表达的权力谓词,字符串方程和长度函数。这个第二个定理,结合我们提出的不可判定性定理的约简,表明幂谓词可以用词方程和长度函数表示,当且仅当串-数值转换谓词也可以在同一片段中表示。这样的结果是非常有用的工具,在比较不同的理论的表达能力,并建立可判定性和复杂性的结果。第三,我们为$T_{s,n}$的函数和谓词提供了一个一致的公理化$Γ$。此外,我们还证明了通过$Γ$的逻辑闭包得到的理论$T_Γ$不是一个完备的理论.
2016-10-26 cs.LO
Deciding the Consistency of Non-Linear Real Arithmetic Constraints with a Conflict Driven Search Using Cylindrical Algebraic Coverings
提出了一种确定实数上非线性多项式约束合取可满足性的新算法,该算法可作为非线性实数算术可满足性模理论(SMT)求解的理论求解器.该算法是适应于可满足性的柱形代数分解(CAD)的变体,其中解候选者(样本点)被增量地构造,直到找到满意的样本或者已经采样了足够的样本以得出不可满足性的结论。样本的选择由输入约束和先前的冲突指导。我们的新方法背后的关键思想是从部分样本开始;证明它不能扩展到完整样本;并从排除部分样本周围的更大空间的原因中,逐步建立成空间的圆柱代数覆盖。有相似之处的增量变化的CAD,NLSAT方法的Jovanovic和de Escha,和NuCAD算法的布朗,但我们目前的工作示例和实验结果的初步实施,以证明这些差异,和新方法的好处。
2020-11-23 cs.LO cs.SC
Variable Independence in Linear Real Arithmetic
该研究针对线性实数算术(LRA)中变量独立性与可分解性的复杂度开放问题,提出新的公式刻画方法,证明相关复杂度结论,设计出理论最优、速度指数级提升的算法,还可计算分解的最优近似以优化数据库查询。
2023-07-18 cs.DB cs.LO