Solving String Constraints with Nondeterministic Streaming String Transducers and Parikh Automata.

被引:0
|
作者
Kamano M. [1 ]
Fukuda T. [1 ]
Minamide Y. [1 ]
机构
[1] School of Computing, Tokyo Institute of Technology
来源
Computer Software | 2023年 / 40卷 / 01期
关键词
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. © 2023 Japan Society for Software Science and Technology. All rights reserved;
D O I
10.11309/jssst.40.1_117
中图分类号
学科分类号
摘要
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. © 2023 Japan Society for Software Science and Technology. All rights reserved.
引用
收藏
页码:117 / 136
页数:19
相关论文
共 25 条
  • [1] Nondeterministic Streaming String Transducers
    Alur, Rajeev
    Deshmukh, Jyotirmoy V.
    Automata, Languages and Programming, ICALP, Pt II, 2011, 6756 : 1 - 20
  • [2] Streaming String Transducers
    Alur, Rajeev
    LOGIC, LANGUAGE, INFORMATION AND COMPUTATION, WOLLIC 2011, 2011, 6642 : 1 - 1
  • [3] Expressiveness of streaming string transducers
    Alur, Rajeev
    Cerny, Pavol
    IARCS ANNUAL CONFERENCE ON FOUNDATIONS OF SOFTWARE TECHNOLOGY AND THEORETICAL COMPUTER SCIENCE (FSTTCS 2010), 2010, 8 : 1 - 12
  • [4] Copyful Streaming String Transducers
    Filiot, Emmanuel
    Reynier, Pierre-Alain
    FUNDAMENTA INFORMATICAE, 2021, 178 (1-2) : 59 - 76
  • [5] Streaming Ranked-Tree-to-String Transducers
    Takahashi, Yuta
    Asada, Kazuyuki
    Nakano, Keisuke
    IMPLEMENTATION AND APPLICATION OF AUTOMATA (CIAA 2019), 2019, 11601 : 235 - 247
  • [6] Streaming ranked-tree-to-string transducers
    Asada, Kazuyuki (asada@riec.tohoku.ac.jp), 1600, Elsevier B.V. (870):
  • [7] Finite-valued Streaming String Transducers
    Filiot, Emmanuel
    Jecker, Ismael
    Loeding, Christof
    Muscholl, Anca
    Puppis, Gabriele
    Winter, Sarah
    PROCEEDINGS OF THE 39TH ANNUAL ACM/IEEE SYMPOSIUM ON LOGIC IN COMPUTER SCIENCE, LICS 2024, 2024,
  • [8] Streaming ranked-tree-to-string transducers
    Takahashi, Yuta
    Asada, Kazuyuki
    Nakano, Keisuke
    THEORETICAL COMPUTER SCIENCE, 2021, 870 : 165 - 187
  • [9] On the Decomposition of Finite-Valued Streaming String Transducers
    Gallot, Paul
    Muscholl, Anca
    Puppis, Gabriele
    Salvati, Sylvain
    34TH SYMPOSIUM ON THEORETICAL ASPECTS OF COMPUTER SCIENCE (STACS 2017), 2017, 66
  • [10] String Constraints with Concatenation and Transducers Solved Efficiently
    Holik, Lukas
    Janku, Petr
    Lin, Anthony W.
    Rummer, Philipp
    Vojnar, Tomas
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2018, 2 (POPL):