• Nenhum resultado encontrado

Aula 23 Cap 4.1 Linguagens Decidíveis (cont.) Cap Linguagens que NÃO são Turingreconhecíveis

N/A
N/A
Protected

Academic year: 2021

Share "Aula 23 Cap 4.1 Linguagens Decidíveis (cont.) Cap Linguagens que NÃO são Turingreconhecíveis"

Copied!
52
0
0

Texto

(1)

ACH2043

INTRODUÇÃO À TEORIA DA COMPUTAÇÃO

Aula 23

Cap 4.1 – Linguagens Decidíveis (cont.)

Cap 4.2 - Linguagens que NÃO são

(2)

2

Profa. Ariane Machado Lima

(3)

Cap 4 – Decidibilidade

(4)

4

Profa. Ariane Machado Lima

Motivação

Saber se um problema é indecidível é importante para podermos fazer uma simplificação do mesmo a fim de propormos uma solução

(5)

Como provar que um problema é decidível?

1) Escreva-o na forma de uma linguagem 2) Mostre uma MT que a DECIDE:

a) Descreva a máquina b) Mostre que

para toda sequência da linguagem a MT PÁRA e aceita

(6)

6

Profa. Ariane Machado Lima

Problemas decidíveis concernentes a linguagens

regulares

AAFD = {<B,w> | B é um AFD que aceita a cadeia de entrada w}

(7)

Equivalência de dois AFDs

(8)

8

Profa. Ariane Machado Lima

Problemas decidíveis concernentes a linguagens

livres de contexto

(9)

Aula de hoje – novos problemas

relativos a linguagens livres de

(10)

10

Profa. Ariane Machado Lima

(11)
(12)

12

Profa. Ariane Machado Lima

Vacuidade de GLCs

(13)

Vacuidade de GLCs

 Testar se a GLC gera alguma cadeia de terminais => testar se a

variável inicial gera uma cadeia de terminais

 Marcar cada símbolo que gera uma cadeia de terminais

 Terminais

 Variáveis que estão no lado esquerdo de pelo menos uma regra cujo lado

direito está todo marcado

 Verificar se a variável inicial está marcada

(14)

14

Profa. Ariane Machado Lima

Vacuidade de GLCs

 Testar se a GLC gera alguma cadeia de terminais => testar se a

variável inicial gera uma cadeia de terminais

 Marcar cada símbolo que gera uma cadeia de terminais

 Terminais

 Variáveis que estão no lado esquerdo de pelo menos uma regra cujo lado

direito está todo marcado

(15)
(16)

16

Profa. Ariane Machado Lima

(17)

Equivalência de GLCs

(18)

18

Profa. Ariane Machado Lima

Equivalência de GLCs

 Técnica semelhante a mostrar se dois AFDs são equivalentes?  Problema: LLCs não são fechadas com relação às operações de

(19)

Equivalência de GLCs

 Técnica semelhante a mostrar se dois AFDs são equivalentes?  Problema: LLCs não são fechadas com relação às operações de

complementação e intersecção!

 Na verdade, EQ

(20)

20

Profa. Ariane Machado Lima

Linguagens regulares (tipo 3)

Linguagens livres de contexto (tipo 2)

Linguagens sensíveis ao contexto (tipo 1)

Linguagens irrestritas ou recursivamente enumeráveis

(tipo 0)

Hierarquia de Chomsky

Linguagens não recursivas (não decidíveis)

(ex: EQGLC)

Linguagens recursivas (decidíveis)

(21)

Cap 4.2

(22)

22

Profa. Ariane Machado Lima

Limites da computação

 Existem problemas que são Turing-reconhecíveis mas NÃO

Turing-decidíveis

 Existem problemas que NÃO são Turing-reconhecíveis?

(Insolúveis)

SIM!

Ex: verificação de software é insolúvel (dado um programa e sua especificação, verificar se o programa está correto)

