summaryrefslogtreecommitdiff
path: root/src/parser/parser.cpp
diff options
context:
space:
mode:
authorAndrew Reynolds <andrew.j.reynolds@gmail.com>2019-04-29 20:27:20 -0500
committerGitHub <noreply@github.com>2019-04-29 20:27:20 -0500
commit19a93d5e0f924c70e7f77719e0310c730c8fbc61 (patch)
tree2ce2d68279ebb4b031ab314f7e206862abbc12f8 /src/parser/parser.cpp
parentb351cce04bc13e00b4b63f1bba403b5d549d56bf (diff)
Eliminate APPLY kind (#2976)
Diffstat (limited to 'src/parser/parser.cpp')
-rw-r--r--src/parser/parser.cpp17
1 files changed, 6 insertions, 11 deletions
diff --git a/src/parser/parser.cpp b/src/parser/parser.cpp
index bc88166d3..28489154a 100644
--- a/src/parser/parser.cpp
+++ b/src/parser/parser.cpp
@@ -128,23 +128,18 @@ Expr Parser::getExpressionForNameAndType(const std::string& name, Type t) {
}
// now, post-process the expression
assert( !expr.isNull() );
- if(isDefinedFunction(expr)) {
- // defined functions/constants are wrapped in an APPLY so that they are
- // expanded into their definition, e.g. during SmtEnginePrivate::expandDefinitions
- expr = getExprManager()->mkExpr(CVC4::kind::APPLY, expr);
- }else{
- Type te = expr.getType();
- if(te.isConstructor() && ConstructorType(te).getArity() == 0) {
- // nullary constructors have APPLY_CONSTRUCTOR kind with no children
- expr = getExprManager()->mkExpr(CVC4::kind::APPLY_CONSTRUCTOR, expr);
- }
+ Type te = expr.getType();
+ if (te.isConstructor() && ConstructorType(te).getArity() == 0)
+ {
+ // nullary constructors have APPLY_CONSTRUCTOR kind with no children
+ expr = getExprManager()->mkExpr(CVC4::kind::APPLY_CONSTRUCTOR, expr);
}
return expr;
}
Kind Parser::getKindForFunction(Expr fun) {
if(isDefinedFunction(fun)) {
- return APPLY;
+ return APPLY_UF;
}
Type t = fun.getType();
if(t.isConstructor()) {
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback