An efficient SMT solver for string constraints

被引:0
|
作者
Tianyi Liang
Andrew Reynolds
Nestan Tsiskaridze
Cesare Tinelli
Clark Barrett
Morgan Deters
机构
[1] The University of Iowa,Department of Computer Science
[2] Two Sigma Investments,Department of Computer Science
[3] New York University,undefined
来源
关键词
String solving; Satisfiability modulo theories; Automated deduction; 68Q60; 03B10; 03B20; 03B22; 03B25; 03B70;
D O I
暂无
中图分类号
学科分类号
摘要
An increasing number of applications in verification and security rely on or could benefit from automatic solvers that can check the satisfiability of constraints over a diverse set of data types that includes character strings. Until recently, satisfiability solvers for strings were standalone tools that could reason only about fairly restricted fragments of the theory of strings and regular expressions (e.g., strings of bounded lengths). These solvers were based on reductions to satisfiability problems over other data types such as bit vectors or to automata decision problems. We present a set of algebraic techniques for solving constraints over a rich theory of unbounded strings natively, without reduction to other problems. These techniques can be used to integrate string reasoning into general, multi-theory SMT solvers based on the common DPLL(T) architecture. We have implemented them in our SMT solver cvc4, expanding its already large set of built-in theories to include a theory of strings with concatenation, length, and membership in regular languages. This implementation makes cvc4 the first solver able to accept a rich set of mixed constraints over strings, integers, reals, arrays and algebraic datatypes. Our initial experimental results show that, in addition, on pure string problems cvc4 is highly competitive with specialized string solvers accepting a comparable input language.
引用
收藏
页码:206 / 234
页数:28
相关论文
共 50 条
  • [31] SyGuS Techniques in the Core of an SMT Solver
    Reynolds, Andrew
    Tinelli, Cesare
    ELECTRONIC PROCEEDINGS IN THEORETICAL COMPUTER SCIENCE, 2017, (260): : 81 - 96
  • [32] The MathSAT5 SMT Solver
    Cimatti, Alessandro
    Griggio, Alberto
    Schaafsma, Bastiaan Joost
    Sebastiani, Roberto
    TOOLS AND ALGORITHMS FOR THE CONSTRUCTION AND ANALYSIS OF SYSTEMS, TACAS 2013, 2013, 7795 : 93 - 107
  • [33] ORCSolver: An Efficient Solver for Adaptive GUI Layout with OR-Constraints
    Jiang, Yue
    Stuerzlinger, Wolfgang
    Zwicker, Matthias
    Lutteroth, Christof
    PROCEEDINGS OF THE 2020 CHI CONFERENCE ON HUMAN FACTORS IN COMPUTING SYSTEMS (CHI'20), 2020,
  • [34] An efficient algorithm for mining string databases under constraints
    Lee, SD
    De Raedt, L
    KNOWLEDGE DISCOVERY IN INDUCTIVE DATABASES, 2005, 3377 : 108 - 129
  • [35] Flatten and Conquer A Framework for Efficient Analysis of String Constraints
    Abdulla, Parosh Aziz
    Atig, Mohamed Faouzi
    Chen, Yu-Fang
    Bui Phi Diep
    Holik, Lukas
    Rezine, Ahmed
    Rummer, Philipp
    ACM SIGPLAN NOTICES, 2017, 52 (06) : 602 - 617
  • [36] Skeletal Approximation Enumeration for SMT Solver Testing
    Yao, Peisen
    Huang, Heqing
    Tang, Wensheng
    Shi, Qingkai
    Wu, Rongxin
    Zhang, Charles
    PROCEEDINGS OF THE 29TH ACM JOINT MEETING ON EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING (ESEC/FSE '21), 2021, : 1141 - 1153
  • [37] Predicting SMT Solver Performance for Software Verification
    Healy, Andrew
    Monahan, Rosemary
    Power, James F.
    ELECTRONIC PROCEEDINGS IN THEORETICAL COMPUTER SCIENCE, 2017, (240): : 20 - 37
  • [38] Learning SMT(LRA) Constraints using SMT Solvers
    Kolb, Samuel
    Teso, Stefano
    Passerini, Andrea
    De Raedt, Luc
    PROCEEDINGS OF THE TWENTY-SEVENTH INTERNATIONAL JOINT CONFERENCE ON ARTIFICIAL INTELLIGENCE, 2018, : 2333 - 2340
  • [39] Validation of Derived Features and Well-Formedness Constraints in DSLs By Mapping Graph Queries to an SMT-Solver
    Semerath, Oszkar
    Horvath, Akos
    Varro, Daniel
    MODEL-DRIVEN ENGINEERING LANGUAGES AND SYSTEMS, 2013, 8107 : 538 - 554
  • [40] An Efficient SMT Approach to Solve MRCPSP/max Instances with Tight Constraints on Resources
    Bofill, Miquel
    Coll, Jordi
    Suy, Josep
    Villaret, Mateu
    PRINCIPLES AND PRACTICE OF CONSTRAINT PROGRAMMING (CP 2017), 2017, 10416 : 71 - 79