Sets with Cardinality Constraints in Satisfiability Modulo Theories

被引:0
|
作者
Suter, Philippe [1 ]
Steiger, Robin [1 ]
Kuncak, Viktor [1 ]
机构
[1] Ecole Polytech Fed Lausanne, CH-1015 Lausanne, Switzerland
关键词
CHECKING;
D O I
暂无
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Boolean Algebra with Presburger Arithmetic (BAPA) is a decidable logic that can express constraints on sets of elements and their cardinalities. Problems from verification of complex properties of software often contain fragments that belong to quantifier-free BAPA (QFBAPA). in contrast to many other NP-complete problems (such as quantifier-free first-order logic or linear arithmetic), the applications of QFBAPA to a broader set of problems has so far been hindered by the lack of an efficient implementation that can be used alongside other efficient decision procedures. We overcome these limitations by extending the efficient SMT solver Z3 with the ability to reason about cardinality (QFBAPA) constraints. Our implementation uses the DPLL(T) mechanism of Z3 to reason about the top-level propositional structure of a QFBAPA formula, improving the efficiency compared to previous implementations. Moreover, we present a new algorithm for automatically decomposing QFBAPA formulas. Our algorithm alleviates the exponential explosion of considering all Venn regions, significantly improving the tractability of formulas with many set variables. Because it is implemented as a theory plugin, our implementation enables Z3 to prove formulas that use QFBAPA constructs with constructs from other theories that Z3 supports, as well as with quantifiers. We have applied our implementation to the verification of functional programs; we show it can automatically prove formulas that no automated approach was reported to be able to prove before.
引用
收藏
页码:403 / 418
页数:16
相关论文
共 50 条
  • [31] Satisfiability Modulo Theories: A Beginner's Tutorial
    Barrett, Clark
    Tinelli, Cesare
    Barbosa, Haniel
    Niemetz, Aina
    Preiner, Mathias
    Reynolds, Andrew
    Zohar, Yoni
    FORMAL METHODS, PT II, FM 2024, 2025, 14934 : 571 - 596
  • [32] Preface to special issue on satisfiability modulo theories
    Alberto Griggio
    Philipp Rümmer
    Formal Methods in System Design, 2017, 51 : 431 - 432
  • [33] Satisfiability Modulo Custom Theories in Z3
    Bjorner, Nikolaj
    Eisenhofer, Clemens
    Kovacs, Laura
    VERIFICATION, MODEL CHECKING, AND ABSTRACT INTERPRETATION, VMCAI 2023, 2023, 13881 : 91 - 105
  • [34] Exploiting Satisfiability Modulo Theories for Analog Layout Automation
    Saif, Sherif M.
    Dessouky, Mohamed
    Nassar, Salwa
    Abbas, Hazem
    El-Kharashi, M. Watheq
    Abdulaziz, Mohammad
    2014 9TH INTERNATIONAL DESIGN & TEST SYMPOSIUM (IDT), 2014, : 73 - 78
  • [35] TSAT++: an Open Platform for Satisfiability Modulo Theories
    Armando, Alessandro
    Castellini, Claudio
    Giunchiglia, Enrico
    Idini, Massimo
    Maratea, Marco
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2005, 125 (03) : 25 - 36
  • [36] Planning for Hybrid Systems via Satisfiability Modulo Theories
    Cashmore, Michael
    Magazzeni, Daniele
    Zehtabi, Parisa
    JOURNAL OF ARTIFICIAL INTELLIGENCE RESEARCH, 2020, 67 : 235 - 283
  • [37] Extracting Minimal Unsatisfiable Subformulas in Satisfiability Modulo Theories
    Zhang, Jianmin
    Shen, Shengyu
    Zhang, Jun
    Xu, Weixia
    Li, Sikun
    COMPUTER SCIENCE AND INFORMATION SYSTEMS, 2011, 8 (03) : 693 - 710
  • [38] Preface to the special issue "SI: Satisfiability Modulo Theories"
    Strichman, Ofer
    Kroening, Daniel
    FORMAL METHODS IN SYSTEM DESIGN, 2013, 42 (01) : 1 - 2
  • [39] Efficient Generation of Craig Interpolants in Satisfiability Modulo Theories
    Cimatti, Alessandro
    Griggio, Alberto
    Sebastiani, Roberto
    ACM TRANSACTIONS ON COMPUTATIONAL LOGIC, 2010, 12 (01)
  • [40] An Eager Satisfiability Modulo Theories Solver for Algebraic Datatypes
    Shah, Amar
    Mora, Federico
    Seshia, Sanjit A.
    THIRTY-EIGHTH AAAI CONFERENCE ON ARTIFICIAL INTELLIGENCE, VOL 38 NO 8, 2024, : 8099 - 8107