Kshitij Bansal ; Clark Barrett ; Andrew Reynolds ; Cesare Tinelli - Reasoning with Finite Sets and Cardinality Constraints in SMT

lmcs:3155 - Logical Methods in Computer Science, November 1, 2018, Volume 14, Issue 4 - https://doi.org/10.23638/LMCS-14(4:12)2018
Reasoning with Finite Sets and Cardinality Constraints in SMTArticle

Authors: Kshitij Bansal ; Clark Barrett ; Andrew Reynolds ; Cesare Tinelli

    We consider the problem of deciding the satisfiability of quantifier-free formulas in the theory of finite sets with cardinality constraints. Sets are a common high-level data structure used in programming; thus, such a theory is useful for modeling program constructs directly. More importantly, sets are a basic construct of mathematics and thus natural to use when formalizing the properties of computational systems. We develop a calculus describing a modular combination of a procedure for reasoning about membership constraints with a procedure for reasoning about cardinality constraints. Cardinality reasoning involves tracking how different sets overlap. For efficiency, we avoid considering Venn regions directly, as done in previous work. Instead, we develop a novel technique wherein potentially overlapping regions are considered incrementally as needed, using a graph to track the interaction among the different regions. The calculus has been designed to facilitate its implementation within SMT solvers based on the DPLL($T$) architecture. Our experimental results demonstrate that the new techniques are competitive with previous techniques and can scale much better on certain classes of problems.


    Volume: Volume 14, Issue 4
    Published on: November 1, 2018
    Accepted on: August 9, 2018
    Submitted on: February 22, 2017
    Keywords: Computer Science - Logic in Computer Science
    Funding:
      Source : OpenAIRE Graph
    • SHF: Small: Integrating separation logic and SMT for better heap verification; Funder: National Science Foundation; Code: 1320583
    • TWC: Medium: Collaborative: Breaking the Satisfiability Modulo Theories (SMT) Bottleneck in Symbolic Security Analysis; Funder: National Science Foundation; Code: 1228768
    • TWC: Medium: Collaborative: Breaking the Satisfiability Modulo Theories (SMT) Bottleneck in Symbolic Security Analysis; Funder: National Science Foundation; Code: 1228765

    2 Documents citing this article

    Consultation statistics

    This page has been seen 1529 times.
    This article's PDF has been downloaded 744 times.