Exercício 04.15

Desenvolva um Autômato Finito com Movimentos Vazios (AFε) sobre o alfabeto Σ = {x, y, z, w}, que reconheça a linguagem L = {w | w possui xzxy ou wyzy ou zyyw como prefixo, ywzy ou wxxy ou xyx como subpalavra e xwzw ou yxx ou zw como sufixo}.


Resposta

M = ({x, y, z, w}, {q0, q1, q2, q3, q4, q5, q6, q7, q8, q9, q10, q11, q12, q13, q14, q15, q16, q17, q18, q19, q20, q21, q22, q23, q24, q25, q26, q27, q28, q29, q30, q31, q32, q33, q34, q35, q36, q37, q38, q39, q40, q41, q42, q43, q44}, δ, q0, {q44})

δ x y z w ε
q0 - - - - {q1, q6, q11}
q1 {q2} - - - -
q2 - - {q3} - -
q3 {q4} - - - -
q4 - {q5} - - -
q5 - - - - {q16, q18, q29}
q6 - - - {q7} -
q7 - {q8} - - -
q8 - - {q9} - -
q9 - {q10} - - -
q10 - - - - {q16, q18}
q11 - - {q12} - -
q12 - {q13} - - -
q13 - {q14} - - -
q14 - - - {q15} -
q15 - - - - {q16, q19, q23}
q16 {q16} {q16} {q16} {q16} {q17, q22, q27}
q17 - {q18} - - -
q18 - - - {q19} -
q19 - - {q20} - -
q20 - {q21} - - -
q21 - - - - {q31, q38}
q22 - - - {q23} -
q23 {q24} - - - -
q24 {q25} - - - -
q25 - {q26} - - -
q26 - - - - {q31, q38}
q27 {q28} - - - -
q28 - {q29} - - -
q29 {q30} - - - -
q30 - - - - {q31, q33, q39}
q31 {q31} {q31} {q31} {q31} {q32, q37, q41}
q32 {q33} - - - -
q33 - - - {q34} -
q34 - - {q35} - -
q35 - - - {q36} -
q36 - - - - {q44}
q37 - {q38} - - -
q38 {q39} - - - -
q39 {q40} - - - -
q40 - - - - {q44}
q41 - - {q42} - -
q42 - - - {q43} -
q43 - - - - {q44}
q44 - - - - -

Recomendamos

Revista Segurança Digital Vida de Programador Revista Tema