summaryrefslogtreecommitdiff
path: root/src/theory/quantifiers/quant_util.h
diff options
context:
space:
mode:
authorAndrew Reynolds <andrew.j.reynolds@gmail.com>2017-11-14 19:06:49 -0600
committerGitHub <noreply@github.com>2017-11-14 19:06:49 -0600
commit85df7998e4362e0a9c796146d07d7b9e91045a31 (patch)
tree0ab2e33e807651386cd041257c1abff2bb769057 /src/theory/quantifiers/quant_util.h
parent748e20967ae7698f6b545a5128633865701aeb2d (diff)
Make QEffort an enum (#1366)
* Make QEffort an enum. * Format * Minor * Fix
Diffstat (limited to 'src/theory/quantifiers/quant_util.h')
-rw-r--r--src/theory/quantifiers/quant_util.h22
1 files changed, 19 insertions, 3 deletions
diff --git a/src/theory/quantifiers/quant_util.h b/src/theory/quantifiers/quant_util.h
index 95cd7e5e4..f958605b1 100644
--- a/src/theory/quantifiers/quant_util.h
+++ b/src/theory/quantifiers/quant_util.h
@@ -40,7 +40,23 @@ namespace quantifiers {
* It has a similar interface to a Theory object.
*/
class QuantifiersModule {
-public:
+ public:
+ /** effort levels for quantifiers modules check */
+ enum QEffort
+ {
+ // conflict effort, for conflict-based instantiation
+ QEFFORT_CONFLICT,
+ // standard effort, for heuristic instantiation
+ QEFFORT_STANDARD,
+ // model effort, for model-based instantiation
+ QEFFORT_MODEL,
+ // last call effort, for last resort techniques
+ QEFFORT_LAST_CALL,
+ // none
+ QEFFORT_NONE,
+ };
+
+ public:
QuantifiersModule( QuantifiersEngine* qe ) : d_quantEngine( qe ){}
virtual ~QuantifiersModule(){}
/** Presolve.
@@ -62,7 +78,7 @@ public:
* which specifies the quantifiers effort in which it requires the model to
* be built.
*/
- virtual unsigned needsModel( Theory::Effort e );
+ virtual QEffort needsModel(Theory::Effort e);
/** Reset.
*
* Called at the beginning of QuantifiersEngine::check(e).
@@ -73,7 +89,7 @@ public:
* Called during QuantifiersEngine::check(e) depending
* if needsCheck(e) returns true.
*/
- virtual void check( Theory::Effort e, unsigned quant_e ) = 0;
+ virtual void check(Theory::Effort e, QEffort quant_e) = 0;
/** Check complete?
*
* Returns false if the module's reasoning was globally incomplete
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback