Christoph M. Wintersteiger
f54a7db108
Added debug traces.
2016-08-09 16:36:49 +01:00
Christoph M. Wintersteiger
ff3c630207
.NET API: Added MkMul from IEnumerable.
2016-08-09 16:36:32 +01:00
Christoph M. Wintersteiger
03aa6914a3
Fixed sub-logic detection for the ALL logic.
2016-08-09 13:20:45 +01:00
Murphy Berzish
3dff240bb3
theory_str model validation for Length
2016-08-07 15:50:41 -04:00
Murphy Berzish
cb566ad5ce
fix model validation for theory_str
2016-08-07 15:43:08 -04:00
Murphy Berzish
395ec4543c
avoid crash in theory_str, this leaks memory
2016-08-06 22:19:10 -04:00
Murphy Berzish
43b0cd5010
clean up unused variables in theory_str.cpp
2016-08-06 15:38:58 -04:00
Murphy Berzish
2c91f388df
add defensive double-non-concat check in theory_str::simplify_concat_equality()
2016-08-06 15:35:47 -04:00
Murphy Berzish
91c336d7ee
fix erroneous vector double-insert in theory_str::group_terms_by_eqc()
2016-08-06 15:32:37 -04:00
Nikolaj Bjorner
aee6a7fe4c
Merge pull request #708 from dstaple/master
...
Removed complete() from handling of y.is_zero() in process_power
2016-08-06 09:06:34 -07:00
Nikolaj Bjorner
14e8126f16
wrapping interruptable with solver consequence call
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-08-05 11:32:12 -07:00
Douglas B. Staple
87b7674245
Removed complete() from handling of y.is_zero() in process_power
2016-08-05 14:11:51 -03:00
Murphy Berzish
0c4e725902
finish theory_str::mk_concat, no caching of generated terms yet
2016-08-04 16:40:05 -04:00
Nikolaj Bjorner
f3ef59b095
fix scanner bug at EOF
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-08-04 13:17:37 -07:00
Nikolaj Bjorner
6582330cc4
merge
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-08-03 14:25:57 -07:00
Nikolaj Bjorner
bbfe02b25a
modulating data-type solver
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-08-03 11:16:29 -07:00
Nikolaj Bjorner
491b3b34aa
tune consequence finding. Factor solver pretty-printing as SMT-LIB into top-level
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-08-03 11:14:29 -07:00
Murphy Berzish
bc91d182bf
mk_concat fixes WIP
2016-08-03 13:39:14 -04:00
Murphy Berzish
3c2fe497de
modify theory_str::get_value() to check EQC for a numeral
...
Instead of asking the arithmetic theory for the current assignment,
we return the (unique) numeral in the equivalence class of the term
whose length we want to know.
This is because the arithmetic theory may return a default / internal
value that doesn't correspond to anything actually asserted by the core solver.
2016-08-02 16:44:54 -04:00
Murphy Berzish
45c4954959
add debugging to theory_str::get_len_value in preparation for fixes
2016-08-02 14:52:44 -04:00
Murphy Berzish
a51ad07e3f
crash avoidance in propagation of basic string axioms and gen_len_test_options
2016-08-01 20:52:49 -04:00
Murphy Berzish
97f07a8a7c
fix debugging statements in theory_str::gen_len_test_options
...
this fixes charAt-007.smt2 and prevents two unique crashes
2016-08-01 18:14:56 -04:00
Murphy Berzish
ee1af96f1b
add opt_NoQuickReturn_IntegerTheory check in theory_str::new_eq_check()
...
This allows us to assert an "inconsistent length" axiom from the integer theory
while continuing in new_eq_handler(). Currently active when
opt_NoQuickReturn_IntegerTheory is 'true' but this may be necessary
here and in other places, in general, to fix integer theory integration.
2016-08-01 17:05:02 -04:00
Murphy Berzish
6e348720b1
add integer theory integration to theory_str::solve_concat_eq_str case 4
2016-07-31 18:12:57 -04:00
Murphy Berzish
778c0a5563
improve theory_str::group_terms_by_eqc now that we have simplify_concat
2016-07-31 16:55:17 -04:00
Murphy Berzish
9ceb2df28f
add integer integration to theory_str::simplify_parent
2016-07-31 16:51:35 -04:00
Murphy Berzish
41497f44c1
prevent checking scope of XOR variables in theory_str::process_concat_eq
2016-07-31 16:30:52 -04:00
Murphy Berzish
f5b82740c3
debugging length testers in theory_str::gen_len_val_options_for_free_var
2016-07-31 16:26:56 -04:00
Murphy Berzish
8958eea27c
crash avoidance in theory_str cut_var_map writes
2016-07-31 11:22:04 -04:00
Nikolaj Bjorner
cb2d8d2107
add detection of non-fixed variables to consequence finding
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-30 19:12:41 -07:00
Murphy Berzish
7f3a260eda
more aggressive simplifications in theory_str::handle equality, WIP, not tested yet
2016-07-30 16:58:59 -04:00
Nikolaj Bjorner
7562efbe84
add consequence command
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-30 12:59:29 -07:00
Nikolaj Bjorner
7346098895
fix unsat core extraction code in smt_context
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-30 11:22:34 -07:00
Nikolaj Bjorner
d32019f4c9
fix consequence tracking for negated assumptions
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-30 10:49:06 -07:00
Nikolaj Bjorner
7d545d902d
switch to specialized consequence generator in combined_solver
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-29 17:36:11 -07:00
Nikolaj Bjorner
2263be1b4d
adding consequence examples
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-29 17:24:14 -07:00
Nikolaj Bjorner
82d0310d94
remove repeated default argument, remove tabs
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-28 21:13:12 -07:00
Nikolaj Bjorner
5c99405db3
finish consequence fast path code
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-28 20:15:47 -07:00
Nikolaj Bjorner
4958edeb42
fix build
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-28 19:40:49 -07:00
Nikolaj Bjorner
fa48703445
fix build for non C++11
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-28 17:04:47 -07:00
Nikolaj Bjorner
0055254f4c
fix build for non C++11
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-28 17:04:06 -07:00
Christoph M. Wintersteiger
2e362aa6c0
build fix
2016-07-29 01:02:48 +01:00
Nikolaj Bjorner
46c911a92f
Merge pull request #700 from lorisdanto/master
...
added symbolic automata complement for sequences
2016-07-28 17:00:23 -07:00
Christoph M. Wintersteiger
6e85c5e987
Merge branch 'master' of https://github.com/Z3Prover/z3
2016-07-29 00:55:22 +01:00
Christoph M. Wintersteiger
7fd931d480
build fix
2016-07-29 00:55:05 +01:00
Nikolaj Bjorner
55cffc5247
Merge branch 'master' of https://github.com/Z3Prover/z3
2016-07-28 16:49:49 -07:00
Nikolaj Bjorner
8221a09659
fast path for antecedent extraction in smt_context
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-07-28 16:49:19 -07:00
Murphy Berzish
6f67e9cdda
fix theory_str::check_length_concat_concat to actually assert the conflict axiom
2016-07-28 17:18:56 -04:00
Murphy Berzish
244b611f1c
fix infinite loop bug in theory_str::new_eq_check
2016-07-28 17:10:41 -04:00
Loris D'Antoni
73bd4acfc5
added symbolic automata complement for sequences
2016-07-28 13:50:05 -07:00