Buscar

LINGUAGENS FORMAIS, AUTÔMATOS E COMPILADORES

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 5 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

Prévia do material em texto

Explicação: 
Todas as gramáticas do tipo 2, livres de contexto, devem ter suas regras de produção atendendo às seguintes 
restrições: 1. Todas as regras de produção devem ser do tipo (Não-terminal) → (Terminal ou qualquer 
combinação de terminal e não-terminal); 2. O tamanho do não-terminal do lado esquerdo da produção deve ser 
igual a 1, ou seja |Não-terminal| = 1. A gramática do enunciado atende a essas duas restrições. 
 
Adaptado do livro Linz, Peter. An Introduction to Formal Languages and Automata, 6. Ed. Jones & Bartlett 
Learning, 2016. 
 
Qual o tipo da seguinte gramática? 
 
S → aS/A 
aS → aa 
A → a 
Sensível ao Contexto 
Regular 
Livre de Contexto 
Com estrutura de frase 
Irrestrito 
Respondido em 06/09/2022 19:54:14 
 
Explicação: 
Todas as gramáticas do tipo 2, livres de contexto, devem ter suas regras de produção atendendo às seguintes 
restrições: 1. Todas as regras de produção devem ser do tipo (Não-terminal) → (Terminal ou qualquer 
combinação de terminal e não-terminal); 2. O tamanho do não-terminal do lado esquerdo da produção deve ser 
igual a 1, ou seja |Não-terminal| = 1. A gramática do enunciado tem uma regra que torna sensível ao contexto, 
ao ter um símbolo não-terminal do lado esquerdo da produção. 
 
 
 
 
 
 
 
 
(POSCOMP / 2013) Sobre o Lema do Bombeamento (pumping lemma) para linguagens regulares, 
considere as afirmativas a seguir. 
 
Acerto: 1 , 0 / 1 , 0 
 
 
Acerto: 1 , 0 / 1 , 0 
A expressão regular que permite reconhecer a digitação correta de CPF no Brasil é: 
\\d{2}\\.\\d{3}\\.\\d{3}\\-\\d{2} 
^\\d{3}\\.\\d{3}\\.\\d{3}\\-\\d{3}$ 
^\\d{3}\\-\\d{3}\\-\\d{3}\\-\\d{2}$ 
 ^\\d{3}\\.\\d{3}\\.\\d{3}\\-\\d{2}$ 
^\\d{3}\\.\\d{3}\\.\\d{3}\\.\\d{2}$ 
Respondido em 06/09/2022 19:44:07 
 
 
Explicação: 
Gabarito: ̂ \\d{3}\\.\\d{3}\\.\\d{3}\\-\\d{2}$ 
Justificativa: Sabemos que a expressão deverá iniciar com 3 dígitos separados por um ponto: ^\\d{3}\\. 
Devemos repetir três vezes esse padrão, colocar o separador "-", e mais dois dígitos verificadores. Lembrando 
que o '^' marca o início e o '$' o final da expressão regular. Assim, a expressão regular em Java para CPF será: 
^\\d{3}\\.\\d{3}\\.\\d{3}\\-\\d{2}$ 
 
Acerto: 0 , 0 / 1 , 0 
 
∈ 
 
I. Se o alfabeto P = {a, b}, então pode-se provar por absurdo, por meio do Bombeamento, que a 
linguagemL1 = {w Σ* | w termina com b} não é regular. 
II. Se o alfabeto P = {a, b}, então pode-se provar por absurdo, por meio do Bombeamento, que a 
linguagemL2 = {(an)2 | n ≥ 1} não é regular. 
III.Se o alfabeto P = {a, b}, então pode-se provar por absurdo, por meio do Bombeamento, que 
aslinguagens L3 = {an! | n ≥ 1}, L4 = {anbamban+m | n, m ≥ 1} e L5 = {am+1bn+1 | 2 ≤ n ≤ m ≤ 3n} 
não são regulares. 
IV. Se a linguagem for do tipo 3, então aplica-se o Bombeamento. 
 
Assinale a alternativa correta. 
Somente as afirmativas II, III e IV são corretas. 
Somente as afirmativas I e II são corretas. 
Somente as afirmativas III e IV são corretas. 
Somente as afirmativas I, II e III são corretas. 
Somente as afirmativas I e IV são corretas. 
Respondido em 06/09/2022 19:54:48 
 
 
Explicação: 
Gabarito: Somente as afirmativas II, III e IV são corretas. 
Justificativa: vamos aplicar o lema do bombeamento no item I. w é qualquer cadeia de 'a' e 'b' que termina 
em b. Seja a cadeia w = abaab. Vamos dividir essa em três: x = 'a', y = 'ba' e z = 'ab'. Claramente o nosso 
comprimento de bombeamento é y = 2 ('ba') e p = 5. Assim vamos satisfazer as condições do lema: 
1. |y| ≥ 1 
2. |xy| ≤ p 
3. para todo i ≥ 0, xyiz L y é a subcadeia que pode ser bombeada (removida ou repetida 
arbitrariamente). 
Removendo y temos a cadeia aab que pertence a L1. Repetindo y duas vezes temos a cadeia ababaab que 
pertence a L1, uma vez que pertence a Σ* e termina em 'b'. É fácil perceber que a repetição de y dentro de w 
vai continuar satisfazendo a condição de pertencer a Σ* e terminar em 'b'. Portanto, não foi possível provar que 
L1 não é regular. Como o lema foi satisfeito para L1, então L pode ou não ser regular. Nada se pode afirmar e a 
afirmativa I é falsa. Todas as outras são verdadeiras 
 
 
1000111 
0011000 
1101111 
0010000 
1111111 
 
