3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-23 17:15:31 +00:00
Commit graph

18852 commits

Author SHA1 Message Date
Nikolaj Bjorner
21362c0b98 make case-def and recfun-num-rounds re-parsable for logging 2023-01-04 15:00:25 -08:00
Nikolaj Bjorner
ef10119005 #6429 fixes 2023-01-04 13:05:45 -08:00
Nikolaj Bjorner
aa080a6b19 update ignore-int handling #6429
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-04 12:22:38 -08:00
Nikolaj Bjorner
8d0d6d8f04 Merge branch 'master' of https://github.com/z3prover/z3 2023-01-04 11:56:38 -08:00
Nikolaj Bjorner
6f95c77023 fix bugs in flatten_clauses simplifier, switch proof/fml
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-04 11:56:28 -08:00
Jakob Rath
0daf444cec Actually revert boolean decisions 2023-01-04 17:20:34 +01:00
Nikolaj Bjorner
db1be0f247 unit test for bench 13 scenario
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-03 12:23:14 -08:00
Clemens Eisenhofer
075b548089 Merge branch 'polysat' of https://github.com/Z3Prover/z3 into polysat 2023-01-03 17:48:21 +01:00
Clemens Eisenhofer
79e7380ffc Pseudo-inverse op_constraint 2023-01-03 17:47:54 +01:00
Jakob Rath
283e60a5cb compile 2023-01-03 14:55:50 +01:00
Nuno Lopes
e448191212 array rewriter: expand select of store with const array into an ite
This:
(simplify (select (store ((as const (Array (_ BitVec 4) (_ BitVec 4))) #x0) x #x1) y))
=>
(ite (= x y) #x1 #x0)
2023-01-03 11:08:57 +00:00
Nuno Lopes
e508ef17f6 fix Alive bug #875: bit blaster not respecting soft memory limit 2023-01-03 10:39:28 +00:00
Nuno Lopes
a2cc504d4a remove a couple more std::endl 2023-01-03 09:49:58 +00:00
Nuno Lopes
d30cb55bae don't flush stream when printing param vals 2023-01-03 09:35:17 +00:00
Nikolaj Bjorner
84a5ec221f diagnostics
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-02 18:11:00 -08:00
Nikolaj Bjorner
824c10711c testing inference based on complementary bounds
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-02 17:30:08 -08:00
Nikolaj Bjorner
d4490738bc Merge branch 'master' of https://github.com/z3prover/z3 2023-01-02 16:49:43 -08:00
Nikolaj Bjorner
ea0d09b6c8 add pointer to build parameters to README #6518
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-02 16:49:31 -08:00
Nikolaj Bjorner
56bda59de9 bugfix in parity code, add try_infer_parity_equality per status notes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-02 15:01:05 -08:00
Clemens Eisenhofer
0301686856 Variant of variable elimination 2023-01-02 20:05:13 +01:00
Walden Yan
dbf93c5fbd
Fixing array select for lambda expressions in Python API (#6516)
* fix: making array select work for lambda expressions

* more elegant solution
2023-01-01 15:27:54 -08:00
Nikolaj Bjorner
f6d411d54b experimental feature to access congruence closure of SimpleSolver
This update includes an experimental feature to access a congruence closure data-structure after search.
It comes with several caveats as pre-processing is free to eliminate terms. It is therefore necessary to use a solver that does not eliminate the terms you want to track for congruence of. This is partially addressed by using SimpleSolver or incremental mode solving.

```python
from z3 import *
s = SimpleSolver()
x, y, z = Ints('x y z')
s.add(x == y)
s.add(y == z)
s.check()
print(s.root(x), s.root(y), s.root(z))
print(s.next(x), s.next(y), s.next(z))
```
2022-12-30 21:41:27 -08:00
Nikolaj Bjorner
c0f1f33898 dampen second setup of theory_bv 2022-12-30 18:47:32 -08:00
Nikolaj Bjorner
5f6f2fc758 rename bit_blaster class to bit_blaster_simplifier to avoid name clash 2022-12-30 18:39:02 -08:00
Nikolaj Bjorner
0d05e0649b initialization order
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-30 18:16:24 -08:00
Nikolaj Bjorner
2c3ecceb03 fix build
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-30 15:47:24 -08:00
nikswamy
8002a51b82
tiny fix to qprofdiff (#6497) 2022-12-30 15:25:01 -08:00
Nikolaj Bjorner
293627c889 fix #6513
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-30 09:55:33 -08:00
Nikolaj Bjorner
07ab4d38b6 fix #6513
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-30 09:55:10 -08:00
Nikolaj Bjorner
1c7ac12af8 wip
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-29 20:07:14 -08:00
Nikolaj Bjorner
f8a3e428ff wip
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-29 19:30:14 -08:00
Nikolaj Bjorner
96341d7f0a wip try_add_mul_bound2
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-29 18:31:39 -08:00
Nikolaj Bjorner
ed76da1458 Merge branch 'polysat' of https://github.com/z3prover/z3 into polysat 2022-12-29 16:55:56 -08:00
Nikolaj Bjorner
10589d59ba wip based on notes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-29 16:55:46 -08:00
Clemens Eisenhofer
6f78c33558 Generalized variable elimination 2022-12-29 22:36:04 +01:00
Nuno Lopes
47324af210 be nicer when memout is reached in SMT internalize: return undef rather than crashing 2022-12-29 11:08:57 +00:00
Nikolaj Bjorner
ab9a9d2308 wip - more general ranges for add_mul_bound
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-28 14:09:51 -08:00
Clemens Eisenhofer
658877365c Moved "easy part" of variable elimination to saturation.cpp 2022-12-28 15:07:03 +01:00
Nikolaj Bjorner
b4f5225ab3 outline
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-27 21:40:31 -08:00
Nikolaj Bjorner
6f8b3a997e add max forbidden based on constant intervals
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-27 20:49:17 -08:00
Nikolaj Bjorner
45e772b223 Merge branch 'polysat' of https://github.com/z3prover/z3 into polysat 2022-12-27 20:20:59 -08:00
Nikolaj Bjorner
b52379fe88 update
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-27 20:20:51 -08:00
Nikolaj Bjorner
7cc58c9cc3 Merge branch 'master' of https://github.com/z3prover/z3 2022-12-27 20:19:39 -08:00
Nikolaj Bjorner
ec74a87423 fix #6510
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-27 20:19:26 -08:00
Nikolaj Bjorner
3e8cbb6611 #5884
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-27 18:07:57 -08:00
Nikolaj Bjorner
abef260d67 Merge branch 'master' of https://github.com/z3prover/z3 2022-12-27 12:03:49 -08:00
Nikolaj Bjorner
bc19992543 add doc for ackermannize
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-27 12:02:08 -08:00
Clemens Eisenhofer
28e9014401 Merge branch 'polysat' of https://github.com/Z3Prover/z3 into polysat 2022-12-27 08:48:04 +01:00
Clemens Eisenhofer
4b8577eaa2 Reverted unintended changes 2022-12-27 08:47:27 +01:00
Clemens Eisenhofer
39a4bb025b Propagate assignment if all bits are assigned and use better justification if any found 2022-12-27 08:44:55 +01:00