A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Ronaldo R Ferreira Turing Completude da Computação com DNA 1 Ronaldo Rodrigues Ferreira CM524 - Teoria da Computação Avançada PPGC.

Apresentações semelhantes


Apresentação em tema: "Ronaldo R Ferreira Turing Completude da Computação com DNA 1 Ronaldo Rodrigues Ferreira CM524 - Teoria da Computação Avançada PPGC."— Transcrição da apresentação:

1 Ronaldo R Ferreira Turing Completude da Computação com DNA 1 Ronaldo Rodrigues Ferreira CM524 - Teoria da Computação Avançada PPGC UFRGS 2005/2 Dra. Leila Ribeiro e Dr. Tiarajú A Diverio Porto Alegre, dezembro de 2005

2 Ronaldo R Ferreira Turing Completude da Computação com DNA 2 1.Introdução PCR: uma das bases da Computação com DNA Um pouco de história Operações com DNA Computação com DNA: modelos e técnicas 2.Splicing Systems ou Sistemas H Operação de splicing Splicing Systems: a busca por universalidade Sistemas H estendidos Multi-conjuntos e Sistemas mH 3.Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis Recursivamente 4.Prova de Universalidade dos Splicing Systems 5.Conclusões 6.Referências Agenda

3 Ronaldo R Ferreira Turing Completude da Computação com DNA 3 1.Introdução PCR: uma das bases da Computação com DNA Um pouco de história Operações com DNA Computação com DNA: modelos e técnicas 2.Splicing Systems ou Sistemas H Operação de splicing Splicing Systems: a busca por universalidade Sistemas H estendidos Multi-conjuntos e Sistemas mH 3.Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis Recursivamente 4.Prova de Universalidade dos Splicing Systems 5.Conclusões 6.Referências Agenda

4 Ronaldo R Ferreira Turing Completude da Computação com DNA 4 Introdução PCR: uma das bases da Computação com DNA 5 A T A G A G T T 3 | | | 3 T C A 5 5 A T A G A G T T 3 | | | | | | | 3 T A T C T C A 5 A polimerase extende o primer na direção 5 para 3 Primers forward e backward são projetados. Aciona-se os primers à solução e a esquentamos. Isso desnatura a fita dupla. Resfria-se a solução. Isso permite os primers anelarem na sua sequência alvo. Adiciona-se polimerase

5 Ronaldo R Ferreira Turing Completude da Computação com DNA 5 Introdução PCR: uma das bases da Computação com DNA a) b) c) d) a)Desnaturação b)Anelamento do primer c)Extensão do primer d)Resultado Final O PCR é um processo que amplifica rapidamente a quantidade de DNA. Cada ciclo da reação de PCR dobra a quantidade de cada fita. Isso nos dá um crescimento exponencial no número de fitas.

6 Ronaldo R Ferreira Turing Completude da Computação com DNA 6 Introdução PCR: uma das bases da Computação com DNA

7 Ronaldo R Ferreira Turing Completude da Computação com DNA 7 Trabalho inicial em 1994 por L. Adleman. Resolveu uma instância do Caminho Hamiltoniano direcionado. Introdução Um pouco de história caminho: 0->1, 1->2, 2->3, 3->4, 4->5, 5->6

8 Ronaldo R Ferreira Turing Completude da Computação com DNA 8 Introdução Um pouco de história O algoritmo proposto é definido em 5 passos: 1.Gerar caminhos aleatórios através do grafo 2.Manter somente os caminhos que iniciam em v in e terminam em v out 3.Se o grafo possui n vértices, então manter na solução somente os caminhos que possuem exatamente n vértices 4. Manter somente os caminhos que passem por todos os vértices do grafo pelo menos uma vez 5. Se algum caminho ainda existir, então SIM. Do contrário, NÃO

