Converta para a Forma Normal de Greibach a gramática:
Notação Algébrica:
G = ({S, A, B, C}, {a, b}, P, S)
P = {S → AB | BC
A → AB | a
B → AA | CB | a
C → a | b}
Notação de Backus-Naur (BNF):
G = ({S, A, B, C}, {a, b}, P, S)
P = {<S> ::= <A><B> | <B><C>
<A> ::= <A><B> | a
<B> ::= <A><A> | <C><B> | a
<C> ::= a | b}
A gramática livre do contexto já está simplificada.
G = ({S, A, B, C}, {a, b}, P, S)
P = {S → AB | BC
A → AB | a
B → AA | CB | a
C → a | b}
G = ({A, B, C, D}, {a, b}, P, S)
P = {A → BC | CD
B → BC | a
C → BB | DC | a
D → a | b}
G = ({A, B, B1, C, D}, {a, b}, P, S)
P = {A → BC | CD
B → aB1 | a
B1 → CB1 | C
C → BB | DC | a
D → a | b}
G = ({A, B, B1, C, D}, {a, b}, P, S)
P = {A → BC | CD
B → aB1 | a
B1 → CB1 | C
C → aB1B | aB | DC | a
D → a | b}
G = ({A, B, B1, C, D}, {a, b}, P, S)
P = {A → aB1C | aC
| aB1BD | aBD | aCD | bCD | aD
B → aB1 | a
B1 → aB1BB1 | aBB1 | aCB1 | bCB1 | aB1
| aB1B | aB | aC | bC | a
C → aB1B | aB | aC | bC | a
D → a | b}
G = ({A, B, B1, C, D}, {a, b}, P, S)
P = {A → aB1C | aC
| aB1BD | aBD | aCD | bCD | aD
B → aB1 | a
B1 → aB1BB1 | aBB1 | aCB1 | bCB1 | aB1
| aB1B | aB | aC | bC | a
C → aB1B | aB | aC | bC | a
D → a | b}