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

18880 commits

Author SHA1 Message Date
Jakob Rath
b6ea9e31e5 output 2023-01-09 17:20:40 +01:00
Jakob Rath
181995a4fb extend invariant check 2023-01-09 17:16:56 +01:00
Jakob Rath
c55d316c6a Rename to get_assignment to prevent clash with class name 2023-01-09 17:15:40 +01:00
Jakob Rath
3f5e6a4bfa bugfix: don't intersect forbidden intervals if variable is already assigned 2023-01-09 17:10:18 +01:00
Clemens Eisenhofer
aafd9039db Bugfix 2023-01-09 14:14:19 +01:00
dependabot[bot]
a4f2a1bb2e
Bump json5 from 2.2.1 to 2.2.3 in /src/api/js (#6527)
Bumps [json5](https://github.com/json5/json5) from 2.2.1 to 2.2.3.
- [Release notes](https://github.com/json5/json5/releases)
- [Changelog](https://github.com/json5/json5/blob/main/CHANGELOG.md)
- [Commits](https://github.com/json5/json5/compare/v2.2.1...v2.2.3)

---
updated-dependencies:
- dependency-name: json5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-09 09:16:55 +00:00
Nikolaj Bjorner
49ee570b09 split into separate function
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-08 19:16:46 -08:00
Nuno Lopes
5899fe3cea
Add rewrite for array selects of chain of stores of a same value (#6526)
* Add rewrite for array selects of chain of stores of a same value

Example:
```smt
(declare-fun mem () (Array (_ BitVec 4) (_ BitVec 4)))
(declare-const x (_ BitVec 4))
(declare-const y (_ BitVec 4))
; simplifies to #x1
(simplify (select (store (store (store mem #x1 #x1) y #x1) x #x1) #x1))
```

* Update array_rewriter.cpp

* Update array_rewriter.cpp
2023-01-08 19:09:01 -08:00
Nikolaj Bjorner
1ddef117a2 several fixes to proof logging in legacy solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-08 16:11:31 -08:00
Nikolaj Bjorner
61b90e64b2 disable new simplifcation for multiplier until really understood
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-08 14:17:49 -08:00
Nikolaj Bjorner
fcea32344e add missing tactic descriptions, add rewrite for tamagochi
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-08 13:32:26 -08:00
Nikolaj Bjorner
95cb06d8cf add quasi macro detection 2023-01-06 19:53:55 -08:00
Nikolaj Bjorner
991acb0d72 add diagnostics for assertion violations
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-06 13:29:24 -08:00
Nikolaj Bjorner
25112e47b4 bugfix to flatten-clases simplifier
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-05 20:59:28 -08:00
Nikolaj Bjorner
c07b6ab38f more tactic descriptions 2023-01-05 20:23:01 -08:00
Clemens Eisenhofer
b1239d5276 Missing file 2023-01-05 18:05:08 +01:00
Clemens Eisenhofer
0c1c9c64eb Merge branch 'polysat' of https://github.com/Z3Prover/z3 into polysat 2023-01-05 18:03:43 +01:00
Clemens Eisenhofer
4a6053b289 Missing univariate for pseudo-inverse 2023-01-05 18:02:21 +01:00
Jakob Rath
1002538565 insert_eval? 2023-01-05 17:41:08 +01:00
Jakob Rath
aeb6138c25 No result if there is no other interval 2023-01-05 17:21:25 +01:00
Jakob Rath
a406e01fb8 e0 instead of first? 2023-01-05 16:44:45 +01:00
Jakob Rath
6f18335604 need y0 value 2023-01-05 16:43:23 +01:00
Jakob Rath
ffa12eb37c flip args to match description 2023-01-05 16:43:01 +01:00
Jakob Rath
55a50ea461 ule rewrites 2023-01-05 14:41:21 +01:00
Nikolaj Bjorner
0d8a472aac pass sign into literal definition for pbge 2023-01-04 16:55:44 -08:00
Nikolaj Bjorner
81ce57b5a8 #6429 2023-01-04 15:38:13 -08:00
Nikolaj Bjorner
e0099150ca #6429 2023-01-04 15:28:57 -08:00
Nikolaj Bjorner
380c701cbe restore debug clang/gcc build 2023-01-04 15:01:40 -08:00
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