3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-15 05:18:44 +00:00
z3/src/muz
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
..
base fix #6467 2022-12-13 19:35:20 -08:00
bmc call it data instead of c_ptr for approaching C++11 std::vector convention. 2021-04-13 18:17:35 -07:00
clp call it data instead of c_ptr for approaching C++11 std::vector convention. 2021-04-13 18:17:35 -07:00
dataflow booyah 2020-07-04 15:56:30 -07:00
ddnf Move tbv to util 2022-08-01 18:37:11 +03:00
fp fix #6446 2022-11-08 18:37:16 -08:00
rel remove debug out 2022-12-13 19:36:55 -08:00
spacer experimental feature to access congruence closure of SimpleSolver 2022-12-30 21:41:27 -08:00
tab separate dependencies for qe_lite 2022-01-12 03:26:22 -08:00
transforms move more converters 2022-11-03 20:18:21 -07:00
README Setting up the lackr branch. 2015-12-16 20:10:14 +00:00

muZ: routines related to solving satisfiability of Horn clauses and 
solving Datalog programs.

- base - contains base routines and the main context for
         maintaining fixedpoint solvers
- transforms - common rule transformations
- rel - relational algebra based Datalog engine
- pdr - PDR based Horn clause solver
- clp - Dart/Symbolic execution-based solver
- tab - Tabulation based solver
- bmc - Bounded model checking based solver
- fp  - main exported routines