mirror of
https://github.com/Z3Prover/z3
synced 2026-07-05 06:46:11 +00:00
conservative expansions
This commit is contained in:
parent
98a7992a65
commit
f42172e65a
21 changed files with 564 additions and 35 deletions
21
benchmarks/instance14326.smt2
Normal file
21
benchmarks/instance14326.smt2
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
(set-info :smt-lib-version 2.6)
|
||||
(set-logic QF_S)
|
||||
(set-info :source |
|
||||
Generated by: Murphy Berzish, Mitja Kulczynski, Federico Mora, Florin Manea, Joel Day, Dirk Nowotka, Vijay Ganesh, Zhengyang Lu
|
||||
Generated on: 2020-10-01
|
||||
Description: Translated from a collection of real-world regex queries, AutomataArk, collected by Loris D’Antoni and Fang Wang: https://github.com/lorisdanto/automatark
|
||||
Application: Evaluate solvers on real-world regex queries
|
||||
Target solver: Z3str3RE, CVC4, OSTRICH, Z3seq, Z3str3, Z3-Trau
|
||||
Publications: Berzish, M., Kulczynski, M., Mora, F., Manea, F., Day, J. D., Nowotka, D., & Ganesh, V. (2021, July). An SMT solver for regular expressions and linear arithmetic over string length. In CAV 2021.
|
||||
|)
|
||||
(set-info :license "https://creativecommons.org/licenses/by/4.0/")
|
||||
(set-info :category "industrial")
|
||||
(set-info :status sat)
|
||||
|
||||
(declare-const X String)
|
||||
(assert (not (str.in_re X (re.union (re.++ (re.union (str.to_re "Jan") (str.to_re "Feb") (str.to_re "Mar") (str.to_re "Apr") (str.to_re "May") (str.to_re "Jun") (str.to_re "Jul") (str.to_re "Aug") (str.to_re "Sep") (str.to_re "Oct") (str.to_re "Nov") (str.to_re "Dec")) (re.* (str.to_re ",")) (re.union (str.to_re " ") (str.to_re "\u{9}") (str.to_re "\u{a}") (str.to_re "\u{c}") (str.to_re "\u{d}")) (re.* (re.union (str.to_re " ") (str.to_re "\u{9}") (str.to_re "\u{a}") (str.to_re "\u{c}") (str.to_re "\u{d}"))) ((_ re.loop 4 4) (re.range "0" "9"))) (re.++ (re.union (str.to_re "jan") (str.to_re "feb") (str.to_re "mar") (str.to_re "apr") (str.to_re "may") (str.to_re "jun") (str.to_re "jul") (str.to_re "aug") (str.to_re "sep") (str.to_re "oct") (str.to_re "nov") (str.to_re "dec")) (re.* (str.to_re ",")) (re.union (str.to_re " ") (str.to_re "\u{9}") (str.to_re "\u{a}") (str.to_re "\u{c}") (str.to_re "\u{d}")) ((_ re.loop 4 4) (re.range "0" "9"))) (re.++ (re.union (str.to_re "January") (str.to_re "February") (str.to_re "March") (str.to_re "April") (str.to_re "May") (str.to_re "June") (str.to_re "July") (str.to_re "August") (str.to_re "September") (str.to_re "October") (str.to_re "November") (str.to_re "December")) (re.* (str.to_re ",")) (re.union (str.to_re " ") (str.to_re "\u{9}") (str.to_re "\u{a}") (str.to_re "\u{c}") (str.to_re "\u{d}")) ((_ re.loop 4 4) (re.range "0" "9"))) (re.++ (re.union (str.to_re "january") (str.to_re "february") (str.to_re "march") (str.to_re "april") (str.to_re "may") (str.to_re "june") (str.to_re "july") (str.to_re "august") (str.to_re "september") (str.to_re "october") (str.to_re "november") (str.to_re "december")) (re.* (str.to_re ",")) (re.union (str.to_re " ") (str.to_re "\u{9}") (str.to_re "\u{a}") (str.to_re "\u{c}") (str.to_re "\u{d}")) ((_ re.loop 4 4) (re.range "0" "9")) (str.to_re "\u{a}"))))))
|
||||
(assert (not (str.in_re X (re.++ (str.to_re "//jdb/inf.php?id=") ((_ re.loop 32 32) (re.union (re.range "a" "f") (re.range "0" "9"))) (str.to_re "/Ui\u{a}")))))
|
||||
(assert (not (str.in_re X (re.++ (re.* (re.opt (re.range "0" "9"))) (re.opt (re.++ (str.to_re ".") (re.union ((_ re.loop 1 1) (re.range "0" "9")) ((_ re.loop 2 2) (re.range "0" "9"))))) (str.to_re "\u{a}")))))
|
||||
(check-sat)
|
||||
|
||||
(exit)
|
||||
Loading…
Add table
Add a link
Reference in a new issue