Clemens Eisenhofer
2fa60aa43c
Added function to select the next variable to split on (User-Propagator) ( #6096 )
...
* Added function to select the next variable to split on
* Fixed typo
* Small fixes
* uint -> int
2022-06-19 10:49:25 -07:00
Nuno Lopes
f08e3d70a9
attempt to fix windows build bot
2022-06-17 21:15:54 +01:00
Nuno Lopes
f3c00a0a03
attempt to fix windows build bot
2022-06-17 18:05:19 +01:00
Nuno Lopes
c3407fc304
fix build of tests
2022-06-17 17:11:18 +01:00
Nuno Lopes
d9fcfdab34
fix debug build
2022-06-17 14:35:33 +01:00
Nuno Lopes
73a24ca0a9
remove '#include <iostream>' from headers and from unneeded places
...
It's harmful to have iostream everywhere as it injects functions in the compiled files
2022-06-17 14:10:19 +01:00
Nuno Lopes
70bcf0b51d
reduce sizeof(enode) from 120 to 112 bytes by swapping the order of fields
...
Yes, those 8 bytes are yours now, use responsibly.
2022-06-17 12:07:15 +01:00
Nikolaj Bjorner
08c44bc6f6
remove unused static features
...
remove static features that tax solving time on large instances.
2022-06-16 15:40:01 -07:00
Nikolaj Bjorner
477e9625ef
Don't reset the cache between applications of replace
...
tactic/lia2card shows a huge slowdown because the same replace function is called on thousands of assertions. Each time the cache gets reset with thousands of entries - they are all the same.
So don't reset the cache just because... Instead reset the cache if m_refs grows large.
2022-06-16 15:40:01 -07:00
Nikolaj Bjorner
99b606b861
add logging
2022-06-16 15:40:00 -07:00
Olaf Tomalka
7fdcbbaee9
Add high level bindings for js ( #6048 )
...
* [Draft] Added unfinished code for high level bindings for js
* * Rewrote structure of js api files
* Added more high level apis
* Minor fixes
* Fixed wasm github action
* Fix JS test
* Removed ContextOptions type
* * Added Ints to JS Api
* Added tests to JS Api
* Added run-time checks for contexts
* Removed default contexts
* Merged Context and createContext so that the api behaves the sames as in other constructors
* Added a test for Solver
* Added Reals
* Added classes for IntVals and RealVals
* Added abillity to specify logic for solver
* Try to make CI tests not fail
* Changed APIs after a round of review
* Fix test
* Added BitVectors
* Made sort into getter
* Added initial JS docs
* Added more coercible types
* Removed done TODOs
2022-06-14 09:55:58 -07:00
Nikolaj Bjorner
3d00d1d56b
prepare for equality propagation from Grobner basis
...
Attempt to remedy performance regressions from the new solver core for NLA. It misses easy lemmas, presumably due to weaker bounds information.
2022-06-14 09:51:07 -07:00
Nikolaj Bjorner
8e2027107d
fix spacing
2022-06-14 09:51:06 -07:00
Nikolaj Bjorner
55421afd61
fix regression in top-sort fix #6060
2022-06-14 09:51:06 -07:00
Nikolaj Bjorner
637120ced5
Treat arguments to recursive functions as beta redexes
...
An argument to a recursive function would escape the scope of the function application when the recursive function definitions are unfolded. Therefore, such argument occurrences need not be considered for extensional equality / equality sharing.
This filter is mostly relevant for recursive functions that take a lambda expression as argument. Lambda expressions / arrays that occur in shared occurrences are checked for extensionality.
2022-06-14 09:51:06 -07:00
Nikolaj Bjorner
25ad5cb073
prepare ground for drup trim
...
By not deleting justifications in base level unit literals it is possible for drup-trim to inspect the trail for dependencies - which clauses were used to derive a literal.
2022-06-14 09:51:06 -07:00
Nikolaj Bjorner
35d4605425
remove spurious output to stdout
2022-06-14 09:51:06 -07:00
Nikolaj Bjorner
04f94d818f
fix #6091
2022-06-14 09:51:06 -07:00
Dominic Steinhöfel
46bc726391
Better error message for mismatching sorts in substitutions in z3.substitute ( #6093 )
2022-06-13 13:46:30 -07:00
Nikolaj Bjorner
470bf27d1d
drat
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-06-11 09:15:32 -07:00
Nikolaj Bjorner
9cd339841a
for Arie
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-06-10 18:07:54 -07:00
Nikolaj Bjorner
994dab8eb6
add pre-filter for F* use case
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-06-10 17:56:48 -07:00
Nikolaj Bjorner
8efa3c8ade
introduce notion of beta redex to deal with lambdas in non-extensional positions
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-06-10 17:35:01 -07:00
Nikolaj Bjorner
b9b5377c69
add a way to supress lambdas
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-06-10 14:37:25 -07:00
Nikolaj Bjorner
5db133f875
add a way to supress lambdas
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-06-10 14:35:20 -07:00
Nikolaj Bjorner
97437bce4c
Update sat_params.pyg
2022-06-09 10:09:30 -07:00
Nikolaj Bjorner
828850f298
prepare for trim
2022-06-09 10:08:57 -07:00
Nikolaj Bjorner
c5847504ff
contains-partition
2022-06-08 12:20:45 -07:00
Nikolaj Bjorner
6a1193eebd
reorg if-then-else structure
2022-06-08 10:00:45 -07:00
Nikolaj Bjorner
72a6384353
time overflow before stack overflow
2022-06-08 10:00:16 -07:00
Nikolaj Bjorner
e468386359
#5656
...
guard __del__ operator by checking if library was unloaded.
2022-06-08 09:59:29 -07:00
Nikolaj Bjorner
dee6c30f1b
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-06-08 08:05:19 -07:00
Nikolaj Bjorner
80604c7bc5
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-06-08 07:00:59 -07:00
Nikolaj Bjorner
51ed13f96a
update topological sort to use arrays instead of hash tables, expose Context over Z3Object for programmability
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-06-08 06:28:24 -07:00
Nikolaj Bjorner
0e6c64510a
display model in add/del format
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-06-07 13:14:36 -07:00
Nikolaj Bjorner
35986f3979
fix #6084
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-06-07 11:29:57 -07:00
Nikolaj Bjorner
fe08c9976e
fix #6081
2022-06-06 11:29:11 -07:00
Nikolaj Bjorner
cc045debac
again
2022-06-06 11:23:18 -07:00
Nikolaj Bjorner
bb6c274ad3
fix #6085
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-06-06 10:00:08 -07:00
Nikolaj Bjorner
dca1dcca6d
ea
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-06-06 08:42:47 -07:00
Nikolaj Bjorner
b629960afb
proof format
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-06-06 07:18:33 -07:00
Nikolaj Bjorner
ea365de820
add cut
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-06-04 11:59:00 -07:00
Nikolaj Bjorner
da9382956c
use common functionality
2022-06-04 11:36:05 -07:00
Christoph M. Wintersteiger
f77608ed88
Add interpreted versions of unspecified cases of fp.to_ieee_bv and fp.to_real ( #6077 )
2022-06-04 17:53:23 +01:00
Christoph M. Wintersteiger
d722c73d4c
Fix corner case in MPF FMA ( #6075 )
2022-06-04 15:55:26 +01:00
Christoph M. Wintersteiger
6422a6b5a7
Fix rounding bug in to_fp ( #6074 )
2022-06-04 14:32:08 +01:00
Christoph M. Wintersteiger
cb67f90f1a
Merge pull request #6072 from wintersteiger/cwinter_warnings
...
Fix a couple compiler warnings
2022-06-04 11:40:14 +01:00
Christoph M. Wintersteiger
33454193d4
Change FP default rounding mode in the Python API
2022-06-04 08:45:52 +01:00
Christoph M. Wintersteiger
ed7db892f9
Fix a couple compiler warnings
2022-06-04 08:00:56 +01:00
Nikolaj Bjorner
f652c57bfe
fix proof checker
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-06-03 20:17:59 -07:00
Nikolaj Bjorner
3d1e03e00a
add start of self-contained proof checker for arithmetic
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-06-03 09:11:02 -07:00
Nikolaj Bjorner
a9d70fca1a
fix #6061
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-31 19:09:10 -07:00
Nikolaj Bjorner
e9cff33feb
fix #5068
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-30 11:24:58 -07:00
Nikolaj Bjorner
15c47808d6
#6059
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-30 11:03:50 -07:00
Nikolaj Bjorner
da3f31697b
fix proof checking for bounds propagation
2022-05-30 10:18:16 -07:00
Nikolaj Bjorner
cb279fba2b
fix sign for binary propagation hints
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-29 10:32:05 -07:00
Nikolaj Bjorner
bffa7ff2f6
add hint verification, combine bounds/farkas into one rule
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-29 10:12:05 -07:00
Nikolaj Bjorner
63b9c4bdf0
for AG
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-28 18:49:27 -07:00
Nikolaj Bjorner
6abea2de2c
fix nightly, fix regression identified by Nuno
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-28 18:03:15 -07:00
Nikolaj Bjorner
b8532bec7e
remove pragma from cpp file
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-28 14:48:38 -07:00
Nikolaj Bjorner
35db0ae58b
workaround manylinux build failure (it is advertized as a compiler bug)
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-28 14:34:58 -07:00
Nikolaj Bjorner
48701826f1
indent
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-28 13:57:03 -07:00
Nikolaj Bjorner
8d980ea704
remove internal configuration
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-28 12:13:18 -07:00
Nikolaj Bjorner
dd46224a1d
use structured proof hints
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-28 09:37:41 -07:00
Nikolaj Bjorner
7da9f12521
expose description of global parameters #6048
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-27 08:50:40 -04:00
Nikolaj Bjorner
de892ed9f2
fix #6054
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-26 15:51:57 -04:00
Nikolaj Bjorner
f77037e9a5
expand select/store when I/J are values #6053
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-25 20:23:43 -04:00
Nikolaj Bjorner
4d8e4b5bd3
fix #6052
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-25 17:21:01 -04:00
Nikolaj Bjorner
8c95dff33b
cnf
2022-05-22 09:10:26 -04:00
Nikolaj Bjorner
c850259f89
rw
2022-05-22 07:54:27 -04:00
Nikolaj Bjorner
386c511f54
core opt
2022-05-21 10:27:37 -04:00
Nikolaj Bjorner
127af83c53
remove ad-hoc diagnostics
2022-05-21 10:27:37 -04:00
Nikolaj Bjorner
40fe472e95
nit
2022-05-18 13:23:33 -07:00
Nikolaj Bjorner
363b69f588
fix #6034
2022-05-16 16:44:13 -07:00
Nikolaj Bjorner
f6b2874d7c
update to take effect of def_API for callback functions
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-16 10:30:54 -07:00
Nikolaj Bjorner
ca2497eecb
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-15 12:00:41 -07:00
Nikolaj Bjorner
186a3c58e5
merge
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-15 12:00:25 -07:00
Nikolaj Bjorner
1028c80851
update pretty printer for recursive function filtering
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-15 11:59:41 -07:00
Arie Gurfinkel
7f62fa2b66
Sparse matrix kernel ( #6035 )
...
* Subtle bug in kernel computation
Coefficient was being passed by reference and, therefore, was
being changed indirectly.
In the process, updated the code to be more generic to avoid rational
computation in the middle of matrix manipulation.
* sparse_matrix: fixed handling of 0 in add_var() and add()
particularly in add_var(), without the fix the user is responsible for checking
coefficients for 0.
2022-05-13 17:30:35 -07:00
Nikolaj Bjorner
7497856ded
add ignore int to new arithmetic solvers
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-11 15:14:22 -07:00
Nikolaj Bjorner
b1aa6b260b
disable normalize
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-11 13:31:35 -07:00
Nikolaj Bjorner
6deb4dee37
disable normalize
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-11 13:30:50 -07:00
Nikolaj Bjorner
5aec9b32bd
check zero
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-11 10:13:07 -07:00
Nikolaj Bjorner
860d904699
check zero
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-11 10:11:17 -07:00
Nikolaj Bjorner
361155685c
ensure abs
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-11 09:09:00 -07:00
Nikolaj Bjorner
cbaa16df57
lcm normalization
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-11 09:03:57 -07:00
Nikolaj Bjorner
5ca3bc3212
kernel
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-10 15:48:06 -07:00
Nikolaj Bjorner
54648f6b50
add stats for binary clause creation
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-10 14:58:15 -07:00
Nikolaj Bjorner
2928cc261c
fix
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-10 13:17:25 -07:00
Nikolaj Bjorner
805443c8ab
wip
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-10 11:17:34 -07:00
Nikolaj Bjorner
0557d72d1c
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-10 07:42:32 -07:00
Nikolaj Bjorner
6a8ac5f9b1
adding K
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-09 16:47:26 -07:00
Nikolaj Bjorner
ad2445e423
gauss jordan
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-09 16:33:15 -07:00
John Jones
361888f299
Generate bdist wheels for musllinux_1_1 ( #6025 )
2022-05-09 14:13:08 -07:00
Nikolaj Bjorner
dcc01b874a
prep for pragmas
2022-05-09 11:18:15 -07:00
Nikolaj Bjorner
6670cf0b65
na
2022-05-09 09:16:05 -07:00
Nikolaj Bjorner
fbf5e322dc
js
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-09 08:49:02 -07:00
Nikolaj Bjorner
4549ec7331
misc
2022-05-09 08:38:35 -07:00
Nikolaj Bjorner
da9ed82889
add decide callback
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-08 15:31:05 -07:00
Nikolaj Bjorner
8218f25222
add decide callback
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-08 15:30:03 -07:00
Nikolaj Bjorner
c8d12975c9
fixes for fresh
2022-05-08 12:49:04 -07:00
Nikolaj Bjorner
506f8f88aa
add user propagator functionality
2022-05-08 12:43:46 -07:00
Nikolaj Bjorner
1e7a9e3e61
fix #6023
2022-05-08 12:03:13 -07:00
Nikolaj Bjorner
97af3a6120
fix #6021
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-08 11:25:24 -07:00
Nikolaj Bjorner
cca49154ff
fix #6021
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-08 11:24:56 -07:00
Nikolaj Bjorner
7def610a69
build warnings
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-08 10:31:11 -07:00
Nikolaj Bjorner
d58de2f8e4
java build
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-08 10:20:32 -07:00
Nikolaj Bjorner
e2625cb760
safe
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-07 13:53:37 -07:00
Nikolaj Bjorner
3bf09b114a
safe
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-07 13:53:07 -07:00
Nikolaj Bjorner
04b0b3690d
js
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-07 12:46:52 -07:00
Nikolaj Bjorner
1e586888c9
patch js for fnptr
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-07 11:18:19 -07:00
Nikolaj Bjorner
14214c5a07
exposing user propagators over .Net
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-07 11:08:40 -07:00
Sacha Ayoun
ffbabf251d
enhance ocaml seq api ( #6010 )
...
Signed-off-by: Sacha Ayoun <sachaayoun@gmail.com>
2022-05-04 12:03:22 -07:00
Nikolaj Bjorner
5a685ba9b5
expose maxdiff
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-04 08:52:42 -07:00
Nikolaj Bjorner
367bfedab0
add min/max diff in final check
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-04 07:39:38 -07:00
Nikolaj Bjorner
c29cfa81ae
prep for max/min diff
2022-05-04 02:08:11 -07:00
Nikolaj Bjorner
87d2a3b4e5
map/mapi/foldl/foldli
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-04 01:10:18 -07:00
Nikolaj Bjorner
b3e0213cab
missing object ref
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-02 12:35:28 -07:00
Nikolaj Bjorner
be653dab0e
init value
2022-05-01 15:26:57 -07:00
Nikolaj Bjorner
d1f1e4ce34
selectively enable dual strengthening
2022-05-01 15:26:57 -07:00
Nikolaj Bjorner
98e1c86128
na
2022-05-01 15:26:57 -07:00
Nikolaj Bjorner
9cc5f6901a
na
2022-05-01 15:26:57 -07:00
Nikolaj Bjorner
b5c7f000de
add option to "rotate" cores during core finding
...
enable to find multiple cores in a round and at the same time facilitate rotation around satisfiable subsets to explore neighborhoods for improved assignments.
2022-05-01 15:26:56 -07:00
JohnLyu2
5a9b0dd747
Z3str3 Debug ( #6000 )
...
* z3str3 debug
* add comments of reference to bugs in the report
Co-authored-by: John Lu <z52lu@uwaterloo.ca>
2022-04-27 12:37:07 +02:00
Ryan Goulden
99e299b90c
ocaml: fix is_arithmetic_numeral and is_bv_numeral ( #6003 )
2022-04-27 12:36:09 +02:00
Nikolaj Bjorner
02d6f6a613
fix build for Z3_mk_datatype_sort
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-04-27 10:01:51 +01:00
Nikolaj Bjorner
81d97a81af
enable nested ADT and sequences
...
add API to define forward reference to recursively defined datatype.
The forward reference should be used only when passed to constructor declarations that are used in a datatype definition (Z3_mk_datatypes). The call to Z3_mk_datatypes ensures that the forward reference can be resolved with respect to constructors.
2022-04-27 09:58:38 +01:00
Nikolaj Bjorner
8e2f09b517
#5778 - ensure arrays used inside of extensionality function are treated as shared
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-04-25 17:17:59 +01:00
Nikolaj Bjorner
0a665b0fa0
#5778
2022-04-25 14:27:38 +01:00
Nikolaj Bjorner
489459a1f7
#5778
...
reprogram flush, mark clauses during reinit as non-redundant.
2022-04-25 11:22:00 +01:00
Kevin Gibbons
dc18b47967
automatically release wasm build ( #5997 )
2022-04-24 18:06:36 +01:00
Nikolaj Bjorner
24baf56e27
fix missing propagation on final
2022-04-24 16:29:25 +01:00
Kevin Gibbons
312e037458
wasm build: disable error handler ( #5996 )
...
* wasm: set error handler to no-op
* wasm: better wrapper for use in html
2022-04-24 11:04:08 +01:00
Victor
bd6b3027cd
Document gotcha with z3-js ( #5994 )
2022-04-23 19:52:35 +01:00
Nikolaj Bjorner
459cfc8eb4
fix #5993
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-04-23 19:33:55 +01:00
Nikolaj Bjorner
5a2c92f4af
format
2022-04-22 17:25:37 +01:00
Clemens Eisenhofer
81189d6fdd
Added bit2bool to the API ( #5992 )
...
* Fixed registering expressions in push/pop
* Reused existing function
* Reverted reusing can_propagate
* Added decide-callback to user-propagator
* Refactoring
* Fixed index
* Added bit2bool to the API
Fixed bug in user-propagator's decide callback
* Fixed typo
2022-04-22 09:54:21 +01:00
Nikolaj Bjorner
0dd0fd26d4
remove buggy prototype
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-04-21 10:44:49 +01:00
Nikolaj Bjorner
d9f3625f93
change default output to print objective value
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-04-20 17:11:46 +01:00
Nikolaj Bjorner
e3c35840bb
remove out
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-04-20 11:26:16 +01:00
Nikolaj Bjorner
ec57d3b15c
missing switch cases
2022-04-19 16:20:02 +01:00
Nikolaj Bjorner
5393f1d98f
#5980
2022-04-19 11:10:37 +01:00
Nikolaj Bjorner
a180254c1a
fix #5980
2022-04-19 11:10:20 +01:00
Nikolaj Bjorner
b7169e2a41
fix #5985
2022-04-19 07:54:55 +02:00
Nikolaj Bjorner
a1ead5f47d
#5986
...
add memory limit check to internalize
2022-04-19 07:31:40 +02:00
Nikolaj Bjorner
9b66d8600b
add shortcut to serialize/deserialize based on question at FV hangout
...
use case
```
from z3 import *
x, y = Ints('x y')
s = (x + y).serialize()
y = deserialize(s)
print(y)
```
2022-04-19 07:21:22 +02:00
Nikolaj Bjorner
09b0c4bc9d
fix #5988
2022-04-19 07:17:24 +02:00
Nikolaj Bjorner
df981666fd
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-04-18 16:27:46 +02:00
Nikolaj Bjorner
98c7069f75
add rewrite for hoisting multipliers over modular inverses
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-04-18 14:29:16 +02:00
Nikolaj Bjorner
c727e2d048
add rc2 option
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-04-18 10:31:56 +02:00
Nikolaj Bjorner
4a59ae41b3
fixes
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-04-16 19:19:05 +02:00
Nikolaj Bjorner
7496f11542
na
2022-04-16 18:30:35 +02:00
Nikolaj Bjorner
b5309d5fd0
na
2022-04-16 16:42:57 +02:00
Nikolaj Bjorner
c131eb4db1
build fix
2022-04-16 16:42:45 +02:00
Nikolaj Bjorner
f4c500c519
fix build
...
reference types are not part of C
2022-04-16 15:16:53 +02:00
Nikolaj Bjorner
807121aa03
wip
2022-04-16 14:55:43 +02:00
Nikolaj Bjorner
8e70112832
Update z3.py
...
allow ading funcinterp to models
2022-04-15 23:31:15 +02:00
Simon Cruanes
11d992a335
wip: tweak GC further ( #5982 )
2022-04-15 20:08:39 +02:00
Clemens Eisenhofer
e11496bc65
Added decide-callback to user-propagator ( #5978 )
...
* Fixed registering expressions in push/pop
* Reused existing function
* Reverted reusing can_propagate
* Added decide-callback to user-propagator
* Refactoring
* Fixed index
2022-04-15 20:07:17 +02:00
Zachary Wimer
9ecd4f8406
MANIFEST.in will now include pyproject.toml ( #5979 )
2022-04-15 19:53:16 +02:00
Nikolaj Bjorner
c33611e9e0
include map for non vs builds
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-04-15 19:23:48 +02:00
Nikolaj Bjorner
cc36dd1e0d
include map for non vs builds
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-04-15 19:18:17 +02:00
Nikolaj Bjorner
3cc9d7f443
improve pre-processing
2022-04-15 12:55:26 +02:00
Nikolaj Bjorner
a634876180
sort muxes
2022-04-15 12:55:26 +02:00
Zachary Wimer
7d47e45c6b
Add a hacky patch so that Z3 on M1 hardware can link to libs properly ( #5974 )
...
* Add a hacky patch so that Z3 on M1 hardware can link to libs properly
* Update setup.py
Co-authored-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-04-15 09:57:51 +02:00
Nikolaj Bjorner
ddbe17d581
#5965
...
define the is_bool on ArithSortRef
2022-04-13 16:08:54 +02:00
Nikolaj Bjorner
3f5eb7fcf2
re-enable pre-process
2022-04-13 11:24:24 +02:00
Nikolaj Bjorner
c9fa00aec1
expose recursive functions with own op-code over API
2022-04-13 11:24:24 +02:00
Zachary Wimer
c0b455e010
Add cmake setup.py build dep ( #5972 )
...
* Add wheel as build dependency
* Add cmake as a python build dependency
* pyproject toml update
Co-authored-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-04-13 08:48:08 +02:00
Zachary Wimer
9834d7aae0
Setup.py fix dependencies ( #5971 )
...
* Add wheel as build dependency
* pyproject toml update
2022-04-13 08:31:24 +02:00
Audrey Dutcher
032768b0fc
setup.py: copy generated python files correctly ( #5975 )
2022-04-13 08:29:36 +02:00
Clemens Eisenhofer
b264e6c290
Reverted reusing can_propagate ( #5966 )
...
* Fixed registering expressions in push/pop
* Reused existing function
* Reverted reusing can_propagate
2022-04-12 12:29:53 +02:00
Nikolaj Bjorner
ac55e29a56
disable propagation
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-04-11 22:23:42 +02:00
Nikolaj Bjorner
eb2dd92d37
Merge branch 'master' of https://github.com/z3prover/z3
2022-04-11 17:06:03 +02:00
Nikolaj Bjorner
c996a66da0
separate pre-processing, add callback parameter to push/pop in python API
2022-04-11 17:05:59 +02:00
Clemens Eisenhofer
b0d8b27f37
Fixed registering expressions in push/pop ( #5964 )
...
* Fixed registering expressions in push/pop
* Reused existing function
2022-04-11 16:50:13 +02:00
Frédéric Bour
f43d9d00d4
Z3_add_rec_def body is not a macro ( #5963 )
2022-04-11 13:38:20 +02:00
Clemens Eisenhofer
0b20a4ebf4
Added rewriting distinct with bitvectors to false if bit-size is too low ( #5956 )
...
* Fixed problem with registering bitvector functions
* Added rewriting distinct with bitvectors to false if bit-size is too low
* Removed debug output
* Incorporated Nikolaj's comments
* Simplifications
2022-04-09 21:46:21 +02:00
Nikolaj Bjorner
f55b233228
#5778
2022-04-09 12:06:39 +02:00
Nikolaj Bjorner
011c1b2dd2
remove refs to bare_str
2022-04-09 12:06:27 +02:00
Nikolaj Bjorner
405a26c585
allow adding constraints during on_model
2022-04-09 09:55:02 +02:00
Nikolaj Bjorner
005b8e3cf8
arc -> arch
2022-04-09 08:28:22 +02:00
Nikolaj Bjorner
c98eda03f7
nightly osx arm64 wheel
2022-04-09 06:55:31 +02:00
Nikolaj Bjorner
d6d9b25c68
Allow adding constraints in the model_eh callback
2022-04-08 17:12:20 +02:00
Nikolaj Bjorner
f3789e21a3
id doesn't use mk_util
2022-04-08 14:42:18 +02:00
Nikolaj Bjorner
1346a168a1
#5952
2022-04-08 07:00:53 +02:00
Nikolaj Bjorner
8c2909f52b
working on python make for arm
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-04-07 13:36:23 +02:00
Nikolaj Bjorner
0fa0feb979
allow add_expr during pop
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-04-06 16:27:10 +02:00
Nikolaj Bjorner
b0dce5b27d
remove debug asserts
2022-04-06 08:53:12 +02:00
Nikolaj Bjorner
2f63747c7b
#5778
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-04-06 08:17:27 +02:00
Nikolaj Bjorner
cebbc71330
#5778 ensure else value so that defaults align across equivalence class
2022-04-06 07:58:32 +02:00
fleisherdev
ac2523af82
Fix null ref on access of Entry[] contents ( #5947 )
...
Co-authored-by: jfleisher <jofleish@microsoft.com>
2022-04-06 05:37:51 +02:00
Nikolaj Bjorner
03a2d9a018
fix #5942
2022-04-03 11:03:28 -07:00
Nikolaj Bjorner
46cc54fbab
outdated warning
2022-04-03 07:55:51 -07:00
Nikolaj Bjorner
34272152bb
add stubs to control memory usage
2022-04-02 17:52:54 -07:00
Nikolaj Bjorner
4b495e4b96
nits
2022-04-02 17:50:45 -07:00
Nikolaj Bjorner
d0ef5948aa
nits
2022-04-02 17:49:03 -07:00
Nikolaj Bjorner
25feb0ebed
#5938 catch also rewriter_exception that can be raised on cancelation and memory pressure
2022-04-02 17:43:12 -07:00
Nikolaj Bjorner
ef28f0e2f0
#5778
...
deal with recursive calls to internalization with the same formula
2022-04-02 01:28:58 -07:00
Nikolaj Bjorner
2fedcbd41e
#5778
2022-04-02 01:27:56 -07:00
Nikolaj Bjorner
229ea569f1
#5778
2022-04-02 00:56:51 -07:00
Nikolaj Bjorner
97115e5ebd
#5778
...
add new clauses created during propagation to use-list
2022-04-02 00:14:59 -07:00
Nikolaj Bjorner
4cc33277fa
#5778
2022-04-01 14:27:40 -07:00
Nikolaj Bjorner
c7922d69ac
#5778
2022-04-01 14:17:45 -07:00
Nikolaj Bjorner
81084b8232
#5778 #5937
2022-04-01 13:07:17 -07:00
Nikolaj Bjorner
5154295202
#5932
2022-03-31 23:18:03 -07:00
Nikolaj Bjorner
28e94583da
break self recursion #5937
2022-03-31 21:49:08 -07:00
Nikolaj Bjorner
dd27f7e937
#5935
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-03-30 17:47:48 -10:00
Nikolaj Bjorner
431c3af409
fix #5929 - add parameter bv_le2extract to allow disabling the disassembly to extract
2022-03-27 18:23:41 -10:00
Clemens Eisenhofer
7bb969ab52
Fixed problem with registering bitvector functions ( #5923 )
2022-03-26 16:36:15 -10:00
Nikolaj Bjorner
3828130791
fix #5922 use 0u to help type inference
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-03-24 14:05:14 -10:00
Nikolaj Bjorner
32233e1bf1
set default to true to avoid regression failures
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-03-23 12:20:53 -07:00
Nikolaj Bjorner
365b8f3281
change default to _not_ include auxiliary functions in model as this seems to break fewer'
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-03-23 09:51:06 -07:00
Nikolaj Bjorner
d790523c59
#5917
...
Add model.user_functions (default true) to control whether user functions are added to the model.
2022-03-23 09:49:44 -07:00
John Fleisher
ce04c16a6f
Jfleisher/nightlynuget ( #5916 )
...
* WiP: Test nightly version number change
* Fix debug assert
* WiP: test nuget publish to AzDo feed for nightly build
* WiP: Make Nuget deploy separate stage
* WiP: fix nightly stage name
* change nuget push to vstsfeed
* Try case sensitive name for artifacts
* WiP: use artifact folder names
* add Rev version to package
* WiP: build def variation on nightly build version
* WiP: use Build_BuildNumber and Build_DefinitionName
* WiP: using hyphen in nightly version
* Tag nightly packages with datetime
* fix commit
* Build.BuildId and Build.DefinitionName
* WiP: change suffix format to lead with alpha
* test z3public feed publish
* revert public publish test
* WiP: test build# versioning scheme
* WiP: another variant on version number for nightly
Co-authored-by: jfleisher <jofleish@microsoft.com>
Co-authored-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-03-22 12:19:58 -07:00
Nikolaj Bjorner
815c971c9a
#5778
...
regression when tracking literal explanations
2022-03-22 01:55:43 -07:00
Nikolaj Bjorner
4b1419261f
#5778
2022-03-21 16:23:43 -07:00
Nikolaj Bjorner
20bd59bb20
#5778 - missed tracking literal assignment justification
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-03-21 10:15:00 -07:00
Nikolaj Bjorner
f1806d32d6
remove buggy code, close, fix #5825
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-03-20 13:25:44 -07:00
Nikolaj Bjorner
b4873d226c
fix #5907
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-03-20 11:40:19 -07:00
Nikolaj Bjorner
f053daa051
fix #5906
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-03-20 11:24:42 -07:00
Nikolaj Bjorner
bbb27775ed
ensure that objects in callback are of sort Ast.
2022-03-20 11:24:42 -07:00
Nikolaj Bjorner
b5b9c85c40
call it UbuntuBuild
2022-03-19 15:24:53 -07:00
Nikolaj Bjorner
dfa65443e9
fix name for artifact
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-03-19 13:51:58 -07:00
Nikolaj Bjorner
964e513353
re-add bv_eq_axioms, fix #5842
2022-03-19 12:37:01 -07:00
Nikolaj Bjorner
cfe02edda5
remove stale return
2022-03-19 12:26:48 -07:00
Nikolaj Bjorner
86af723db7
remove left-over debug output
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-03-19 09:40:29 -07:00
Nikolaj Bjorner
6d836e7e2f
expose model update
2022-03-19 09:23:08 -07:00
Nikolaj Bjorner
a9d7026724
add note about transform
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-03-18 19:13:35 -07:00
Nikolaj Bjorner
669a1d63da
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-03-18 16:36:16 -07:00
Nikolaj Bjorner
6010d751ed
fix #5903
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-03-18 16:21:47 -07:00
Nikolaj Bjorner
41d1c34067
remove else case
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-03-17 12:33:15 -07:00
Nikolaj Bjorner
1fa373d6c2
old bug: unit of xor is false
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-03-17 08:21:22 -07:00
Matt Thornton
4e0a2f5968
Dispose of intermediate Z3Objects created in dotnet api. ( #5901 )
...
* Dispose of intermediate Z3Objects created in dotnet api.
* Set C# LangVersion to 8.0.
* Fix build errors.
* Fix warning about empty using statement.
* Fix Xor to only dispose of objects that it creates internally.
2022-03-17 08:08:05 -07:00
Jan Vraný
bdf7de1703
Care for root index being undefine while calling Z3_algebraic_get_i() ( #5888 )
...
In some cases, Z3_algebraic_get_i() returned 0. For example, in the following
Python snippet, the last assert would fail:
import z3
x = z3.Real('x')
s = z3.Solver()
s.add( (x * x) - 2 == 0, x <= 0)
s.check()
val_x = s.model().get_interp(x)
assert val_x.index() == 1
The problem was that `algebraic_numbers::manager:👿 :get_i()` did not
check whether the root index was properly initialized.
This commit fixes this issue by checking whether root index is initialized
the same way various other routines do.
Fixes issue #5807 .
Signed-off-by: Jan Vrany <jan.vrany@labware.com>
2022-03-16 19:28:03 -07:00
Nikolaj Bjorner
0b230ee703
move some functions to using var pattern #5900
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-03-16 16:29:54 -07:00
Nikolaj Bjorner
a1517251dd
call dispose on sorts #5900 , missing charSort
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-03-16 07:28:05 -07:00
Nikolaj Bjorner
cd5e114ed3
call dispose on sorts #5900
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-03-16 07:24:33 -07:00
Nikolaj Bjorner
cb9dcb799f
add regex power to API and for Java per request
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-03-16 06:17:31 -07:00
Nikolaj Bjorner
e1929ca9b9
add regex power to API and for Java per request
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-03-15 19:18:33 -07:00
Nikolaj Bjorner
706d7ea893
native context uses legacy mk_context
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-03-15 16:01:05 -07:00
Nikolaj Bjorner
545341e699
fix #5895
2022-03-12 09:17:13 -08:00
Nikolaj Bjorner
c51ca86203
add another constant folding case
2022-03-10 17:39:40 -08:00
Nikolaj Bjorner
e839e18381
minimal addition to rewrite bit-vector to character conversion using constant folding.
2022-03-10 17:31:17 -08:00
Nikolaj Bjorner
8f2ea90db1
Merge branch 'master' of https://github.com/Z3Prover/z3
2022-03-10 17:09:36 -08:00
Nikolaj Bjorner
081c62d006
allow range comparison for bit-vectors and int/real
2022-03-10 17:08:49 -08:00
Nikolaj Bjorner
580012e19f
fix #5894
...
expp is not implemented. This is the second time a fuzz bug reports it. Instead of closing the bug, just disable code path as fuzzers are not considering the comment from previous bug.
2022-03-10 09:45:09 -08:00
Hari Govind V K
f26c12a9ad
fix #5882 . Use model true when inlining ( #5892 )
2022-03-09 12:31:39 -08:00
Nuno Lopes
43f7636826
remove some copies/moves
2022-03-09 12:46:41 +00:00
Nikolaj Bjorner
1d224d1bcd
na
2022-03-08 08:51:00 -08:00