Você está na página 1de 6

15/07/2021 Prova de Teoria da Computação - 2a VA

Prova de Teoria da Computação - 2a VA


A prova será inteira pelo formulário abaixo

Avisos:
(1) Nas questões abaixo, sempre que houver duas palavras conectadas por "/" significa que
qualquer uma das duas palavras pode ser usada na frase.

(2) Os modelos de computação (modelos de algoritmos) estão TODOS abreviados:


- GLC- Gramática Livre de Contexto
- AP - Autômato de Pilha
- GSC - Gramática Sensível a Contexto
- ALL - Autômato Linearmente Limitado
- MT - Máquinas de Turing padrão (determinística)
- GI - Gramática Irrestrita
- MTN - Máquina de Turing Não-Determinística

E-mail *

prof.pablo.sampaio@gmail.com

Nome Completo: *

Pablo Sampaio

https://docs.google.com/forms/d/e/1FAIpQLSdmx5sH2Hq_ajNsWmX5LvuGuJk250CzKnB9vNiRQiKGQZRIuw/viewscore?vc=0&c=0&w=1&flr=0&… 1/6
15/07/2021 Prova de Teoria da Computação - 2a VA

Considere a GLC abaixo, de símbolo inicial S. Derive DUAS cadeias distintas de


tamanho 4 ou maior. Na sua derivação, represente cada passo usando "=>"
(símbolo de "igual" seguido do símbolo de "maior que").

(Várias respostas possíveis.) S => aXbY => aaXbbY => aabbY => aabbc || S => aXbY => abY
=> abcY => abccY => abcccY => abccc

Sobre a conversão de GLC para AP que vimos na disciplina, responda:

Cada transição "S -> XYZ" vai virar uma transição com essas características: (i) lê S
da entrada; (ii) lê X da pilha; (iii) escreve YZ na pilha

Cada não-terminal N vai dar origem a uma transição com essas características: (i) lê
N da entrada; (ii) lê N da pilha; (iii) escreve nada (vazio) na pilha.

Cada transição "S -> XYZ" vai virar uma transição com essas características: (i) lê
nada da entrada; (ii) lê S da pilha; (iii) escreve XYZ na pilha

Se a gramática tem "x" terminais e "y" produções, o AP resultante terá "x+y" estados

Cada não-terminal N vai dar origem a uma transição com essas características: (i) lê
nada da entrada; (ii) lê N da pilha; (iii) escreve nada (vazio) na pilha.

https://docs.google.com/forms/d/e/1FAIpQLSdmx5sH2Hq_ajNsWmX5LvuGuJk250CzKnB9vNiRQiKGQZRIuw/viewscore?vc=0&c=0&w=1&flr=0&… 2/6
15/07/2021 Prova de Teoria da Computação - 2a VA

Sobre as Linguagens Livres de Contexto, marque TODAS as verdadeiras:

Uma linguagem pode ser representada por uma GLC se e somente for uma linguagem
livre de contexto

Se uma linguagem tem uma árvore de derivação, a linguagem é livre de contexto

Uma gramática livre de contexto tem produções formadas apenas por não-terminais
em ambos os lados

Se uma linguagem for regular, ela é livre de contexto

Se uma linguagem é livre de contexto, então ela pode ser representada/decidida por
um AP

O que é uma Linguagem Sensível a Contexto?

É toda linguagem que contém (como elementos) produções formadas por vários
símbolos no lado esquerdo

É toda linguagem que pode ser decidida por uma Máquina de Turing que tem tempo
de execução linear O(n)

É toda linguagem que pode ser representada por meio das GSCs, que são gramáticas
que generalizam as GLCs oferecendo mais liberdade no formato das produções

É uma classe de linguagens que generaliza as Linguagens Regulares e os Problemas


de Decisão

É toda linguagem definida de forma condicional, em função de outra linguagem (que


serve de contexto)

https://docs.google.com/forms/d/e/1FAIpQLSdmx5sH2Hq_ajNsWmX5LvuGuJk250CzKnB9vNiRQiKGQZRIuw/viewscore?vc=0&c=0&w=1&flr=0&… 3/6
15/07/2021 Prova de Teoria da Computação - 2a VA

Associe cada modelo de computação com a forma que ele opera. (Lembre que
os "reconhecedores" recebem uma entrada e retornam aceita/rejeita; enquanto
os "descritivos ou geradores" descrevem um formato das cadeias ou descrevem
regras para gerar cadeias):

Reconhecedor Descritivo/Gerador

AP

GLC

GSC

ALL

MT

GI

Sobre o relacionamento entre Problemas/Linguagens Decidíveis e Indecidíveis e


outras classes de linguagens e modelos:

Toda linguagem/problema que é representada por um AP é DECIDÌVEL

Toda linguagem que não pode ser representada por uma GSC é INDECIDÍVEL