(23)

Limites da computação

 Existem problemas que são Turing-reconhecíveis mas NÃO

Turing-decidíveis

 Existem problemas que NÃO são Turing-reconhecíveis?

(Insolúveis)

SIM!

(24)

24

Profa. Ariane Machado Lima

Limites da computação

 Para provar, precisamos primeiro de alguns resultados da

(25)

Determinação de tamanho de conjuntos

 Comparar o tamanho de conjuntos finitos é fácil  E para conjuntos infinitos?

 Georg Cantor: dois conjuntos infinitos têm o mesmo tamanho se

seus elementos puderem ser emparelhados

(26)

26

(27)
(28)

28

Profa. Ariane Machado Lima

Exemplo – N (naturais) e os naturais pares

 f(n) = 2n

(29)
(30)

30

Profa. Ariane Machado Lima

(31)
(32)

32

Profa. Ariane Machado Lima

Exemplo – R (reais) é contável?

 Qualquer número com representação decimal

 Inclui números como π = 3,1415926..., √2 = 1,4142135...  Como seria f?

(33)

Exemplo – R (reais) é contável?

 Qualquer número com representação decimal

 Inclui números como π = 3,1415926..., √2 = 1,4142135...  Como seria f?

(34)

34

Profa. Ariane Machado Lima

(35)

R é incontável

 Vamos mostrar que não existe uma correpondência f entre N e R  Prova por contradição: vamos assumir que f existe e contruir um x

(36)

36

Profa. Ariane Machado Lima

R é incontável - Prova

 Vamos assumir que f existe  Por exemplo:

 Vamos contruir um x que seja diferente de cada real f(i) emparelhado com o natural i

Construimos x entre 0 e 1 cujo i-ésimo dígito após a vírgula seja diferente do i-ésimo dígito de f(i) Logo, x não é igual a nenhum f(i) → CONTRADIÇÃO !!!

Obs.: escolhemos dígitos diferentes de 0 e 9 (para evitar problemas como 0,1999.... ser igual a 0,200....)

(37)

R é incontável – Prova

 Vamos assumir que f existe  Por exemplo:

 Vamos contruir um x que seja diferente de cada real f(i) emparelhado com o natural i

 Construimos x entre 0 e 1 cujo i-ésimo dígito após a vírgula seja diferente do i-ésimo dígito de f(i)

(38)

38

Profa. Ariane Machado Lima

R é incontável – Prova

