public static void evalStates(BoolExpTree tree)
	{
		LinkedHashSet<String> table = tree.getTable();
		boolean sat = false; // satisfiability
		boolean fal = false; // falseability

		printTable(table);
		System.out.println();
		for(int i = 0; i < Math.pow(2, table.size()); i++)
		{
			HashMap<String, Boolean> state = Util.decode(i, table);
			boolean eval = tree.eval(state);

			printValues(state, eval);

			sat = sat || eval;
			fal = fal || ! eval;
			
			if(sat && fal)
			{
				break;
			}
		}
		System.out.println();
		if(sat)
		{
			System.out.println("Satisfeita");
			if(!fal) System.out.println("Tautologia");
		}
		if(fal)
		{
			System.out.println("Falsificável");
			if (!sat) System.out.println("Contradição");
		}
	}