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 条
  • [21] Solving String Constraints: The Case for Constraint Programming
    He, Jun
    Flener, Pierre
    Pearson, Justin
    Zhang, Wei Ming
    PRINCIPLES AND PRACTICE OF CONSTRAINT PROGRAMMING, CP 2013, 2013, 8124 : 381 - 397
  • [22] String solving with word equations and transducers: Towards a logic for analysing mutation XSS
    Lin A.W.
    Barceló P.
    ACM SIGPLAN Notices, 2016, 51 (01): : 123 - 136
  • [23] String Solving with Word Equations and Transducers: Towards a Logic for Analysing Mutation XSS
    Lin, Anthony W.
    Barcelo, Pablo
    ACM SIGPLAN NOTICES, 2016, 51 (01) : 123 - 136
  • [24] Satisfiability of Context-Free String Constraints with Subword-Ordering and Transducers
    Aiswarya, C.
    Mal, Soumodev
    Saivasan, Prakash
    41ST INTERNATIONAL SYMPOSIUM ON THEORETICAL ASPECTS OF COMPUTER SCIENCE, STACS 2024, 2024, 289
  • [25] Towards more efficient methods for solving regular-expression heavy string constraints
    Berzish, Murphy
    Day, Joel D.
    Ganesh, Vijay
    Kulczynski, Mitja
    Manea, Florin
    Mora, Federico
    Nowotka, Dirk
    THEORETICAL COMPUTER SCIENCE, 2023, 943 : 50 - 72