public static void hypothesizeChomsky(GrammarEnvironment env, Grammar g) {
		CNFConverter converter = null;
		try {
			converter = new CNFConverter(g);
		} catch (IllegalArgumentException e) {
			JOptionPane.showMessageDialog(env, e.getMessage(),
					"Illegal Grammar", JOptionPane.ERROR_MESSAGE);
			return;
		}
		Production[] p = g.getProductions();
		boolean chomsky = true;
		for (int i = 0; i < p.length; i++)
			chomsky &= converter.isChomsky(p[i]);
		if (chomsky) {
			JOptionPane.showMessageDialog(env,
					"The grammar is already in Chomsky NF.", "Already in CNF",
					JOptionPane.ERROR_MESSAGE);
			return;
		}
		ChomskyPane cp = new ChomskyPane(env, g);
		env.add(cp, "Chomsky Converter", new CriticalTag() {
		});
		env.setActive(cp);
	}