Abstract
Constraint satisfaction problems involving strings have been a subject of theoretical study for decades, but it is only in recent years that practical solving methods have begun to emerge. This increasing interest in solving string constraints led to the development of various techniques and solvers, often accompanied by specific benchmark sets. As a result, there is now a substantial corpus of publicly available, yet largely unclassified, such benchmarks. In this context, we present SMTQuery, a framework for maintaining and analyzing benchmarks for SMT string problems. SMTQuery enables the execution of user-defined queries to extract domain-specific information from these benchmarks, facilitating a deeper analysis of the underlying problems. We demonstrate its utility by analyzing over 100,000 benchmarks and training an algorithm selection model to match benchmarks with suitable solvers.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
References
Abdulla, P.A., et al.: Norn: An SMT solver for string constraints. In: International conference on Computer Aided Verification, pp. 462–469. Springer (2015)
Amadini, R.: A survey on string constraint solving. ACM Comput. Surv. (CSUR) 55(1), 1–38 (2021)
Aydin, A., Bang, L., Bultan, T.: Automata-based model counting for string constraints. In: Computer Aided Verification: 27th International Conference, CAV 2015, San Francisco, CA, USA, July 18-24, 2015, Proceedings, Part I, pp. 255–272. Springer (2015)
Backes, J., et al.: Semantic-based automated reasoning for AWS access policies using SMT. In: 2018 Formal Methods in Computer Aided Design (FMCAD), pp. 1–9 (2018)
Barbosa, H., et al.: cvc5: a versatile and industrial-strength SMT solver. In: International Conference on Tools and Algorithms for the Construction and Analysis of Systems, pp. 415–442. Springer (2022)
Berzish, M., et al.: String theories involving regular membership predicates: from practice to theory and back. In: Lecroq, T., Puzynina, S. (eds.) Combinatorics on Words, pp. 50–64. Springer International Publishing, Cham (2021)
Berzish, M., et al.: Towards more efficient methods for solving regular-expression heavy string constraints. Theor. Comput. Sci. 943, 50–72 (2023)
Berzish, M., Ganesh, V., Zheng, Y.: Z3str3: a string solver with theory-aware heuristics. In: 2017 Formal Methods in Computer Aided Design (FMCAD), pp. 55–59. IEEE (2017)
Blahoudek, F., et al.: Word equations in synergy with regular constraints. In: Chechik, M., Katoen, J.P., Leucker, M. (eds.) Formal Methods, pp. 403–423. Springer International Publishing, Cham (2023)
Chen, T., Hague, M., Lin, A.W., Rümmer, P., Wu, Z.: Decision procedures for path feasibility of string-manipulating programs with complex operations. Proc. ACM Program. Lang. 3(POPL), 49:1-49:30 (2019)
Day, J.D., Ehlers, T., Kulczynski, M., Manea, F., Nowotka, D., Poulsen, D.B.: On solving word equations using SAT. In: International Conference on Reachability Problems, pp. 93–106. Springer (2019)
Day, J.D., Ganesh, V., Grewal, N., Manea, F.: On the expressive power of string constraints. Proc. ACM Program. Lang. 7(POPL), 278–308 (2023). https://doi.org/10.1145/3571203
Day, J.D., Kulczynski, M., Manea, F., Nowotka, D., Poulsen, D.B.: Rule-based word equation solving. In: Proceedings of the 8th International Conference on Formal Methods in Software Engineering, pp. 87–97 (2020)
De Moura, L., Bjørner, N.: Z3: An efficient SMT solver. In: TACAS 2008, pp. 337–340. Springer (2008)
Draghici, A., Haase, C., Manea, F.: Semënov arithmetic, affine VASS, and string constraints. In: 41st International Symposium on Theoretical Aspects of Computer Science, STACS 2024. LIPIcs, vol. 289, pp. 29:1–29:19. Schloss Dagstuhl - Leibniz-Zentrum für Informatik (2024). https://doi.org/10.4230/LIPIcs.STACS.2024.29
Hojjat, H., Rümmer, P., Shamakhi, A.: On strings in software model checking. In: Lin, A.W. (ed.) Programming Languages and Systems, pp. 19–30. Springer International Publishing, Cham (2019)
Jez, A.: Word Equations in Nondeterministic Linear Space. In: Chatzigiannakis, I., Indyk, P., Kuhn, F., Muscholl, A. (eds.) 44th International Colloquium on Automata, Languages, and Programming (ICALP 2017). Leibniz International Proceedings in Informatics (LIPIcs), vol. 80, pp. 95:1–95:13. Schloss Dagstuhl–Leibniz-Zentrum fuer Informatik, Dagstuhl, Germany (2017). http://drops.dagstuhl.de/opus/volltexte/2017/7408
Kan, S., Lin, A.W., Rümmer, P., Schrader, M.: Certistr: A certified string solver (technical report) (2021, to appear in CPP 2022). CoRR arxiv.org/abs/2208.08806
Kausler, S., Sherman, E.: Evaluation of string constraint solvers in the context of symbolic execution. In: Proceedings of the 29th ACM/IEEE International Conference on Automated Software Engineering. p. 259-270. ASE ’14, Association for Computing Machinery, New York, NY, USA (2014). https://doi.org/10.1145/2642937.2643003
Kiezun, A., Ganesh, V., Artzi, S., Guo, P.J., Hooimeijer, P., Ernst, M.D.: Hampi: a solver for word equations over strings, regular expressions, and context-free grammars. ACM Trans. Softw. Eng. Methodol. 21(4), 1 (2013). https://doi.org/10.1145/2377656.2377662
Kulczynski, M., Lotz, K., Nowotka, D., Poulsen, D.B.: Solving string theories involving regular membership predicates using sat. In: Legunsen, O., Rosu, G. (eds.) Model Checking Software, pp. 134–151. Springer International Publishing, Cham (2022)
Kulczynski, M., Manea, F., Nowotka, D., Poulsen, D.B.: ZaligVinder: a generic test framework for string solvers. J. Softw. Evol. Process, e2400 (2021)
Lin, A.W., Barceló, P.: String solving with word equations and transducers: towards a logic for analysing mutation xss. In: Proceedings of the 43rd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pp. 123–136 (2016)
Lotz, K., et al.: Solving string constraints using sat. In: Enea, C., Lal, A. (eds.) Computer Aided Verification, pp. 187–208. Springer Nature Switzerland, Cham (2023)
Mora, F., Berzish, M., Kulczynski, M., Nowotka, D., Ganesh, V.: Z3str4: a multi-armed string solver. In: FM 2021, pp. 389–406. Springer (2021)
Plandowski, W., Rytter, W.: Application of Lempel-Ziv Encodings to the Solution of Word Equations, pp. 731–742. Springer Berlin Heidelberg (1998). https://doi.org/10.1007/BFb0055097
Rice, J.R.: The algorithm selection problem. Adv. Comput. 15, 65–118 (1976). https://doi.org/10.1016/S0065-2458(08)60520-3
Saxena, P., Akhawe, D., Hanna, S., Mao, F., McCamant, S., Song, D.: A symbolic execution framework for javascript. In: 2010 IEEE Symposium on Security and Privacy, pp. 513–528 (2010)
Scott, J., Niemetz, A., Preiner, M., Nejati, S., Ganesh, V.: Publisher correction: algorithm selection for SMT. Int. J. Softw. Tools Technol. Transf. 25(5), 799–800 (2023). https://doi.org/10.1007/s10009-023-00714-1
Stanford, C., Veanes, M., Bjørner, N.: Symbolic boolean derivatives for efficiently solving extended regular expression constraints. In: Proceedings of the 42nd ACM SIGPLAN International Conference on Programming Language Design and Implementation. pp. 620–635. PLDI 2021, Association for Computing Machinery, New York, NY, USA (2021). https://doi.org/10.1145/3453483.3454066
Yu, F., Alkhalaf, M., Bultan, T.: STRANGER: an automata-based string analysis tool for PHP. In: Proceedings of the 16th International Conference on Tools and Algorithms for the Construction and Analysis of Systems, pp. 154–157. TACAS’10, Springer-Verlag, Berlin, Heidelberg (2010)
Zheng, Y., Zhang, X., Ganesh, V.: Z3-str: a z3-based string solver for web application analysis. In: ESEC/SIGSOFT FSE 2013, pp. 114–124 (2013)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2025 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Kulczynski, M., Lotz, K., Manea, F., Poulsen, D.B., Sarnighausen-Cahn, . (2025). SMTQuery: Analysing SMT-LIB String Benchmarks. In: C. Nogueira, S., Teodorov, C. (eds) Formal Methods: Foundations and Applications. SBMF 2024. Lecture Notes in Computer Science, vol 15403. Springer, Cham. https://doi.org/10.1007/978-3-031-78116-2_2
Download citation
DOI: https://doi.org/10.1007/978-3-031-78116-2_2
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-78115-5
Online ISBN: 978-3-031-78116-2
eBook Packages: Computer ScienceComputer Science (R0)