9 Ronaldo R Ferreira Turing Completude da Computação com DNA 9 Introdução Um pouco de história Passo 1: Cada vértice i no grafo foi associado com um 20-mer de DNA aleatório. Para Cada aresta (i,j) no grafo, um oligonucleotídeo O i->j foi criado. Esse é composto Pelo 10-mer da extremidade 3 de O i (a não ser para i=0. Nesse caso, é todo o O i ), seguido pelo 10-mer da extremidade 5 de O j (a não ser para j=6. Nesse Caso, é todo O j ). Assim, a orientação do grafo é preservada (O 2->3 != O 3->2 ). O complementar de O i é O i. i: GCTAGCTAGCGCGTGGGCGA J: GGCTCGCTGCGGGCTCGCTG 5 3 O i->j : GCGTGGGCGAGGCTCGCTGC O i->j : CGCACCCGCTCCGAGCGACG

10 Ronaldo R Ferreira Turing Completude da Computação com DNA 10 Introdução Operações com DNA Modelo Irrestrito: Separate(T,S): dado um conjunto T e uma substring S, cria dois novos conjuntos +(T,S) e –(T,S), onde +(T,S) representa todas as strings em T contendo S e –(T,S) representa todas as strings em T que não contém S. Merge(T 1,T 2,...,T n ): dados os conjuntos T 1,T 2,...,T n, cria U(T 1,T 2,...,T n )= T 1 U T 2 U... U T n. Detect(T): dado um conjunto T, retorna true se T não é vazio. Caso contrário, retorna false.

11 Ronaldo R Ferreira Turing Completude da Computação com DNA 11 Introdução Computação com DNA: modelos e técnicas Filtragem (não é Turing-Equivalente[1,4]) Splicing (Turing-Equivalente[1,3,4]) Construtivista Membranar

12 Ronaldo R Ferreira Turing Completude da Computação com DNA 12 Introdução Computação com DNA: modelos e técnicas Filtragem: A computação consiste de operações em multi-conjuntos finitos de strings. O multi-conjunto inicial deve conter todas as possíveis soluções para o Problema. A computação procede através da filtragem de strings que não representam Uma solução. Modelo implementado por Adleman em [2].

13 Ronaldo R Ferreira Turing Completude da Computação com DNA 13 Introdução Computação com DNA: modelos e técnicas Splicing: São utilizadas operações de edição de seqüências para simular a transição De um estado para outro da Máquina de Turing. Sejam S e T duas strings sob o alfabeto. A operação de splicing consiste em Cortar S e T em pontos específicos e concatenar o prefixo de S com o Sufixo de T. A operação de splicing, mais as operações do modelo de Filtragem provê o poder computacional da Máquina de Turing [1,4].

14 Ronaldo R Ferreira Turing Completude da Computação com DNA 14 1.Introdução PCR: uma das bases da Computação com DNA Um pouco de história Operações com DNA Computação com DNA: modelos e técnicas 2.Splicing Systems ou Sistemas H Operação de splicing Splicing Systems: a busca por universalidade Sistemas H estendidos Multi-conjuntos e Sistemas mH 3.Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis Recursivamente 4.Prova de Universalidade dos Splicing Systems 5.Conclusões 6.Referências Agenda

15 Ronaldo R Ferreira Turing Completude da Computação com DNA 15 Splicing Systems Operação de Splicing Considere um alfabeto V e duas palavras x e y, formadas por símbolos de V O local onde uma enzima E 1 pode cortar uma palavra pode ser descrito pelo Par (u 1,u 2 ). Esse par é chamado contexto. Tem-se também a enzima E 2. O seu contexto é (u 3,u 4 ). Então, se uma palavra contém u 1 u 2 como subpalavra, E 1 pode cortar essa Palavra entre u 1 e u 2. O mesmo vale para E 2 e u 3 u 4. Se duas enzimas produzem extremidades aderentes, então escrevemos Isso como ((u 1,u 2 ),(u 3,u 4 )) CCCCCT CGACCCCC AAAAAG CGCAAAAA GGGGGAGC TGGGGG TTTTTCGC GTTTTT

