Exercício 03.36

Desenvolva um Autômato Finito Não-Determinístico (AFN) sobre o alfabeto Σ = {a, b, c, d}, que reconheça a linguagem L = {w | w possui cac ou dad como prefixo, cdb ou dcb como subpalavra e bdc ou dba como sufixo}.


Resposta

M = ({a, b, c, d}, {q0, q1, q2, q3, q4, q5, q6, q7, q8, q9, q10, q11, q12, q13, q14, q15}, δ, q0, {q15})

δ a b c d
q0 - - {q1} {q3}
q1 {q2} - - -
q2 - - {q5, q6} -
q3 {q4} - - -
q4 - - - {q5, q8}
q5 {q5} {q5} {q5, q6} {q5, q8}
q6 - - - {q7}
q7 - {q10, q11, q14} - -
q8 - - {q9} -
q9 - {q10, q11} - -
q10 {q10} {q10, q11} {q10} {q10, q13}
q11 - - - {q12}
q12 - - {q15} -
q13 - {q14} - -
q14 {q15} - - -
q15 - - - -

Recomendamos

Revista Digital Agenda TI Um Sábado Qualquer