Acerto: 0 , 0 / 1 , 0 
Considere o seguinte AF com saída 
A cadeia de saída desse AF para uma entrada 0011000 é: 
 
 
 
 
 
 
Respondido em 06/09/2022 19:55:56 
 
 
Explicação: 
Gabarito: 1101111 
Justificativa: O AF lê o primeiro zero, permanece em q1 e emite um "1". Ao ler o segundo zero emite 1 e 
permanece em q1. O caractere seguinte é "1" ele e muda para o estado q2 e emite "0". No estado q2 lê o 
próximo "1", volta para o estado q1 e emite "1". No estado q1 são lidos os caracteres "0" e o AF permanece em 
q1 emitindo a saída "1" por mais três vezes. 
 
 
 
 
 
 
 
O que é verdadeiro para a seguinte GLC? 
S → aA | λ 
A → bA | a 
Como S produz λ, λ pode ser removido. 
A produção nula pode ser removida. 
Como A não produz λ, λ pode ser removido. 
A produção nula não pode ser removida. 
Como A não produz λ, λ não pode ser removido. 
Respondido em 06/09/2022 19:56:23 
 
 
 
 
 
 
 
Acerto: 1 , 0 / 1 , 0 
A diferença entre autômatos finitos e autômatos de pilha está na: 
 Pilha. 
Controle finito. 
Direção do movimento da cabeça de leitura. 
Fita de entrada. 
Cabeça de leitura. 
Respondido em 06/09/2022 19:56:06 
 
 
Explicação: 
Gabarito: Pilha. 
Justificativa: Os autômatos de Pilha são o formato de máquina de autômatos finitos para linguagens livres de 
contexto. É um autômato finito com a anexação de uma quantidade auxiliar de armazenamento chamada de 
pilha. A pilha é o componente do PDA que o diferencia dos autômatos finitos. 
 
Acerto: 0 , 0 / 1 , 0 
 
Explicação: 
Gabarito: A produção nula não pode ser removida. 
Justificativa: Se S pode ser derivado em λ, então a produção nula não pode ser removida. 
 
Acerto: 0 , 0 / 1 , 0 
 
 
Uma analogia matemática simples do conceito de redutibilidade ocorre quando desejamos medir a área de 
um retângulo. Nesse sentido, podemos reduzir o problema a medição da largura e comprimento. Acerca dos 
conceitos de redução, o que é verdadeiro para redutibilidade? 
 
Se A se reduz a B, podemos usar uma solução de A para resolver B. 
Converter um problema resolvido em outro problema não resolvido. 
Se A é redutível a B e B é um problema indecidível, então A é um problema decidível. 
Converter um problema não resolvido em outro problema não resolvido. 
Se A se reduz a B, podemos usar uma solução de B para resolver A. 
Respondido em 06/09/2022 19:56:36 
 
 
Explicação: 
Pela definição de redutibilidade: Uma redução é um processo de conversão de um problema em outro problema 
resolvido de tal forma que a solução do segundo problema possa ser usada para resolver o primeiro problema. 
 
Uma redução é um processo de conversão de um problema em outro problema resolvido de tal forma que 
a solução do segundo problema possa ser usada para resolver o primeiro problema. Em particular, a 
redutibilidade pode ser usada para demonstrar que problemas são indecidíveis ou decidíveis. Nesse 
contexto, avalie as seguintes afirmativas: 
I. A Redutibilidade não diz nada em resolver os problemas A ou B sozinhos, mas somente sobre a 
resolução de A na presença de um método para resolver B. 
II. Reduções apresentam um importante papel em classificar os problemas em decidíveis ou 
indecidíveis. III. Se A é redutível a B e B é um problema indecidível, então A é um problema 
decidível. 
 
Quais as afirmativas verdadeiras? 
II e III. 
III. 
I e II. 
I e III. 
I, II e III. 
Respondido em 06/09/2022 19:56:32 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Acerto: 0 , 0 / 1 , 0 
 
Explicação: 
Na afirmativa III, se A é redutível a B e B é um problema indecidível,então A é um problema indecidível.

Outros materiais