16 Ronaldo R Ferreira Turing Completude da Computação com DNA 16 Splicing Systems Operação de Splicing Assumindo que as palavras x e y podem ser cortadas pelas enzimas E 1 e E 2, Então, x = x 1 u 1 u 2 x 2 e y = y 1 u 3 u 4 y 2 Se for possível a ligação imediata, tem-se qualquer das seguintes quatro Palavras: X 1 u 1 u 2 x 2 x 1 u 1 u 4 y 2 y 1 u 3 u 2 x 2 y 1 u 3 u 4 y 2 Splicing!!!

17 Ronaldo R Ferreira Turing Completude da Computação com DNA 17 Splicing Systems Splicing Systems: a busca por universalidade Tendo a operação de splicing, pode-se desenhar uma mecanismo gerador de Linguagem: pegamos um alfabeto, um conjunto de palavras sobre esse alfabeto, (axiomas) e um conjunto de regras de splicing. Partindo dos axiomas, ao iterar Os splicing, tem-se um conjunto de palavras. Esse mecanismo é chamado de Splicing System. O conjunto de palavras produzidas é a linguagem. Pode-se também considerar símbolos auxiliares, os quais podem ser utilizados Durante o processo de splicing, mas que não são permitidos a aparecerem nas Palavras geradas. Com esses símbolos, tem-se os Sistemas de Splicing Estendido (extended splicing systems). O modelo básico é chamado de não Estendido. Busca-se então, um sistema H universal. Dado um conjunto fixado de símbolos Auxiliares, de axiomas e de regras de splicing, esse sistema pode se comportar como Qualquer sistema H γ se adicionarmos uma codificação de γ como um axioma Do sistema H universal.

18 Ronaldo R Ferreira Turing Completude da Computação com DNA 18 Splicing Systems Sistemas H estendidos ((u 1,u 2 ),(u 3,u 4 )) u 1 #u 2 $u 3 #u 4 um sistema H estendido é uma quádrupla: γ = (V, T, A, R) Onde V é um alfabeto, (T C V), (A C V + ) e (R C V*#V*$V*#V*) # e $ são símbolos especiais não pertencentes à V. V é o alfabeto de γ, T são símbolos terminais, A é o conjunto de axiomas, e R é o conjunto de regras de splicing. Para x,y,z,w E V + e r = u 1 #u 2 $u 3 #u 4, define-se: (x,y) r (z,w) se e somente se x = x 1 u 1 u 2 x 2, y = y 1 u 3 u 4 y 2 e z = x 1 u 1 u 4 y 2, w = y 1 u 3 u 2 x 2 para x 1, x 2, y 1, y 2 E V* Para duas famílias de linguagens F 1, F 2, denota-se: EH(F 1, F 2 ) = { L( γ) | γ = (V, T, A, R), A E F 1, R E F 2 }

19 Ronaldo R Ferreira Turing Completude da Computação com DNA 19 Splicing Systems Multi-conjuntos e Sistemas mH Lemma: Para cada gramática de Chomsky tipo-0 existe uma gramática G´=(N,T,P,S), tal que L(G) = L(G´) e P contém somente produções da seguinte forma: 1. A a, para A E N, a E T 2. A BC, para A,B,C E N 3.A λ, para A E N, onde λ é a palavra vazia 4.AB CD, para A,B,C,D E N Forma Normal de Kuroda

20 Ronaldo R Ferreira Turing Completude da Computação com DNA 20 Splicing Systems Multi-conjuntos e Sistemas mH Multi-conjuntos Conjunto que possui multiplicidade associada aos seus elementos. Um multi-conjunto sobre um conjunto X é uma função M: X N U {}; M(x) é o número de cópias de x E X no multi-conjunto M; O conjunto {w E X | M(w) > 0} é chamado suporte de M e denotado por supp(M); Um conjunto usual S C X é interpretado como o multi-conjunto definido por S(x) = 1 para x E S, e S(x) = 0 para x ~E S

