Logo image
High-Level Abstractions for Simplifying Extended String Constraints in SMT
Conference proceeding   Open access   Peer reviewed

High-Level Abstractions for Simplifying Extended String Constraints in SMT

Andrew Reynolds, Andres Notzli, Clark Barrett and Cesare Tinelli
COMPUTER AIDED VERIFICATION, CAV 2019, PT II, Vol.11562, pp.23-42
Lecture Notes in Computer Science
01/01/2019
DOI: 10.1007/978-3-030-25543-5_2
url
https://doi.org/10.1007/978-3-030-25543-5_2View
Published (Version of record) Open Access

Abstract

Satisfiability Modulo Theories (SMT) solvers with support for the theory of strings have recently emerged as powerful tools for reasoning about string-manipulating programs. However, due to the complex semantics of extended string functions, it is challenging to develop scalable solvers for the string constraints produced by program analysis tools. We identify several classes of simplification techniques that are critical for the efficient processing of string constraints in SMT solvers. These techniques can reduce the size and complexity of input constraints by reasoning about arithmetic entailment, multisets, and string containment relationships over input terms. We provide experimental evidence that implementing them results in significant improvements over the performance of state-of-the-art SMT solvers for extended string constraints.
Computer Science Technology Computer Science, Software Engineering Computer Science, Theory & Methods Science & Technology

Details

Metrics

Logo image