Exercício 07.35

Desenvolva uma Gramática Livre do Contexto (GLC) sobre o alfabeto Σ = {1, 2, 3}, que reconheça a linguagem L = {w | w possui 132 ou 223 como prefixo, 232 ou 312 como subpalavra e 121 ou 321 como sufixo}.


Resposta com recursividade à esquerda

G = ({exp, pre, presub, sub, subsuf, suf, alf}, {1, 2, 3}, P, exp)
P = {< exp >     ->  < pre > < alf > < sub > < alf > < suf >
                 |   < presub > < alf > < suf >
                 |   < pre > < alf > < subsuf >
                 |   132321
                 |   223121
                 |   22321
     < pre >     ->  132
                 |   223
     < presub >  ->  13232
                 |   22312
                 |   2232
     < sub >     ->  232
                 |   312
     < subsuf >  ->  2321
                 |   3121
     < suf >     ->  121 
                 |   321
     < alf >     ->  < alf > 1
                 |   < alf > 2
                 |   < alf > 3
                 |   ε  }

Resposta com recursividade à direita

G = ({exp, pre, presub, sub, subsuf, suf, alf}, {1, 2, 3}, P, exp)
P = {< exp >     ->  < pre > < alf > < sub > < alf > < suf >
                 |   < presub > < alf > < suf >
                 |   < pre > < alf > < subsuf >
                 |   132321
                 |   223121
                 |   22321
     < pre >     ->  132
                 |   223
     < presub >  ->  13232
                 |   22312
                 |   2232
     < sub >     ->  232
                 |   312
     < subsuf >  ->  2321
                 |   3121
     < suf >     ->  121 
                 |   321
     < alf >     ->  1 < alf >
                 |   2 < alf >
                 |   3 < alf >
                 |   ε  }

Recomendamos

Revista Segurança Digital cert.br Agenda TI