Nuno Lopes
d1a0e83423
fix crash
2020-07-13 14:25:12 +01:00
Nuno Lopes
122f5a1464
remove unused field
2020-07-12 23:12:00 +01:00
Nuno Lopes
90fc8d854f
add rval methods to scoped_vector
2020-07-12 22:16:24 +01:00
Nuno Lopes
f30e8ccec3
fix crashes due to my last commit
2020-07-12 19:53:22 +01:00
Nuno Lopes
bb26f219fe
remove unneeded constructors (last round)
2020-07-12 17:41:57 +01: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
Nuno Lopes
ca97bfb4b8
fix build
2020-07-05 11:44:12 +01:00
Nikolaj Bjorner
006418e027
build
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-07-04 23:34:21 -07:00
Nikolaj Bjorner
f380d4cf83
mpfx
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-07-04 18:25:32 -07:00
Nikolaj Bjorner
51d43c04ea
st
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-07-04 17:13:04 -07:00
Nikolaj Bjorner
bf14444f7d
st
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-07-04 17:07:07 -07:00
Nikolaj Bjorner
d0e20e44ff
booyah
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-07-04 15:56:30 -07:00
Nikolaj Bjorner
10d0404175
add rec decl/def to ML #4563
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-07-04 15:38:32 -07:00
Nikolaj Bjorner
38d6771a5e
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-22 12:23:42 -07:00
Nuno Lopes
38d4418f94
simplify string_buffer::append
2020-06-18 19:55:34 +01:00
Nikolaj Bjorner
7387fc9dec
avoid some bignum overhead in addmul
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-14 11:20:05 -07:00
Nuno Lopes
ec1e733ef2
fix crash in qe_array ref counting due to wrong assignment operator of ptr_vector being called
...
thanks to Arie Gurfinkel for reporting this
2020-06-09 10:02:27 +01:00
Nikolaj Bjorner
9ca5b3f304
fix #4449
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-03 21:10:07 -07:00
Nuno Lopes
e844aef896
remove a few more copy constructors, though still not enough to enable the assertion in vector
...
I give up for now; there are too many copies left for little return..
2020-06-03 20:32:13 +01:00
Nuno Lopes
7ac2791482
remove a bunch of constructors to avoid copies
...
still not enough to guarantee that vector::expand doesnt copy (WIP)
2020-06-03 17:09:27 +01:00
Nuno Lopes
98b5abb1d4
buffer: require a move constructor to avoid copies
...
remove unneded copy constructors from several classes
2020-06-03 11:57:49 +01:00
Nuno Lopes
3d98bccc33
fix mem leak in buffer and remove copies in interval ( #4458 )
2020-06-03 10:26:00 +01:00
Nuno Lopes
6a45c5d17c
fix build with prehistorical compilers because of pip/manylinux
2020-05-30 11:42:27 +01:00
Nuno Lopes
d8cea7c8d5
fix a few warnings & simplify debug.h header
2020-05-26 13:49:13 +01:00
Nuno Lopes
7a12cebd41
remove unused file
2020-05-24 00:10:40 +01:00
Nuno Lopes
903725314c
fix gcc 9/10 warnings
2020-05-23 16:39:09 +01:00
Nuno Lopes
232f1b5fbe
fix a gcc 10 warning
2020-05-19 14:44:14 +01:00
Nikolaj Bjorner
5844964d95
rename temporary macro
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-18 17:17:51 -07:00
Nikolaj Bjorner
8e8e9be25f
st
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-18 16:49:43 -07:00
Nikolaj Bjorner
c2a59a89af
thanks to https://github.com/Z3Prover/z3/pull/4382#issuecomment-630468832_
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-18 15:32:23 -07:00
Nikolaj Bjorner
801eb47fae
remove thread dependency in symbol.cpp on single thread #4382
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-18 15:16:08 -07:00
Nikolaj Bjorner
ff10afd226
remove thread dependency in symbol.cpp on single thread #4382
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-18 15:11:24 -07:00
Nikolaj Bjorner
1072bf1536
deal with unsigned / bignum #4361
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-18 14:42:06 -07:00
Daniel Peebles
7e34925035
Improve UX for unreachable/unimplemented errors ( #4094 )
...
This should replace several "segfaults" and "illegal instruction" errors
with messages that contain a bit more context. I also put in a link to
the bug tracker to make users' lives a bit easier.
For context, `__builtin_unreachable`'s behavior is undefined and is
intended only as a mechanism to help the compiler see that code will not
return. I do still include it in the new code because if I don't,
compilation produces a lot more warnings as it can't see that
`NOT_IMPLEMENTED_YET` and `UNREACHABLE` cannot return.
2020-04-28 19:54:31 -07:00
Nikolaj Bjorner
4f462925a0
fix #4116
...
delta has to be computed based on Simplex tableau not on difference graph.
2020-04-27 17:07:12 -07:00
Nikolaj Bjorner
5434f3e31d
fix #4105
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-26 22:59:19 -07:00
Nikolaj Bjorner
a884201d62
remove using insert_if_not_there2
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-25 15:08:51 -07:00
Nikolaj Bjorner
9ea1cf3c5c
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-25 13:13:25 -07:00
Nikolaj Bjorner
cc8cd2cc2f
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-23 21:28:19 -07:00
Nikolaj Bjorner
9c3f0190f4
fix #4069
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-23 20:53:13 -07:00
Nikolaj Bjorner
95a78b2450
updates to seq and bug fixes ( #4056 )
...
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix #4037
* nicer output for skolem functions
* more overhaul of seq, some bug fixes
* na
* added offset_eq file
* na
* fix #4044
* fix #4040
* fix #4045
* updated ignore
* new rewrites for indexof based on #4036
* add shortcuts
* updated ne solver for seq, fix #4025
* use pair vectors for equalities that are reduced by seq_rewriter
* use erase_and_swap
* remove unit-walk
* na
* add check for #3200
* nits
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* name a type
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* remove fp check
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* remove unsound axiom instantiation for non-contains
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix rewrites
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix #4053
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix #4052
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-22 13:18:55 -07:00
Nikolaj Bjorner
3e9479d01a
a lot of seq churn
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-17 18:21:40 -07:00
Nikolaj Bjorner
2e1e9c9082
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-15 12:25:07 -07:00
Nikolaj Bjorner
3845e0859c
fix #3878
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-15 12:23:18 -07:00
Nikolaj Bjorner
dff5071598
compile
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-05 17:03:26 -07:00
Nikolaj Bjorner
b889b110ee
bool_vector, some spacer tidy
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-05 12:59:04 -07:00
Nikolaj Bjorner
eacde16b3e
fix #3199
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-04 23:55:44 -07:00
Nikolaj Bjorner
031b3a55ef
fix #3733 persist uninterpreted atoms across calls to incremental sat solver
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-04 13:11:39 -07:00
Nikolaj Bjorner
31e16c7d60
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-03 20:20:33 -07:00
Nikolaj Bjorner
f4472927c0
play nice with sanitizers
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-03 17:39:22 -07:00
Nikolaj Bjorner
a6e7ed039c
fix #3587
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-30 15:18:37 -07:00
Nikolaj Bjorner
e263f9b238
fix #3559
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-30 14:00:30 -07:00
Nikolaj Bjorner
fd54408629
fix leaks exposed by #3383
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-17 13:01:46 -07:00
Nikolaj Bjorner
7452e55698
fix #3190 fix #3168
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-08 12:54:03 +01:00
Nikolaj Bjorner
f501380e89
fix #3169 - set cancellation timeout and limit during push. Also expose internalization outside of scope that disables cancellation
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-06 23:36:04 +01:00
Nikolaj Bjorner
f29b455611
fix #2949 fix #2955 experiment with cut selection
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-08 10:34:14 -08:00
Nikolaj Bjorner
2d59b81353
delay evaluation of model, throttle propagation, introduce LUT results into cutset
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-05 12:33:42 -08:00
Nikolaj Bjorner
32968fa41c
fix #2935
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-03 19:57:20 -08:00
Nikolaj Bjorner
abbee32ddc
fixup use of SYNC/SYNCH for mpz
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-01 11:18:36 -08:00
Nikolaj Bjorner
5f89ead54b
adding t-smt
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-31 17:08:53 -08:00
Nikolaj Bjorner
5f2720562b
adding threads to smt core
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-31 17:08:53 -08:00
Nikolaj Bjorner
ff5bdd6f1f
speed up freedom interval computation
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-28 15:21:39 -08:00
Lev Nachmanson
33cbd29ed0
mv util/lp to math/lp
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
b6513b8e2d
fix the merge
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
3b9b4d973b
do not print external names in nla_solver
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
58c8f3f118
remove the generate_simple_tangent_lemma()
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
f20a028f7b
hook up generate_simple_tangent_lemma()
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
b2b4193afa
avoid empty lemmas
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
40cc8c31e5
generate simple_sign_lemma
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
d3bd55d0cf
remove m_mons_to_rehash, fix a bug in emonomials::after_merge_eh(), generate order and tangent lemmas on any monomial
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
45b72d7790
use union_find in emonomials
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
d78cc4975a
use incremental vector
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
94e3078920
making var_eqs into a template
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
50d3e67e61
adding commments
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
a2e23377ba
remove some typedefs
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
fe4847cd56
remove rooted monomials
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
0c214ec465
some renaming in var_eqs
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
821886b94b
cleanup and adding an assert in emons
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
2b5e8e9652
change in a comment
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
ee91d73a82
add a todo comment on using generate_simple_tangent_lemma on each factorization
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
2dbfb2edc2
run tangent and ordered lemmas only on canonical monomials
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
5352a5fb85
fix the factorization sign to be equal to the monomial sign
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
375027d195
fix the factorization sign to be equal to the monomial sign
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
df5f3f9722
debug tangent lemmas
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
0c50971b57
add nla_params and settings, make m_emons private
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
eb657a322a
fix bool sign usage
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
c35b561496
fix in basic_lemma_for_mon_zero_model_based()
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
e9a4a60fbc
call do_canonize() in is_canonised
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
b85b27d7bb
fix the usage of sign flag
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
495161fe5c
operate with sign as a boolean
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
6d5fd5d980
getting rid of from_index_dummy
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
59e8382909
fix ordered lemma
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
54ba889b7b
debug order lemma, introduce sign for factors
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
218e155603
fix feasibility tracking in lar_solver
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
c74893016a
change lar_term into a class and make lar_terms::m_coeffs private
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
f170d80d38
fixes in emonomials
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
d32e50bc3c
fix the build
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Nikolaj Bjorner
e234bede4c
fixes ( #96 )
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
b32f2703d4
fix in emonomials
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Nikolaj Bjorner
25edc98f36
fixes ( #95 )
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
8cdf754990
debug emons
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
82bf62f5fa
removed calls to settings.random_next() from assert statements
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
aeef6fd2d4
make factorization_factory.m_vars an alias
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
bdabd52fb9
fix in m_cg_table.find()
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
8303d8c9ae
fix bugs related to emons
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
f78a2058fc
fix order lemmas for emons
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
9d6bf016fc
fix order lemmas for emons
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
150d3769fb
debug new monomials on order lemmas
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
02379417a6
renam vvr to val
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
11e3e1b463
debug refactor of smon
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
9411911cf3
debug refactor of smon
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
53cc8048f7
merge smon with monomial
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
e73296fbe5
renaming the smon fields to distingush them from monomial fields
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
7eeba3a917
renaming the smon fields to distingush them from monomial fields
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
4cbb586947
unite smon and mon
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Nikolaj Bjorner
c327f8799b
code review of tangent lemmas ( #94 )
...
* code reviewing order lemmas
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* code review monotonity
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* cr tangent
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* cr tangent
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
c97a6dd7cb
fix referencen to vvr()
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
49c2d991ca
use pp_mon to print a monomial
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Nikolaj Bjorner
ed3bfcdea9
code reviewing order lemmas ( #93 )
...
* code reviewing order lemmas
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* code review monotonity
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
1ab3957eea
debug emons
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Nikolaj Bjorner
ef6fd1cf8e
Emons ( #92 )
...
* fix loop in equiv_monomials
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fixes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* pp
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix prev/next update
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* generalize factors
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-28 10:04:21 -08:00
Nikolaj Bjorner
7e67e1ce99
fix loop in equiv_monomials ( #91 )
...
* fix loop in equiv_monomials
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fixes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
e6561c983f
debug emons
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
884a2628de
debug emons
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Nikolaj Bjorner
e28e83a25e
port to emonomials ( #90 )
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
b52e79b648
emons branch
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
14f00b3749
remove a test
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
be5170fc3b
hook up more lp_params
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
c96c37e878
fix an assert
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
c557743be4
fix in rounding rows
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
7f12dfbbe8
fix in rounding rows
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
2d12874f30
fix errors in cube rounding
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
43758cbc66
more efficiend handling of rounded in cube heuristic rows
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
b47e0cd4fb
fix tableau's Ax=b after cube heuristic
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
48fcd66bb9
refactor tests from nla_solver
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
facf0b80c0
refactor monotone lemmas out of core
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
8331207b81
clean up nla_core.h
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
25198c91b3
clean up nla_core.h
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
2e9b4f643a
fix a reference to random
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
1a0d68e1b7
remove shadow m_core fields
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
9e82e6965c
refactoring nla_solver
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
7fa4371d96
remove a method
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
c1ee4600d1
call core::random()
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
c7c2d81f53
Refactor basic lemmas out of nla_core
2020-01-28 10:04:21 -08:00
Lev Nachmanson
3e11b87aaf
avoid unnecessary inequalities
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
f2ec3b362a
refactor nla_solver
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
2513deb817
Add forgotten file
2020-01-28 10:04:21 -08:00
Lev Nachmanson
7f05907f91
refactor nla_solver
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
bddda1674d
Disable collect_equivs_of_fixed_vars() that led to long explanations
2020-01-28 10:04:21 -08:00
Lev Nachmanson
5c949d74d8
add an assert in add_abs_bound
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
c7dec3ef4d
a fix in add_abs_bound() and integrating NB changes
2020-01-28 10:04:21 -08:00
Lev Nachmanson
a323eaf1c8
add some nla statistics generate not more than one pl lemma an a rm monomial
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
4ba3ccfc99
fix in generate_ol()
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
9ad0197e14
create shortcuts var_abs_val_le(), var_abs_val_ge() and remove some lemma redundancy
2020-01-28 10:04:21 -08:00
Lev Nachmanson
32d1217499
Create explanations for octogonal constraints by the var equivalence
2020-01-28 10:04:21 -08:00
Lev Nachmanson
ab1b2ae86d
remove dead code and a fix in no_lemmas_hold
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
826d2582e2
var_eqs seems working
2020-01-28 10:04:21 -08:00
Lev Nachmanson
98dca454ae
debug var_eqs
2020-01-28 10:04:21 -08:00
Lev Nachmanson
7a3a696b6f
debugging var_eqs
2020-01-28 10:04:21 -08:00
Lev Nachmanson
09152013b3
var_eqs compiles but broken
2020-01-28 10:04:21 -08:00
Lev Nachmanson
f828dc9451
treat monomial factorization in a special way in generate_pl()
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
e32c1bdee8
fix the build
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
3f9229a698
stop keying monomials by abs values
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
086e25b7fa
lemmas with less equivalence explanations
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
90bda39aef
towards full factorizations on a monomial
2020-01-28 10:04:21 -08:00
Lev Nachmanson
1810d7e77d
cleanup mostly, more asserts in tangent lemma
2020-01-28 10:04:21 -08:00
Lev Nachmanson
9c62b431e4
address the NB's comments
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
53e329b324
enable more order lemmas
2020-01-28 10:04:21 -08:00
Lev Nachmanson
f784120312
rebase with Z3Prover/master
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
cbe920756b
simpler order lemma
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
1959710a5b
prepare to simplify order lemma
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
4963108277
better tracing
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
0dbfcad560
try simple monotoniciy lemma
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
d1a5635b4a
better model based lemmaas
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
8dec4bf8d0
better model based lemmaas
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
dd235be4d2
add randomness when generating model based sign lemma
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
afc9c902f8
bug fix in a factorization of a binom, unroll the previous commit
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
754656212d
allow more sign lemmas
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
e6d134b9fa
a stronger zero lemma when the signs are known
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
6637747fd9
no special treatment for NE
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
34262ae02c
rollback but leave the change with llc::NE
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
649d47d92c
detect more variable equivalances
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
65b950ec4f
stronger mon_zero_lemma
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
a80f6ad3a2
generate fixed zero lemmas
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
8018e27643
use m_rm_table.to_refine() when applying tangent lemma
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
1507f54fe3
fixes in the explanations of the tangent lemma
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
f9df9f48bd
more lemmas but return after if sign lemmas found
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
76e1aeb2bb
move the indices housekeeping from theory_lra to lar_solver
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
63e62ec1bb
stronger lemmas to avoid branching
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
580ebead79
no derived search
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
b102710b2f
map term indices to columns when test checking lemmas
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
c9a6d23897
generate explanations inside of a lemma if possible
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
3987cc5f1b
substitute the term columns in nla_solver before returning a term to theory_nra
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
b2943c34f1
create class lemma
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
4243bd3e2a
a bug fix in simple sign lemma
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
286cebd9db
bug fixes in tangent_lemma explanations and the strict case of monotone lemma
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
2bab591ef3
restore qfnia_tactic.cpp to expose a bug
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
45ea23be21
add simple sign lemma
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
6071e08822
a bug fix is the sign lemma
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
158a3db330
cosmetics
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
228ef48628
more derived lemmas
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
d08f8a2512
fix test_basic_lemma_for_mon_zero_from_monomial_to_factors
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
d06182d199
split between derived and model based lemma generation
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
53b6b65a16
fix the test test_basic_lemma_for_mon_neutral_from_monomial_to_factors
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
389d2cee04
split lemma generatin on to derived and model based
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
1a788d24fd
a fix in the initialization
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
1ff81ba26e
a fix in the initialization
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
1dca8abc05
model based sign lemma
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
6b96ba3ef7
derived lemmas
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
ff1bfdbfc6
derived order lemma
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
62772468b5
add explanations to proportional lemma
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
348faf15b1
propogation based order lemma
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
1235621610
search for the sign lemma on the equivalence class of monomials
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
7c074dc65c
access by indeq from regular monomials to rooted
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
5599dc984c
introduce to_refine in rooted_table
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
403743cb30
switch to constraint based sign lemma
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
3441f565b2
before changes is basic_sign_lemma
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
1230b46008
perf in equiv_monomials
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
5104ec881a
fix in tangent lemma
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
9f51d91acf
tangent lemma passes first tests
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
4886acfae5
tangent lemma
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
d630b06933
tang lemma
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
dcbb119aaf
tangent lemma
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
c814b1b17e
tangent lemma
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
9aca3bc239
change the signature of nla_solver::check() to accept lemma and explanation as vectors
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
466586bf22
extract monomial iterators to a separate file
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
d223f47526
cleaner iterator
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
bd1be96e0f
isolate init_to_refine()
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
ceac1dc4f7
clear m_to_refine
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
0d5ca4edfe
more efficient sign lemma
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
4f2eb0b4eb
remove an unused field
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
bc9edac913
fix in sign lemma for the zero case
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
abbf8c587b
introduce mon_to_rooted_mon
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
14a8612779
fix a bug in order lemma
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
f57f6138b4
fix a bug in order lemma
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
fe05d1a1e8
fix the tests
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
8c876b48a7
fix the tests
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
a1851db4d5
implement order lemma
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
b948091665
implement order lemma
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
979593e2f1
create a test for order lemma
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
ea02231ef8
create a test for order lemma
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
54edea4f37
work on monotonicity lemma
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
ad1aaebb89
proportional lemma
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
76d516d42c
proportional lemma
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
ace8fb6d95
improve printouts and diagnostics
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
ad98594447
disable a check
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
267457aaf4
fix a bug in factorization
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
cd33550f32
build fix
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
489da283bb
avoid adding constantly false statements to the lemma
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev
dbfa3fc84a
fix in order lemma
...
Signed-off-by: Lev <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00