diff --git a/de.prob.core/src/de/prob/core/domainobjects/ltl/CounterExample.java b/de.prob.core/src/de/prob/core/domainobjects/ltl/CounterExample.java
index 43dffabb86cb780dba94ead192159ead771e8eed..165afd982f29eab218d31a11a6741129ea74c2fe 100644
--- a/de.prob.core/src/de/prob/core/domainobjects/ltl/CounterExample.java
+++ b/de.prob.core/src/de/prob/core/domainobjects/ltl/CounterExample.java
@@ -145,11 +145,15 @@ public class CounterExample {
 				int atomicId = atomic.getValue().intValue();
 
 				final String name = atomicFormulaNames[atomicId];
+				
+				int atomicIdSize = predicateValues.get(atomicId).size();
 
-				Logger.assertProB("CounterExample functor invalid: "+functor,
-						values.length == predicateValues.get(atomicId).size());
+				Logger.assertProB("CounterExampleProposition invalid, expected values.length = " +
+				                  values.length + ", got term with: " + atomicIdSize +
+				                   " values; Prolog term = " + term.toString(),
+						values.length == atomicIdSize);
 
-				for (int i = 0; i < predicateValues.get(atomicId).size(); i++) {
+				for (int i = 0; i < atomicIdSize; i++) {
 					values[i] = predicateValues.get(atomicId).get(i) ? CounterExampleValueType.TRUE
 							: CounterExampleValueType.FALSE;
 				}