Nikolaj Bjorner
658a334ecf
clear tactic user propagate state on solver destructor
2021-12-07 03:14:50 -08:00
Nikolaj Bjorner
fdc253afdd
update arithmetic contract for unbounded ( #5696 )
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-06 08:19:18 -08:00
Lev Nachmanson
9b4f3a7075
start using lar_solver::is_feasible() ( #5697 )
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2021-12-06 08:16:57 -08:00
Lev Nachmanson
7758b519bc
Handle correctly cancelled run ( #5695 )
...
* remove the bound on total iterations in simplex
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
* remove unncesseray checks in get_freedom_interval_for_column()
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
* fix the build of test-z3
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
* Revert "remove unncesseray checks in get_freedom_interval_for_column()"
This reverts commit 6770ed85e3
.
* optimize get_freedom_interval_for_column() for feasible case
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
* add function lar_solver::status_feasible
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
* rename status_is_feasible() to is_feasible()
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
* fix the linux build
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2021-12-05 18:38:37 -08:00
Nikolaj Bjorner
f0e9363e78
fix bug in smt_tactic_core for translating user-ids
2021-12-05 11:13:27 -08:00
Nikolaj Bjorner
0d055b83eb
update input for doxygen #5400
2021-12-05 09:04:18 -08:00
Nikolaj Bjorner
c845b22c15
fix translation for equality propagation
2021-12-04 11:55:36 -08:00
Nikolaj Bjorner
1b0ac4940b
prevent stale user-propagators from being used on the same tactic after it was applied.
2021-12-04 11:51:00 -08:00
Nikolaj Bjorner
da765355e8
don't rely on cleanup
2021-12-04 11:48:41 -08:00
Nikolaj Bjorner
3d528c8ef6
typo
2021-12-04 11:19:49 -08:00
Nikolaj Bjorner
eae567ac3d
indirection for user ids
2021-12-04 11:04:32 -08:00
Nikolaj Bjorner
68b072e7f1
only use setup_and_check if there is no user propagator set.
2021-12-04 09:22:25 -08:00
Nikolaj Bjorner
1618c970df
adding checks
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-03 13:17:48 -08:00
Nikolaj Bjorner
970347e797
infeas
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-03 13:00:52 -08:00
Nikolaj Bjorner
0077ddf33c
try delay init for user propagator in smt_tactic
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-03 09:45:07 -08:00
Nikolaj Bjorner
41aa7d7b60
stack
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-02 09:00:51 -08:00
Nikolaj Bjorner
bfd61fec00
enable user propagation on tactics
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-02 08:28:52 -08:00
Nikolaj Bjorner
71cbb160d2
fix regression from today, see #5676
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-01 14:29:53 -08:00
Nikolaj Bjorner
87aec8819f
fix #5687
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-01 10:08:29 -08:00
Nikolaj Bjorner
c6a5aa0cc4
try th_lemma, update documentation of api functions for creating strings
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-01 09:21:02 -08:00
Nikolaj Bjorner
3b4f976118
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-11-30 19:15:03 -08:00
Nikolaj Bjorner
4daba290b1
change user propagation to apply scheme similar to theory_recfun
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-11-30 19:12:15 -08:00
Nikolaj Bjorner
3c1aedf219
fixing #5473
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-11-30 17:08:28 -08:00
Nikolaj Bjorner
9e51691285
add virtual destructor
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-11-29 20:02:12 -08:00
Nikolaj Bjorner
b5efb87118
base -> core
2021-11-29 19:55:10 -08:00
Nikolaj Bjorner
959f4c9440
rename files to theory_user_propagator
2021-11-29 19:44:58 -08:00
Nikolaj Bjorner
5857236f2f
introducing base namespace for user propagator
2021-11-29 19:41:30 -08:00
Nikolaj Bjorner
c083aa82ee
add debug information in user-propagate #5687
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-11-29 08:59:53 -08:00
Nikolaj Bjorner
1e9e52a58f
#5641
2021-11-29 08:59:53 -08:00
Lev Nachmanson
d50c4bfcc1
remove an unused var
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2021-11-28 09:44:50 -08:00
Nikolaj Bjorner
d50bfc6a50
#5641
2021-11-25 18:01:35 +01:00
Nikolaj Bjorner
833dd62623
fix #5681
2021-11-24 13:24:31 +01:00
Nikolaj Bjorner
e8f5a29c31
fix #5679
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-11-22 19:37:10 +01:00
Nikolaj Bjorner
fee4821106
include thread
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-11-19 21:06:07 +01:00
Nikolaj Bjorner
a7d24788c3
wasm build issue
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-11-19 20:45:36 +01:00
Nikolaj Bjorner
741c5f43f4
Merge branch 'master' of https://github.com/z3prover/z3
2021-11-19 11:03:08 -08:00
Nikolaj Bjorner
ca2c2bb802
ensure smt2log works with multi-threaded consumers, ease scenarios around #5655
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-11-19 11:02:50 -08:00
Nikolaj Bjorner
4928c28e63
fix #5675
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-11-19 08:42:32 -08:00
Nikolaj Bjorner
99d5215956
revert use of f format
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-11-19 00:01:19 -08:00
Nikolaj Bjorner
f83367a11e
mac builds
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-11-18 22:39:30 -08:00
Nikolaj Bjorner
518ef9f916
fix #5674
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-11-18 21:14:50 -08:00
Nikolaj Bjorner
c826b64e35
prepare release
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-11-16 09:41:51 -08:00
Nikolaj Bjorner
b6f7deacf4
fix #5663
2021-11-12 11:36:42 -08:00
Nikolaj Bjorner
3c16edc8d3
check for v1 == v2
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-11-12 09:11:17 -08:00
Nikolaj Bjorner
63ac2ee0d1
#5614 turn on / off options to get better performance.
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-11-11 17:54:46 -08:00
Nikolaj Bjorner
b28a8013fe
#5653
...
fix performance bottleneck in static features
2021-11-11 13:30:38 -08:00
Nikolaj Bjorner
3a9656bc59
fixing issues with user propagator from python
...
"fresh" remains broken (not working yet).
2021-11-07 17:04:11 -08:00
Nikolaj Bjorner
f2fcbc7cb7
capture values not reference
2021-11-07 13:43:56 -08:00
Nikolaj Bjorner
af2cc460a9
#5646
2021-11-03 08:53:48 -07:00
Nikolaj Bjorner
dd1e0fc561
#5643
2021-11-03 08:53:48 -07:00
Clemens Eisenhofer
091079e58c
Added user propagator example ( #5625 )
...
* Added user propagator example
* User propagator example code refactoring
(+ removed unused parameter warning)
* Moved user-propagator example to its own directory
2021-11-02 15:03:02 -07:00
Nikolaj Bjorner
87d4ce2659
working on #5614
...
there are some different sources for the performance regression illustrated by the example. The mitigations will be enabled separately:
- m_bv_to_propagate is too expensive
- lp_bound_propagator misses equalities in two different ways:
- it resets row checks after backtracking even though they could still propagate
- it misses equalities for fixed rows when the fixed constant value does not correspond to a fixed variable.
FYI @levnach
2021-11-02 14:55:39 -07:00
Nikolaj Bjorner
a94e2e62af
build warnings
2021-11-02 14:55:38 -07:00
Henrich Lauko
96671cfc73
Add and fix a few general compiler warnings. ( #5628 )
...
* rewriter: fix unused variable warnings
* cmake: make missing non-virtual dtors error
* treewide: add missing virtual destructors
* cmake: add a few more checks
* api: add missing virtual destructor to user_propagator_base
* examples: compile cpp example with compiler warnings
* model: fix unused variable warnings
* rewriter: fix logical-op-parentheses warnings
* sat: fix unused variable warnings
* smt: fix unused variable warnings
2021-10-29 15:42:32 +02:00
Alexander Traud
1d45a33163
fix one typo and two misunderstandings for doxygen ( #5633 )
2021-10-29 15:35:05 +02:00
Alexander Traud
d1592c6abf
fix misspelled \brief for doxygen ( #5632 )
2021-10-29 15:34:28 +02:00
Nikolaj Bjorner
4dad414161
fix performance regression after adding user declared functions to model
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-10-28 05:49:15 +02:00
Alexander Traud
f5f35f87d0
fix grouping for latest doxygen ( #5626 )
...
Since doxygen 1.8.16, opening and closing a group must not be done as
C comment but as doxygen command. In other words, not one but two
asterisk characters are required so that doxygen finds a group.
2021-10-27 23:46:31 +02:00
Nikolaj Bjorner
125eae06bd
#4869 load datatype parsing for HORN logic
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-10-26 11:54:29 +02:00
Nikolaj Bjorner
61eb8d1908
add ref for regression
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-10-26 11:39:13 +02:00
Nikolaj Bjorner
aa5b4b8c77
strengthen contract for log_axiom_instantiation #5621
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-10-26 09:49:44 +02:00
Nikolaj Bjorner
bdecc25619
strengthen contract for log_axiom_instantiation #5621
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-10-26 09:49:44 +02:00
Margus Veanes
efcad5ff35
fixed nullability bug in the if-then-else info ( #5620 )
2021-10-26 09:11:07 +02:00
Nikolaj Bjorner
075769c4c0
try get_string contents again
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-10-25 16:03:40 +02:00
Nikolaj Bjorner
45681b4c6e
update API type annotation to make it OCaml friendly
2021-10-25 13:43:15 +02:00
Nikolaj Bjorner
3036b88f09
support threading for TRACE mode
2021-10-25 13:35:32 +02:00
Nikolaj Bjorner
3a3cef8fce
#5615 - update documentation and use non-encoded versions for ASCII characters in get_lstring
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-10-23 18:21:51 +02:00
Nikolaj Bjorner
7f41d6140f
use some suggestions from #5615
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-10-22 12:39:55 -04:00
Nikolaj Bjorner
051616385f
remove deprecated escape string from Julia bindings
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-10-21 19:14:12 -04:00
Nikolaj Bjorner
f05ac8a429
updated C++ API for escaped and unescaped strings #5615
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-10-21 14:52:59 -04:00
Nikolaj Bjorner
05e7ed9637
add API to access unescaped strings, update documentation of Z3_get_lstring, #5615
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-10-21 11:30:03 -04:00
Nikolaj Bjorner
6eed885379
print bounded terms for better efficiency
2021-10-21 10:42:39 -04:00
Nikolaj Bjorner
13da6a02a6
add handling of quantifiers #5612
2021-10-20 12:27:56 -04:00
Nikolaj Bjorner
839a0852fe
Merge branch 'master' of https://github.com/z3prover/z3
2021-10-19 12:24:41 -04:00
Nikolaj Bjorner
86147d01ea
#5605
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-10-19 12:24:29 -04:00
Nikolaj Bjorner
f9dde2e8a4
#5605
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-10-19 12:21:54 -04:00
CEisenhofer
3557e0b0c5
Added eq/fixed/final functions in C++ user propagator as methods ( #5607 )
2021-10-19 10:48:31 -04:00
Nikolaj Bjorner
fc3a701888
push-pop
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-10-18 15:36:48 -07:00
Nikolaj Bjorner
d5e5dcfe45
add nff and auto-relevant
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-10-18 15:32:55 -07:00
Nikolaj Bjorner
bc2020a39b
#5604
...
retain array interpretation when available
2021-10-17 20:24:26 -07:00
Nikolaj Bjorner
115203e87c
fixes to sat.euf ematching #5573
2021-10-16 15:52:37 -07:00
Margus Veanes
f78546cd7c
fixed bug of computing butlast of a sequence ( #5602 )
2021-10-15 18:02:51 -07:00
Nikolaj Bjorner
fb9fa1b7d2
updated printer
2021-10-15 17:56:54 -07:00
Margus Veanes
cb120c93f4
Regex range bug fix ( #5601 )
...
* added a missing derivative case for nonground range
* further missing cases and a bug fix in re.to_str
2021-10-15 15:30:55 -07:00
Simon Cruanes
6302b864c8
tweak GC in OCaml bindings ( #5600 )
...
* feat(api/ml): use custom block hints to guide the GC
this forces the GC to collect garbage when a few _large_ objects
(solver, etc.) are dead. The current code would let arbitrarily many
such objects die and not trigger a GC (which would have to come from
OCaml code instead)
* tuning
* try to use caml_alloc_custom_mem with fake sizes
* try to fix leak by explicitly finalizing OCaml context
* chore: use more recent ubuntu for azure CI
* remove finalizer causing segfault in example
2021-10-14 12:46:14 -07:00
Nikolaj Bjorner
f60ed2ce92
#5591
2021-10-13 21:38:36 -07:00
Nikolaj Bjorner
7b341313d5
#5593
2021-10-13 17:50:56 -07:00
Nikolaj Bjorner
fd77f0c111
fix #5594
2021-10-13 17:17:05 -07:00
Nikolaj Bjorner
96e117d78c
Update smt_context.cpp
2021-10-12 17:10:12 -07:00
Nikolaj Bjorner
c15968aa9e
fix #4901
2021-10-12 17:10:04 -07:00
Nikolaj Bjorner
9a76bf0aa2
#5591
...
nth issue
2021-10-12 13:59:28 -07:00
Christoph M. Wintersteiger
58fd4fc860
Merge pull request #5550 from wintersteiger/cwinter_fpa_fixes
...
Assorted fixes for floats
2021-10-12 18:24:49 +01:00
Nikolaj Bjorner
52032b9ef8
#5467
2021-10-12 10:16:15 -07:00
Christoph M. Wintersteiger
b471ebdf1c
Revert "Fix off-by-one in fp.div bit-blasting. Inspired by #4841 but doesn't quite fix it."
...
This reverts commit f80fdb4ea3a762cfe95daa0321d9875cfa00c7ae.
2021-10-12 12:45:11 +00:00
Christoph M. Wintersteiger
738783a26c
Fix off-by-one in fp.div bit-blasting. Inspired by #4841 but doesn't quite fix it.
2021-10-12 12:45:11 +00:00
Christoph M. Wintersteiger
c24f438e51
Fix for mk_to_fp_float; pertains to #4841
2021-10-12 12:45:10 +00:00
Christoph M. Wintersteiger
00e8ea7962
Make terms that are internalized on the fly relevant
2021-10-12 12:45:10 +00:00
Christoph M. Wintersteiger
8e69f76784
Add additional equality in theory_fpa
2021-10-12 12:45:09 +00:00
Christoph M. Wintersteiger
f1acc4b78a
Make fpa2bv debug symbol names optional
2021-10-12 12:45:09 +00:00
Christoph M. Wintersteiger
515a2a771e
Whitespace
2021-10-12 12:45:09 +00:00