Máquinas de Turing

Post on 09-Jan-2016

44 views 0 download

description

Máquinas de Turing. Teoria da Computação. 1. 0. 2. B. 0. 0. 0. 2. 4. B. B. B. q. 1. 1. 0. 0. 2. 2. B. B. 0. 0. 0. 0. 0. 0. 2. 2. 4. B. B. B. B. B. B. q. Definição. M = (Q, Σ , Γ , δ , q0, qa, qr). ESTADOS. SIMBOLOS DE INPUT. Estado de Aceitação. - PowerPoint PPT Presentation

Transcript of Máquinas de Turing

Máquinas de TuringMáquinas de Turing

Teoria da ComputaçãoTeoria da Computação

q

0 0 0 2 1 0 2 B B B B4

q

0 0 0 2 1 0 2 B B B B0 0 0 2 1 0 2 B B B B4

DefiniçãoDefinição

M = (Q, Σ, Γ, δ, q0, qa, qr)

ESTADOS SIMBOLOS DE INPUT TRANSIÇÃO

DE ESTADOS

ESTADO INICIAL

Estado de Aceitação

SIMBOLOS DA FITA - inclui o simbolo B (branco)B Σ

Estado de Rejeição

ConfiguraçãoConfiguração

0 0 0 2 1 0 2 B B B B

q 0 0 0 2 q 1 0 2

q0 0 0 0 2 1 0 2 Configuração Inicial Configuração Inicial

0 0 0 2 qa 1 0 2Configuração de Aceitação Configuração de Aceitação

0 0 0 2 qr 1 0 2 Configuração de Rejeição Configuração de Rejeição

Um passo de cálculoUm passo de cálculo

Configuração 1 Configuração 1 Configuração 2 Configuração 2

q

0 0 0 2 q 1 0 2 0 0 0 q 2 4 0 2

0 0 0 2 1 0 2 B B B B4

Um passo de cálculoUm passo de cálculo

q

0 0 0 2 q 1 0 2 0 0 0 2 4 q 0 2

0 0 0 2 1 0 2 B B B B4

Configuração 1 Configuração 1 Configuração 2 Configuração 2

Linguagem AceitaLinguagem Aceita

• M = Máquina de TuringM = Máquina de Turing

• w = 010001 string sobre alfabeto de w = 010001 string sobre alfabeto de MM

• w w é aceitoé aceito por M se existe uma por M se existe uma sequência sequência finitafinita de passos de cálculo de passos de cálculo

qqoo 010001 010001 C1 C1 …. …. Ca CaConfiguração de AceitaçãoConfiguração

inicial

Linguagem AceitaLinguagem Aceita

• M = Máquina de TuringM = Máquina de Turing

• L(M)L(M) = conjunto dos strings = conjunto dos strings construidos sobre o alfabeto de input construidos sobre o alfabeto de input e que são aceitos por Me que são aceitos por M

Exemplo : M1Exemplo : M1• δδ(q0,0) = (q0,0,R)(q0,0) = (q0,0,R)• δδ(q0,B) = (qa,B,R)(q0,B) = (qa,B,R)• δδ(q0,1) = (q2,1,R)(q0,1) = (q2,1,R)• δδ(q2,1) = (q2,1,R)(q2,1) = (q2,1,R)• δδ(q2,0) = (qr,0,R)(q2,0) = (qr,0,R)• δδ(q2,B) = (qa,B,R)(q2,B) = (qa,B,R)

• L(M) = {0L(M) = {0nn 1 1mm | n≥0, m≥0} | n≥0, m≥0}

• Pergunta: Pergunta: Dado w Dado w ϵϵ {0,1}* quais as possibilidades para {0,1}* quais as possibilidades para

M1(w) ?M1(w) ?

Exemplo: M2Exemplo: M2• δδ(q0,0) = (q0,0,R)(q0,0) = (q0,0,R)• δδ(q0,B) = (qa,B,R)(q0,B) = (qa,B,R)• δδ(q0,1) = (q2,1,R)(q0,1) = (q2,1,R)• δδ(q2,1) = (q2,1,R)(q2,1) = (q2,1,R)• δδ(q2,0) = (qr,0,R)(q2,0) = (qr,0,R)• δδ(q2,B) = (q2,B,R)(q2,B) = (q2,B,R)

• L(M) = {0L(M) = {0n n | n≥0}| n≥0}

Pergunta: Pergunta: Dado w Dado w ϵϵ {0,1}* quais as possibilidades para M2(w) ? {0,1}* quais as possibilidades para M2(w) ?