21 Ronaldo R Ferreira Turing Completude da Computação com DNA 21 Splicing Systems Multi-conjuntos e Sistemas mH Sistema mH estendido um sistema mH estendido é uma quádrupla: γ = ( V, T, A, R) Onde V,T,R são como para sistemas H estendidos, e A é um multi-conjunto sobre V + Para tal sistema mH e dois multi-conjuntos M 1, M 2 sobre V +, definimos: M 1 => γ M 2 se e somente se existem x,y,z,w E V* tais que: (i) M 1 (x) 1, (M 1 – {(x,1)})(y) 1, (ii) x = x 1 u 1 u 2 x 2, y = y 1 u 3 u 4 y 2, z = x 1 u 1 u 4 y 2, w = y 1 u 3 u 2 x 2, para x 1,x 2,y 1,y 2 E V*, u 1 #u 2 $u 3 #u 4 E R, (iii) M 2 = (((M 1 – {(x,1)}) – {(y,1)}) U {(z,1)}) U {(w,1)} A linguagem gerada por um sistema mH estendido γ é: L(γ) = { w E T + | w E supp(M) para algum M tal que A => γ * M }

22 Ronaldo R Ferreira Turing Completude da Computação com DNA 22 1.Introdução PCR: uma das bases da Computação com DNA Um pouco de história Operações com DNA Computação com DNA: modelos e técnicas 2.Splicing Systems ou Sistemas H Operação de splicing Splicing Systems: a busca por universalidade Sistemas H estendidos Multi-conjuntos e Sistemas mH 3.Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis Recursivamente 4.Prova de Universalidade dos Splicing Systems 5.Conclusões 6.Referências Agenda

23 Ronaldo R Ferreira Turing Completude da Computação com DNA 23 Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis Recursivamente Toda Máquina de Turing (gramática de Chomsky tipo-0) pode ser simulada Por um sistema mH estendido com um conjunto finito de regras; dois axiomas São suficientes. Teorema: REG = EH(m[1], FIN) C EH(m[2],FIN) = EH(mF 1,F 2 ) = RE, para todas as famílias de linguagens F 1, F 2, tais que FIN C F 1 C RE, FIN C F 2 C RE Um sistema mH estendido gera a classe das linguagens Recursivamente Enumeráveis. Portanto, Turing-Completo Obs: ser Turing-Completo não quer dizer ser programável. Ser programável é ser Universal O número de cópias das palavras não é infinita. Ele é tão grande quando necessário. Basta fazer PCR

24 Ronaldo R Ferreira Turing Completude da Computação com DNA 24 Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis Recursivamente Lemma: RE C EH(mFIN, FIN) prova: Considere uma gramática de Chomsky tipo-0 G = ( N, T, S, P ) com as produções em P da forma u v, com 1 |u| 2, 0 |v| 2, u v ( podemos assumir que G está na Forma Normal de Kuroda). Assuma também que as produções em P estão rotuladas de uma forma um-para-um com os elementos Do conjunto Lab; escrevemos r: u v. Por U denotamos os conjunto N U T. Assim, é construído o Sistema mH estendido: γ = ( V, T, A, R ),onde V= N U T U { X 1, X 2, Y, Z 1, Z 2 } U { (r), [r] | r E Lab }, O multi-conjunto A contém a palavra: w 0 = X 1 2 YSX 2 2 com multiplicidade A(w 0 ) = 1

25 Ronaldo R Ferreira Turing Completude da Computação com DNA 25 Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis Recursivamente e as seguintes palavras com multiplicidade infinita: w r = (r)v[r], para r: u v E P, w = Z 1 YZ 2, para E U, w´ = Z 1 Y Z 2, para E U, w t = YY. O conjunto R contém as seguintes regras de splicing: Escrever no quadro!!!! As regras nos grupos 1 e 2 simulam as produções de P, mas somente na presença de Y. As regras nos grupos 3 e 4 movem o símbolo Y para a direita. As regras nos grupos 5 e 6 movem o símbolo Y para a esquerda. O axioma principal é w 0. Todas as regras nos grupos1-6 envolvem uma palavra derivada a partir de w 0 e que contenha O símbolo Y introduzido por esse axioma. Em todo momento, tem-se duas ocorrências de X 1 no início e duas de X 2 no fim da palavra.