DIAGONALIZAÇÃO

 Vamos assumir que f existe  Por exemplo:

 Vamos contruir um x que seja diferente de cada real f(i) emparelhado com o natural i

 Construimos x entre 0 e 1 cujo i-ésimo dígito após a vírgula seja diferente do i-ésimo dígito de f(i)  Logo, x não é igual a nenhum f(i)

 Obs.: escolhemos dígitos diferentes de 0 e 9 (para evitar problemas como 0,1999.... ser igual a

(39)

O que isso tem a ver com Teoria da Computação

?

(40)

40

Profa. Ariane Machado Lima

O que isso tem a ver com Teoria da Computação

?

(41)

O que isso tem a ver com Teoria da Computação

?

 Ideia da Prova: vamos mostrar que:

(42)

42

Profa. Ariane Machado Lima

O que isso tem a ver com Teoria da Computação

?

 Ideia da Prova: vamos mostrar que:

– Há um conjunto contável de Máquinas de Turing

– Há um conjunto incontável de linguagens – Cada MT reconhece apenas uma linguagem

(43)

Conjunto de MTs é contável

 Cada Máquina de Turing M tem uma codificação em uma cadeia <M>

 Descartando aquelas cadeias que não são MT legítimas, podemos listar

cadeias que representem MTs

 Σ* é contável

 Basta listar suas cadeias por ordem crescente de tamanho e ordem

lexicográfica (e associar um natural a cada uma)

(44)

44

Profa. Ariane Machado Lima

O que isso tem a ver com Teoria da Computação

?

 Ideia da Prova: vamos mostrar que:

– Há um conjunto contável de Máquinas de Turing

– Há um conjunto incontável de linguagens – Cada MT reconhece apenas uma linguagem

(45)

O que isso tem a ver com Teoria da Computação

?

 Ideia da Prova: vamos mostrar que:

(46)

46

Profa. Ariane Machado Lima

 Para provar que o conjunto de todas as linguagens possíveis é

incontável:

– mostrar que o conjunto de todas as linguagens têm o mesmo tamanho que o conjunto de todas as sequências binárias

infinitas

– Provar, por diagonalização, que o conjunto de todas as sequências binárias infinitas é incontável

(47)

O conjunto de todas as strings binárias

infinitas é incontável

(48)

48

Profa. Ariane Machado Lima

O conjunto de todas as strings binárias

infinitas é incontável

Seja f(i) uma correspondência entre N e B

N = conjunto dos números naturais

B = conjunto de todas as strings binárias infinitas

Vamos construir uma string binária infinita fora dessa

correspondência (usando diagonalização)

– O i-ésimo dígito é diferente de f(i)

CONTRADIÇÃO!

(49)

O conjunto de todas as linguagens e o conjunto de todas as

strings binárias infinitas possuem o mesmo tamanho

 Cada linguagem L

k pode ser representada por uma string binária

infinita bk

 Ordene as cadeias de Σ* (s

1, s2, ...)

 A posição i da string binária b

k possui valor 1 se a cadeia si pertencer à linguagem Lk, e valor 0 caso contrário

(50)

50

Profa. Ariane Machado Lima

O que isso tem a ver com Teoria da Computação

?

 Ideia da Prova: vamos mostrar que:

– Há um conjunto contável de Máquinas de Turing

– Há um conjunto incontável de linguagens

– Cada MT reconhece apenas uma linguagem

(51)

O que isso tem a ver com Teoria da Computação

?

 Ideia da Prova: vamos mostrar que:

(52)

52

Profa. Ariane Machado Lima

O que isso tem a ver com Teoria da Computação

?

 Ideia da Prova: vamos mostrar que:

– Há um conjunto contável de Máquinas de Turing

– Há um conjunto incontável de linguagens

– Cada MT reconhece apenas uma linguagem

Referências

Documentos relacionados

Descongelamento (apenas nos modelos de arrefecimento e aquecimento) • Poderá formar-se gelo na unidade exterior durante um ciclo de aquecimento quando a temperatura exterior for

• A análise dos resultados de compressão cíclica permitiu verificar a plastificação excessiva (deformação acumulada) sofrida pelo EPS ao longo dos ciclos quando solicitado

--- O deputado Fernando Martins apresentou um documento da bancada socialista para repor a verdade dos factos sobre o funcionamento das comissões eleitas para a revisão

Na Se¸c˜ ao 3.1, introduzimos a simetria estoc´ astica, que trata-se de uma a¸c˜ ao dada por um fluxo estoc´ astico, que mant´ em invariante solu¸c˜ oes de uma dada equa¸c˜

J Strength Cond Res 30(7): 2069–2081, 2016—This study aimed to summarize evidence on masters’ swimmers energetics, biomechanics, and perfor- mance gathered in selected studies..

A taxa de crescimento absoluto para o diâmetro do caule aumentou ao longo do tempo de cultivo com o aumento dos níveis de salinidade da água de irrigação, enquanto a taxa

Além disso, é abordada a importância da disciplina Interação Homem-Máquina (IH:Yf) para sistemas interativos} como é o caso de Laboratórios Virtuais, e apresentada

Foram objetivos deste estudo, avaliar os efeitos da adubação nitrogenada sobre: a freqüência de ocorrência de plantas, a altura do dossel, o crescimento foliar e o desenvolvimento