Exercício 03.45

Desenvolva um Autômato Finito Não-Determinístico (AFN) sobre o alfabeto Σ = {w, x, y, z}, que reconheça a linguagem L = {w | w possui wxy ou xyy ou zwx como prefixo, xyz ou xzw ou ywz como subpalavra e wxz ou zyw ou yzy como sufixo}.


Resposta

M = ({w, x, y, z}, {q0, q1, q2, q3, q4, q5, q6, q7, q8, q9, q10, q11, q12, q13, q14, q15, q16, q17, q18, q19, q20, q21}, δ, q0, {q21})

δ w x y z
q0 {q1} {q3} - {q5}
q1 - {q2} - -
q2 - - {q7, q9, q12} -
q3 - - {q4} -
q4 - - {q7, q12} -
q5 {q6} - - -
q6 - {q7, q8, q10} - -
q7 {q7} {q7, q8, q10} {q7, q12} {q7}
q8 - - {q9} -
q9 - - - {q14, q17, q20}
q10 - - - {q11}
q11 {q14, q15} - - -
q12 {q13} - - -
q13 - - - {q14, q17}
q14 {q14, q15} {q14} {q14, q19} {q14, q17}
q15 - {q16} - -
q16 - - - {q21}
q17 - - {q18} -
q18 {q21} - - -
q19 - - - {q20}
q20 - - {q21} -
q21 - - - -

Recomendamos

Vida de Programador Revista Digital Kinghost