26 Ronaldo R Ferreira Turing Completude da Computação com DNA 26 Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis Recursivamente As regras nos grupos 1, 3 e 5 separam palavras da forma X 1 2 zX 2 2 duas palavras X 1 2 z 1 e z 2 X 2 2, cada uma com multiplicidade 1. As regras nos grupos 2, 4 e 6 unem essas palavras, levando a uma palavra da forma X 1 2 z´X 2 2. As regras nos grupos 7 e 8 removem os símbolos auxiliares X 1, X 2 e Y. Se a palavra restante É terminal, então ela é um elemento de L(G). Os símbolos (r), [r] são associados com os rótulos em Lab. Z 1 e Z 2 são associados com operações de movimentação. Com isso, L(G) C L(γ). AINDA NÃO ACABOU!!!!!!

27 Ronaldo R Ferreira Turing Completude da Computação com DNA 27 Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis Recursivamente Detalhando a volta: se A => γ * M e w E T +, M(w) > 0, então w E L(G) Iniciamos com w 0, onde w 0 = X 1 2 YSX 2 2, A(w 0 ) = 1. Assuma que temos a palavra X 1 2 w 1 Yw 2 X 2 2 com multiplicidade 1. Se w 2 iniciar com um membro Esquerdo de uma produção em P, então podemos aplicar a regra 1. Assuma que esse é o caso, A palavra é X 1 2 w 1 Yuw 3 X 2 2 para algum r: u v E P. Usando o axioma (r)v[r] de A obtemos: ( X 1 2 w 1 Yu|w 3 X 2 2, (r)v|[r] ) ( X 1 2 w 1 Yu[r], (r)vw 3 X 2 2 ) Agora, somente a regra 2 pode ser aplicada às palavras que obtemos, envolvendo ambas Palavras: ( X 1 2 w 1 Y|u[r], (r)|vw 3 X 2 2 ) ( X 1 2 w 1 Yvw 3 X 2 2, (r)u[r] ) Assim, passamos de X 1 2 w 1 Yuw 3 X 2 2 para X 1 2 w 1 Yvw 3 X 2 2. Isso corresponde à r: u v E P

28 Ronaldo R Ferreira Turing Completude da Computação com DNA 28 Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis Recursivamente Se para a palavra X 1 2 w 1 Y w 3 X 2 2 aplicarmos a regra 3, temos: ( X 1 2 w 1 Y |w 3 X 2 2, Z 1 Y|Z 2 ) ( X 1 2 w 1 Y Z 2, Z 1 Yw 3 X 2 2 ) Agora, só podemos aplicar a regra 4. ( X 1 2 w 1 Y Z 2, Z 1 Yw 3 X 2 2 ) ( X 1 2 w 1 Yw 3 X 2 2, Z 1 Y Z 2 ) Em cada momento temos um multi-conjunto com uma palavra X 1 2 w 1 Yw 3 X 2 2 ou duas Palavras X 1 2 z 1, z 2 X 2 2. No primeiro caso, se w 1 = λ, podemos remover X 1 2 usando a Regra 7; então podemos remover também X 2 2 usando a regra 8. Essa é a única maneira De remover símbolos não terminais. Se a palavra não é terminal, ela não pode mais ser Processada, pois não há mais símbolos Y. Concluindo, podemos simular derivações em G e mover livremente Y na palavra de Multiplicidade 1, portanto L(γ) C L(G).

29 Ronaldo R Ferreira Turing Completude da Computação com DNA 29 1.Introdução PCR: uma das bases da Computação com DNA Um pouco de história Operações com DNA Computação com DNA: modelos e técnicas 2.Splicing Systems ou Sistemas H Operação de splicing Splicing Systems: a busca por universalidade Sistemas H estendidos Multi-conjuntos e Sistemas mH 3.Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis Recursivamente 4.Prova de Universalidade dos Splicing Systems 5.Conclusões 6.Referências Agenda

30 Ronaldo R Ferreira Turing Completude da Computação com DNA 30 Prova de Universalidade dos Splicing Systems Definição Informal Sistemas H Universais possuem todos os componentes fixados, a não ser o conjunto Dos axiomas, capaz de se comportar como qualquer Sistema H γ, quando uma Codificação de γ é introduzida no conjunto de axiomas do Sistema Universal.

