Exercício 09.19

Desenvolva uma gramática linear à esquerda sobre o alfabeto Σ = {a, b, c} que reconheça a linguagem L = {w | w possui bac como prefixo, acb como subpalavra e bca como sufixo}.


Resposta

G = ({A, B, C, D, E, F, G, H, I, J}, {a, b, c}, P, A)
P = {< A >  ->  < B > a
     < B >  ->  < C > c
     < C >  ->  < D > b  |  < E > b
     < D >  ->  < D > a  |  < D > b  |  < D > c  |  < E > b
     < E >  ->  < F > c  |  < H > c
     < F >  ->  < G > a
     < G >  ->  < G > a  |  < G > b  |  < G > c  |  < H > c
     < H >  ->  < I > a
     < I >  ->  < J > b
     < J >  ->  ε }

Recomendamos

Java Magazine Clickarvore Vida de Programador