diff --git a/de.prob.core/src/de/prob/eventb/translator/internal/TranslationVisitor.java b/de.prob.core/src/de/prob/eventb/translator/internal/TranslationVisitor.java
index 6c87173e3caf2410ba061b7bd9389b5576d2b63d..75d103e47c916855aeaf20cffc80d3ff6b697c96 100644
--- a/de.prob.core/src/de/prob/eventb/translator/internal/TranslationVisitor.java
+++ b/de.prob.core/src/de/prob/eventb/translator/internal/TranslationVisitor.java
@@ -450,10 +450,8 @@ public class TranslationVisitor implements ISimpleVisitor {
 	public void visitRelationalPredicate(final RelationalPredicate predicate) {
 		// EQUAL, NOTEQUAL, LT, LE, GT, GE, IN, NOTIN, SUBSET,
 		// NOTSUBSET, SUBSETEQ, NOTSUBSETEQ
-		predicate.getLeft().accept(this);
-		final PExpression left = expressions.pop();
-		predicate.getRight().accept(this);
-		final PExpression right = expressions.pop();
+		final PExpression left = getExpression(predicate.getLeft());
+		final PExpression right = getExpression(predicate.getRight());
 		final PPredicate result;
 		switch (predicate.getTag()) {
 		case Formula.EQUAL: