Considerando-se a definição de autômatos finitos, assinale a única alternativa que contém somente cadeias de caracteres totalmente aceitas pelo autômato finito apresentado a seguir.
M = ({A, B}, {q0, q1, q2, q3}, δ, q0, {q2})
a. BA, BAAB, BABABA
b. BA, BABB, BABABA
c. BA, BABA, BABABA
d. BA, BABA, BAABBA
e. BA, BABA, BABBAB
Uma palavra α é um prefixo de outra palavra β se for possível escrever β como sendo αγ, admitindo-se a possibilidade de γ = ε. Uma palavra α é uma subpalavra de outra palavra β se for possível escrever β como sendo γαδ, admitindo-se a possibilidade de γ ou δ ou ambos serem palavras vazias (ε). Uma palavra α é um sufixo de outra palavra β se for possível escrever β como sendo γα, admitindo-se a possibilidade de γ = ε. Analise as seguintes afirmativas sobre prefixos, subpalavras e sufixos.
A análise permite concluir que:
a. Apenas as afirmativas I e II estão corretas.
b. Apenas as afirmativas I e III estão corretas.
c. Apenas as afirmativas II e III estão corretas.
d. Apenas as afirmativas II e IV estão corretas.
e. Apenas as afirmativas III e IV estão corretas.
Como alternativa para a representação dos conjuntos regulares, visando obter maior concisão e facilidade de manipulação, Kleene desenvolveu, na década de 1950, a notação das expressões regulares. Assinale a única alternativa onde está CORRETA a lista formada somente por todas as cadeias de caracteres reconhecidas pela expressão regular [A-Z][a-z]*[_][A-Z][A-Z] (padrão unix). As cadeias estão separadas por vírgula.
a. Vitoria_ES, Goiania_GO, Fortaleza_CE, Nova_Era_MG, Niteroi_RJ
b. Google_GG, Facebook_FB, Borland__BO, Microsoft_MS, Oracle_OR
c. Mangue_Seco_BA, Cachoeiro_RS, Manaus_AM, Porto_Alegre_RS, Chapeco_SC
d. Guanabara_RJ, Intel_IL, RecifeĀ-PE, Adobe_AD, Niteroi_RJ
e. Cachoeiro_ES, Maceio_AL, Fortaleza_CE, Criciuma_SC, Niteroi_RJ
Da mesma forma como ocorre com as expressões regulares, os autômatos finitos também possibilitam a formalização das linguagens regulares. No entanto, diferentemente daquela notação, que constituem dispositivos de geração de sentenças, os autômatos finitos são dispositivos de aceitação de sentenças. Considere o autômato finito determinístico a seguir.
M = ({0, 1}, {q0, q1}, δ, q0, {q1})
Analise as afirmativas apresentadas a seguir:
A análise permite concluir que:
a. Apenas as afirmativas I e II estão corretas.
b. Apenas as afirmativas I e III estão corretas.
c. Apenas as afirmativas II e III estão corretas.
d. Apenas as afirmativas II e IV estão corretas.
e. Apenas as afirmativas III e IV estão corretas.
Em geral, a aplicação do método da construção de subconjuntos produz autômatos com estados redundantes, ou seja, estados que poderiam ser combinados em um único estado sem alterar a linguagem que é reconhecida. Analise as seguintes afirmativas sobre a aplicação do processo de minimização de estados ao autômato finito determinístico apresentado a seguir.
M = ({a, b}, {q0, q1, q2, q3, q4}, δ, q0, {q1, q2, q3, q4})
P = {C0, C1, C2}, com C0 = {q3}, C1 = {q1, q2, q4} e C2 = {q0}
A análise permite concluir que:
a. Apenas as afirmativas I e II estão corretas.
b. Apenas as afirmativas I e III estão corretas.
c. Apenas as afirmativas II e III estão corretas.
d. Apenas as afirmativas II e IV estão corretas.
e. Apenas as afirmativas III e IV estão corretas.
Um sistema de estados finitos é um modelo matemático de sistemas com entradas e saídas discretas. Pode assumir um número finito e pré-definido de estados. Cada estado resume somente as informações do passado necessárias para determinar as ações para a próxima entrada. Desenvolva um autômato finito determinístico sobre o alfabeto Σ = {a, b, c, d} que reconheça a linguagem L = {w | w possui adc ou cba como prefixo, abcd ou dcac como subpalavra e caa ou cdc como sufixo}.
M = ({a, b, c, d}, {q0, q1, q2, q3, q4, q5, q6, q7, q8, q9, q10, q11, q12, q13, q14, q15, q16, q17}, δ, q0, {q15, q17})
Apesar do elevado interesse prático que recai sobre os autômatos finitos determinísticos, uma vez que eles servem como base para a construção de programas extremamente eficientes, do ponto de vista teórico há também um interesse muito grande pelos autômatos finitos não-determinismos, devido à maior facilidade com que eles permitem a demonstração de certos teoremas. Do ponto de vista prático, os autômatos finitos não-determinismos são, muitas vezes, mais intuitivos do que os correspondentes autômatos finitos determinísticos, o que os torna, geralmente, mais adequados para a análise e especificação de linguagens regulares. Desenvolva um autômato finito não-determinístico sobre o alfabeto Σ = {w, x, y, z} que reconheça a linguagem L = {w | w possui wyw ou xxw ou zwz como prefixo, wzxyx ou ywzxz ou zxywz como subpalavra e xzzx ou yxyw ou zzxy como sufixo}.
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, q22, q23, q24, q25, q26, q27, q28, q29, q30}, δ, q0, {q30})
O método da construção de subconjuntos é um procedimento sistemático que converte um autômato finito com movimentos vazios num autômato finito determinístico. O princípio associado a esse método é criar novos estados, no autômato finito determinístico, que estejam associados a todas as possibilidades de estados originais em um dado momento da análise da sentença no processo de reconhecimento. Para cada estado original, essas possibilidades incluem o estado do autômato finito com movimentos vazios e todos os estados que podem ser atingidos a partir dele com transições pela string vazia. Converta, usando o método da construção de subconjuntos, o autômato finito não-determinístico com movimentos vazios apresentado a seguir para um autômato finito determinístico. É obrigatório a apresentação das tabelas utilizadas na determinação dos estados do autômato finito determinístico.
M = ({a, b, c}, {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}, δ, q0, {q26})
M = ({a, b, c}, {q0, q1, q2, q3, q4, q5, q6, q7, q8}, δ, q0, {q5})