This PR modifies the printers to use Result::Sat, "internal" version of BenchmarkStatus, for printing benchmark status commands.
}
void AstPrinter::toStreamCmdSetBenchmarkStatus(std::ostream& out,
- BenchmarkStatus status) const
+ Result::Sat status) const
{
out << "SetBenchmarkStatus(" << status << ')';
}
/** Print set-info :status command */
void toStreamCmdSetBenchmarkStatus(std::ostream& out,
- BenchmarkStatus status) const override;
+ Result::Sat status) const override;
/** Print set-logic command */
void toStreamCmdSetBenchmarkLogic(std::ostream& out,
}
void CvcPrinter::toStreamCmdSetBenchmarkStatus(std::ostream& out,
- BenchmarkStatus status) const
+ Result::Sat status) const
{
out << "% (set-info :status " << status << ')';
}
/** Print set-info :status command */
void toStreamCmdSetBenchmarkStatus(std::ostream& out,
- BenchmarkStatus status) const override;
+ Result::Sat status) const override;
/** Print set-logic command */
void toStreamCmdSetBenchmarkLogic(std::ostream& out,
#include "printer/cvc/cvc_printer.h"
#include "printer/smt2/smt2_printer.h"
#include "printer/tptp/tptp_printer.h"
+#include "smt/command.h"
#include "smt/node_command.h"
using namespace std;
}
void Printer::toStreamCmdSetBenchmarkStatus(std::ostream& out,
- BenchmarkStatus status) const
+ Result::Sat status) const
{
printUnknownCommand(out, "set-info");
}
#include "expr/node.h"
#include "options/language.h"
-#include "smt/command.h"
#include "smt/model.h"
+#include "util/result.h"
#include "util/sexpr.h"
namespace CVC4 {
+class Command;
+class CommandStatus;
class NodeCommand;
+class UnsatCore;
class Printer
{
/** Print set-info :status command */
virtual void toStreamCmdSetBenchmarkStatus(std::ostream& out,
- BenchmarkStatus status) const;
+ Result::Sat status) const;
/** Print set-logic command */
virtual void toStreamCmdSetBenchmarkLogic(std::ostream& out,
#include "options/printer_options.h"
#include "options/smt_options.h"
#include "printer/dagification_visitor.h"
+#include "smt/command.h"
#include "smt/node_command.h"
#include "smt/smt_engine.h"
#include "smt_util/boolean_simplification.h"
}
void Smt2Printer::toStreamCmdSetBenchmarkStatus(std::ostream& out,
- BenchmarkStatus status) const
+ Result::Sat status) const
{
out << "(set-info :status " << status << ')';
}
/** Print set-info :status command */
void toStreamCmdSetBenchmarkStatus(std::ostream& out,
- BenchmarkStatus status) const override;
+ Result::Sat status) const override;
/** Print set-logic command */
void toStreamCmdSetBenchmarkLogic(std::ostream& out,
size_t dag,
OutputLanguage language) const
{
- Printer::getPrinter(language)->toStreamCmdSetBenchmarkStatus(out, d_status);
+ Result::Sat status;
+ switch (d_status)
+ {
+ case BenchmarkStatus::SMT_SATISFIABLE: status = Result::SAT; break;
+ case BenchmarkStatus::SMT_UNSATISFIABLE: status = Result::UNSAT; break;
+ case BenchmarkStatus::SMT_UNKNOWN: status = Result::SAT_UNKNOWN; break;
+ }
+
+ Printer::getPrinter(language)->toStreamCmdSetBenchmarkStatus(out, status);
}
/* -------------------------------------------------------------------------- */