Index: /Code/ModelTranslator/src/de/uni_hildesheim/sse/trans/convert/MaxTermConverter2.java
===================================================================
--- /Code/ModelTranslator/src/de/uni_hildesheim/sse/trans/convert/MaxTermConverter2.java	(revision 85)
+++ /Code/ModelTranslator/src/de/uni_hildesheim/sse/trans/convert/MaxTermConverter2.java	(revision 86)
@@ -62,14 +62,16 @@
             
             decisionVar.setValue(BooleanValue.TRUE, AssignmentState.ASSIGNED);
-            if (isFalse(originalConstraint, config)) {
+            int result = checkConstraint(originalConstraint, config);
+            if (result == 0) {
                 addExpression(parts, declarationArray, var, config);
-            } else {
+            } else if (result == -1) {
                 handleConstraint(originalConstraint, declarationArray, config, parts, var + 1);
             }
             
             decisionVar.setValue(BooleanValue.FALSE, AssignmentState.ASSIGNED);
-            if (isFalse(originalConstraint, config)) {
+            result = checkConstraint(originalConstraint, config);
+            if (result == 0) {
                 addExpression(parts, declarationArray, var, config);
-            } else {
+            } else if (result == -1) {
                 handleConstraint(originalConstraint, declarationArray, config, parts, var + 1);
             }
@@ -83,19 +85,23 @@
     
     /**
-     * Tests if the boolean expression is false.
+     * Checks whether the constraint is already true, false or still undefined with the given variables set.
      * 
      * @param constraint The {@link ConstraintSyntaxTree} that represents the boolean expression
      * @param config the {@link Configuration} that holds the variable states
      * 
-     * @return whether the boolean expression is false
+     * @return 0 if the expression is false; 1 if the expression is true; -1 if the expression is undefined
      */
-    private boolean isFalse(ConstraintSyntaxTree constraint, Configuration config) {
+    private int checkConstraint(ConstraintSyntaxTree constraint, Configuration config) {
+        
         EvaluationVisitor evaluationVisitor = new EvaluationVisitor(config, null, false, null);
+        constraint.accept(evaluationVisitor);
         
-        constraint.accept(evaluationVisitor);
-        boolean isFalse = !evaluationVisitor.constraintUndefined() && evaluationVisitor.constraintFailed();
-        //evaluationVisitor.clear();
-        
-        return isFalse;
+        int result = -1;
+        if (evaluationVisitor.constraintFailed()) {
+            result = 0;
+        } else if (evaluationVisitor.constraintFulfilled()) {
+            result = 1;
+        }
+        return result;
     }
     