Exemplo: M3Exemplo: M3• δδ(q0,0) = (q0,0,R)(q0,0) = (q0,0,R)• δδ(q0,B) = (qa,B,R)(q0,B) = (qa,B,R)• δδ(q0,1) = (q2,1,R)(q0,1) = (q2,1,R)• δδ(q2,1) = (q2,1,R)(q2,1) = (q2,1,R)• δδ(q2,0) = (q3,0,R)(q2,0) = (q3,0,R)• δδ(q2,B) = (qa,B,R)(q2,B) = (qa,B,R)• δδ(q3,B) = (q3,B,R)(q3,B) = (q3,B,R)• δδ(q3,0) = (q3,0,R)(q3,0) = (q3,0,R)• δδ(q3,1) = (q3,1,R)(q3,1) = (q3,1,R)

• L(M) = {0L(M) = {0nn 1 1mm | n≥0, m≥0} | n≥0, m≥0}

Pergunta: Pergunta: Dado w Dado w ϵϵ {0,1}* quais as possibilidades para M3(w) ? {0,1}* quais as possibilidades para M3(w) ?

Linguagem Turing DecidívelLinguagem Turing Decidível

• Linguagem aceita por alguma Máquina de Linguagem aceita por alguma Máquina de Turing que Turing que sempre pára sempre pára (para qualquer (para qualquer input)input)

Exemplo:Exemplo: L = {0 L = {0nn 1 1mm | n≥0, m≥0} | n≥0, m≥0}

L = L(M1)L = L(M1)

Repare que L = L(M3), mas M3 nem sempreRepare que L = L(M3), mas M3 nem sempre

pára.pára.

Linguagens Turing Linguagens Turing DecidíveisDecidíveis

• Uma linguagem pode ser aceita por Uma linguagem pode ser aceita por uma máquina que uma máquina que nem sempre pára nem sempre pára e mesmo assim ser Turing decidível.e mesmo assim ser Turing decidível.

• Pois pode ser aceita por Pois pode ser aceita por uma outrauma outra máquina que pára sempre. máquina que pára sempre.

Linguagem Turing Linguagem Turing ReconhecívelReconhecível

• Linguagem L aceita por uma Linguagem L aceita por uma máquina que máquina que nem sempre páranem sempre pára..

• A Máquina pára em qA Máquina pára em qaa somentesomente para para os strings da linguagem L.os strings da linguagem L.

• Quando acionada para os strings fora Quando acionada para os strings fora de L, a máquina pára em qde L, a máquina pára em qrr ou ou simplesmente não pára.simplesmente não pára.

M

w

qaSe w pertence a L

qrSe w não pertence a L

L é aceita por M

M sempre pára

M decide L

L é Turing Decidível

M

w

qaSe w pertence a L

qr

L é aceita por M

M nem sempre pára

M não decide L

L é Turing Reconhecivel

Isto não implica que L não é Turing Decidivel

Se w não pertence a L

Loop

ResumoResumo

• Linguagem Turing DecidívelLinguagem Turing Decidível : Aceita : Aceita por uma MT que sempre párapor uma MT que sempre pára

• Linguagem Turing ReconhecívelLinguagem Turing Reconhecível : : Aceita por uma máquina de Turing Aceita por uma máquina de Turing (pode ser que não páre sempre)(pode ser que não páre sempre)

• Linguagem Não-Turing Linguagem Não-Turing ReconhecívelReconhecível : não é aceita por : não é aceita por nenhuma máquina de Turingnenhuma máquina de Turing

M

w

qaSe w pertence a L

qrSe w não pertence a L

M’w

Se w pertence a L

Se w não pertence a L

Propriedade:Propriedade: Se L é Turing decídivel então L é Turing Decídivel Se L é Turing decídivel então L é Turing Decídivel

M’ decide L

qa

qr

PropriedadesPropriedades

• Turing decidível Turing decidível Turing Reconhecível Turing Reconhecível

• Turing Reconhecível Turing Reconhecível Turing Decidível Turing Decidível

• Se L é Turing Reconhecível e L é Turing Se L é Turing Reconhecível e L é Turing Reconhecível Reconhecível L é Turing Decidível L é Turing Decidível

M1

w

qaSe w pertence a L

qr

Se w não pertence a L

Loop

M2

w

qaSe w não pertence a L

qr

Se w pertence a L

Loop

w

qa

qr

M”

M1

M2 qa

OU

qa

w pertence a L

w não pertence a L