Buscar

Lista1 1_AFDs-AFNs[solucao] FTC UFMG LISTA

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Área de Teoria DCC/UFMG Fundamentos de Teoria da Computação 2020/01
SOLUÇÃO DE LISTA DE EXERCÍCIOS
Lista 1 - Parte 1/3
(Linguagens Regulares: Autômatos Finitos e Não-determinismo)
Leitura necessária:
• Introdução à Teoria da Computação, 2a Edição (Michael Sipser):
– Caṕıtulo 1.1: Autômatos Finitos
– Caṕıtulo 1.2: Não-determinismo
• Material suplementar:
– Conjunto de slides: Aula 1.1 - Autômatos Finitos e Não-determinismo.
Revisão.
1. Responda formalmente às seguintes perguntas:
(a) O que é um autômato finito determińıstico (AFD)? O que é a linguagem reconhecida por um
AFD?
Solução do professor: Um autômato finito determińıstico é uma 5-tupla (Q,Σ, δ, q0, F ), onde:
1. Q é um conjunto finito de estados,
2. Σ é um conjunto finito chamado de alfabeto,
3. δ : Q× Σ→ Q é uma função de transição,
4. q0 ∈ Q é o estado inicial, e
5. F ⊆ Q é o conjunto de estados de aceitação (ou estados finais).
A linguagem L(M) reconhecida por um AFD M é o conjunto de todas as cadeias que podem ser
formadas com o alfabeto de entrada Σ tais que, ao iniciar o processamento no estado inicial q0,
a máquina M executa transições de acordo com a função de transição δ e termina de consumir a
palavra parando num estado de aceitação qi ∈ F .
(b) O que é um autômato finito não-determińıstico (AFN)? O que é a linguagem reconhecida por um
AFN?
Solução do professor: Um autômato finito não-determińıstico é uma 5-tupla (Q,Σ, δ, q0, F ),
onde:
1. Q é um conjunto finito de estados,
2. Σ é um conjunto finito chamado de alfabeto,
3. δ : Q× Σ� → P(Q) é uma função de transição, onde Σ� = Σ ∪ {�},
4. q0 ∈ Q é o estado inicial, e
5. F ⊆ Q é o conjunto de estados de aceitação (ou estados finais).
A linguagem L(N) reconhecida por um AFN N é o conjunto de todas as cadeias que podem ser
formadas com o alfabeto de entrada Σ tais que, ao iniciar o processamento no estado inicial q0,
a máquina N executa transições de acordo com a função de transição δ, e existe ao menos uma
computação que termina de consumir a palavra parando num estado de aceitação qi ∈ F .
(c) Explique o que significa dizer que AFNs são equivalentes a AFDs.
1
Solução do professor: Dizer que AFDs e AFNs são equivalentes significa dizer que: (i) se
exite um AFD que reconhece uma linguagem, então também existe um AFN que reconhece a
mesma linguagem; e (ii) se exite um AFN que reconhece uma linguagem, então também existe
um AFD que reconhece a mesma linguagem.
(d) O que é uma linguagem regular?
Solução do professor: Uma linguagem regular é uma linguagem que pode ser reconhecida por
um autômato finito determińıstico.
Exerćıcios.
2. (Sipser 1.2)
Solução do professor: Dada no livro-texto.
3. (Sipser 1.3)
Solução do exerćıcio 1.3
4. (Sipser 1.4 - Itens (b) e (d))
Solução do professor: Dada no livro-texto.
5. (Sipser 1.5 - Itens (a) e (b))
Solução do professor: Dada no livro-texto.
6. (Sipser 1.6 - Itens (a), (b), (g) e (i))
7. (Sipser 1.7 - Itens (a) e (f))
Solução do professor: Dada no livro-texto.
8. (Sipser 1.8 - Item (a))
2
Solução do exerćıcio 1.6 (a)
Solução do exerćıcio 1.6 (b)
Solução do exerćıcio 1.6 (g)
Solução do exerćıcio 1.6 (i)
Solução do professor:
Solução do exerćıcio 1.8 (a)
9. (Sipser 1.9 - Item (a))
3
Solução do professor:
Solução do exerćıcio 1.9 (a)
10. (Sipser 1.10 - Item (a))
Solução do professor:
Solução do exerćıcio 1.10 (a)
11. (Sipser 1.11)
Solução do professor: Dada no livro-texto.
12. (Sipser 1.13)
Solução do professor: Para resolver este problema, seguimos os 4 passos a seguir.
Passo 1 Constrúımos um AFN N para a linguagem F de todas as cadeias sobre {0, 1} que contenham
um par de śımbolos 1 que estejam separados porum número ı́mpar de śımbolos.
Solução do exerćıcio 1.13 - Passo 1: construção do AFN N para F
4
Solução do exerćıcio 1.13 - Passo 2: conversão do AFN N para AFD M para F
Solução do exerćıcio 1.13 - Passo 3: AFD M ′ para F
Passo 2 Transformamos o AFN N em um AFD M equivalente.
Passo 3 Transformamos o AFD M que reconehce F em um AFD M ′ que reconhece F .
Passo 3 Notamos que no AFD M ′ os estados {A,B,D}, {A,C,D} e {A,B,C,D} são equivalentes
entre si, e, na verdade, formam um estado de tragédia (uma vez atingido qualquer um destes
estados, a cadeia de entrada deve ser rejeitada com certeza). Minimizamos o AFD M ′ ao juntar
estes três estados em um só.
Solução do exerćıcio 1.13 - Passo 4: Minimização do AFD M ′ para F
13. (Sipser 1.16)
Solução do exerćıcio 1.16 (a)
5
Solução do exerćıcio 1.16 (b)
14. (Newton Vieira 2.2-10)
O AFD abaixo reconhece o conjunto das palavras binárias que começam com 0 ou terminam com 1.
AFD do exerćıcio (Newton) 2.2-10
Usando o algoritmo visto em sala de aula, minimize este AFD. Proveja todo seu racioćınio, demons-
trando como você determinou, passo a passo, quais estados são equivalentes neste AFD.
Solução do professor: A primeira partição dos estados separa os estados finais dos não-finais:
P0 = {{[�, �], [c1, t0]}, {[c0, t0], [c0, t1], [c1, t1]}}.
As partições seguintes são:
P1 = {{[�, �]}, {[c1, t0]}, {[c0, t0], [c0, t1]}, {[c1, t1]}}
e
P2 = {{[�, �]}, {[c1, t0]}, {[c0, t0], [c0, t1]}, {[c1, t1]}}.
Como P2 não se altera em relação a P1, sabemos que os estados equivalentes são aqueles representados
em P2.
Assim podemos construir um AFD mı́nimo equivalente como na figura abaixo.
6
Solução do exerćıcio exerćıcio (Newton) 2.2-10
7

Outros materiais