public String translateStateFormula(StateFormula formula) {
		String translation = "";
		if (!formula.isEmpty()) {
			for (StateLiteralClause cl : formula.getClauses()) {
				if (translation != "") {
					translation += "& (";
				} else {
					translation = "(";
				}
				
				Iterator<StateLiteral> iterator = cl.getLiterals().iterator();
				while (iterator.hasNext()) {
					StateLiteral lit = iterator.next();
					String objID = objIDs.get(lit.getDomainObject());
					String inState = objID + ".state = " + lit.getState();
					if (lit.isNegated()) {
						translation += "!(" + inState + ")";
					} else {
						translation += inState;
					}
							
					if (iterator.hasNext()) {
						translation += " | ";
					}
				}
				translation += ") ";
			}
		}
		if (formula.isNegated() && !formula.isEmpty()) {
			translation = "!(" + translation + ")";
		}
		return translation;
	}