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 条
  • [1] An efficient SMT solver for string constraints
    Liang, Tianyi
    Reynolds, Andrew
    Tsiskaridze, Nestan
    Tinelli, Cesare
    Barrett, Clark
    Deters, Morgan
    FORMAL METHODS IN SYSTEM DESIGN, 2016, 48 (03) : 206 - 234
  • [2] TRAU : SMT solver for string constraints
    Abdulla, Parosh Aziz
    Atig, Mohamed Faouzi
    Chen, Yu-Fang
    Bui Phi Diep
    Holik, Lukas
    Rezine, Ahmed
    Rummer, Philipp
    PROCEEDINGS OF THE 2018 18TH CONFERENCE ON FORMAL METHODS IN COMPUTER AIDED DESIGN (FMCAD), 2018, : 165 - 169
  • [3] Norn: An SMT Solver for String Constraints
    Abdulla, Parosh Aziz
    Atig, Mohamed Faouzi
    Chen, Yu-Fang
    Holik, Lukas
    Rezine, Ahmed
    Rummer, Philipp
    Stenman, Jari
    COMPUTER AIDED VERIFICATION, PT I, 2015, 9206 : 462 - 469
  • [4] An Efficient Lazy SMT Solver for Nonlinear Numerical Constraints
    Ji, Xiaohui
    Ma, Feifei
    2012 IEEE 21ST INTERNATIONAL WORKSHOP ON ENABLING TECHNOLOGIES: INFRASTRUCTURE FOR COLLABORATIVE ENTERPRISES (WETICE), 2012, : 324 - 329
  • [5] An efficient string solver for string constraints with regex-counting and string-length
    Hu, Denghang
    Wu, Zhilin
    JOURNAL OF SYSTEMS ARCHITECTURE, 2025, 160
  • [6] raSAT: an SMT solver for polynomial constraints
    Vu Xuan Tung
    To Van Khanh
    Ogawa, Mizuhito
    FORMAL METHODS IN SYSTEM DESIGN, 2017, 51 (03) : 462 - 499
  • [7] raSAT: an SMT solver for polynomial constraints
    Vu Xuan Tung
    To Van Khanh
    Mizuhito Ogawa
    Formal Methods in System Design, 2017, 51 : 462 - 499
  • [8] raSAT: An SMT Solver for Polynomial Constraints
    Vu Xuan Tung
    To Van Khanh
    Ogawa, Mizuhito
    AUTOMATED REASONING (IJCAR 2016), 2016, 9706 : 228 - 237
  • [9] HAMPI: A Solver for String Constraints
    Kiezun, Adam
    Ganesh, Vijay
    Guo, Philip J.
    Hooimeijer, Pieter
    Ernst, Michael D.
    ISSTA 2009: INTERNATIONAL SYMPOSIUM ON SOFTWARE TESTING AND ANALYSIS, 2009, : 105 - 115
  • [10] Solving Hierarchical Soft Constraints with an SMT Solver
    Hosobe, Hiroshi
    PROCEEDINGS OF 2020 12TH INTERNATIONAL CONFERENCE ON COMPUTER AND AUTOMATION ENGINEERING (ICCAE 2020), 2020, : 42 - 46