mirror of
https://github.com/Z3Prover/z3
synced 2026-07-01 21:08:55 +00:00
tuning simplification processing
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
583775129f
commit
ee67a94a9c
4 changed files with 293 additions and 50 deletions
|
|
@ -73,7 +73,7 @@ namespace seq {
|
|||
unsigned m_simp_depth { 0 };
|
||||
static const unsigned m_max_simp_depth = 8;
|
||||
|
||||
// Intersection ITE hoisting depth limit
|
||||
// ITE combine depth limit (bounds exponential blowup in BDD merge)
|
||||
unsigned m_inter_hoist_depth { 0 };
|
||||
static const unsigned m_max_inter_hoist_depth = 4;
|
||||
|
||||
|
|
@ -129,6 +129,11 @@ namespace seq {
|
|||
// Lightweight subsumption check: returns true if L(a) ⊆ L(b)
|
||||
bool is_subset(expr* a, expr* b);
|
||||
|
||||
// Predicate implication for character range conditions.
|
||||
// Returns true if condition a implies condition b.
|
||||
bool pred_implies(expr* a, expr* b);
|
||||
bool extract_char_range(expr* cond, unsigned& lo, unsigned& hi);
|
||||
|
||||
// Normalize reverse(r) by pushing reverse inward
|
||||
expr_ref normalize_reverse(expr* r);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue