summaryrefslogtreecommitdiff
path: root/src/options/quantifiers_modes.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/options/quantifiers_modes.h')
-rw-r--r--src/options/quantifiers_modes.h33
1 files changed, 31 insertions, 2 deletions
diff --git a/src/options/quantifiers_modes.h b/src/options/quantifiers_modes.h
index a949b97be..afb54002c 100644
--- a/src/options/quantifiers_modes.h
+++ b/src/options/quantifiers_modes.h
@@ -208,12 +208,41 @@ enum CegqiSingleInvMode {
CEGQI_SI_MODE_NONE,
/** use single invocation techniques */
CEGQI_SI_MODE_USE,
- /** always use single invocation techniques, abort if solution reconstruction will fail */
- CEGQI_SI_MODE_ALL_ABORT,
/** always use single invocation techniques */
CEGQI_SI_MODE_ALL,
};
+/** Solution reconstruction modes for single invocation conjectures
+ *
+ * These modes indicate the policy when CVC4 solves a synthesis conjecture using
+ * single invocation techniques for a sygus problem with a user-specified
+ * grammar.
+ */
+enum CegqiSingleInvRconsMode
+{
+ /**
+ * Do not try to reconstruct solutions to single invocation conjectures. With
+ * this mode, solutions produced by CVC4 may violate grammar restrictions.
+ */
+ CEGQI_SI_RCONS_MODE_NONE,
+ /**
+ * Try to reconstruct solution to single invocation conjectures in an
+ * incomplete (fail fast) way.
+ */
+ CEGQI_SI_RCONS_MODE_TRY,
+ /**
+ * Reconstruct solutions to single invocation conjectures, but fail if we
+ * reach an upper limit on number of iterations in the enumeration
+ */
+ CEGQI_SI_RCONS_MODE_ALL_LIMIT,
+ /**
+ * Reconstruct solutions to single invocation conjectures. This method
+ * relies on an expensive enumeration technique which only terminates when
+ * we succesfully reconstruct the solution, although it may not terminate.
+ */
+ CEGQI_SI_RCONS_MODE_ALL,
+};
+
enum CegisSampleMode
{
/** do not use samples for CEGIS */
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback