Exercício 03.16

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 accb ou cbab ou dacd como prefixo, bcad ou dcbd ou abca como subpalavra e adab ou abab ou dcab como sufixo}.


Resposta

M = ({a, b, c, d}, {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}, δ, q0, {q30})

δ a b c d
q0 {q1} - {q4} {q7}
q1 - - {q2} -
q2 - - {q3} -
q3 - {q10, q11} - -
q4 - {q5} - -
q5 {q6} - - -
q6 - {q10, q11, q18} - -
q7 {q8} - - -
q8 - - {q9} -
q9 - - - {q10, q14}
q10 {q10, q17} {q10, q11} {q10} {q10, q14}
q11 - - {q12} -
q12 {q13} - - -
q13 - - - {q20, q22, q27}
q14 - - {q15} -
q15 - {q16} - -
q16 - - - {q20, q27}
q17 - {q18} - -
q18 - - {q19} -
q19 {q20, q21, q24} - - -
q20 {q20, q21, q24} {q20} {q20} {q20, q27}
q21 - - - {q22}
q22 {q23} - - -
q23 - {q30} - -
q24 - {q25} - -
q25 {q26} - - -
q26 - {q30} - -
q27 - - {q28} -
q28 {q29} - - -
q29 - {q30} - -
q30 - - - -

Recomendamos

cert.br Java Magazine Kinghost