mirror of
https://github.com/Z3Prover/z3
synced 2025-04-29 20:05:51 +00:00
updates to printer to get instantiations, take 1
This commit is contained in:
parent
f0eee41ab9
commit
a628e4c4e5
10 changed files with 82 additions and 27 deletions
|
@ -24,6 +24,7 @@ Author:
|
|||
#include "sat/smt/euf_solver.h"
|
||||
#include "sat/smt/sat_th.h"
|
||||
#include "qe/lite/qe_lite.h"
|
||||
#include <iostream>
|
||||
|
||||
|
||||
namespace q {
|
||||
|
@ -356,7 +357,22 @@ namespace q {
|
|||
m_ematch.get_antecedents(l, idx, r, probing);
|
||||
}
|
||||
|
||||
void solver::log_instantiation(unsigned n, sat::literal const* lits) {
|
||||
void solver::log_instantiation(unsigned n, sat::literal const* lits, justification* j) {
|
||||
TRACE("q", for (unsigned i = 0; i < n; ++i) tout << literal2expr(lits[i]) << "\n";);
|
||||
if (get_config().m_instantiations2console) {
|
||||
|
||||
ctx.visit_clause(n, lits);
|
||||
if (j) {
|
||||
for (unsigned i = 0; i < j->m_clause.num_decls(); ++i)
|
||||
ctx.visit_expr(j->m_binding[i]->get_expr());
|
||||
std::cout << "; (instantiation";
|
||||
for (unsigned i = 0; i < j->m_clause.num_decls(); ++i) {
|
||||
std::cout << " ";
|
||||
ctx.display_expr(j->m_binding[i]->get_expr());
|
||||
}
|
||||
std::cout << ")\n";
|
||||
}
|
||||
ctx.display_clause(n, lits);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue