3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-10-04 15:03:57 +00:00
Commit graph

1614 commits

Author SHA1 Message Date
Murphy Berzish
244b611f1c fix infinite loop bug in theory_str::new_eq_check 2016-07-28 17:10:41 -04:00
Murphy Berzish
999420485b add theory_str::check_length_eq_var_concat and helper methods 2016-07-28 16:49:39 -04:00
Murphy Berzish
76ceac6664 add theory_str::check_length_const_string 2016-07-28 16:31:40 -04:00
Murphy Berzish
95f1cfa5a6 add theory_str::check_length_consistency, WIP 2016-07-27 16:18:05 -04:00
Murphy Berzish
a31a948a5b add theory_str::can_concat_eq_concat 2016-07-27 15:21:33 -04:00
Murphy Berzish
ceed3f3ff0 add theory_str::can_concat_eq_str 2016-07-27 15:15:01 -04:00
Murphy Berzish
1c518be61d new_eq_handler improvements in theory_str, WIP 2016-07-27 12:46:35 -04:00
Nikolaj Bjorner
56c78753f0 updating default solver selection. Add dt2bv transformation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-24 18:16:32 -07:00
Murphy Berzish
f555074e27 add option to disable integer theory integration in theory_str; this is currently ENABLED 2016-07-23 23:29:56 -04:00
Murphy Berzish
02a66c425e add option to bypass quick returns in integer theory integration in theory_str
this might not actually be that useful, if the problem is, as I suspect it to be,
that values we get from the integer theory need not correspond with
assertions in the core (that can get popped off the stack, etc.)
2016-07-23 22:43:46 -04:00
Murphy Berzish
ac16aa7c81 fix out-of-scope variable bug in theory_str::process_concat_eq_type6
this fix will have to be made to all functions that use varForBreakConcat
2016-07-23 16:02:11 -04:00
Nikolaj Bjorner
a59ed0fc2f Merge branch 'master' of https://github.com/Z3Prover/z3 2016-07-20 12:18:16 -07:00
Nikolaj Bjorner
60711bb0cd deal with model construction, issue #684. fix model construction for ite #678. WIth this version, issue #686 does not repro
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-20 12:18:07 -07:00
Nikolaj Bjorner
5f39c4371c fix proof generation for unit resolution. Issue #691
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-20 11:54:39 -07:00
Nikolaj Bjorner
6559fd817d Fix bit-blasting discrepancy. #690
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-20 10:53:53 -07:00
Nikolaj Bjorner
f30fb7639e Merge branch 'master' of https://github.com/Z3Prover/z3 2016-07-13 20:32:24 -07:00
Nikolaj Bjorner
3989d238c0 fix bugs exposed in #677. to_int(x) has the semantics that to_int(x) <= x, and to_int(x) is the largest integer satisfying this inequality. The encoding in purify_arith had it the other way x <= to_int(x) contrary to how to_int(x) is handled elsewhere. Another bug in theory_arith for mixed-integer linear case was also exposed. Fractional bounds on expressions of the form to_int(x), and more generally on integer rows were not rounded prior to internalization
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-13 20:32:18 -07:00
Christoph M. Wintersteiger
3bea00efe3 added smt_params trace 2016-07-13 15:35:29 +01:00
Murphy Berzish
8d47b08244 fix out-of-scope value tester bug in theory_str::gen_free_var_options()
we now pass tests/z3str/charAt-003.smt2 with detailed debugging turned off!
2016-07-10 13:05:41 -04:00
Fabian Wolff
6eaab00e83 Fix spelling errors 2016-07-09 11:46:43 +02:00
Nikolaj Bjorner
bdbf1c9bf4 add support for default semantics for stoi (non-integer strings map to -1). Issue #670
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-08 10:45:19 -07:00
Murphy Berzish
8aa6fee0af fixups wip 2016-07-08 12:21:11 -04:00
Murphy Berzish
847a5fc1f8 replace old mk_value behaviour in theory_str that creates placeholders for unused terms instead of crashing 2016-07-07 16:13:48 -04:00
Murphy Berzish
9eead64d03 prevent assertion of basic string axioms on variables that go out of scope (theory_str)
this is testing a crash avoidance feature, the regression is tests/z3str/regex-026.smt2

