3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-24 01:25:31 +00:00

factor out relation context for datalog

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2012-12-03 15:05:43 -08:00
parent 8425685ea3
commit 67183ea08a
24 changed files with 799 additions and 569 deletions

View file

@ -86,7 +86,7 @@ static void display_statistics(
out << "--------------\n";
out << "instructions \n";
code.display(ctx, out);
code.display(ctx.get_rel_context(), out);
out << "--------------\n";
out << "big relations \n";
@ -94,7 +94,7 @@ static void display_statistics(
}
out << "--------------\n";
out << "relation sizes\n";
ctx.get_rmanager().display_relation_sizes(out);
ctx.get_rel_context().get_rmanager().display_relation_sizes(out);
if (verbose) {
out << "--------------\n";
@ -139,7 +139,7 @@ unsigned read_datalog(char const * file) {
params.set_bool("default_table_checked", dl_params.m_default_table_checked);
datalog::context ctx(m, s_params, params);
datalog::relation_manager & rmgr = ctx.get_rmanager();
datalog::relation_manager & rmgr = ctx.get_rel_context().get_rmanager();
datalog::relation_plugin & inner_plg = *rmgr.get_relation_plugin(symbol("tr_hashtable"));
SASSERT(&inner_plg);
rmgr.register_plugin(alloc(datalog::finite_product_relation_plugin, inner_plg, rmgr));
@ -206,7 +206,7 @@ unsigned read_datalog(char const * file) {
datalog::compiler::compile(ctx, ctx.get_rules(), rules_code, termination_code);
TRACE("dl_compiler", rules_code.display(ctx, tout););
TRACE("dl_compiler", rules_code.display(ctx.get_rel_context(), tout););
rules_code.make_annotations(ex_ctx);
@ -248,10 +248,10 @@ unsigned read_datalog(char const * file) {
TRACE("dl_compiler", ctx.display(tout);
rules_code.display(ctx, tout););
rules_code.display(ctx.get_rel_context(), tout););
if (ctx.get_params().output_tuples()) {
ctx.display_output_facts(std::cout);
ctx.get_rel_context().display_output_facts(std::cout);
}
display_statistics(