std::getline(iss, statValue, '\n');
double curFloat;
- bool isFloat = (std::istringstream(statValue) >> curFloat);
+ bool isFloat = static_cast<bool>(std::istringstream(statValue) >> curFloat);
if( (isFloat && curFloat == 0) ||
statValue == " \"0\"" ||
logicMap["UFLRA"] = UFLRA;
logicMap["QF_ALL_SUPPORTED"] = QF_ALL_SUPPORTED;
logicMap["ALL_SUPPORTED"] = ALL_SUPPORTED;
+ logicMap["QF_ALL"] = QF_ALL_SUPPORTED;
+ logicMap["ALL"] = ALL_SUPPORTED;
return logicMap;
}
}
PARSER_STATE->setLogic(name);
if( PARSER_STATE->sygus() ){
- cmd->reset(new SetBenchmarkLogicCommand("ALL_SUPPORTED"));
+ cmd->reset(new SetBenchmarkLogicCommand("ALL"));
}else{
cmd->reset(new SetBenchmarkLogicCommand(name));
}
name = "UFSLIA";
} else if(name == "SAT") {
name = "UF";
- } else if(name == "ALL_SUPPORTED") {
+ } else if(name == "ALL" || name == "ALL_SUPPORTED") {
//no change
} else {
std::stringstream ss;
setLogic("LIA");
} else {
warning("No set-logic command was given before this point.");
- warning("CVC4 will assume the non-standard ALL_SUPPORTED logic.");
+ warning("CVC4 will make all theories available.");
warning("Consider setting a stricter logic for (likely) better performance.");
- warning("To suppress this warning in the future use (set-logic ALL_SUPPORTED).");
+ warning("To suppress this warning in the future use (set-logic ALL).");
- setLogic("ALL_SUPPORTED");
+ setLogic("ALL");
}
- Command* c = new SetBenchmarkLogicCommand("ALL_SUPPORTED");
+ Command* c = new SetBenchmarkLogicCommand("ALL");
c->setMuted(true);
preemptCommand(c);
}
// Set decision mode based on logic (if not set by user)
if(!options::decisionMode.wasSetByUser()) {
decision::DecisionMode decMode =
- // ALL_SUPPORTED
+ // ALL
d_logic.hasEverything() ? decision::DECISION_STRATEGY_JUSTIFICATION :
( // QF_BV
(not d_logic.isQuantified() &&
);
bool stoponly =
- // ALL_SUPPORTED
+ // ALL
d_logic.hasEverything() || d_logic.isTheoryEnabled(THEORY_STRINGS) ? false :
( // QF_AUFLIA
(not d_logic.isQuantified() &&
qf_all_supported.disableQuantifiers();
qf_all_supported.lock();
if(hasEverything()) {
- d_logicString = "ALL_SUPPORTED";
+ d_logicString = "ALL";
} else if(*this == qf_all_supported) {
- d_logicString = "QF_ALL_SUPPORTED";
+ d_logicString = "QF_ALL";
} else {
size_t seen = 0; // make sure we support all the active theories
enableEverything();
disableQuantifiers();
p += 16;
+ } else if(!strcmp(p, "QF_ALL")) {
+ // the "all theories included" logic, no quantifiers
+ enableEverything();
+ disableQuantifiers();
+ p += 6;
} else if(!strcmp(p, "ALL_SUPPORTED")) {
// the "all theories included" logic, with quantifiers
enableEverything();
enableQuantifiers();
p += 13;
+ } else if(!strcmp(p, "ALL")) {
+ // the "all theories included" logic, with quantifiers
+ enableEverything();
+ enableQuantifiers();
+ p += 3;
} else {
if(!strncmp(p, "QF_", 3)) {
disableQuantifiers();
bool polarity;
TNode atom;
- /*if(getLogicInfo().hasEverything()) {
- WarningOnce() << "WARNING: strings not supported in default configuration (ALL_SUPPORTED).\n"
- << "To suppress this warning in the future use proper logic symbol, e.g. (set-logic QF_S)." << std::endl;
- }
- }*/
-
if( !done() && !hasTerm( d_emptyString ) ) {
preRegisterTerm( d_emptyString );
}