2019
DOI: 10.1007/978-3-030-30806-3_8
|View full text |Cite
|
Sign up to set email alerts
|

On Solving Word Equations Using SAT

Abstract: We present Woorpje, a string solver for bounded word equations (i.e., equations where the length of each variable is upper bounded by a given integer). Our algorithm works by reformulating the satisfiability of bounded word equations as a reachability problem for nondeterministic finite automata, and then carefully encoding this as a propositional satisfiability problem, which we then solve using the well-known Glucose SAT-solver. This approach has the advantage of allowing for the natural inclusion of additio… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
15
0

Year Published

2020
2020
2022
2022

Publication Types

Select...
4
2
2

Relationship

4
4

Authors

Journals

citations
Cited by 20 publications
(15 citation statements)
references
References 17 publications
(30 reference statements)
0
15
0
Order By: Relevance
“…Finally, we have aimed to test the scheme Spec(µ(WICount), Go(v , Φ 1 = Φ 2 )) in a more practical case, if Φ 1 = Φ 2 is chosen at random. For this purpose we use a set of equations provided in the paper [5] as a benchmark for the string constraint solver Woorpje, namely Track 1 consisting of 200 random equations. We have removed the length constraints from the benchmark before the specialization.…”
Section: Specialization Of Interpreter Wicountmentioning
confidence: 99%
See 2 more Smart Citations
“…Finally, we have aimed to test the scheme Spec(µ(WICount), Go(v , Φ 1 = Φ 2 )) in a more practical case, if Φ 1 = Φ 2 is chosen at random. For this purpose we use a set of equations provided in the paper [5] as a benchmark for the string constraint solver Woorpje, namely Track 1 consisting of 200 random equations. We have removed the length constraints from the benchmark before the specialization.…”
Section: Specialization Of Interpreter Wicountmentioning
confidence: 99%
“…In recent decades, program transformation techniques were applied in verification of properties of several models, including cache-coherence and cryptographic protocols, and Petri nets. On the other hand, the number of works on verification for string manipulating programs and string constraint solvers is growing rapidly last years [1,2,5,12,13,14,24,28,31].…”
Section: Introductionmentioning
confidence: 99%
See 1 more Smart Citation
“…Indeed, this model arises naturally in, e.g., tasks related to formal analysis of string-heavy programs such as sanitization and validation of inputs (cf. [28]), leading to the development of multiple string solvers such as CVC4 [7], Z3seq [10], Z3str3 [8], and Woorpje [14]. Even though these solvers are quite efficient for certain practical use cases, novel applications demand even more efficient and reliable techniques, especially for real-world inputs.…”
Section: Introductionmentioning
confidence: 99%
“…This chapter is based on work being published at RP 2019 [40], For-maliSE 2020 [42], CAV 2021 [24], and WORDS 2021 [22].…”
Section: Different Techniques To Solvingmentioning
confidence: 99%