/*********************                                                        */
/** options.h
 **
 ** Copyright 2011-2014  New York University and The University of Iowa,
 ** and as below.
 **
 ** This file automatically generated by:
 **
 **     /home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/mkoptions /home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/base_options_template.h ../smt/options.h
 **
 ** for the CVC4 project.
 **/

/* THIS FILE IS AUTOMATICALLY GENERATED, DO NOT EDIT ! */
/* THIS FILE IS AUTOMATICALLY GENERATED, DO NOT EDIT ! */
/* THIS FILE IS AUTOMATICALLY GENERATED, DO NOT EDIT ! */
/* THIS FILE IS AUTOMATICALLY GENERATED, DO NOT EDIT ! */
/* THIS FILE IS AUTOMATICALLY GENERATED, DO NOT EDIT ! */
/* THIS FILE IS AUTOMATICALLY GENERATED, DO NOT EDIT ! */

/* THIS FILE IS AUTOMATICALLY GENERATED, DO NOT EDIT ! */
/* THIS FILE IS AUTOMATICALLY GENERATED, DO NOT EDIT ! */
/* THIS FILE IS AUTOMATICALLY GENERATED, DO NOT EDIT ! */
/* THIS FILE IS AUTOMATICALLY GENERATED, DO NOT EDIT ! */
/* THIS FILE IS AUTOMATICALLY GENERATED, DO NOT EDIT ! */
/* THIS FILE IS AUTOMATICALLY GENERATED, DO NOT EDIT ! */

/* Edit the template file instead.                     */

/*********************                                                        */
/*! \file base_options_template.h
 ** \verbatim
 ** Original author: Morgan Deters
 ** Major contributors: none
 ** Minor contributors (to current version): none
 ** This file is part of the CVC4 project.
 ** Copyright (c) 2009-2014  New York University and The University of Iowa
 ** See the file COPYING in the top-level source directory for licensing
 ** information.\endverbatim
 **
 ** \brief Contains code for handling command-line options.
 **
 ** Contains code for handling command-line options
 **/

#include <cvc4/cvc4_public.h>

#ifndef __CVC4__OPTIONS__SMT_H
#define __CVC4__OPTIONS__SMT_H

#include <cvc4/options/options.h>

#line 13 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
#include <cvc4/theory/logic_info.h>
#line 16 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
#include <cvc4/smt/simplification_mode.h>
#line 108 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
#include <cvc4/util/lemma_input_channel.h>
#line 110 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
#include <cvc4/util/lemma_output_channel.h>

#line 26 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/base_options_template.h"

