mirror of
https://github.com/Z3Prover/z3
synced 2025-04-29 20:05:51 +00:00
redo bindings/fingerprints
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
281fb67d88
commit
33f4e65fa9
6 changed files with 145 additions and 180 deletions
|
@ -23,7 +23,6 @@ Author:
|
|||
#include "sat/smt/sat_th.h"
|
||||
#include "sat/smt/q_mam.h"
|
||||
#include "sat/smt/q_clause.h"
|
||||
#include "sat/smt/q_fingerprint.h"
|
||||
#include "sat/smt/q_queue.h"
|
||||
#include "sat/smt/q_eval.h"
|
||||
|
||||
|
@ -69,7 +68,7 @@ namespace q {
|
|||
ast_manager& m;
|
||||
eval m_eval;
|
||||
quantifier_stat_gen m_qstat_gen;
|
||||
fingerprints m_fingerprints;
|
||||
bindings m_bindings;
|
||||
scoped_ptr<binding> m_tmp_binding;
|
||||
unsigned m_tmp_binding_capacity = 0;
|
||||
queue m_inst_queue;
|
||||
|
@ -90,16 +89,16 @@ namespace q {
|
|||
unsigned_vector m_clause_queue;
|
||||
euf::enode_pair_vector m_evidence;
|
||||
|
||||
euf::enode* const* alloc_binding(clause& c, euf::enode* const* _binding);
|
||||
binding* alloc_binding(clause& c, app* pat, euf::enode* const* _bidning, unsigned max_generation, unsigned min_top, unsigned max_top);
|
||||
void add_binding(clause& c, app* pat, euf::enode* const* _binding, unsigned max_generation, unsigned min_top, unsigned max_top);
|
||||
euf::enode* const* alloc_nodes(clause& c, euf::enode* const* _binding);
|
||||
binding* tmp_binding(clause& c, app* pat, euf::enode* const* _binding);
|
||||
binding* alloc_binding(clause& c, app* pat, euf::enode* const* _binding, unsigned max_generation, unsigned min_top, unsigned max_top);
|
||||
|
||||
sat::ext_justification_idx mk_justification(unsigned idx, clause& c, euf::enode* const* b);
|
||||
|
||||
void ensure_ground_enodes(expr* e);
|
||||
void ensure_ground_enodes(clause const& c);
|
||||
|
||||
void instantiate(binding& b, clause& c);
|
||||
void instantiate(binding& b);
|
||||
sat::literal instantiate(clause& c, euf::enode* const* binding, lit const& l);
|
||||
|
||||
// register as callback into egraph.
|
||||
|
@ -115,9 +114,6 @@ namespace q {
|
|||
clause* clausify(quantifier* q);
|
||||
lit clausify_literal(expr* arg);
|
||||
|
||||
fingerprint* add_fingerprint(clause& c, binding& b, unsigned max_generation);
|
||||
void set_tmp_binding(fingerprint& fp);
|
||||
|
||||
bool flush_prop_queue();
|
||||
void propagate(bool is_conflict, unsigned idx, sat::ext_justification_idx j_idx);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue