Informática Teórica Aula 7 Tarcisio Coutinho da Silva

Slides:



Advertisements
Apresentações semelhantes
Decidibilidade e Indecidibilidade
Advertisements

Linguagens Livre-de-contexto
FAPE - Curso de Ciência da Computação
Variantes de Máquina de Turing
Teoria da Computação MÁQUINA DE TURING (Continuação) Fabrício Dias
Universidade Federal de Campina Grande – UFCG Centro de Engenharia Elétrica e Informática – CEEI Departamento de Sistemas e Computação – DSC Máquina de.
Prof. Yandre Maldonado e Gomes da Costa
Prof. Yandre Maldonado e Gomes da Costa
3 AUTÓMATOS FINITOS.
Ling. Formais e Autômatos Autômatos finitos
Máquinas de Turing Teoria da Computação.
Envolvendo Autômatos e Linguagens Livres do Contexto
Complexidade de Linguagens Influência do Modelo de Computação
Teorema da Recursão Teoria da Computação
Linguagens Não Decidíveis
Lema da Bomba (Pumping Lemma) para linguagens livre de contexto
esquerda p/ direita,read only
Identificando Linguagens Não Regulares
NÃO DETERMINISMO Marcus Eduardo Cabral Seabra
Máquina de Turing e Computabilidade
Análise Sintática Ascendente
Autômatos Finitos Determinísticos
Construção de Compiladores
Construção de Compiladores
Exercícios Linguagens Formais.
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Compiladores, Aula Nº 7 João M. P. Cardoso
Componentes: Lucas, Ítalo, Wagner, Newton e Gabriel
Erick Vagner Cabral Igor Lucena Vitor Baptista
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
4 - DECIDIBILIDADE Universidade Federal da Paraíba
SIPSER – Capítulo 3: A tese de Church-Turing
Informática Teórica Engenharia da Computação
Ling. Formais e Autômatos AFN-ε
Autómatos de Pilha. UM NOVO MODELO PARA OS AUTÓMATOS FINITOS As linguagens regulares são aceites por autómatos finitos. E as linguagens não regulares?
Inteligência Artificial
Máquina de Turing Universal
Universidade Federal de Campina Grande – UFCG Centro de Engenharia Elétrica e Informática – CEEI Departamento de Sistemas e Computação – DSC Teoria da.
Máquinas de Turing.
LFA: Unidade 03 – Parte B Engenharia/Ciência da Computação
Redução.
A Classe NP Teoria da Computação Profa. Sandra de Amo.
Prof. André Luis Roland Tancredo Engenheiro da Computação e Pesquisador em Desenvolvimento Tecnológico para Semicondutores pelo CNPq Especialista em Microeletrônica.

Computabilidade e Linguagens Formais
Computabilidade e Linguagens Formais
Informática Teórica Aula 8 Por: Tarcisio Coutinho da Silva
tópicostópicos itens 01. Terminologia 02. Operações básicas 03. Representação de linguagens 04. Formalização de gramáticas 05. Processo de derivação 06.
Aula 6 1 Análise Lexical Compiladores, Aula Nº 6 João M. P. Cardoso.
Reverso de uma Linguagem Regular
Informática Teórica Arthur Ramos David Hulak
1 Decidibilidade continuação…. 2 Teorema: Para qualquer linguagem recursivamente enumerável é indecidível determinar se é finita Prova: Vamos reduzir.
Informática Teórica Engenharia da Computação. Teoria da Computação Contexto do que vamos começar a estudar As linguagens também podem ser definidas formalmente.
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação. Autômatos Com Pilha São como autômatos finitos não-determinísticos mas com uma pilha. São como autômatos.
Informática Teórica Engenharia da Computação. REDUTIBILIDADE POR MAPEAMENTO Formalizaremos a noção de redutibilidade de uma dentre várias maneiras. Formalizaremos.
Informática Teórica Engenharia da Computação. REDUTIBILIDADE Uma redução é uma maneira de converter um problema em outro Uma redução é uma maneira de.
1 Máquinas de Turing 3 Exercícios Máquinas de Turing com Múltiplas Fitas Máquinas de Turing Não-deterministicas A Tese/Hipótese de Church-Turing Linguagens.
Transcrição da apresentação:

Informática Teórica Aula 7 Tarcisio Coutinho da Silva {tcs5}@cin.ufpe.br

Decidibilidade Com o modelo computacional definido nós podemos agora explorar e conhecer seus limites. Primeiramente vamos estudar os problemas decidíveis os quais existe uma MT que os decidem.

Decidibilidade em LR Analisamos os problemas ligados a LR AAFD = {⟨A, w⟩| A é um AFD e w uma cadeia e w ∈ L(A)} problema da aceitação em AFD AAFN = {⟨A, w⟩| A é um AFN e w uma cadeia e w ∈ L(A)} problema da aceitação em AFN AER = {⟨A, w⟩| A é uma ER e w uma cadeia e w ∈ L(A)} problema da aceitação em ER VAFD = {⟨A⟩| A é um AFD e L(A) = ∅} problema da vacuidade de AFD EQAFD = {⟨A, B⟩| A e B são AFDs e L(A) = L(B)} problema da igualdade entre AFDs

AAFD AAFD é decidível Provamos que AAFD é decidível construindo uma MT M que o decide. M recebe como entrada ⟨A, w⟩, onde A é uma AFD e w uma cadeia. Rode A sobre a entrada w Se A aceitar a cadeia, aceite; se rejeitar, rejeite.

AAFN AAFN é decidível Provamos que AAFN é decidível construindo uma MT N que o decide. N recebe como entrada ⟨A, w⟩, onde A é uma AFN e w uma cadeia. Converta A para um AFD equivalente B Rode M sobre a entrada ⟨B, w⟩ Se M aceitar, aceite; se rejeitar, rejeite.

AER AER é decidível Provamos que AER é decidível construindo uma MT P que o decide. P recebe como entrada ⟨A, w⟩, onde A é uma ER e w uma cadeia Converta A para um AFN equivalente B Rode N sobre a entrada ⟨B, w⟩ Se N aceitar, aceite; se rejeitar, rejeite.

VAFD VAFD é decidível. Provamos que VAFD é decidível construindo uma MT T que o decide. T recebe como entrada ⟨A⟩, onde A é um AFD Marque o estado inicial de A Repita até que nenhum estado novo seja marcado. Marque qualquer estado que tenha transição chegando de um estado já marcado Se nenhum estado de aceitação estiver marcado, aceite; caso contrário, rejeite.

EQAFD EQAFD é decidível. Provamos que EQAFD é decidível construindo uma MT F que o decide. F recebe como entrada ⟨A, B⟩, onde A e B são AFD’s Monte um AFD C tal que L(C) = L(A) ∆ L(B) Rode T sobre a entrada ⟨C⟩ Se T aceitar, aceite; se rejeitar, rejeite.

Exercício Decidibilidade em LR Prove que as linguagens são decidíveis: A = {⟨B, C⟩| B é uma ER e C é um AFN e L(B) = L(C)};

Decidibilidade em LLC AGLC – problema da aceitação em GLC VGLC – problema da vacuidade de GLC

AGLC AGLC é decidível. Provamos que AGLC é decidível construindo uma MT S que o decide. S recebe como entrada ⟨A, w⟩, onde A é uma GLC e w uma cadeia Converta A para uma GLC equivalente B na FNC Liste todas as derivações de B com 2n – 1 passos Se w estiver na lista, aceite; caso contrário, rejeite.

VGLC VGLC é decidível. Provamos que VGLC é decidível construindo uma MT R que o decide. R recebe como entrada ⟨A⟩, onde A é uma GLC Marque os símbolos terminais em A Repita até que nenhuma variável seja marcada Marque qualquer variável que tiver uma regra com a cadeia toda marcada Se a variável inicial não está marcada, aceite; caso contrário, rejeite.

Exercício Decidibilidade em LLC Prove que as linguagens são decidíveis: A = {⟨B, w⟩| B é um AP e w uma cadeia e w ∈ L(B)}; C = {⟨D⟩| D é uma GLC e L(D) = Σ*}.

Exercício Decidibilidade em MTD Prove que as linguagens são decidíveis: A = {⟨B, C, w⟩| B e C são MTDs de aceitação com entrada ⟨w⟩ e w uma cadeia e w ∈ L(B) e w ∈ L(C)}; D = {⟨E, F, w⟩| E e F são MTDs de aceitação com entrada ⟨w⟩ e w uma cadeia e w ∈ L(E) ou w ∈ L(F)}; G = {⟨H, w⟩| H é MTD de aceitação com entrada ⟨w⟩ e w uma cadeia e w ∉ L(H)}.

Diagonalização Método criado por Georg Cantor para determinar a incontabilidade de um conjunto. A idéia é colocar um problema contra ele mesmo, gerando uma contradição ou um paradoxo. Como uma linguagem é um conjunto podemos utilizar esse método pra provar que uma linguagem é indecidível.

Problema da Parada É o problema da aceitação em uma MT (AMT), quando uma MT roda sobre uma cadeia ela pode aceitar, rejeitar ou ficar em loop. Não é possível distinguir se ela entrou em loop ou só está levando muito tempo pra parar. AMT é indecidível A prova utiliza o método da diagonalização que provoca um paradoxo numa MT que tenta decidir essa linguagem quando ela roda sobre sua própria descrição.

Linguagem Turing-Irreconhecível Teorema Uma linguagem é Turing-decidível se e somente se ela é Turing-reconhecível e co-Turing-reconhecível. AMT é irreconhecível Como AMT é reconhecível se seu complemento fosse reconhecível, AMT seria decidível, como não é então AMT é irreconhecível.

Obrigado! Informática Teórica Aula 7 Arthur Ramos - afr@cin.ufpe.br David Hulak - dbh@cin.ufpe.br Filipe Martins - fmm@cin.ufpe.br Hugo Azevedo - hraa@cin.ufpe.br Paulo Orlando - povqs@cin.ufpe.br Ricardo Salomão - rssj2@cin.ufpe.br Tarcisio Coutinho - tcs5@cin.ufpe.br Tiago Ferreira - tfl2@cin.ufpe.br Thyago Machado - tmc@cin.ufpe.br Vinícius Henrique - vhco@cin.ufpe.br