mirror of
https://github.com/Z3Prover/z3
synced 2025-04-23 09:05:31 +00:00
add option to bypass compression of unbound tails, issue #738
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
7a3308110c
commit
7f29674842
6 changed files with 10 additions and 0 deletions
|
@ -303,6 +303,7 @@ namespace datalog {
|
|||
bool context::karr() const { return m_params->xform_karr(); }
|
||||
bool context::scale() const { return m_params->xform_scale(); }
|
||||
bool context::magic() const { return m_params->xform_magic(); }
|
||||
bool context::compress_unbound() const { return m_params->xform_compress_unbound(); }
|
||||
bool context::quantify_arrays() const { return m_params->xform_quantify_arrays(); }
|
||||
bool context::instantiate_quantifiers() const { return m_params->xform_instantiate_quantifiers(); }
|
||||
|
||||
|
|
|
@ -272,6 +272,7 @@ namespace datalog {
|
|||
bool karr() const;
|
||||
bool scale() const;
|
||||
bool magic() const;
|
||||
bool compress_unbound() const;
|
||||
bool quantify_arrays() const;
|
||||
bool instantiate_quantifiers() const;
|
||||
bool xform_bit_blast() const;
|
||||
|
|
|
@ -131,6 +131,7 @@ def_module_params('fixedpoint',
|
|||
('xform.inline_eager', BOOL, True, "try eager inlining of rules"),
|
||||
('xform.inline_linear_branch', BOOL, False,
|
||||
"try linear inlining method with potential expansion"),
|
||||
('xform.compress_unbound', BOOL, True, "compress tails with unbound variables"),
|
||||
('xform.fix_unbound_vars', BOOL, False, "fix unbound variables in tail"),
|
||||
('xform.unfold_rules', UINT, 0,
|
||||
"unfold rules statically using iterative squarring"),
|
||||
|
|
|
@ -344,6 +344,11 @@ namespace datalog {
|
|||
|
||||
rule_set * mk_unbound_compressor::operator()(rule_set const & source) {
|
||||
// TODO mc
|
||||
|
||||
if (!m_context.compress_unbound()) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
m_modified = false;
|
||||
|
||||
SASSERT(m_rules.empty());
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue