mirror of
https://github.com/Z3Prover/z3
synced 2025-08-20 18:20:22 +00:00
bv and gc of literals (#4692)
* bv and gc of literals Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com> * overload Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com> * diseq Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com> * diseq Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
2d52367368
commit
549753845e
34 changed files with 1480 additions and 854 deletions
|
@ -38,6 +38,12 @@ Notes:
|
|||
Redundant clause (theory lemma if theory id is given)
|
||||
[r [<theory-id>]] <literal>* 0
|
||||
|
||||
Declaration of an auxiliary function:
|
||||
f <smtlib2-function-declaration> 0
|
||||
|
||||
Garbage collection of a Boolean variable:
|
||||
g <bool-var-id> 0
|
||||
|
||||
Available theories are:
|
||||
- euf The theory lemma should be a consequence of congruence closure.
|
||||
- ba TBD (need to also log cardinality and pb constraints)
|
||||
|
@ -125,6 +131,8 @@ namespace sat {
|
|||
void add(literal_vector const& c); // add learned clause
|
||||
void add(unsigned sz, literal const* lits, status st);
|
||||
|
||||
void gc_var(bool_var v);
|
||||
|
||||
// support for SMT - connect Boolean variables with AST nodes
|
||||
// associate AST node id with Boolean variable v
|
||||
void bool_def(bool_var v, unsigned n);
|
||||
|
@ -134,6 +142,8 @@ namespace sat {
|
|||
void def_add_arg(unsigned arg);
|
||||
void def_end();
|
||||
|
||||
void log_gc_var(bool_var v);
|
||||
|
||||
// ad-hoc logging until a format is developed
|
||||
void log_adhoc(std::function<void(std::ostream&)>& fn);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue