summaryrefslogtreecommitdiff
path: root/src/printer
diff options
context:
space:
mode:
authorTim King <taking@cs.nyu.edu>2014-03-05 12:04:03 -0500
committerTim King <taking@cs.nyu.edu>2014-03-05 12:12:36 -0500
commitdf554608cc47684be08d8be7c427027b7c5e8eb2 (patch)
treeb884d51b8a6ebe8841af04b09132430908e204f8 /src/printer
parent7062bbe7ed2ad5d0b0a94badd624808d7dc91bb2 (diff)
Improving support for POW in arithmetic. Resolves bug 549.
Diffstat (limited to 'src/printer')
-rw-r--r--src/printer/cvc/cvc_printer.cpp4
-rw-r--r--src/printer/smt2/smt2_printer.cpp4
2 files changed, 7 insertions, 1 deletions
diff --git a/src/printer/cvc/cvc_printer.cpp b/src/printer/cvc/cvc_printer.cpp
index ca463d10b..4d784c383 100644
--- a/src/printer/cvc/cvc_printer.cpp
+++ b/src/printer/cvc/cvc_printer.cpp
@@ -478,6 +478,10 @@ void CvcPrinter::toStream(std::ostream& out, TNode n, int depth, bool types, boo
op << ">=";
opType = INFIX;
break;
+ case kind::POW:
+ op << '^';
+ opType = INFIX;
+ break;
// BITVECTORS
case kind::BITVECTOR_XOR:
diff --git a/src/printer/smt2/smt2_printer.cpp b/src/printer/smt2/smt2_printer.cpp
index dd6eac0ff..849d5c0a5 100644
--- a/src/printer/smt2/smt2_printer.cpp
+++ b/src/printer/smt2/smt2_printer.cpp
@@ -281,7 +281,8 @@ void Smt2Printer::toStream(std::ostream& out, TNode n,
case kind::ABS:
case kind::IS_INTEGER:
case kind::TO_INTEGER:
- case kind::TO_REAL: out << smtKindString(k) << " "; break;
+ case kind::TO_REAL:
+ case kind::POW: out << smtKindString(k) << " "; break;
case kind::DIVISIBLE:
out << "(_ divisible " << n.getOperator().getConst<Divisible>().k << ")";
@@ -545,6 +546,7 @@ static string smtKindString(Kind k) throw() {
case kind::IS_INTEGER: return "is_int";
case kind::TO_INTEGER: return "to_int";
case kind::TO_REAL: return "to_real";
+ case kind::POW: return "^";
// arrays theory
case kind::SELECT: return "select";
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback