private String[] getCombinations(String[] variables) {
		ArrayList list = new ArrayList();
		for (int k = 0; k < ((int) Math.pow(2, variables.length)); k++) {
			String comb = pad(Integer.toBinaryString(k), variables.length);
			list.add(getRepresentation(comb, variables));
		}
		return (String[]) list.toArray(new String[0]);
	}