From 61415ee2c5659893055f71d84a38eab8701dc47a Mon Sep 17 00:00:00 2001 From: ajreynol Date: Fri, 12 Jun 2015 16:32:32 +0200 Subject: Make sygus an output language. Parse declare-fun in sygus. Minor improvements to robustness of sygus parsing. --- src/printer/smt2/smt2_printer.cpp | 6 +++++- src/printer/smt2/smt2_printer.h | 3 ++- 2 files changed, 7 insertions(+), 2 deletions(-) (limited to 'src/printer/smt2') diff --git a/src/printer/smt2/smt2_printer.cpp b/src/printer/smt2/smt2_printer.cpp index 7648a1587..79cb18d92 100644 --- a/src/printer/smt2/smt2_printer.cpp +++ b/src/printer/smt2/smt2_printer.cpp @@ -152,7 +152,11 @@ void Smt2Printer::toStream(std::ostream& out, TNode n, } break; case kind::BITVECTOR_TYPE: - out << "(_ BitVec " << n.getConst().size << ")"; + if(d_variant == sygus_variant ){ + out << "(BitVec " << n.getConst().size << ")"; + }else{ + out << "(_ BitVec " << n.getConst().size << ")"; + } break; case kind::FLOATINGPOINT_TYPE: out << "(_ FloatingPoint " diff --git a/src/printer/smt2/smt2_printer.h b/src/printer/smt2/smt2_printer.h index 4455a053c..ba6276aa2 100644 --- a/src/printer/smt2/smt2_printer.h +++ b/src/printer/smt2/smt2_printer.h @@ -30,7 +30,8 @@ namespace smt2 { enum Variant { no_variant, smt2_0_variant, // old-style 2.0 syntax, when it makes a difference - z3str_variant // old-style 2.0 and also z3str syntax + z3str_variant, // old-style 2.0 and also z3str syntax + sygus_variant // variant for sygus };/* enum Variant */ class Smt2Printer : public CVC4::Printer { -- cgit v1.2.3