diff --git a/Kernel/TermTransformer.cpp b/Kernel/TermTransformer.cpp index 95e94f839f..cbcff9e7ce 100644 --- a/Kernel/TermTransformer.cpp +++ b/Kernel/TermTransformer.cpp @@ -175,6 +175,18 @@ Term* TermTransformer::transformSpecial(Term* term) } } + case Term::SF_LET_TUPLE: { + TermList binding = transform(sd->getBinding()); + TermList body = transform(*term->nthArgument(0)); + + if ((binding == sd->getBinding()) && (body == *term->nthArgument(0))) { + return term; + } else { + return Term::createTupleLet(sd->getFunctor(), sd->getTupleSymbols(), binding, body, sd->getSort()); + } + break; + } + case Term::SF_TUPLE: { Term* tupleTerm = transform(sd->getTupleTerm());