summaryrefslogtreecommitdiff
path: root/src/theory/quantifiers/bounded_integers.h
diff options
context:
space:
mode:
authorajreynol <andrew.j.reynolds@gmail.com>2017-02-07 13:26:57 -0600
committerajreynol <andrew.j.reynolds@gmail.com>2017-02-07 13:26:57 -0600
commit3837f84ab251d1563726f3d13b95f541eaa331a4 (patch)
tree7afb6eb470b837b7e7600437356a8080fc329eb5 /src/theory/quantifiers/bounded_integers.h
parent0dd2aa21f35b221ea96d277e9ea7cbc816ffe83c (diff)
Generalize finite bound inference to unifiable variables in set membership literals.
Diffstat (limited to 'src/theory/quantifiers/bounded_integers.h')
-rw-r--r--src/theory/quantifiers/bounded_integers.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/theory/quantifiers/bounded_integers.h b/src/theory/quantifiers/bounded_integers.h
index 5c5a52855..f367b328c 100644
--- a/src/theory/quantifiers/bounded_integers.h
+++ b/src/theory/quantifiers/bounded_integers.h
@@ -74,6 +74,7 @@ private:
std::map< int, std::map< Node, Node > >& bound_int_range_term,
std::map< Node, std::vector< Node > >& bound_fixed_set );
bool processEqDisjunct( Node q, Node n, Node& v, std::vector< Node >& v_cases );
+ void processMatchBoundVars( Node q, Node n, std::vector< Node >& bvs, std::map< Node, bool >& visited );
std::vector< Node > d_bound_quants;
private:
class RangeModel {
@@ -164,6 +165,7 @@ private:
//for set range
Node getSetRange( Node q, Node v, RepSetIterator * rsi );
Node getSetRangeValue( Node q, Node v, RepSetIterator * rsi );
+ Node matchBoundVar( Node v, Node t, Node e );
bool getRsiSubsitution( Node q, Node v, std::vector< Node >& vars, std::vector< Node >& subs, RepSetIterator * rsi );
public:
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback