3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-07-17 09:56:39 +00:00
Commit graph

558 commits

Author SHA1 Message Date
Nikolaj Bjorner
fc30461828 unused variables
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-10-20 09:09:06 -07:00
JohnLyu2
9dca8d18ed
fix negative contains bug (#6312) 2022-09-02 13:36:11 -07:00
JohnLyu2
5a9b0dd747
Z3str3 Debug (#6000)
* z3str3 debug

* add comments of reference to bugs in the report

Co-authored-by: John Lu <z52lu@uwaterloo.ca>
2022-04-27 12:37:07 +02:00
Nikolaj Bjorner
b723e1093b misc warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-07-31 17:16:59 -07:00
Nikolaj Bjorner
7de8c72246 cleanups
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-07-31 11:32:47 -07:00
Nikolaj Bjorner
20a67e47ca remove symbol -> zstring -> symbol round-trips
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-05-22 13:12:49 -07:00
Murphy Berzish
466269ee13
theory_str iterator refactoring and dead code removal (#5222)
* z3str3: iterator refactoring

* z3str3: remove old nfa dead code

* z3str3: continued iterator refactoring

* z3str3: remove unroll dead code

* z3str3: ctx_dep_analysis iterator refactoring

* z3str3: continued iterator refactoring

* z3str3: final iterator refactoring
2021-05-05 10:06:03 -05:00
Nikolaj Bjorner
4a6083836a call it data instead of c_ptr for approaching C++11 std::vector convention. 2021-04-13 18:17:35 -07:00
Nikolaj Bjorner
8d9be5322f fix #4365
m_library_aware_axiom_todo.reset(); should not be called because this vector is owned by the m_library_aware_trail_stack object.
2021-04-10 13:03:05 -07:00
Nikolaj Bjorner
15a7621e27 remove template dependency for trail objects 2021-03-19 11:15:05 -07:00
Murphy Berzish
04ac5f03f7
z3str3: use improved substr axioms from seq_axioms (#5097) 2021-03-12 14:51:16 -06:00
Nikolaj Bjorner
026065ff71 streamline pb solver interface and naming after removal of xor 2021-02-28 12:32:04 -08:00
Murphy Berzish
56e4ee3273
z3str3: use assert_axiom_rw more consistently (#5055) 2021-02-25 19:50:18 -06:00
Murphy Berzish
9bde93f812
z3str3: check whether rewritten axioms rewrite to TRUE (#5039) 2021-02-23 10:36:14 -06:00
Murphy Berzish
5599387a34
z3str3: add str.is_digit support (#5038) 2021-02-23 10:36:01 -06:00
Murphy Berzish
27db97c269
Z3str3: add str.to_code and str.from_code (#5015) 2021-02-18 16:51:34 -06:00
Nikolaj Bjorner
083d09aa81 fix #5016 2021-02-14 13:52:10 -08:00
Nikolaj Bjorner
25f53c0467 deal with warnings reported in https://launchpadlibrarian.net/522361319/buildlog_ubuntu-groovy-s390x.z3_4.8.10-1ubuntu4ppa1_BUILDING.txt.gz
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-02-11 13:49:47 -08:00
Nikolaj Bjorner
a152bb1e80 remove template Context dependency in every trail object 2021-02-08 15:41:57 -08:00
Nikolaj Bjorner
8f577d3943 remove ast_manager get_sort method entirely 2021-02-02 13:57:01 -08:00
Nikolaj Bjorner
937b61fc88 fix build, refactor 2021-02-02 05:26:57 -08:00
Nikolaj Bjorner
3ae4c6e9de refactor get_sort 2021-02-02 04:45:54 -08:00
Murphy Berzish
da68c3213c
Unicode for Z3str3 (#4981)
* z3str3: remove hard-coded char set

* z3str3: remove hard-coded char set

* z3str3: use char abstraction

* z3str3: scope management for unicode chars

* add QF_CHAR for z3str3

* z3str3: remove hard-coded char set

* z3str3: use char abstraction

* z3str3: scope management for unicode chars

* add QF_CHAR for z3str3

* z3str3: add 'char' string solver case

* z3str3: fix mk_char using the wrong ast manager

* z3str3: fix refcounted character vectors
2021-01-29 06:14:38 -08:00
Nikolaj Bjorner
42e601483d add selected updates #4981
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-01-28 13:43:30 -08:00
Murphy Berzish
6aba325cea
z3str3: reject certain unhandled expressions (#4818) 2020-11-25 12:15:35 -08:00
Nikolaj Bjorner
b80ba24ba6 deal with regression break 2020-10-12 12:26:50 -07:00
Murphy Berzish
f4ec63f39c
z3str3: add auxiliary str.substr axioms (#4617) 2020-08-06 14:00:50 -05:00
Nikolaj Bjorner
71a32f5bb2 remove unused
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-07-22 11:38:27 -07:00
Nuno Lopes
23e6adcad3 fix a couple hundred deref-after-free bugs due to .c_str() on a temporary string 2020-07-11 20:24:45 +01:00
Nikolaj Bjorner
48a9defb0d fix #1484 'regression'
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-07-09 15:09:25 -07:00
Nikolaj Bjorner
6b380811b8 fix #4524
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-07-09 15:05:55 -07:00
Murphy Berzish
fce1252145
Z3str3: Add consistency checks for string-integer conversion terms in model construction (#4551)
* z3str3: check consistency of str.to_int in fixed length solver

* z3str3: add similar check for int.to_str as well

* z3str3: refactor string-integer conversion check and add post checks for model construction
2020-06-30 11:20:44 -05:00
Federico Mora Rocha
8d16a9a034
z3str3: fix Issues 4349, 4354, and 4310 (#4529)
* regex needs lesson; m.mk_eq not ctx.mk_eq

* when unsat core is of size 0, then do naive learning

* remove two extra comments, and correct positive regex learning

* replace magic numbers for fixed-length lessons with constants
2020-06-24 15:46:32 -05:00
Murphy Berzish
b0633ecc86
Z3str3: safety checks for substr and propagate (#4528)
* z3str3: handle str.substr arguments missing arith values in model construction safely

* z3str3: reset propagation vectors on scope pop
2020-06-24 12:14:03 -05:00
Nikolaj Bjorner
ea1f50b77e simplify extended contains patterns
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-28 19:11:29 -07:00
Murphy Berzish
e9eec5349d
z3str3: improve vector handling in simplify_parent (#4413) 2020-05-28 09:59:42 -07:00
Murphy Berzish
882777fc1d
z3str3: track the scope of library-aware terms for axiom setup (#4420) 2020-05-28 09:59:28 -07:00
Murphy Berzish
71ea7287bb
z3str3: detect and give up when symbolic automaton construction fails (#4384)
typically this will happen due to non-constant terms in a RegLan expression
2020-05-28 09:57:33 -07:00
Murphy Berzish
ccebd4db59
z3str3: allow leading zeroes in str.to_int (#4381) 2020-05-28 09:57:22 -07:00
Murphy Berzish
f3b2a082ae
z3str3: make counterexamples less naive, and check regex membership more efficiently (#4358)
* z3str3: make counterexamples less naive, and check regex membership more efficiently

* z3str3: construct even better counterexamples for regex membership
2020-05-28 09:57:08 -07:00
Nuno Lopes
d8cea7c8d5 fix a few warnings & simplify debug.h header 2020-05-26 13:49:13 +01:00
Murphy Berzish
fcbcad6c10
Merge pull request #4320 from mtrberzi/mc-rational
z3str3: use rational in place of unsigned during model construction
2020-05-15 20:42:19 -05:00
Murphy Berzish
ba40b36176
Merge pull request #4319 from mtrberzi/disable-get-grounded-concats
Z3str3: disable compute_contains() and get_grounded_concats() checks
2020-05-15 20:42:07 -05:00
Murphy Berzish
5e7806c4a4 z3str3: use rational in place of unsigned during model construction 2020-05-13 14:32:44 -04:00
Murphy Berzish
3c606ea9b2 z3str3: disable compute_contains() and get_grounded_concats() checks 2020-05-13 11:53:26 -04:00
Murphy Berzish
51beeec92f z3str3: heuristics for predicates over int-to-string terms 2020-05-12 21:35:24 -04:00
Murphy Berzish
22d0dd863b z3str3: properly handle the case when an int.to.str term isn't fully assigned by string/arith theories 2020-05-12 19:36:04 -04:00
Nikolaj Bjorner
becf423c77
remove level of indirection for context and ast_manager in smt_theory (#4253)
* remove level of indirection for context and ast_manager in smt_theory

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* add request by #4252

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* move to def

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* int

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-08 16:46:03 -07:00
Murphy Berzish
1f15033ca2
z3str3: remove legacy code (#4215)
* z3str3: remove legacy fixed-length overlap testing

parameter smt.str.fixed_length_overlap_models has been deprecated

* z3str3: remove legacy length/value testing algorithm and binary search heuristic

the following parameters are deprecated:
smt.str.use_binary_search
smt.str.binary_search_start
smt.str.fixed_length_models (the fixed-length model construction is now always used)

* z3str3: remove legacy regex unroll methods

* z3str3: remove unused methods and member variables
2020-05-06 13:07:04 -07:00
Murphy Berzish
b0ffad95b0
Merge pull request #4092 from mtrberzi/regex-compl-inter
z3str3: fix support for re.complement and re.intersection
2020-04-29 10:13:20 -05:00