private void checkGrammarConsistency(Grammar newGrammar) {
			Counter<UnaryRule> originalUnaryCounter = new Counter<UnaryRule>();
			Counter<BinaryRule> originalBinaryCounter = new Counter<BinaryRule>();
			for (UnaryRule unaryRule : newGrammar.getUnaryRules()) {
				originalUnaryCounter.incrementCount(getBaseRule(unaryRule),
						newGrammar.unaryRuleCounter.getCount(unaryRule));
			}
			for (BinaryRule binaryRule : newGrammar.getBinaryRules()) {
				originalBinaryCounter.incrementCount(getBaseRule(binaryRule),
						newGrammar.binaryRuleCounter.getCount(binaryRule));
			}
			int matchCount = 0, all = 0;
			for (UnaryRule unaryRule : unsplitGrammar.getUnaryRules()) {
				double oldscore = unsplitGrammar.unaryRuleCounter
						.getCount(unaryRule);
				double newscore = originalUnaryCounter.getCount(unaryRule);
				if (Math.abs(oldscore - newscore) < 1E-6) {
					matchCount++;
				} else {
					all = all + 1 - 1;
				}
				all++;
			}
			for (BinaryRule binaryRule : unsplitGrammar.getBinaryRules()) {
				double oldscore = unsplitGrammar.binaryRuleCounter
						.getCount(binaryRule);
				double newscore = originalBinaryCounter.getCount(binaryRule);
				if (Math.abs(oldscore - newscore) < 1E-6) {
					matchCount++;
				} else {
					all = all + 1 - 1;
				}
				all++;
			}
			System.out.println("New old grammar match " + 1.0 * matchCount
					/ all);
		}