public void TestParsing16() {
var g = new Grammar(new List<Production> {
CFGParser.Production("<X_0> -> <X_0> <X_1>"),
CFGParser.Production("<X_2> -> 'b'"),
CFGParser.Production("<X_0> -> 'b'"),
CFGParser.Production("<X_0> -> 'a'"),
CFGParser.Production("<X_2> -> 'a'"),
}, Nonterminal.Of("X_0"));
var sentences = new List<Sentence>();
sentences.Add(Sentence.FromWords("x"));
sentences.Add(Sentence.FromLetters("abc"));
sentences.Add(Sentence.FromLetters("ab"));
sentences.Add(Sentence.FromLetters("ba"));
sentences.Add(Sentence.FromLetters("aabb"));
sentences.Add(Sentence.FromLetters("abba"));
sentences.Add(Sentence.FromLetters("a"));
sentences.Add(Sentence.FromLetters("b"));
ExecuteTest(g, sentences);
}