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

record statistics setting in config_params so that fp engine can access them, fix serialization bug when check-assumptions returns unsat

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2018-08-06 16:21:27 -07:00
parent 24b6ff90cd
commit 84c7df75d6
9 changed files with 36 additions and 13 deletions

View file

@ -64,7 +64,7 @@ expr_ref bind_variables::abstract(expr* term, cache_t& cache, unsigned scope) {
}
switch(e->get_kind()) {
case AST_VAR: {
SASSERT(to_var(e)->get_idx() < scope);
// SASSERT(to_var(e)->get_idx() >= scope);
// mixing bound variables and free is possible for the caller,
// but not proper use.
// So we assert here even though we don't check for it.

View file

@ -83,9 +83,9 @@ def_module_params('fp',
('print_boogie_certificate', BOOL, False,
'print certificate for reachability or non-reachability using a ' +
'format understood by Boogie'),
('print_statistics', BOOL, False, 'print statistics'),
('print_aig', SYMBOL, '',
'Dump clauses in AIG text format (AAG) to the given file name'),
('print_statistics', BOOL, False, 'print statistics'),
('tab.selection', SYMBOL, 'weight',
'selection method for tabular strategy: weight (default), first, var-use'),
('xform.bit_blast', BOOL, False,

View file

@ -355,7 +355,7 @@ private:
}
void print_statistics(cmd_context& ctx) {
if (m_dl_ctx->get_params().print_statistics()) {
if (ctx.params().m_statistics) {
statistics st;
datalog::context& dlctx = m_dl_ctx->dlctx();
dlctx.collect_statistics(st);

View file

@ -2683,7 +2683,7 @@ lbool context::solve(unsigned from_lvl)
if (m_last_result == l_true) {
m_stats.m_cex_depth = get_cex_depth ();
}
if (m_params.print_statistics ()) {
statistics st;
collect_statistics (st);
@ -3063,13 +3063,13 @@ lbool context::solve_core (unsigned from_lvl)
IF_VERBOSE(1,verbose_stream() << "Entering level "<< lvl << "\n";);
STRACE("spacer_progress", tout << "\n* LEVEL " << lvl << "\n";);
IF_VERBOSE(1,
if (m_params.print_statistics ()) {
statistics st;
collect_statistics (st);
};
);
}
// communicate failure to datalog::context
if (m_context) { m_context->set_status(datalog::BOUNDED); }