#define CVC4_OPTIONS__SMT__FOR_OPTION_HOLDER \
  forceLogic__option_t::type forceLogic; \
  bool forceLogic__setByUser__; \
  simplificationMode__option_t::type simplificationMode; \
  bool simplificationMode__setByUser__; \
  doStaticLearning__option_t::type doStaticLearning; \
  bool doStaticLearning__setByUser__; \
  expandDefinitions__option_t::type expandDefinitions; \
  bool expandDefinitions__setByUser__; \
  produceModels__option_t::type produceModels; \
  bool produceModels__setByUser__; \
  checkModels__option_t::type checkModels; \
  bool checkModels__setByUser__; \
  dumpModels__option_t::type dumpModels; \
  bool dumpModels__setByUser__; \
  proof__option_t::type proof; \
  bool proof__setByUser__; \
  checkProofs__option_t::type checkProofs; \
  bool checkProofs__setByUser__; \
  dumpProofs__option_t::type dumpProofs; \
  bool dumpProofs__setByUser__; \
  dumpInstantiations__option_t::type dumpInstantiations; \
  bool dumpInstantiations__setByUser__; \
  unsatCores__option_t::type unsatCores; \
  bool unsatCores__setByUser__; \
  produceAssignments__option_t::type produceAssignments; \
  bool produceAssignments__setByUser__; \
  interactive__option_t::type interactive; \
  bool interactive__setByUser__; \
  doITESimp__option_t::type doITESimp; \
  bool doITESimp__setByUser__; \
  doITESimpOnRepeat__option_t::type doITESimpOnRepeat; \
  bool doITESimpOnRepeat__setByUser__; \
  simplifyWithCareEnabled__option_t::type simplifyWithCareEnabled; \
  bool simplifyWithCareEnabled__setByUser__; \
  compressItes__option_t::type compressItes; \
  bool compressItes__setByUser__; \
  unconstrainedSimp__option_t::type unconstrainedSimp; \
  bool unconstrainedSimp__setByUser__; \
  repeatSimp__option_t::type repeatSimp; \
  bool repeatSimp__setByUser__; \
  zombieHuntThreshold__option_t::type zombieHuntThreshold; \
  bool zombieHuntThreshold__setByUser__; \
  sortInference__option_t::type sortInference; \
  bool sortInference__setByUser__; \
  incrementalSolving__option_t::type incrementalSolving; \
  bool incrementalSolving__setByUser__; \
  abstractValues__option_t::type abstractValues; \
  bool abstractValues__setByUser__; \
  modelUninterpDtEnum__option_t::type modelUninterpDtEnum; \
  bool modelUninterpDtEnum__setByUser__; \
  cumulativeMillisecondLimit__option_t::type cumulativeMillisecondLimit; \
  bool cumulativeMillisecondLimit__setByUser__; \
  perCallMillisecondLimit__option_t::type perCallMillisecondLimit; \
  bool perCallMillisecondLimit__setByUser__; \
  cumulativeResourceLimit__option_t::type cumulativeResourceLimit; \
  bool cumulativeResourceLimit__setByUser__; \
  perCallResourceLimit__option_t::type perCallResourceLimit; \
  bool perCallResourceLimit__setByUser__; \
  rewriteApplyToConst__option_t::type rewriteApplyToConst; \
  bool rewriteApplyToConst__setByUser__; \
  replayFilename__option_t::type replayFilename; \
  bool replayFilename__setByUser__; \
  replayLog__option_t::type replayLog; \
  bool replayLog__setByUser__; \
  replayStream__option_t::type replayStream; \
  bool replayStream__setByUser__; \
  lemmaInputChannel__option_t::type lemmaInputChannel; \
  bool lemmaInputChannel__setByUser__; \
  lemmaOutputChannel__option_t::type lemmaOutputChannel; \
  bool lemmaOutputChannel__setByUser__; \
  forceNoLimitCpuWhileDump__option_t::type forceNoLimitCpuWhileDump; \
  bool forceNoLimitCpuWhileDump__setByUser__;

#line 30 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/base_options_template.h"

namespace CVC4 {

namespace options {


#line 13 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC forceLogic__option_t { typedef LogicInfo type; type operator()() const; bool wasSetByUser() const; } forceLogic CVC4_PUBLIC;
#line 16 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC simplificationMode__option_t { typedef SimplificationMode type; type operator()() const; bool wasSetByUser() const; void set(const type& v); } simplificationMode CVC4_PUBLIC;
#line 21 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC doStaticLearning__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; } doStaticLearning CVC4_PUBLIC;
#line 24 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC expandDefinitions__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; } expandDefinitions CVC4_PUBLIC;
#line 26 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC produceModels__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; } produceModels CVC4_PUBLIC;
#line 28 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC checkModels__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; } checkModels CVC4_PUBLIC;
#line 30 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC dumpModels__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; } dumpModels CVC4_PUBLIC;
#line 32 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC proof__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; } proof CVC4_PUBLIC;
#line 34 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC checkProofs__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; } checkProofs CVC4_PUBLIC;
#line 36 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC dumpProofs__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; } dumpProofs CVC4_PUBLIC;
#line 38 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC dumpInstantiations__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; } dumpInstantiations CVC4_PUBLIC;
#line 41 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC unsatCores__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; } unsatCores CVC4_PUBLIC;
#line 43 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC produceAssignments__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; } produceAssignments CVC4_PUBLIC;
#line 48 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC interactive__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; void set(const type& v); } interactive CVC4_PUBLIC;
#line 51 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC doITESimp__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; void set(const type& v); } doITESimp CVC4_PUBLIC;
#line 54 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC doITESimpOnRepeat__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; void set(const type& v); } doITESimpOnRepeat CVC4_PUBLIC;
#line 57 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC simplifyWithCareEnabled__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; void set(const type& v); } simplifyWithCareEnabled CVC4_PUBLIC;
#line 60 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC compressItes__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; void set(const type& v); } compressItes CVC4_PUBLIC;
#line 63 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC unconstrainedSimp__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; void set(const type& v); } unconstrainedSimp CVC4_PUBLIC;
#line 66 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC repeatSimp__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; void set(const type& v); } repeatSimp CVC4_PUBLIC;
#line 69 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC zombieHuntThreshold__option_t { typedef uint32_t type; type operator()() const; bool wasSetByUser() const; } zombieHuntThreshold CVC4_PUBLIC;
#line 72 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC sortInference__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; void set(const type& v); } sortInference CVC4_PUBLIC;
#line 75 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC incrementalSolving__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; } incrementalSolving CVC4_PUBLIC;
#line 78 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC abstractValues__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; } abstractValues CVC4_PUBLIC;
#line 80 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC modelUninterpDtEnum__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; } modelUninterpDtEnum CVC4_PUBLIC;
#line 88 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC cumulativeMillisecondLimit__option_t { typedef unsigned long type; type operator()() const; bool wasSetByUser() const; } cumulativeMillisecondLimit CVC4_PUBLIC;
#line 90 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC perCallMillisecondLimit__option_t { typedef unsigned long type; type operator()() const; bool wasSetByUser() const; } perCallMillisecondLimit CVC4_PUBLIC;
#line 92 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC cumulativeResourceLimit__option_t { typedef unsigned long type; type operator()() const; bool wasSetByUser() const; } cumulativeResourceLimit CVC4_PUBLIC;
#line 94 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC perCallResourceLimit__option_t { typedef unsigned long type; type operator()() const; bool wasSetByUser() const; } perCallResourceLimit CVC4_PUBLIC;
#line 97 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC rewriteApplyToConst__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; } rewriteApplyToConst CVC4_PUBLIC;
#line 101 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC replayFilename__option_t { typedef std::string type; type operator()() const; bool wasSetByUser() const; } replayFilename CVC4_PUBLIC;
#line 103 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC replayLog__option_t { typedef std::ostream* type; type operator()() const; bool wasSetByUser() const; } replayLog CVC4_PUBLIC;
#line 105 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC replayStream__option_t { typedef ExprStream* type; type operator()() const; bool wasSetByUser() const; void set(const type& v); } replayStream CVC4_PUBLIC;
#line 108 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC lemmaInputChannel__option_t { typedef LemmaInputChannel* type; type operator()() const; bool wasSetByUser() const; void set(const type& v); } lemmaInputChannel CVC4_PUBLIC;
#line 110 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC lemmaOutputChannel__option_t { typedef LemmaOutputChannel* type; type operator()() const; bool wasSetByUser() const; void set(const type& v); } lemmaOutputChannel CVC4_PUBLIC;
#line 113 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
extern struct CVC4_PUBLIC forceNoLimitCpuWhileDump__option_t { typedef bool type; type operator()() const; bool wasSetByUser() const; } forceNoLimitCpuWhileDump CVC4_PUBLIC;

#line 38 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/base_options_template.h"

}/* CVC4::options namespace */


#line 13 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::forceLogic__option_t::type& Options::operator[](options::forceLogic__option_t) const;
#line 13 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::forceLogic__option_t) const;
#line 13 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assign(options::forceLogic__option_t, std::string option, std::string value, SmtEngine* smt);
#line 16 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::set(options::simplificationMode__option_t, const options::simplificationMode__option_t::type& x);
#line 16 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::simplificationMode__option_t::type& Options::operator[](options::simplificationMode__option_t) const;
#line 16 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::simplificationMode__option_t) const;
#line 16 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assign(options::simplificationMode__option_t, std::string option, std::string value, SmtEngine* smt);
#line 21 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::doStaticLearning__option_t::type& Options::operator[](options::doStaticLearning__option_t) const;
#line 21 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::doStaticLearning__option_t) const;
#line 21 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assignBool(options::doStaticLearning__option_t, std::string option, bool value, SmtEngine* smt);
#line 24 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::expandDefinitions__option_t::type& Options::operator[](options::expandDefinitions__option_t) const;
#line 24 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::expandDefinitions__option_t) const;
#line 24 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assignBool(options::expandDefinitions__option_t, std::string option, bool value, SmtEngine* smt);
#line 26 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::produceModels__option_t::type& Options::operator[](options::produceModels__option_t) const;
#line 26 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::produceModels__option_t) const;
#line 26 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assignBool(options::produceModels__option_t, std::string option, bool value, SmtEngine* smt);
#line 28 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::checkModels__option_t::type& Options::operator[](options::checkModels__option_t) const;
#line 28 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::checkModels__option_t) const;
#line 28 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assignBool(options::checkModels__option_t, std::string option, bool value, SmtEngine* smt);
#line 30 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::dumpModels__option_t::type& Options::operator[](options::dumpModels__option_t) const;
#line 30 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::dumpModels__option_t) const;
#line 30 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assignBool(options::dumpModels__option_t, std::string option, bool value, SmtEngine* smt);
#line 32 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::proof__option_t::type& Options::operator[](options::proof__option_t) const;
#line 32 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::proof__option_t) const;
#line 32 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assignBool(options::proof__option_t, std::string option, bool value, SmtEngine* smt);
#line 34 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::checkProofs__option_t::type& Options::operator[](options::checkProofs__option_t) const;
#line 34 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::checkProofs__option_t) const;
#line 34 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assignBool(options::checkProofs__option_t, std::string option, bool value, SmtEngine* smt);
#line 36 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::dumpProofs__option_t::type& Options::operator[](options::dumpProofs__option_t) const;
#line 36 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::dumpProofs__option_t) const;
#line 36 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assignBool(options::dumpProofs__option_t, std::string option, bool value, SmtEngine* smt);
#line 38 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::dumpInstantiations__option_t::type& Options::operator[](options::dumpInstantiations__option_t) const;
#line 38 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::dumpInstantiations__option_t) const;
#line 38 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assignBool(options::dumpInstantiations__option_t, std::string option, bool value, SmtEngine* smt);
#line 41 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::unsatCores__option_t::type& Options::operator[](options::unsatCores__option_t) const;
#line 41 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::unsatCores__option_t) const;
#line 41 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assignBool(options::unsatCores__option_t, std::string option, bool value, SmtEngine* smt);
#line 43 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::produceAssignments__option_t::type& Options::operator[](options::produceAssignments__option_t) const;
#line 43 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::produceAssignments__option_t) const;
#line 43 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assignBool(options::produceAssignments__option_t, std::string option, bool value, SmtEngine* smt);
#line 48 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::set(options::interactive__option_t, const options::interactive__option_t::type& x);
#line 48 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::interactive__option_t::type& Options::operator[](options::interactive__option_t) const;
#line 48 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::interactive__option_t) const;
#line 48 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assignBool(options::interactive__option_t, std::string option, bool value, SmtEngine* smt);
#line 51 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::set(options::doITESimp__option_t, const options::doITESimp__option_t::type& x);
#line 51 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::doITESimp__option_t::type& Options::operator[](options::doITESimp__option_t) const;
#line 51 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::doITESimp__option_t) const;
#line 51 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assignBool(options::doITESimp__option_t, std::string option, bool value, SmtEngine* smt);
#line 54 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::set(options::doITESimpOnRepeat__option_t, const options::doITESimpOnRepeat__option_t::type& x);
#line 54 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::doITESimpOnRepeat__option_t::type& Options::operator[](options::doITESimpOnRepeat__option_t) const;
#line 54 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::doITESimpOnRepeat__option_t) const;
#line 54 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assignBool(options::doITESimpOnRepeat__option_t, std::string option, bool value, SmtEngine* smt);
#line 57 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::set(options::simplifyWithCareEnabled__option_t, const options::simplifyWithCareEnabled__option_t::type& x);
#line 57 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::simplifyWithCareEnabled__option_t::type& Options::operator[](options::simplifyWithCareEnabled__option_t) const;
#line 57 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::simplifyWithCareEnabled__option_t) const;
#line 57 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assignBool(options::simplifyWithCareEnabled__option_t, std::string option, bool value, SmtEngine* smt);
#line 60 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::set(options::compressItes__option_t, const options::compressItes__option_t::type& x);
#line 60 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::compressItes__option_t::type& Options::operator[](options::compressItes__option_t) const;
#line 60 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::compressItes__option_t) const;
#line 60 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assignBool(options::compressItes__option_t, std::string option, bool value, SmtEngine* smt);
#line 63 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::set(options::unconstrainedSimp__option_t, const options::unconstrainedSimp__option_t::type& x);
#line 63 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::unconstrainedSimp__option_t::type& Options::operator[](options::unconstrainedSimp__option_t) const;
#line 63 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::unconstrainedSimp__option_t) const;
#line 63 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assignBool(options::unconstrainedSimp__option_t, std::string option, bool value, SmtEngine* smt);
#line 66 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::set(options::repeatSimp__option_t, const options::repeatSimp__option_t::type& x);
#line 66 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::repeatSimp__option_t::type& Options::operator[](options::repeatSimp__option_t) const;
#line 66 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::repeatSimp__option_t) const;
#line 66 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assignBool(options::repeatSimp__option_t, std::string option, bool value, SmtEngine* smt);
#line 69 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::zombieHuntThreshold__option_t::type& Options::operator[](options::zombieHuntThreshold__option_t) const;
#line 69 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::zombieHuntThreshold__option_t) const;
#line 69 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assign(options::zombieHuntThreshold__option_t, std::string option, std::string value, SmtEngine* smt);
#line 72 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::set(options::sortInference__option_t, const options::sortInference__option_t::type& x);
#line 72 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::sortInference__option_t::type& Options::operator[](options::sortInference__option_t) const;
#line 72 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::sortInference__option_t) const;
#line 72 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assignBool(options::sortInference__option_t, std::string option, bool value, SmtEngine* smt);
#line 75 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::incrementalSolving__option_t::type& Options::operator[](options::incrementalSolving__option_t) const;
#line 75 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::incrementalSolving__option_t) const;
#line 75 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assignBool(options::incrementalSolving__option_t, std::string option, bool value, SmtEngine* smt);
#line 78 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::abstractValues__option_t::type& Options::operator[](options::abstractValues__option_t) const;
#line 78 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::abstractValues__option_t) const;
#line 78 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assignBool(options::abstractValues__option_t, std::string option, bool value, SmtEngine* smt);
#line 80 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::modelUninterpDtEnum__option_t::type& Options::operator[](options::modelUninterpDtEnum__option_t) const;
#line 80 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::modelUninterpDtEnum__option_t) const;
#line 80 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assignBool(options::modelUninterpDtEnum__option_t, std::string option, bool value, SmtEngine* smt);
#line 88 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::cumulativeMillisecondLimit__option_t::type& Options::operator[](options::cumulativeMillisecondLimit__option_t) const;
#line 88 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::cumulativeMillisecondLimit__option_t) const;
#line 88 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assign(options::cumulativeMillisecondLimit__option_t, std::string option, std::string value, SmtEngine* smt);
#line 90 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::perCallMillisecondLimit__option_t::type& Options::operator[](options::perCallMillisecondLimit__option_t) const;
#line 90 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::perCallMillisecondLimit__option_t) const;
#line 90 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assign(options::perCallMillisecondLimit__option_t, std::string option, std::string value, SmtEngine* smt);
#line 92 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::cumulativeResourceLimit__option_t::type& Options::operator[](options::cumulativeResourceLimit__option_t) const;
#line 92 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::cumulativeResourceLimit__option_t) const;
#line 92 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assign(options::cumulativeResourceLimit__option_t, std::string option, std::string value, SmtEngine* smt);
#line 94 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::perCallResourceLimit__option_t::type& Options::operator[](options::perCallResourceLimit__option_t) const;
#line 94 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::perCallResourceLimit__option_t) const;
#line 94 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assign(options::perCallResourceLimit__option_t, std::string option, std::string value, SmtEngine* smt);
#line 97 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::rewriteApplyToConst__option_t::type& Options::operator[](options::rewriteApplyToConst__option_t) const;
#line 97 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::rewriteApplyToConst__option_t) const;
#line 97 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assignBool(options::rewriteApplyToConst__option_t, std::string option, bool value, SmtEngine* smt);
#line 101 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::replayFilename__option_t::type& Options::operator[](options::replayFilename__option_t) const;
#line 101 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::replayFilename__option_t) const;
#line 101 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assign(options::replayFilename__option_t, std::string option, std::string value, SmtEngine* smt);
#line 103 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::replayLog__option_t::type& Options::operator[](options::replayLog__option_t) const;
#line 103 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::replayLog__option_t) const;
#line 103 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assign(options::replayLog__option_t, std::string option, std::string value, SmtEngine* smt);
#line 105 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::set(options::replayStream__option_t, const options::replayStream__option_t::type& x);
#line 105 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::replayStream__option_t::type& Options::operator[](options::replayStream__option_t) const;
#line 105 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::replayStream__option_t) const;
#line 105 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assign(options::replayStream__option_t, std::string option, std::string value, SmtEngine* smt);
#line 108 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::set(options::lemmaInputChannel__option_t, const options::lemmaInputChannel__option_t::type& x);
#line 108 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::lemmaInputChannel__option_t::type& Options::operator[](options::lemmaInputChannel__option_t) const;
#line 108 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::lemmaInputChannel__option_t) const;
#line 108 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assign(options::lemmaInputChannel__option_t, std::string option, std::string value, SmtEngine* smt);
#line 110 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::set(options::lemmaOutputChannel__option_t, const options::lemmaOutputChannel__option_t::type& x);
#line 110 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::lemmaOutputChannel__option_t::type& Options::operator[](options::lemmaOutputChannel__option_t) const;
#line 110 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::lemmaOutputChannel__option_t) const;
#line 110 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assign(options::lemmaOutputChannel__option_t, std::string option, std::string value, SmtEngine* smt);
#line 113 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> const options::forceNoLimitCpuWhileDump__option_t::type& Options::operator[](options::forceNoLimitCpuWhileDump__option_t) const;
#line 113 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> bool Options::wasSetByUser(options::forceNoLimitCpuWhileDump__option_t) const;
#line 113 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
template <> void Options::assignBool(options::forceNoLimitCpuWhileDump__option_t, std::string option, bool value, SmtEngine* smt);

#line 44 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/base_options_template.h"

namespace options {


#line 13 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline forceLogic__option_t::type forceLogic__option_t::operator()() const { return Options::current()[*this]; }
#line 13 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool forceLogic__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 16 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline simplificationMode__option_t::type simplificationMode__option_t::operator()() const { return Options::current()[*this]; }
#line 16 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool simplificationMode__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }
#line 16 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline void simplificationMode__option_t::set(const simplificationMode__option_t::type& v) { Options::current().set(*this, v); }

#line 21 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline doStaticLearning__option_t::type doStaticLearning__option_t::operator()() const { return Options::current()[*this]; }
#line 21 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool doStaticLearning__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 24 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline expandDefinitions__option_t::type expandDefinitions__option_t::operator()() const { return Options::current()[*this]; }
#line 24 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool expandDefinitions__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 26 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline produceModels__option_t::type produceModels__option_t::operator()() const { return Options::current()[*this]; }
#line 26 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool produceModels__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 28 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline checkModels__option_t::type checkModels__option_t::operator()() const { return Options::current()[*this]; }
#line 28 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool checkModels__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 30 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline dumpModels__option_t::type dumpModels__option_t::operator()() const { return Options::current()[*this]; }
#line 30 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool dumpModels__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 32 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline proof__option_t::type proof__option_t::operator()() const { return Options::current()[*this]; }
#line 32 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool proof__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 34 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline checkProofs__option_t::type checkProofs__option_t::operator()() const { return Options::current()[*this]; }
#line 34 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool checkProofs__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 36 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline dumpProofs__option_t::type dumpProofs__option_t::operator()() const { return Options::current()[*this]; }
#line 36 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool dumpProofs__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 38 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline dumpInstantiations__option_t::type dumpInstantiations__option_t::operator()() const { return Options::current()[*this]; }
#line 38 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool dumpInstantiations__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 41 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline unsatCores__option_t::type unsatCores__option_t::operator()() const { return Options::current()[*this]; }
#line 41 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool unsatCores__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 43 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline produceAssignments__option_t::type produceAssignments__option_t::operator()() const { return Options::current()[*this]; }
#line 43 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool produceAssignments__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 48 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline interactive__option_t::type interactive__option_t::operator()() const { return Options::current()[*this]; }
#line 48 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool interactive__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }
#line 48 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline void interactive__option_t::set(const interactive__option_t::type& v) { Options::current().set(*this, v); }

#line 51 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline doITESimp__option_t::type doITESimp__option_t::operator()() const { return Options::current()[*this]; }
#line 51 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool doITESimp__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }
#line 51 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline void doITESimp__option_t::set(const doITESimp__option_t::type& v) { Options::current().set(*this, v); }

#line 54 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline doITESimpOnRepeat__option_t::type doITESimpOnRepeat__option_t::operator()() const { return Options::current()[*this]; }
#line 54 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool doITESimpOnRepeat__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }
#line 54 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline void doITESimpOnRepeat__option_t::set(const doITESimpOnRepeat__option_t::type& v) { Options::current().set(*this, v); }

#line 57 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline simplifyWithCareEnabled__option_t::type simplifyWithCareEnabled__option_t::operator()() const { return Options::current()[*this]; }
#line 57 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool simplifyWithCareEnabled__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }
#line 57 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline void simplifyWithCareEnabled__option_t::set(const simplifyWithCareEnabled__option_t::type& v) { Options::current().set(*this, v); }

#line 60 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline compressItes__option_t::type compressItes__option_t::operator()() const { return Options::current()[*this]; }
#line 60 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool compressItes__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }
#line 60 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline void compressItes__option_t::set(const compressItes__option_t::type& v) { Options::current().set(*this, v); }

#line 63 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline unconstrainedSimp__option_t::type unconstrainedSimp__option_t::operator()() const { return Options::current()[*this]; }
#line 63 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool unconstrainedSimp__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }
#line 63 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline void unconstrainedSimp__option_t::set(const unconstrainedSimp__option_t::type& v) { Options::current().set(*this, v); }

#line 66 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline repeatSimp__option_t::type repeatSimp__option_t::operator()() const { return Options::current()[*this]; }
#line 66 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool repeatSimp__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }
#line 66 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline void repeatSimp__option_t::set(const repeatSimp__option_t::type& v) { Options::current().set(*this, v); }

#line 69 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline zombieHuntThreshold__option_t::type zombieHuntThreshold__option_t::operator()() const { return Options::current()[*this]; }
#line 69 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool zombieHuntThreshold__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 72 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline sortInference__option_t::type sortInference__option_t::operator()() const { return Options::current()[*this]; }
#line 72 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool sortInference__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }
#line 72 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline void sortInference__option_t::set(const sortInference__option_t::type& v) { Options::current().set(*this, v); }

#line 75 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline incrementalSolving__option_t::type incrementalSolving__option_t::operator()() const { return Options::current()[*this]; }
#line 75 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool incrementalSolving__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 78 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline abstractValues__option_t::type abstractValues__option_t::operator()() const { return Options::current()[*this]; }
#line 78 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool abstractValues__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 80 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline modelUninterpDtEnum__option_t::type modelUninterpDtEnum__option_t::operator()() const { return Options::current()[*this]; }
#line 80 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool modelUninterpDtEnum__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 88 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline cumulativeMillisecondLimit__option_t::type cumulativeMillisecondLimit__option_t::operator()() const { return Options::current()[*this]; }
#line 88 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool cumulativeMillisecondLimit__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 90 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline perCallMillisecondLimit__option_t::type perCallMillisecondLimit__option_t::operator()() const { return Options::current()[*this]; }
#line 90 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool perCallMillisecondLimit__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 92 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline cumulativeResourceLimit__option_t::type cumulativeResourceLimit__option_t::operator()() const { return Options::current()[*this]; }
#line 92 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool cumulativeResourceLimit__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 94 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline perCallResourceLimit__option_t::type perCallResourceLimit__option_t::operator()() const { return Options::current()[*this]; }
#line 94 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool perCallResourceLimit__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 97 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline rewriteApplyToConst__option_t::type rewriteApplyToConst__option_t::operator()() const { return Options::current()[*this]; }
#line 97 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool rewriteApplyToConst__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 101 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline replayFilename__option_t::type replayFilename__option_t::operator()() const { return Options::current()[*this]; }
#line 101 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool replayFilename__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 103 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline replayLog__option_t::type replayLog__option_t::operator()() const { return Options::current()[*this]; }
#line 103 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool replayLog__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 105 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline replayStream__option_t::type replayStream__option_t::operator()() const { return Options::current()[*this]; }
#line 105 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool replayStream__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }
#line 105 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline void replayStream__option_t::set(const replayStream__option_t::type& v) { Options::current().set(*this, v); }

#line 108 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline lemmaInputChannel__option_t::type lemmaInputChannel__option_t::operator()() const { return Options::current()[*this]; }
#line 108 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool lemmaInputChannel__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }
#line 108 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline void lemmaInputChannel__option_t::set(const lemmaInputChannel__option_t::type& v) { Options::current().set(*this, v); }

#line 110 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline lemmaOutputChannel__option_t::type lemmaOutputChannel__option_t::operator()() const { return Options::current()[*this]; }
#line 110 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool lemmaOutputChannel__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }
#line 110 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline void lemmaOutputChannel__option_t::set(const lemmaOutputChannel__option_t::type& v) { Options::current().set(*this, v); }

#line 113 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline forceNoLimitCpuWhileDump__option_t::type forceNoLimitCpuWhileDump__option_t::operator()() const { return Options::current()[*this]; }
#line 113 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/../smt/options"
inline bool forceNoLimitCpuWhileDump__option_t::wasSetByUser() const { return Options::current().wasSetByUser(*this); }

#line 50 "/home/mdeters/cvc4/builds/x86_64-unknown-linux-gnu/production/../../../src/options/base_options_template.h"

}/* CVC4::options namespace */

}/* CVC4 namespace */

#endif /* __CVC4__OPTIONS__SMT_H */
