Nikolaj Bjorner
34969b71ee
#6340 again - reduce new assertions in fresh iteration
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-09-13 19:58:32 -07:00
Nikolaj Bjorner
a6a5985f8e
fix #6341
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-09-13 17:19:48 -07:00
Nikolaj Bjorner
fd5448d26b
fix #6340 - again
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-09-13 17:01:51 -07:00
Nikolaj Bjorner
c30b884247
fix #6340
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-09-12 11:01:24 -07:00
Nikolaj Bjorner
9b7c66ea7b
revert update to netcoreapp version
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-09-12 08:41:43 -07:00
Nikolaj Bjorner
a5ad109707
suppress debug warnings when concurrent dec-ref is enabled. The contract with the client is that it doesn't invoke methods on auxiliary objects after the context is deleted. The client is not required to decrement reference counts
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-09-11 19:06:23 -07:00
Nikolaj Bjorner
ff679e0fce
increment version number
2022-09-11 19:02:44 -07:00
Nikolaj Bjorner
edeeded4ea
remove DecRefQueue, use Z3_enable_concurrent_dec_ref ( #6332 )
...
The notion of reference counted contexts never worked.
The reference count to a context only ends up being 0 if the GC kicks in and disposes the various z3 objects. A call to Dispose on Context should free up all resources associated with that context. In exchange none of the resources are allowed any other operation than DecRef. The invocations of DecRef are protected by a lock and test on the context that the native pointer associated with the context is non-zero. Dispose sets the native pointer to zero.
Z3_enable_concurrent_dec_ref ensures that:
- calls to decref are thread safe. Other threads can operate on the context without interference.
The Z3_context ensures that
- z3objects allocated, but not disposed during the lifetime of Z3_context are freed when Z3_context is deleted (it triggers a debug warning, but this is now benign).
2022-09-11 18:59:00 -07:00
Nikolaj Bjorner
3c8c80bbac
fix #6336
2022-09-11 12:22:49 -07:00
Nikolaj Bjorner
809838fede
solve for fold, expand rewrites under fold/map
...
Occurrences of map and fold are interpreted.
They are defined when the seq argument is expanded into a finite
concatenation. The ensure this expansion takes place, each fold/map term
is registered and defined through rewrites when the seq argument simplifies.
2022-09-11 11:32:18 -07:00
Nikolaj Bjorner
53611f47df
modify clauses used by not-contains
...
The literal "emp" can be true in the current assignment, in which case the clause
cnt or emp or ~postf is true and does not contribute to propagation.
This saves, potentially, for generating lemmas for postf.
Add a lemma a = "" or |s| >= idx when a = tail(s, idx)
The lemma ensures that length bounding on s is enforced
(the branch that expands not-contains for long sequences s is closed).
2022-09-11 05:48:17 -07:00
Nikolaj Bjorner
7a55bd5687
beta redex check is used in array theory to filter out safe as-arrays
2022-09-11 05:44:11 -07:00
Nikolaj Bjorner
3900c03b72
make error message more descriptive
2022-09-11 05:43:33 -07:00
Nikolaj Bjorner
6df711254b
fix type error when mapping over the empty sequence
2022-09-10 16:03:52 -07:00
Nikolaj Bjorner
8311525472
map and fold cannot be treated as variables
2022-09-10 16:03:24 -07:00
Nikolaj Bjorner
4a652a4c0c
relax giveup condition for as-array when it occurs only in beta redex positions.
2022-09-10 16:02:58 -07:00
Nikolaj Bjorner
0629353fdc
add match for foldli
2022-09-10 16:02:11 -07:00
Nikolaj Bjorner
660bdc33e3
fix #6330
2022-09-09 08:18:30 -07:00
Nikolaj Bjorner
058ed3de56
fix #6331
2022-09-07 12:37:50 -07:00
Clemens Eisenhofer
25b5b985e6
Missing overload for conflict ( #6329 )
2022-09-07 09:02:06 -07:00
Nikolaj Bjorner
55d5af00cc
disable bv delay until it is debugged #6324
...
regression introduced when filter for when to apply delay was fixed, but then it exercises delay tactic that isn't tested.
2022-09-07 00:04:57 -07:00
Nikolaj Bjorner
5322d4f241
fix #6326
2022-09-06 23:48:21 -07:00
Thomas Pani
adf6e98cdf
Handle _out(STRING)
parameters in Java API ( #6325 )
2022-09-06 15:29:12 -07:00
Nikolaj Bjorner
9732169b04
#6320
2022-09-05 13:44:27 -07:00
Nuno Lopes
9717dadd9f
Use glibc's malloc_usable_size when available ( #6321 )
2022-09-05 13:40:02 -07:00
Nikolaj Bjorner
6a61efbf99
add missing override
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-09-05 13:35:53 -07:00
Nikolaj Bjorner
fcc6e6c899
doc bug
2022-09-05 03:17:13 -07:00
Nikolaj Bjorner
8dc8de8ccd
lazy multiplier experiment
...
this update provides a use case for and allows testing incremental multiplier compilation.
2022-09-05 03:09:18 -07:00
Nikolaj Bjorner
616fc2cbd5
fix #6314
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-09-04 16:23:11 -07:00
Nikolaj Bjorner
b49ffb8a87
indentation
2022-09-04 16:23:11 -07:00
Nuno Lopes
b9ddb11701
add static love
2022-09-04 11:57:43 +01:00
Nikolaj Bjorner
8e6f17ebd0
inc version
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-09-03 15:47:12 -07:00
Nikolaj Bjorner
1382cdefea
release notes
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-09-03 10:04:48 -07:00
Nikolaj Bjorner
85c8168af5
use for pattern instead of iterators
2022-09-02 22:45:50 -07:00
Nikolaj Bjorner
60967efd38
fix wrong condition for delayed bit-blasting
2022-09-02 18:39:21 -07:00
Nikolaj Bjorner
0bdb2f1691
add verbose=1 log for mbp failure
2022-09-02 18:03:56 -07:00
Nikolaj Bjorner
7e1e64d027
fix #6313
...
remaining new issues
2022-09-02 17:48:00 -07:00
JohnLyu2
9dca8d18ed
fix negative contains bug ( #6312 )
2022-09-02 13:36:11 -07:00
Nikolaj Bjorner
e4ef1717e3
fix variable tracking bug in explanations with literals
2022-09-01 23:26:38 -07:00
Nikolaj Bjorner
eb1ea9482e
detect nested as-array in model values
2022-09-01 23:26:38 -07:00
Arie Gurfinkel
eb2b95e5fe
spacer: trying to make C++ happy
2022-09-01 15:44:22 -07:00
Nikolaj Bjorner
f2afb369bd
extend distinct check to ADT
2022-09-01 14:18:13 -07:00
Nikolaj Bjorner
61f7dc3513
remove creation of trivial testers
2022-09-01 10:23:21 -07:00
Nikolaj Bjorner
46383a0811
AG - unary datatypes, tester always is true.
2022-09-01 09:45:56 -07:00
Nikolaj Bjorner
ac5b190a72
track instantiations from MBQI in proof logging for new solver
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-09-01 08:51:53 -07:00
Nikolaj Bjorner
d3e6ba9f98
remove union
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-08-31 19:09:13 -07:00
Nikolaj Bjorner
3011b34b3b
log E-matching based quantifier instantiations as hints
2022-08-31 18:59:02 -07:00
Nikolaj Bjorner
6077c4154a
#6116 bv2int bug fix
2022-08-31 17:31:54 -07:00
John Fleisher
f72cdda5fb
Change to 4 digit assembly version ( #6297 )
...
* WiP: test build specific version number
* update mk_win_dist for assembly-version
* Add print statements for version
* remove stray semicolon
* undo quote change in projectstr
* nit fixes
* revert print formatting for Mac build
* fix spaces
2022-08-31 06:46:06 -07:00
Nikolaj Bjorner
4abff18e8d
fill in missing pieces of proof hint checker for Farkas and RUP
...
The proof validator based on SMT format proof logs uses RUP to check propositional inferences and has plugins for theory axioms/lemmas.
2022-08-31 05:29:15 -07:00