From c6436566dec99c0ed6794fa34b9b67a7e47918b0 Mon Sep 17 00:00:00 2001 From: Morgan Deters Date: Thu, 23 Oct 2014 03:11:18 -0400 Subject: Parsing and infrastructure support for SMT-LIBv2.5 input and output languages. * support for new commands meta-info, declare-const, echo, get-model, reset, and reset-assertions * support for set-option :global-declarations * support for set-option :produce-assertions * support for set-option :reproducible-resource-limit * support for get-info :assertion-stack-levels * support for set-info :smt-lib-version 2.5 * ascribe types for abstract values (the new 2.5 standard clarifies that this is required) * SMT-LIB v2.5 string literals (we still support 2.0 string literals when in 2.0 mode) What's still to do: * check-sat-assumptions/get-unsat-assumptions (still being hotly debated). Also set-option :produce-unsat-assumptions. * define-fun-rec doesn't allow mutual recursion * All options should be restored to defaults with (reset) command. (Currently :incremental and maybe others get "stuck" due to late driver integration.) --- src/smt/options_handlers.h | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/smt/options_handlers.h') diff --git a/src/smt/options_handlers.h b/src/smt/options_handlers.h index fcd625267..d02b88fd2 100644 --- a/src/smt/options_handlers.h +++ b/src/smt/options_handlers.h @@ -299,6 +299,11 @@ inline void beforeSearch(std::string option, bool value, SmtEngine* smt) throw(M } } +inline void setProduceAssertions(std::string option, bool value, SmtEngine* smt) throw() { + options::produceAssertions.set(value); + options::interactiveMode.set(value); +} + // ensure we are a proof-enabled build of CVC4 inline void proofEnabledBuild(std::string option, bool value, SmtEngine* smt) throw(OptionException) { #ifndef CVC4_PROOF -- cgit v1.2.3