Solving String Constraints with Nondeterministic Streaming String Transducers and Parikh Automata

String constraints are logical formulas with regular expressions and string manipulating functions, and emerge in analysis of string manipulating programs. We develop a procedure to check satisfiability of syntactically-restricted string constraints with transducers. A streaming string transducer (S...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Computer Software 2023/01/25, Vol.40(1), pp.1_117-1_136
Hauptverfasser: KAMANO, Masaki, FUKUDA, Taiga, MINAMIDE, Yasuhiko
Format: Artikel
Sprache:jpn
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:String constraints are logical formulas with regular expressions and string manipulating functions, and emerge in analysis of string manipulating programs. We develop a procedure to check satisfiability of syntactically-restricted string constraints with transducers. A streaming string transducer (SST) is a variant of a string-to-string transducer that computes an output with a fixed number of string variables. We also employ a Parikh automaton (PA), a string acceptor which computes a vector of natural numbers for an input and accepts if the vector satisfies a given arithmetic formula. We first show construction of the pre-image of a PA under an SST. Then we apply the result to show decidability of string constraints that may contain string replace functions using regular expressions with capture groups, and substring functions. The decision procedure is implemented as an SMT solver for string theory, and compared with existing solvers through an experiment on several constriants.
ISSN:0289-6540
DOI:10.11309/jssst.40.1_117