for (BinaryRule binaryRule : binaryGrammar) {
// only make one matrix for each parent state, and only use the
// basic category for that
String leftState = stateIndex.get(binaryRule.leftChild);
String leftBasic = op.langpack().basicCategory(leftState);
String rightState = stateIndex.get(binaryRule.rightChild);
String rightBasic = op.langpack().basicCategory(rightState);
binaryRules.add(leftBasic, rightBasic);
}