31 Ronaldo R Ferreira Turing Completude da Computação com DNA 31 Prova de Universalidade dos Splicing Systems Definição Formal Dado um alfabeto T e duas linguagens F 1, F 2, uma construção: γ U = ( V U, T, A U, R U ) Onde V U é um alfabeto, A U C V U *, A U E F 1 e R U C V u *#V U *$V U *#V U *, R U E F 2, é dito Ser um Sistema H Universal do tipo (F 1,F 2 ), se para todo γ = ( V, T, A, R) do tipo (F 1,F 2 ), Há uma linguagem Aγ tal que A U U Aγ E F 1 e L( γ ) = L( γ U ´), onde γ U ´ = ( V U, T, A U U Aγ, R U ).

32 Ronaldo R Ferreira Turing Completude da Computação com DNA 32 Lemma: Dados um sistema H estendido γ = ( V, T, A, R ) do tipo (F 1,F 2 ), para F1, F2 famílias de linguagens fechadas sobre morfismos ג-free, podemos construir um sistema H estendido γ´ = ( {c1,c2} U T, T, A´, R´ ) do mesmo tipo (F1,F2), tal que L(γ) = L(γ´). Isso também é válido para γ um sistema mH ou um sistema H com contexto permitido ou proibido. Prova de Universalidade dos Splicing Systems