this also adds some debugging code for a substr() crash but that is WIP
2016-07-06 17:31:37 -04:00
Nikolaj Bjorner
4c786c5f70 add n-ary disjunction and conjunction
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-01 08:15:50 -07:00
Murphy Berzish
7d903ff1fa implement process_concat_eq_unroll, WIP 2016-06-30 04:55:11 -04:00
Murphy Berzish
b53da182b6 fix gen_assign_unroll_reg so that it does not assert a contradiction 2016-06-30 04:39:09 -04:00
Murphy Berzish
a2d6149df5 add general-case regex unroll model generation
WIP as there is currently a SAT-as-UNSAT bug I'm trying to fix

This also changes the semantics of lower_bound and upper_bound,
no longer wrapping the expr that is passed in with mk_strlen().
This actually makes these methods useful for checking bounds
of things other than strings.
2016-06-30 04:00:42 -04:00
Murphy Berzish
b4110c886f successful unroll of simple unbounded Str2Reg 2016-06-30 02:46:16 -04:00
Murphy Berzish
427632ede3 let free variable assignment work a bit more towards unrolls 2016-06-30 01:42:00 -04:00
Murphy Berzish
21f0a50aba add Unroll check to get_eqc_allUnroll 2016-06-30 01:24:43 -04:00
Murphy Berzish
03827cb487 add more Unroll support to final_check, ctx_dep_analysis 2016-06-30 01:21:21 -04:00
Nikolaj Bjorner
c2f9d35d59 throw exceptions when internalizing expressions with free variables, issue #663
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-29 16:53:28 -07:00
Nikolaj Bjorner
8aee7129f6 shortcircuit stats functions on ground terms
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-28 21:48:49 -07:00
Murphy Berzish
b31d1a92aa add more support for unroll (WIP) 2016-06-27 14:41:57 -04:00
Nikolaj Bjorner
98a34ca51f Merge branch 'master' of https://github.com/Z3Prover/z3 2016-06-23 21:39:34 -07:00
Nikolaj Bjorner
c72ed3e6b4 update core minimization code
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-23 21:39:28 -07:00
Murphy Berzish
020e8aef6d regex union 2016-06-23 17:14:03 -04:00
Murphy Berzish
04803d7a3b starting regex support 2016-06-23 15:24:35 -04:00
Christoph M. Wintersteiger
0a575936d0 Merge branch 'master' of https://github.com/Z3Prover/z3 2016-06-23 19:31:08 +01:00
Christoph M. Wintersteiger
8bde7b8a4c Added facilities for dumping smt_params for debugging purposes 2016-06-23 19:31:00 +01:00
Nikolaj Bjorner
5b497b6249 reduce set of mainly verbose warnings raised by -Wmaybe-uninitialized and unused variable warnings from release mode builds
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-22 20:25:47 -07:00
Murphy Berzish
a808a8c587 theory_str infer_len_concat_arg 2016-06-21 17:38:49 -04:00
Murphy Berzish
1e46782392 theory_str infer_len_concat 2016-06-21 17:25:28 -04:00
Murphy Berzish
ba42478f9b string-integer wip 2016-06-20 20:02:22 -04:00
Nikolaj Bjorner
fa6f9b4a37 Merge branch 'master' of https://github.com/Z3Prover/z3 2016-06-20 16:39:08 -07:00
Nikolaj Bjorner
9c099d6b1b fix mb maximization logic, so far not accessible
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-20 16:39:03 -07:00
Murphy Berzish
89a337ba7e quick path with string-integer integration in theory_str::simplify_concat_equality 2016-06-19 18:25:31 -04:00
Murphy Berzish
5b3c868c90 theory_str Replace method 2016-06-15 21:14:54 -04:00
Murphy Berzish
fb20951064 theory_str Substr support WIP 2016-06-15 20:26:07 -04:00