mirror of
https://github.com/Z3Prover/z3
synced 2025-04-29 11:55:51 +00:00
limit the size of expressions in Grobner
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
This commit is contained in:
parent
7ddcfcafad
commit
26956cafb0
3 changed files with 29 additions and 20 deletions
|
@ -89,15 +89,15 @@ private:
|
|||
bool m_changed_leading_term;
|
||||
equation_set m_all_eqs;
|
||||
unsigned m_grobner_eqs_threshold;
|
||||
unsigned m_superposed_exp_size_limit;
|
||||
unsigned m_expr_size_limit;
|
||||
public:
|
||||
grobner_core(nex_creator& nc, reslimit& lim, unsigned eqs_threshold, unsigned superposed_expr_size_limit) :
|
||||
grobner_core(nex_creator& nc, reslimit& lim, unsigned eqs_threshold, unsigned expr_size_limit) :
|
||||
m_nex_creator(nc),
|
||||
m_limit(lim),
|
||||
m_dep_manager(m_val_manager, m_alloc),
|
||||
m_changed_leading_term(false),
|
||||
m_grobner_eqs_threshold(eqs_threshold),
|
||||
m_superposed_exp_size_limit(superposed_expr_size_limit)
|
||||
m_expr_size_limit(expr_size_limit)
|
||||
{}
|
||||
|
||||
~grobner_core();
|
||||
|
@ -159,7 +159,9 @@ private:
|
|||
|
||||
std::ostream& print_stats(std::ostream&) const;
|
||||
std::ostream& display_dependency(std::ostream& out, common::ci_dependency*) const;
|
||||
|
||||
bool equation_is_too_complex(const equation* eq) const {
|
||||
return eq->expr()->size() > m_expr_size_limit;
|
||||
}
|
||||
#ifdef Z3DEBUG
|
||||
bool test_find_b_c(const nex* ab, const nex* ac, const nex_mul* b, const nex_mul* c);
|
||||
bool test_find_b(const nex* ab, const nex_mul* b);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue