3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-28 19:35:50 +00:00
Commit graph

16661 commits

Author SHA1 Message Date
Nikolaj Bjorner
eb751bec4c fix riscv/aarch/powerpc build warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-22 23:57:59 -08:00
Nikolaj Bjorner
3b5ae285d9 add outline for interval reasoning
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-22 23:28:36 -08:00
Nikolaj Bjorner
273aff5ed6 remove debug out
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-22 22:21:23 -08:00
Nikolaj Bjorner
db79346ef7 Add new tactic bound-simplifier for integer-based bit-vector reasoning. 2023-01-22 22:07:28 -08:00
Nikolaj Bjorner
83662701b6
Update theory_lra.cpp
remove spurious output
2023-01-22 16:27:48 -08:00
Nikolaj Bjorner
dbc299efbb revise bv-bounds-tactic
- share common functionality
- rename propagate-bv-bounds-new to propagate-bv-bound2 for now
- expose configuration options in bounds propagation
2023-01-22 14:41:53 -08:00
Nikolaj Bjorner
e2a6376ddf detect bounds from mod 2023-01-22 14:40:36 -08:00
Nikolaj Bjorner
021ef699af detect bounds from mod 2023-01-22 14:40:19 -08:00
Nikolaj Bjorner
7d364bf786 Allow building AC functions without requiring arity check from API 2023-01-22 14:39:58 -08:00
Nikolaj Bjorner
806a4772bc revert effect of filtering unsupported
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-20 17:28:24 -08:00
Nikolaj Bjorner
4e6d498a60 adding placeholder for refining power of 2 2023-01-20 14:37:05 -08:00
Nikolaj Bjorner
0f4f32c5d0 apply relevancy filtering on unsupported ops, fix term construction bug in bv2fpa_converter fix #6548 2023-01-20 13:05:01 -08:00
Nuno Lopes
37652e7e17 fix tactic name in docs 2023-01-20 17:30:40 +00:00
Nikolaj Bjorner
f3d6856736 remove msf example, add option to make model converter not reduce models
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-19 20:24:31 -08:00
Nikolaj Bjorner
d11e5c8ca6 address compiler warnings, and user question #6544 2023-01-19 19:02:43 -08:00
Nikolaj Bjorner
523a3f34b0 change to manylinux2014 in setup.py
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-19 17:27:07 -08:00
Jakob Rath
c6cd35508b fix 2023-01-19 19:09:46 +01:00
Jakob Rath
2056d392ba Detect gap in has_max_forbidden 2023-01-19 13:48:06 +01:00
Jakob Rath
d1ef8029a9 simpler condition 2023-01-19 13:43:50 +01:00
Jakob Rath
f9f61249e1 debug output 2023-01-19 13:42:33 +01:00
Jakob Rath
a7ad1f0bfb fix build 2023-01-18 19:29:22 +01:00
Jakob Rath
85a8d8b005 debug output 2023-01-18 18:46:40 +01:00
Jakob Rath
905144cdbb assert 2023-01-18 18:43:41 +01:00
Jakob Rath
8385452d91 simplify interval 2023-01-18 18:40:48 +01:00
Jakob Rath
c62ba26cf4 simplify 2023-01-18 18:38:44 +01:00
Jakob Rath
3e42dbe591 Fix assertions 2023-01-18 18:30:25 +01:00
Jakob Rath
b23c1b4016 Update viable tests 2023-01-18 18:23:47 +01:00
Nikolaj Bjorner
9290de8223 make euf-egraph resilient to when there are no consumers to literal propagation.
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-18 07:57:19 -08:00
Nikolaj Bjorner
7368f9f7d3 increase build version, better propagation in euf-egraph, handle assumptions in sat.smt
- increase build version to 4.12.1. This prepares updated release for MacOs-11 build on x86
- move literal propagation mode in euf-egraph to a callback and traversal of equivalence class. Track antecedent by newest equality instead of root. This makes equality propagation to literals have similar behavior as in legacy solver and appears to result in a speedup (10% fewer conflicts on QF_UF/QG-classification/qg5/iso_icl478.smt2 in preliminary testing)
- fix interaction of pre-processing and assumptions. Pre-processing has to freeze assumption literals so they don't get eliminated. This is similar to dependencies that are already frozen.
2023-01-17 14:07:07 -08:00
Jakob Rath
c954e82503 assertion should hold now after recent fix 2023-01-16 16:51:16 +01:00
Jakob Rath
015fcb457c avoid warnings 2023-01-16 16:50:36 +01:00
Jakob Rath
b6f8538d20 Update parity lemmas
p != 0  ==>  odd(r)
... added premise p != 0

parity(p) < k    ==>  r <= 2^(N - k) - 1
... do this also in the other branch
    (otherwise we hit the UNREACHABLE in bench3)
2023-01-16 16:46:12 +01:00
Jakob Rath
26e7d0d35a We need to use expr_ref when storing expressions across add calls
Without this, bench3 created a constraint 2^parity == x * parity which
should have been 2^parity == x * x_inv.
2023-01-16 15:41:04 +01:00
Nikolaj Bjorner
dde5218b29 fix mbqi value caching issue raised by Clemens and Martin 2023-01-15 22:47:34 -05:00
Nikolaj Bjorner
d5fde2e578 #6538
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-15 15:58:29 -05:00
Clemens Eisenhofer
b33911de13 Added missing minimality lemma for pseudo_inverse 2023-01-15 12:11:15 +01:00
Nikolaj Bjorner
4f7f4376b8 fix bug in new core not detecting conflict, fix #6525, add tactic doc
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-14 17:20:43 -05:00
Nikolaj Bjorner
f1805138e7 missing code signing
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-13 16:13:20 -08:00
Nikolaj Bjorner
60fef928cc missing code signing
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-13 16:12:48 -08:00
Jakob Rath
caf624589e Accelerate interval widening in refine_equal_lin 2023-01-13 15:41:28 +01:00
Nikolaj Bjorner
d289434b65 fix #6535 2023-01-12 19:06:30 -08:00
Nikolaj Bjorner
25b0b1430c move bound_manager to simplifiers, add bound manager to extract_eqs for solve-eqs #6532 2023-01-12 12:42:28 -08:00
Jerry James
e5e16268cc
Initialize m_istamp_id in lookahead::init (#6533) 2023-01-12 11:20:28 -08:00
Jakob Rath
057e115bbc Update op_constraint simplifications 2023-01-12 13:31:16 +01:00
Jakob Rath
0a2c69332d disable try_add_overflow_bound, add note on possible rewrite 2023-01-11 13:39:41 +01:00
Jakob Rath
fa036ae486 track clause name for debugging 2023-01-11 10:50:14 +01:00
Jakob Rath
1d349fb0e6 compile 2023-01-11 10:50:14 +01:00
Clemens Eisenhofer
7aeabe39a3 Removed remaining debug output 2023-01-11 10:32:38 +01:00
Clemens Eisenhofer
2581754c3e Forward propagation for op_constraints + optimization for left/right shift 2023-01-11 10:29:26 +01:00
Nikolaj Bjorner
8970a54eaa expose parameters to control behavior for #5660 2023-01-10 22:06:19 -08:00