summaryrefslogtreecommitdiff
path: root/examples/nra-translate/smt2toredlog.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'examples/nra-translate/smt2toredlog.cpp')
-rw-r--r--examples/nra-translate/smt2toredlog.cpp23
1 files changed, 12 insertions, 11 deletions
diff --git a/examples/nra-translate/smt2toredlog.cpp b/examples/nra-translate/smt2toredlog.cpp
index eb85186be..53241413f 100644
--- a/examples/nra-translate/smt2toredlog.cpp
+++ b/examples/nra-translate/smt2toredlog.cpp
@@ -228,18 +228,19 @@ void translate_to_redlog(const map<Expr, unsigned>& variables, const Expr& asser
cout << " impl ";
translate_to_redlog(variables, assertion[1]);
cout << ")";
- break;
- case kind::IFF:
- cout << "(";
- translate_to_redlog(variables, assertion[0]);
- cout << " equiv ";
- translate_to_redlog(variables, assertion[1]);
- cout << ")";
- break;
+ break;
case kind::EQUAL:
- op = "=";
- theory = true;
- break;
+ if( assertion[0].getType().isBoolean() ){
+ cout << "(";
+ translate_to_redlog(variables, assertion[0]);
+ cout << " equiv ";
+ translate_to_redlog(variables, assertion[1]);
+ cout << ")";
+ }else{
+ op = "=";
+ theory = true;
+ }
+ break;
case kind::LT:
op = "<";
theory = true;
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback