void setOut(std::ostream*);
void setOutputLanguage(OutputLanguage);
- bool wasSetByUserCeGuidedInst() const;
bool wasSetByUserDumpSynth() const;
bool wasSetByUserEarlyExit() const;
bool wasSetByUserForceLogicString() const;
}
}
- //apply counterexample guided instantiation options
- // if we are attempting to rewrite everything to SyGuS, use ceGuidedInst
+ // apply sygus options
+ // if we are attempting to rewrite everything to SyGuS, use sygus()
if (is_sygus)
{
- if (!options::ceGuidedInst.wasSetByUser())
+ if (!options::sygus())
{
- options::ceGuidedInst.set(true);
+ Trace("smt") << "turning on sygus" << std::endl;
}
+ options::sygus.set(true);
// must use Ferrante/Rackoff for real arithmetic
if (!options::cbqiMidpoint.wasSetByUser())
{
options::cbqi.set(true);
}
}
- }
- if (options::sygusInference())
- {
- // optimization: apply preskolemization, makes it succeed more often
- if (!options::preSkolemQuant.wasSetByUser())
- {
- options::preSkolemQuant.set(true);
- }
- if (!options::preSkolemQuantNested.wasSetByUser())
+ if (options::sygusInference())
{
- options::preSkolemQuantNested.set(true);
- }
- }
- if (options::cegqiSingleInvMode() != options::CegqiSingleInvMode::NONE)
- {
- if( !options::ceGuidedInst.wasSetByUser() ){
- options::ceGuidedInst.set( true );
+ // optimization: apply preskolemization, makes it succeed more often
+ if (!options::preSkolemQuant.wasSetByUser())
+ {
+ options::preSkolemQuant.set(true);
+ }
+ if (!options::preSkolemQuantNested.wasSetByUser())
+ {
+ options::preSkolemQuantNested.set(true);
+ }
}
- }
- // if sygus is enabled, set the defaults for sygus
- if( options::ceGuidedInst() ){
//counterexample-guided instantiation for sygus
if( !options::cegqiSingleInvMode.wasSetByUser() ){
options::cegqiSingleInvMode.set(options::CegqiSingleInvMode::USE);
modules.push_back(d_i_cbqi.get());
qe->getInstantiate()->addRewriter(d_i_cbqi->getInstRewriter());
}
- if (options::ceGuidedInst())
+ if (options::sygus())
{
d_synth_e.reset(new quantifiers::SynthEngine(qe, c));
modules.push_back(d_synth_e.get());
d_util.push_back(d_term_util.get());
d_util.push_back(d_term_db.get());
- if (options::ceGuidedInst()) {
+ if (options::sygus())
+ {
d_sygus_tdb.reset(new quantifiers::TermDbSygus(c, this));
}
theory_sep->initializeBounds();
d_qepr->finishInit();
}
- if (options::ceGuidedInst())
+ if (options::sygus())
{
quantifiers::SynthEngine* sye = d_private->d_synth_e.get();
for (const Node& a : assertions)