Nikolaj Bjorner
4598af70c8
fix #6488
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-12 11:04:46 -08:00
Nikolaj Bjorner
a3e6885680
fix #6488
2022-12-12 09:50:44 -08:00
Nikolaj Bjorner
039de6a2c8
build issues
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-11 15:05:13 -08:00
Nuno Lopes
cb8603177e
fix build
2022-12-11 22:17:11 +00:00
Nuno Lopes
d308b8f555
simplify code + remove unused file
2022-12-11 22:11:19 +00:00
Nikolaj Bjorner
6b60a3dbed
fix syntax
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-11 14:06:08 -08:00
Nikolaj Bjorner
2520dcb04b
merge
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-11 14:03:22 -08:00
Nuno Lopes
2d43ccc4c6
Revert "fix crashes in elim-uncnstr2"
...
This reverts commit a302c2f15e
.
2022-12-11 21:37:25 +00:00
Nikolaj Bjorner
6a1b3f7344
move debug output to before state update
2022-12-11 12:51:46 -08:00
Nikolaj Bjorner
f7269bb60a
update doc
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-11 10:16:17 -08:00
Nikolaj Bjorner
a9f52b0069
doc fixes
2022-12-11 10:04:01 -08:00
Nikolaj Bjorner
527fb18366
add doc for card2bv
2022-12-11 09:51:49 -08:00
Nuno Lopes
a302c2f15e
fix crashes in elim-uncnstr2
...
This would crash before:
(declare-fun x () (_ BitVec 4))
(assert (not (bvule x #x1)))
(apply elim-uncnstr2)
That's because the index_set iterator was querying qtail to compute the end of the iteration
But the problem is that elim-uncnstr2 may add new fmls to the goal, as in this case.
The bvule is replaced with an 'or', but since it's negated, it turns into 2 goals
Solve the issue by freezing the qtail for the iteration loop.
This is the right behavior for elim-uncnstr2, as it can't rewrite exprs that haven't been analyzed before
@NikolajBjorner please check if this the right behavior for the other simplifiers. Thank you
2022-12-11 15:21:23 +00:00
Nikolaj Bjorner
ee307dd84f
Merge branch 'master' of https://github.com/z3prover/z3
2022-12-09 08:50:46 -08:00
Nikolaj Bjorner
1434c7d394
#6059
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-09 08:50:32 -08:00
Nuno Lopes
9ebacd87e2
fix buggy mask (typo in my last commit..)
2022-12-09 16:16:52 +00:00
Nikolaj Bjorner
96a2c04026
fix bug reported by Nuno
...
qhead should not be changed after tactic execution. It should remain 0 so the same tactic can be applied repeatedly on the entire state
2022-12-09 07:57:06 -08:00
Nuno Lopes
a96f5a9b42
fix overflow in mpz::bitwise_not
2022-12-09 11:59:39 +00:00
Nuno Lopes
c6f9c09d70
cleanup more in dependent_expr_state_tactic to reduce mem consumption
2022-12-09 11:34:53 +00:00
Nuno Lopes
ca6fed8b25
minor code simplification
2022-12-08 18:20:46 +00:00
Nikolaj Bjorner
8981d32caf
#6481
2022-12-08 07:06:27 -08:00
Nikolaj Bjorner
4a451b10d8
add custom coercion for floats. fix #6482
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-07 09:07:13 -08:00
Nikolaj Bjorner
c45c40e782
doc
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-07 08:51:18 -08:00
Nikolaj Bjorner
7e69dab8f6
distribute forall cpp code
2022-12-06 18:15:18 -08:00
Nikolaj Bjorner
c33e58ee1a
update distribute forall
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-06 17:59:33 -08:00
Nikolaj Bjorner
80033e8744
cave in to supporting proofs (partially) in simplifiers, updated doc
2022-12-06 17:02:04 -08:00
Nikolaj Bjorner
aaabbfb594
remove comment that does not align with result
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-06 15:53:55 -08:00
Nikolaj Bjorner
d125d87aed
typo
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-06 15:51:42 -08:00
Nikolaj Bjorner
1e06c7414a
add doc
2022-12-06 15:44:21 -08:00
Nikolaj Bjorner
7df4e04a2c
add der description
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-06 05:46:52 -08:00
Nikolaj Bjorner
90ba225ae3
add more doc
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-06 05:39:05 -08:00
Nikolaj Bjorner
5a5758baaa
add documentation to initial selection of tactics
2022-12-05 20:05:06 -08:00
Nikolaj Bjorner
f1a65d9642
add documentation notes
2022-12-05 20:05:06 -08:00
Nuno Lopes
a2f5a5b50b
remove memory alloc from statistics_report
2022-12-05 14:29:14 +00:00
Nuno Lopes
eb8c53c164
simplify factory of dependent_expr_state_tactic
...
And as a side-effect, remove heap allocations for factories
2022-12-05 14:07:57 +00:00
Nikolaj Bjorner
de916f50d6
add demodulator tactic based on demodulator-simplifier
...
- some handling for commutative operators
- fix bug in demodulator_index where fwd and bwd are swapped
2022-12-05 03:20:46 -08:00
Nikolaj Bjorner
87095950cb
fix #6477
2022-12-04 13:02:45 -08:00
Nikolaj Bjorner
ead2a46a88
build
2022-12-04 10:38:24 -08:00
Nikolaj Bjorner
b76ed6a47f
proper fix to #6476
2022-12-04 10:19:39 -08:00
Nikolaj Bjorner
9b58135876
try to fix linux builds
2022-12-04 09:55:31 -08:00
Nikolaj Bjorner
0f7bebcbed
try big M for linux build
2022-12-04 09:49:32 -08:00
Nikolaj Bjorner
1974c224ab
add demodulator simplifier
...
refactor demodulator-rewriter a bit to separate reusable features.
2022-12-04 09:39:28 -08:00
Nikolaj Bjorner
9acbfa3923
move it into substitution to handle dependencies
2022-12-04 06:23:32 -08:00
Nikolaj Bjorner
3d7bd40a87
a round of cleanup
2022-12-04 06:07:45 -08:00
Nikolaj Bjorner
d218083145
The demodulator doesn't produce proofs so remove code path that depends it does.
2022-12-04 04:48:48 -08:00
Nikolaj Bjorner
7fe6787748
ufbv-rewriter is really a demodulator rewriter and does not reference ufbv
...
so moving first the rewriter into place of other rewriters
2022-12-04 04:44:02 -08:00
Nikolaj Bjorner
e455897178
fix #6476
2022-12-04 04:36:06 -08:00
Nikolaj Bjorner
79e6d4e32d
tune and debug elim-unconstrained (v2 - for simplifiers infrastructure)
2022-12-04 03:53:31 -08:00
Nikolaj Bjorner
59fa8964ca
minor code cleanup
2022-12-04 03:53:31 -08:00
Nikolaj Bjorner
3ebbb8472a
fix perf bugs in new value propagation
2022-12-04 03:53:30 -08:00