Existe linguagem que não pode ser representada por um ALL que é DECIDÍVEL

Existem linguagens livres de contexto que são INDECIDÍVEIS

Todas as classes de complexidade de tempo que vimos (P, NP, etc.) são subconjunto
da classes dos problemas DECIDÍVEIS

https://docs.google.com/forms/d/e/1FAIpQLSdmx5sH2Hq_ajNsWmX5LvuGuJk250CzKnB9vNiRQiKGQZRIuw/viewscore?vc=0&c=0&w=1&flr=0&… 4/6
15/07/2021 Prova de Teoria da Computação - 2a VA

Sobre Problemas e Linguagens Semi-Decidíveis:

Uma linguagem é semi-decidível se e somente se existe um MT que responde aceita


para toda cadeia dessa linguagem (e não importa o que a MT responda para outras
cadeias)

É uma MT que pode entrar em loop infinito

É toda linguagem que tem algum subconjunto decidível

Uma linguagem é semi-decidível se e somente se ela aceita toda MT da linguagem,


mas rejeita ou entra em loop para MTs que não são da linguagem

Um problema é semi-decidível se e somente se existe uma MT que aceita somente as


entradas que o problema aceita; mas a MT rejeita ou entra em loop infinito com
outras cadeias

Sobre Problemas/Linguagens Decidíveis, Indecidíveis e Semi-Decidíveis:

Toda linguagem semi-decidível é também decidível

Toda linguagem indecidível não é semi-decidível

O problema da parada é um problema indecidível

Não existe intersecção entre as três (uma linguagem que pertença às três classes)

O problema da aceitação é um problema semi-decidível

Descreva o problema da Vacuidade de MTs. (1) Informe o que a entrada


representa e qual a saída esperada. (2) Informe a classe de linguagem a que este
problema pertence.

(1) Entrada: uma máquina de Turing M representada como uma cadeia <M>. Saída
esperada: ACEITA, caso M não aceite nenhuma cadeia do seu alfabeto de entrada; REJEITA,
se M aceita pelo menos uma cadeia do seu alfabeto. (2) Pertence à classe dos problemas
indecidíveis e não é semi-decidível.

https://docs.google.com/forms/d/e/1FAIpQLSdmx5sH2Hq_ajNsWmX5LvuGuJk250CzKnB9vNiRQiKGQZRIuw/viewscore?vc=0&c=0&w=1&flr=0&… 5/6
15/07/2021 Prova de Teoria da Computação - 2a VA

Sobre o problema "CLIQUE". (1) Explique o problema, informando entrada e saída


esperadas. (2) Explique como provar que P=NP usando este problema (ou seja,
qual "informação" você precisaria descobrir sobre este problema, para provar
P=NP?)

(1) O problema CLIQUE tem a ver com o desafio de encontrar, em um grafo G, um conjunto
de K vértices tais que cada um desses vértices tenha aresta para todos os outros do
conjunto (ou seja, eles devem ter todas as arestas possíveis entre si). Entrada: o par <G, K>.
Saída: ACEITA, se existirem K vértices com todas as arestas entre si; REJEITA, caso
contrário. (2) Bastaria mostrar um algoritmo determinístico de tempo polinomial para
CLIQUE (que não é conhecido, no presente momento). Isso provaria que CLIQUE está em P.
Como CLIQUE também é NP-Completo (isso é conhecido atualmente), isso representaria
que todo problema da classe NP poderia ser resolvido de forma determinística polinomial
(ao reduzirmos/adaptarmos cada um deles para CLIQUE). Isso provaria que toda a classe
NP estaria em P. E como P já está em NP (isso é conhecido), a conclusão é que P=NP.

Sobre as classes de complexidade:

A classe P representa os problemas considerados "tratáveis" e a classe NP


representa precisamente os problemas "intratáveis"

A classe P é definida a partir da MT padrão, enquanto a classe NP é definida a partir


da MTN (não-determinística)

Todo problema que pode ser resolvido por um algoritmo escrito na linguagem C que
tenha tempo de execução polinomial está na classe P

Dado um problema NP-Completo qualquer "A" (de sua escolha), se você tiver um
algoritmo para "A", você pode usá-lo para resolver TODOS os problemas da classe P

Até onde se sabe no momento, não existe problema NP-Completo que esteja também
em P

Dado um problema NP-Completo qualquer "A" (de sua escolha), se você tiver um
algoritmo para "A", você pode usá-lo para resolver TODOS os problemas da classe NP

Este formulário foi criado em UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO.

Formulários

https://docs.google.com/forms/d/e/1FAIpQLSdmx5sH2Hq_ajNsWmX5LvuGuJk250CzKnB9vNiRQiKGQZRIuw/viewscore?vc=0&c=0&w=1&flr=0&… 6/6

Você também pode gostar