33 Ronaldo R Ferreira Turing Completude da Computação com DNA 33 Prova de Universalidade dos Splicing Systems Prova: se V – T = { Z 1,...,Z n }, então consideramos um morfismo h: V + ( { c 1, c 2 } U T) +, definido por: h(Zi) = c 1 c 2 i c 1 1 i n, => cada símbolo não terminal é codificado numa seqüência de cs h(a) = a, a E T. Então A´ = h(A) R´ = { h(u 1 )#h(u 2 )$h(u 3 )#h(u 4 ) | u 1 #u 2 $u 3 #u 4 E R } => codifica o conjunto no formato do sistema universal

34 Ronaldo R Ferreira Turing Completude da Computação com DNA 34 Prova de Universalidade dos Splicing Systems Teorema: Para todo alfabeto T, existe um sistema mH estendido do tipo (m[2],FIN) o qual é universal para a classe dos sistemas mH estendidos com o alfabeto terminal T. Prova: Considere um alfabeto T e dois símbolos diferentes c 1, c 2 que não estão em T. para a classe de Gramáticas de Chomsky tipo-0 com um dado alfabeto terminal, existem gramáticas universais, ou Seja, construções G U = ( N U, T, -, P U ) tal que para qualquer gramática G = ( N, T, S, P ), existe Uma palavra w(G) E ( N U U T ) + (a codificação de G), tal que L(G U ´) = L(G) para G U ´ = ( N U, T, w(G), P U ). A linguagem L(G U ´) consiste de todas as palavras terminais z, tais que w(G) =>* z usando as regras em P U. Existe um algoritmo que converte gramáticas do tipo-0 para Máquina de Turing e vice-versa. AINDA NÃO ACABOU!!!!

35 Ronaldo R Ferreira Turing Completude da Computação com DNA 35 Prova de Universalidade dos Splicing Systems para uma dada gramática universal do tipo-0 G U = ( N U, T, -, P U ), obtemos um sistema mH estendido γ 1 = ( V 1, T, A 1, R 1 ), onde o axioma (com multiplicidade 1) w 0 = X 1 2 YSX 2 2 não é considerado. Os outros Axiomas estão fixados, pois dependem somente de N U e P U. Passamos de γ 1 para γ 2 = ( V 2, T, A 2, R 2 ), com no máximo 2 axiomas em A 2. Do lemma anterior,codifica-se todos os símbolos V 2 – T em palavras sobre { c 1, c 2 }, obtendo γ = ( {c1, c2} U T, T, A U, R U ). Esse é o nosso sistema universal. Agora, construímos o código de G 0, w(G 0 ). Temos também γ 0. Consideremos a palavra w 0 ´ = X 1 2 Yw(G 0 )X 2 2, correspondendo ao axioma w 0. Codifica-se w 0 ´ sobre {c 1, c 2 } U T. Denota-se w(γ 0 ) a palavra obtida. Então, L(γ´ U ) = L(γ 0 ). Se começarmos de uma gramática universal G U e S é trocado por w(G 0 ) de uma gramática tipo-0 Equivalente a γ 0, então o sistema γ U, associado com a gramática universal G U, irá simular o trabalho De G U, iniciando por w(G 0 ). Então, L(γ U ´) = L(G U ´) = L(G 0 ) = L(γ 0 ), para G U ´ = ( N U, T, w(G 0 ), P U ).

36 Ronaldo R Ferreira Turing Completude da Computação com DNA 36 Prova de Universalidade dos Splicing Systems Teorema: Se existe uma Máquina de Turing que codifica f, então existe um γ inicializado com Z 0 wq 0 Z 1 que deriva Z 0 f(w)q f Z 1 E T*

37 Ronaldo R Ferreira Turing Completude da Computação com DNA 37 1.Introdução PCR: uma das bases da Computação com DNA Um pouco de história Operações com DNA Computação com DNA: modelos e técnicas 2.Splicing Systems ou Sistemas H Operação de splicing Splicing Systems: a busca por universalidade Sistemas H estendidos Multi-conjuntos e Sistemas mH 3.Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis Recursivamente 4.Prova de Universalidade dos Splicing Systems 5.Conclusões 6.Referências Agenda

38 Ronaldo R Ferreira Turing Completude da Computação com DNA 38 Conclusões A operação de splicing hoje é extremamente difícil de ser realizada. O PCR Não é um moranguinho!!! Com as técnicas atuais é praticamente impossível conseguir O splicing perfeito. A Computação com DNA é uma cozinha. Além disso, as técnicas de Biologia Molecular empregadas possuem uma taxa de erro extremamente Alta. Um sistema mH com dois axiomas e um conjunto finito de regras de Splicing é capaz de gerar a classe RE. O avanço da Computação com DNA hoje depende mais do esforço da Engenharia Genética, Que da Ciência da Computação. O avanço depende fortemente da evolução das técnicas da Biologia Molecular empregadas, apesar do grande esforço em Computação com DNA Realista. Portanto, caso as técnicas de Biologia Molecular avancem, no sentido de diminuição de erros, aumento Do controle experimental, barateamento de custos, o Computador de DNA é viável no sentido de Computação Realista.

39 Ronaldo R Ferreira Turing Completude da Computação com DNA 39 1.Introdução PCR: uma das bases da Computação com DNA Um pouco de história Operações com DNA Computação com DNA: modelos e técnicas 2.Splicing Systems ou Sistemas H Operação de splicing Splicing Systems: a busca por universalidade Sistemas H estendidos Multi-conjuntos e Sistemas mH 3.Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis Recursivamente 4.Prova de Universalidade dos Splicing Systems 5.Conclusões 6.Referências Agenda

40 Ronaldo R Ferreira Turing Completude da Computação com DNA 40 Referências [1] AMOS, Martyn – Theoretical and Experimental DNA Computation Springer, Alemanha (2005) [2] ADLEMAN, Leonard M – Molecular Computation of Solutions to Combinatorial Problems – Science v266 pp (1994) [3] CSUHAJ-VARJÚ, Erzsébet et al. – DNA Computing Based on Splicing: Universality Results – First Annual Pacific Symp. On Biocomputing (1996) [4] FREUND, R et al. - DNA Computing Based on Splicing: The Existence of Universal Computers Theory of Computing Systems v32 pp (1999) [5] PAUN, Gheorghe – DNA computing based on splicing: universality results – Theoretical Computer Science v231 pp (2000)

41 Ronaldo R Ferreira Turing Completude da Computação com DNA 41 Perguntas????


Carregar ppt "Ronaldo R Ferreira Turing Completude da Computação com DNA 1 Ronaldo Rodrigues Ferreira CM524 - Teoria da Computação Avançada PPGC."

Apresentações semelhantes


Anúncios Google