S -> FC | AG F -> aFb | epsilon G -> bGc | epsilon C -> cC | epsilon A -> aA | epsilon Dimostriamo prima che ogni stringa generata appartiene al linguaggio. Le stringhe ti terminali che si possono ottenere sono (per la forma delle uniche produzioni che utilizzano S) quelle derivabili dalla stringa FC oppure quelle derivabili dalla stringa AG. Consideriamo per primo il caso FC. Una sequenza di derivazioni dirette a partire da FC, e che termina con una stringa di terminali, e' necessariamente lunga almeno due e formata da produzioni F -> aFb o C -> cC ed in cui sono presenti una produzione F -> epsilon ed una C -> epsilon, di cui una e' l'ultima. La stringa di terminali ottenuta e' quindi composta da un numero di a seguito da un ugual numero di b seguito a sua volta da un numero di c, e quindi appartiene al linguaggio. Per il caso AG, si ragiona nello stesso modo. Dimostriamo ora che ogni stringa del linguaggio e' generabile dalla grammatica. Presa una stringa del linguaggio, questa ha la forma a-k volte-ab-k volte-bc-h volte-c oppure a-k volte-ab-h volte-bc-h volte-c per certi k e h. Consideriamo il primo caso. La stringa si ottiene utilizzando la produzione S -> FC, k volte la produzione F -> aFb, poi la produzione F -> epsilon, h volte la produzione C -> cC e poi la produzione C -> epsilon. Il secondo caso si tratta in modo simile.