Bounded Strings for Constraint Programming

We present a domain for string decision variables of bounded length, combining features from fixed-length and unbounded-length string solvers to reason on an interval defined by languages of prefixes and suffixes. We provide a theoretical groundwork for constraint solving on this domain and describe propagation techniques for several common constraints.

[1]  Gilles Pesant,et al.  A Regular Language Membership Constraint for Finite Sequences of Variables , 2004, CP.

[2]  Pascal Van Hentenryck,et al.  Design, Implementation, and Evaluation of the Constraint Language cc(FD) , 1994, Constraint Programming.

[3]  Anna Philippou,et al.  Tools and Algorithms for the Construction and Analysis of Systems , 2018, Lecture Notes in Computer Science.

[4]  Rupak Majumdar,et al.  Dynamic test input generation for database applications , 2007, ISSTA '07.

[5]  Willem Jan van Hoeve,et al.  Global Constraints , 2006, Handbook of Constraint Programming.

[6]  Westley Weimer,et al.  StrSolve: solving string constraints lazily , 2012, Automated Software Engineering.

[7]  V. N. Venkatakrishnan,et al.  WAPTEC: whitebox analysis of web applications for parameter tampering exploit construction , 2011, CCS '11.

[8]  Xiang Fu,et al.  Simple linear string constraints , 2013, Formal Aspects of Computing.

[9]  Westley Weimer,et al.  A decision procedure for subset constraints over regular languages , 2009, PLDI '09.

[10]  Roman Barták,et al.  Dynamic Global Constraints in Backtracking Based Environments , 2003, Ann. Oper. Res..

[11]  Pascal Van Hentenryck,et al.  Constraint Satisfaction over Bit-Vectors , 2012, CP.

[12]  Keith Golden,et al.  Constraint Reasoning over Strings , 2003, CP.

[13]  Toby Walsh,et al.  Global Grammar Constraints , 2006, CP.

[14]  Steve Hanna,et al.  A Symbolic Execution Framework for JavaScript , 2010, 2010 IEEE Symposium on Security and Privacy.

[15]  Pierre Flener,et al.  Solving String Constraints: The Case for Constraint Programming , 2013, CP.

[16]  Pierre Flener,et al.  Towards Solver-Independent Propagators , 2012, CP.

[17]  Guodong Li,et al.  JST: An automatic test generation tool for industrial Java applications with strings , 2013, 2013 35th International Conference on Software Engineering (ICSE).

[18]  Willem Jan van Hoeve,et al.  A Systematic Approach to MDD-Based Constraint Programming , 2010, CP.

[19]  Jorge A. Navas,et al.  Unbounded Model-Checking with Interpolation for Regular Language Constraints , 2013, TACAS.

[20]  Westley Weimer,et al.  Solving string constraints lazily , 2010, ASE.

[21]  Eugene C. Freuder,et al.  Constraint Satisfaction: An Emerging Paradigm , 2006, Handbook of Constraint Programming.

[22]  Oscar H. Ibarra,et al.  Symbolic String Verification: Combining String Analysis and Size Analysis , 2009, TACAS.

[23]  Nikolaj Bjørner,et al.  Path Feasibility Analysis for String-Manipulating Programs , 2009, TACAS.

[24]  Mats Carlsson,et al.  Deriving Filtering Algorithms from Constraint Checkers , 2004, CP.

[25]  Meinolf Sellmann The Theory of Grammar Constraints , 2006, CP.

[26]  Michael D. Ernst,et al.  HAMPI: a solver for string constraints , 2009, ISSTA.

[27]  Michael J. Maher Open Constraints in a Boundable World , 2009, CPAIOR.