Back to Search
Start Over
A decision procedure for string constraints with string/integer conversion and flat regular constraints.
- Source :
-
Acta Informatica . Mar2024, Vol. 61 Issue 1, p23-52. 30p. - Publication Year :
- 2024
-
Abstract
- String constraint solving is the core of various testing and verification approaches for scripting languages. Among algorithms for solving string constraints, flattening is a well-known approach that is particularly useful in handling satisfiable instances. As string/integer conversion is an important function appearing in almost all scripting languages, Abdulla et al. extended the flattening approach to this function recently. However, their approach supports only a special flattening pattern and leaves the support of the general flat regular constraints as an open problem. In this paper, we fill the gap by proposing a complete flattening approach for the string/integer conversion. The approach is built upon a new quantifier elimination procedure for the linear-exponential arithmetic (namely, the extension of Presburger arithmetic with exponential functions, denoted by ExpPA) improved from the one proposed by Cherlin and Point in 1986. We analyze the complexity of our quantifier elimination procedure and show that the decision problem for existential ExpPA formulas is in 3-EXPTIME. Up to our knowledge, this is the first elementary complexity upper bound for this problem. While the quantifier elimination procedure is too expensive to be implemented efficiently, we propose various optimizations and provide a prototypical implementation. We evaluate the performance of our implementation on the benchmarks that are generated from the string hash functions as well as randomly. The experimental results show that our implementation outperforms the state-of-the-art solvers. [ABSTRACT FROM AUTHOR]
- Subjects :
- *INTEGERS
*ARITHMETIC functions
*STATISTICAL decision making
*ARITHMETIC
Subjects
Details
- Language :
- English
- ISSN :
- 00015903
- Volume :
- 61
- Issue :
- 1
- Database :
- Academic Search Index
- Journal :
- Acta Informatica
- Publication Type :
- Academic Journal
- Accession number :
- 175566973
- Full Text :
- https://doi.org/10.1007/s00236-023-00446-4