Nikolaj Bjorner
481b177d47
Merge branch 'master' of https://github.com/z3prover/z3
2018-06-29 10:39:25 -07:00
Nikolaj Bjorner
c0694ae33a
deal with memory leak during shutdown
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-29 10:39:07 -07:00
Nuno Lopes
bc8cd7ff55
remove a few random mem allocs
2018-06-29 18:34:17 +01:00
Lev Nachmanson
d80f6e3222
regression failures fixes
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2018-06-29 09:57:29 -07:00
Nikolaj Bjorner
cbc5aaad2c
strengthen simplification of to_int such that #1608 is handled during pre-processing
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-29 09:44:54 -07:00
Nikolaj Bjorner
1e67717d75
log with unsigned characters to avoid malformed strings as in #1712
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-29 09:11:44 -07:00
Nikolaj Bjorner
7e29cc0b12
Merge branch 'master' of https://github.com/z3prover/z3
2018-06-29 08:52:44 -07:00
Nikolaj Bjorner
c429455f10
visit parameters during occurs count
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-29 08:52:25 -07:00
Lev Nachmanson
4641d5f32d
fixes to get z3test.py back on track etc
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2018-06-28 21:30:41 -07:00
Nikolaj Bjorner
3da8fe4136
Merge pull request #1710 from agurfinkel/deep_space
...
Deep space
2018-06-28 16:57:02 -07:00
Lev Nachmanson
40a363d249
Nikolaj's changes in rationals
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2018-06-28 16:22:40 -07:00
Lev Nachmanson
c2f3428373
name change
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2018-06-28 15:02:23 -07:00
Lev Nachmanson
fd8f972cac
grammar
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2018-06-28 13:53:38 -07:00
Arie Gurfinkel
9b578083f5
Avoid non-linear arithmetic in qgen
2018-06-28 16:50:43 -04:00
Lev Nachmanson
c986dfe97b
change in an SASSERT
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2018-06-28 13:41:59 -07:00
Arie Gurfinkel
5e87d7c4a3
Formatting: move q3 parameters closer together
2018-06-28 15:38:51 -04:00
Arie Gurfinkel
bd63458778
Shuffle assumptions on every call
...
Order of assumptions appears to make a huge difference on what lemmas
are discovered. Shuffling the assumptions ensures that the solver
is never stuck with any bad order.
2018-06-28 15:38:51 -04:00
Arie Gurfinkel
6422fa3739
Fix arithmetic equality solver in qgen
2018-06-28 15:38:51 -04:00
Arie Gurfinkel
41a05e9d58
Add methods to print pob
2018-06-28 15:38:51 -04:00
Arie Gurfinkel
a63e4b48ca
Fix order of arguments when normalizing a conjunction
2018-06-28 15:38:51 -04:00
Arie Gurfinkel
a8c9e3a837
Bug fix in qgen
2018-06-28 15:38:50 -04:00
Arie Gurfinkel
e8e27f0daf
Don't simplify bounds when normalizing a lemma
2018-06-28 15:38:50 -04:00
Lev Nachmanson
2087ee3fb0
restore some code that was removed during the rebase
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2018-06-28 11:59:01 -07:00
Nikolaj Bjorner
f7512d6d5c
Merge pull request #1709 from nunoplopes/master
...
MAM: check soft limits before calling the interpreter
2018-06-28 10:31:00 -07:00
Nuno Lopes
46799cb3f0
MAM: check soft limits before calling the interpreter
2018-06-28 18:25:22 +01:00
Nikolaj Bjorner
18121e5241
Merge pull request #1707 from agurfinkel/deep_space
...
Deep space
2018-06-28 05:38:25 -07:00
Nuno Lopes
5de6628a5d
remove spurious copies and inc_refs around ref_vector
2018-06-28 10:31:38 +01:00
Arie Gurfinkel
4abab8aaf5
Fix bug in qe_term_graph
...
In merge, parents of A instead of parents of B were traversed.
Among other things, it created stale marks that caused an
infinite loop in to_lits()
2018-06-27 22:54:55 -04:00
Arie Gurfinkel
0e5434ce0c
Debug prints
2018-06-27 22:49:36 -04:00
Arie Gurfinkel
7c924c49f6
Do not evaluate quantified formulas in a model
2018-06-27 22:49:36 -04:00
Arie Gurfinkel
704c19920d
Only 10 levels of weakness
2018-06-27 22:49:35 -04:00
Arie Gurfinkel
4339722e98
Fix segfaults in qgen
2018-06-27 22:49:35 -04:00
Arie Gurfinkel
49e9480928
Fix lemma_as_cti option
...
Use negation of a lemma as a proof obligation. This speeds up discovering
bad lemmas that do not contain some reachable states.
2018-06-27 22:49:35 -04:00
Arie Gurfinkel
bc6604441b
Helpers in model_core
2018-06-27 22:49:35 -04:00
Arie Gurfinkel
d7234dc039
Inactive debug code
2018-06-27 22:49:35 -04:00
Arie Gurfinkel
2b4d92821a
Avoid crashing on cancel
2018-06-27 22:49:35 -04:00
Arie Gurfinkel
f6dcc6fc72
API to find pob in pob_manager
2018-06-27 22:49:35 -04:00
Arie Gurfinkel
5bc57238a6
Track whether pob is in pob_queue
...
pob_queue is a priority queue. Changing a pob while it is in the queue might change
the priority. This is a source of subtle bugs. The flag is ment to help defend
against this issues in the future.
As a side-effect, a pob that is already in the queue will be silently not added
to it, and a new version of a pob might be created if a version being looked
for is already in the queue.
2018-06-27 22:49:35 -04:00
Arie Gurfinkel
c00c6b4285
Pobs are always managed
...
Removed options to allow unmanaged pobs.
Other minor cleanups.
2018-06-27 22:49:35 -04:00
Arie Gurfinkel
1910b4c87c
Rename pobs into pob_manager
2018-06-27 22:49:35 -04:00
Arie Gurfinkel
176c0a97f7
Gracefully handle absence of a proof
2018-06-27 22:49:35 -04:00
Arie Gurfinkel
d9100437ce
Weakness of the lemma independent of the pob
...
Lemma inherits its weakness score from the pob. However,
pob's weakness might be reset or changed for some other reason.
To avoid affecting the lemma, the weakness is copied on
construction.
2018-06-27 22:49:35 -04:00
Nikolaj Bjorner
eabe91cdef
Merge branch 'master' of https://github.com/z3prover/z3
2018-06-27 17:05:52 -07:00
Nikolaj Bjorner
7844476a7d
fixes to term-graph, add proof-checker routines for PR_BIND, remove orphaned file
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-27 17:04:47 -07:00
Lev Nachmanson
e3a9794d98
take in changes for equalities
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2018-06-27 15:59:45 -07:00
Lev Nachmanson
7b59e2094d
after rebase
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2018-06-27 15:20:25 -07:00
Lev Nachmanson
efa149bed1
always apply cube
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2018-06-27 12:19:10 -07:00
Lev Nachmanson
e5eea467b7
adjust hnf
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
change in settings + random in adding terms to hnf
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
add terms in hnf from the beginning
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
adjusting settings
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
remove non used determinant()
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2018-06-27 12:19:06 -07:00
Lev Nachmanson
eeaca949e0
cleanup in hnf.h
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
fixex in maximize_term
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
prepare for LIRA (#76 )
* merge
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* simple mixed integer example
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
Nikolaj's fixes in theory_lra.cpp
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
fixes in maximize_term, disable find_cube for mixed case
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
fix cube heuristic for the mixed case
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
fix the build
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
fix in find cube delta's calculation
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
remove a printout
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
remove a blank line
Signed-off-by: Lev Nachmanson <levnach@microsoft.com>
test credentials
Signed-off-by: Lev Nachmanson <levnach@microsoft.com>
avoid double checks to add terms in hnf_cutter
Signed-off-by: Lev Nachmanson <levnach@microsoft.com>
fixes in add terms to hnf_cutter
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
remove a variable used for debug only
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
remove a field
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
remove a warning and hide m_A_orig under debug
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
use var_register to deal with mapping between external and local variables
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
tighten the loop in explain_implied_bound
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
fixes in theory_lra and relaxing debug checks in pop(), for the case when push() has been done from not fully initialized state
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
suppress hnf cutter when the numbers become too large
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
remove some debug code
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
adjusting hnf
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2018-06-27 12:19:02 -07:00
Lev Nachmanson
9ba4026bc6
avoid going creating hnf_cuts if all involved vars have integral values
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
add explanations to hnf cuts
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
nits and virtual methods (#68 )
* local
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* virtual method in bound propagator
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
cleanup from std::cout
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
handle the case when the number of terms is greater than the number of variables in hnf
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
method name's fix
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
restore hnf_cutter to work with m_row_count <= m_column_count
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
tune addition of rational numbers (#70 )
* log quantifiers only if present
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* merge and fix some warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* set new arith as default for LIA
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* local
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* virtual method in bound propagator
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* prepare for mixed integer-real
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix default tactic usage
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
give shorter explanations, call hnf only when have a not integral var
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
overhaul of mpq (#71 )
* log quantifiers only if present
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* merge and fix some warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* set new arith as default for LIA
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* local
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* virtual method in bound propagator
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* prepare for mixed integer-real
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix default tactic usage
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* overhaul of mpz/mpq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* disabled temporary setting
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* remove prints
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
fix for 32 bit build (#72 )
* log quantifiers only if present
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* merge and fix some warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* set new arith as default for LIA
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* local
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* virtual method in bound propagator
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* prepare for mixed integer-real
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix default tactic usage
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* overhaul of mpz/mpq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* disabled temporary setting
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* remove prints
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* customize for 64 bit
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
yes (#74 )
* log quantifiers only if present
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* merge and fix some warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* set new arith as default for LIA
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* local
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* virtual method in bound propagator
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* prepare for mixed integer-real
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix default tactic usage
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* overhaul of mpz/mpq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* disabled temporary setting
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* remove prints
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* customize for 64 bit
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* customize for 64 bit
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* more refactor
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
fix the merge
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
fixes in maximize_term untested
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
fix compilation (#75 )
* log quantifiers only if present
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* merge and fix some warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* set new arith as default for LIA
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* local
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* virtual method in bound propagator
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* prepare for mixed integer-real
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix default tactic usage
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* overhaul of mpz/mpq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* disabled temporary setting
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* remove prints
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* customize for 64 bit
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* customize for 64 bit
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* more refactor
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* merge
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* relax check
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* change for gcc
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* merge
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-27 12:16:58 -07:00