1 / 41

Turing Completude da Computação com DNA

Turing Completude da Computação com DNA. Ronaldo Rodrigues Ferreira rrferreira@inf.ufrgs.br CM524 - Teoria da Computação Avançada PPGC UFRGS 2005/2 Dra. Leila Ribeiro e Dr. Tiarajú A Diverio Porto Alegre, dezembro de 2005. Agenda. Introdução PCR: uma das bases da Computação com DNA

miach
Download Presentation

Turing Completude da Computação com DNA

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

  2. Agenda • 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 • Splicing Systems ou Sistemas H • Operação de splicing • Splicing Systems: a busca por universalidade • Sistemas H estendidos • Multi-conjuntos e Sistemas mH • Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis Recursivamente • Prova de Universalidade dos Splicing Systems • Conclusões • Referências Turing Completude da Computação com DNA

  3. Agenda • 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 • Splicing Systems ou Sistemas H • Operação de splicing • Splicing Systems: a busca por universalidade • Sistemas H estendidos • Multi-conjuntos e Sistemas mH • Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis Recursivamente • Prova de Universalidade dos Splicing Systems • Conclusões • Referências Turing Completude da Computação com DNA

  4. 5’ 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. 3’ 5’ Introdução PCR: uma das bases da Computação com DNA 5’ A T A G A G T T 3’ | | | 3’T C A5’ 5’ A T A G A G T T 3’ | | | | | | | 3’ T A T C T C A5’ A polimerase extende o primer na direção 5’ para 3’ Turing Completude da Computação com DNA

  5. Introdução PCR: uma das bases da Computação com DNA 5’ 3’ • Desnaturação • Anelamento do primer • Extensão do primer • Resultado Final 3’ 5’ a) b) 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. c) d) Turing Completude da Computação com DNA

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

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

  8. Introdução Um pouco de história • O algoritmo proposto é definido em 5 passos: • Gerar caminhos aleatórios através do grafo • Manter somente os caminhos que iniciam em vin e terminam em vout • 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 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 Oi->j foi criado. Esse é composto Pelo 10-mer da extremidade 3’ de Oi (a não ser para i=0. Nesse caso, é todo o Oi), seguido pelo 10-mer da extremidade 5’ de Oj (a não ser para j=6. Nesse Caso, é todo Oj). Assim, a orientação do grafo é preservada (O2->3 != O3->2). O complementar de Oi é Oi’. i: GCTAGCTAGCGCGTGGGCGA J: GGCTCGCTGCGGGCTCGCTG 5’ 3’ Oi->j : GCGTGGGCGAGGCTCGCTGC Oi->j’: CGCACCCGCTCCGAGCGACG 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(T1,T2,...,Tn): dados os conjuntos T1,T2,...,Tn, cria U(T1,T2,...,Tn)= T1 U T2 U ... U Tn. Detect(T): dado um conjunto T, retorna true se T não é vazio. Caso contrário, retorna false. 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 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]. 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]. Turing Completude da Computação com DNA

  14. Agenda • 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 • Splicing Systems ou Sistemas H • Operação de splicing • Splicing Systems: a busca por universalidade • Sistemas H estendidos • Multi-conjuntos e Sistemas mH • Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis Recursivamente • Prova de Universalidade dos Splicing Systems • Conclusões • Referências 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 E1 pode cortar uma palavra pode ser descrito pelo Par (u1,u2). Esse par é chamado contexto. Tem-se também a enzima E2. O seu contexto é (u3,u4). Então, se uma palavra contém u1u2 como subpalavra, E1 pode cortar essa Palavra entre u1 e u2. O mesmo vale para E2 e u3u4. Se duas enzimas produzem extremidades aderentes, então escrevemos Isso como ((u1,u2),(u3,u4)) CCCCCT CGACCCCC AAAAAG CGCAAAAA GGGGGAGC TGGGGG TTTTTCGC GTTTTT 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 E1 e E2, Então, x = x1u1u2x2 e y = y1u3u4y2 Se for possível a ligação imediata, tem-se qualquer das seguintes quatro Palavras: X1u1u2x2x1u1u4y2y1u3u2x2y1u3u4y2 Splicing!!! 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çãode γcomo um axioma Do sistema H universal. Turing Completude da Computação com DNA

  18. Splicing Systems Sistemas H estendidos ((u1,u2),(u3,u4)) ≡ u1#u2$u3#u4 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 = u1#u2$u3#u4, define-se: (x,y) ├ r (z,w) se e somente se x = x1u1u2x2, y = y1u3u4y2 e z = x1u1u4y2, w = y1u3u2x2 para x1, x2, y1, y2 E V* Para duas famílias de linguagens F1, F2, denota-se: EH(F1, F2) = { L(γ) | γ = (V, T, A, R), A E F1, R E F2} Turing Completude da Computação com DNA

  19. Splicing Systems Multi-conjuntos e Sistemas mH Forma Normal de Kuroda 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 • A → λ, para A E N, onde λ é a palavra vazia • AB → CD, para A,B,C,D E N 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 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 M1, M2 sobre V+, definimos: M1 => γM2 se e somente se existem x,y,z,w E V* tais que: (i) M1(x) ≥ 1, (M1 – {(x,1)})(y) ≥ 1, (ii) x = x1u1u2x2, y = y1u3u4y2, z = x1u1u4y2, w = y1u3u2x2, para x1,x2,y1,y2 E V*, u1#u2$u3#u4 E R, (iii) M2 = (((M1 – {(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 } Turing Completude da Computação com DNA

  22. Agenda • 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 • Splicing Systems ou Sistemas H • Operação de splicing • Splicing Systems: a busca por universalidade • Sistemas H estendidos • Multi-conjuntos e Sistemas mH • Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis Recursivamente • Prova de Universalidade dos Splicing Systems • Conclusões • Referências 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(mF1,F2) = RE, para todas as famílias de linguagens F1, F2, tais que FIN C F1C RE, FIN C F2C 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 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 { X1, X2, Y, Z1, Z2} U { (r), [r] | r E Lab }, O multi-conjunto A contém a palavra: w0 = X12YSX22 com multiplicidade A(w0) = 1 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: wr = (r)v[r], para r: u → v E P, w = Z1YZ2, para  E U, w´ = Z1YZ2, para  E U, wt = 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 é w0. Todas as regras nos grupos1-6 envolvem uma palavra derivada a partir de w0e que contenha O símbolo Y introduzido por esse axioma. Em todo momento, tem-se duas ocorrências de X1 no início e duas de X2 no fim da palavra. 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 X12zX22duas palavras X12z1 e z2X22, cada uma com multiplicidade 1. As regras nos grupos 2, 4 e 6 unem essas palavras, levando a uma palavra da forma X12z´X22. As regras nos grupos 7 e 8 removem os símbolos auxiliares X1, X2 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. Z1 e Z2 são associados com operações de movimentação. Com isso, L(G) C L(γ). AINDA NÃO ACABOU!!!!!! 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 w0, onde w0= X12YSX22, A(w0) = 1. Assuma que temos a palavra X12w1Yw2X22com multiplicidade 1. Se w2 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 é X12w1Yuw3X22 para algum r: u → v E P. Usando o axioma (r)v[r] de A obtemos: ( X12w1Yu|w3X22, (r)v|[r] ) ├ ( X12w1Yu[r], (r)vw3X22 ) Agora, somente a regra 2 pode ser aplicada às palavras que obtemos, envolvendo ambas Palavras: ( X12w1Y|u[r], (r)|vw3X22)├ ( X12w1Yvw3X22, (r)u[r] ) Assim, passamos de X12w1Yuw3X22para X12w1Yvw3X22. Isso corresponde à r: u → v E P Turing Completude da Computação com DNA

  28. Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis Recursivamente Se para a palavra X12w1Yw3X22aplicarmos a regra 3, temos: ( X12w1Y|w3X22, Z1Y|Z2)├ ( X12w1YZ2, Z1Yw3X22 ) Agora, só podemos aplicar a regra 4. ( X12w1YZ2, Z1Yw3X22) ├ ( X12w1Yw3X22, Z1YZ2) Em cada momento temos um multi-conjunto com uma palavra X12w1Yw3X22ou duas Palavras X12z1, z2X22. No primeiro caso, se w1 = λ, podemos remover X12 usando a Regra 7; então podemos remover também X22 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). Turing Completude da Computação com DNA

  29. Agenda • 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 • Splicing Systems ou Sistemas H • Operação de splicing • Splicing Systems: a busca por universalidade • Sistemas H estendidos • Multi-conjuntos e Sistemas mH • Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis Recursivamente • Prova de Universalidade dos Splicing Systems • Conclusões • Referências 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. Turing Completude da Computação com DNA

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

  32. Prova de Universalidade dos Splicing Systems Lemma: Dados um sistema H estendido γ = ( V, T, A, R ) do tipo (F1,F2), 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. Turing Completude da Computação com DNA

  33. Prova de Universalidade dos Splicing Systems Prova: se V – T = { Z1,...,Zn }, então consideramos um morfismo h: V+→ ( { c1, c2} U T)+, definido por: h(Zi) = c1c2ic1 1 ≤ i ≤ n, => cada símbolo não terminal é codificado numa seqüência de c’s h(a) = a, a E T. Então A´ = h(A) R´ = { h(u1)#h(u2)$h(u3)#h(u4) | u1#u2$u3#u4 E R } => codifica o conjunto no formato do sistema universal 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 c1, c2 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 GU = ( NU, T, -, PU ) tal que para qualquer gramática G = ( N, T, S, P ), existe Uma palavra w(G) E ( NU U T )+ (a codificação de G), tal que L(GU´) = L(G) para GU´ = ( NU, T, w(G), PU ). A linguagem L(GU´) consiste de todas as palavras terminais z, tais que w(G) =>* z usando as regras em PU. Existe um algoritmo que converte gramáticas do tipo-0 para Máquina de Turing e vice-versa. AINDA NÃO ACABOU!!!! Turing Completude da Computação com DNA

  35. Prova de Universalidade dos Splicing Systems para uma dada gramática universal do tipo-0 GU = ( NU, T, -, PU ), obtemos um sistema mH estendido γ1 = ( V1, T, A1, R1), onde o axioma (com multiplicidade 1) w0 = X12YSX22 não é considerado. Os outros Axiomas estão fixados, pois dependem somente de NU e PU. Passamos de γ1para γ2= ( V2, T, A2, R2 ), com no máximo 2 axiomas em A2. Do lemma anterior,codifica-se todos os símbolos V2 – T em palavras sobre { c1, c2 }, obtendo γ = ( {c1, c2} U T, T, AU, RU ). Esse é o nosso sistema universal. Agora, construímos o código de G0,w(G0). Temos também γ0.Consideremos a palavra w0´ = X12Yw(G0)X22, correspondendo ao axioma w0. Codifica-se w0´ sobre {c1, c2} U T. Denota-se w(γ0) a palavra obtida. Então, L(γ´U) = L(γ0). Se começarmos de uma gramática universal GU e S é trocado por w(G0) de uma gramática tipo-0 Equivalente a γ0, então o sistema γU, associado com a gramática universal GU, irá simular o trabalho De GU, iniciando por w(G0). Então, L(γU´) = L(GU´) = L(G0) = L(γ0), para GU´ = ( NU, T, w(G0), PU). □ 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 Z0wq0Z1 que deriva Z0f(w)qfZ1 E T* Turing Completude da Computação com DNA

  37. Agenda • 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 • Splicing Systems ou Sistemas H • Operação de splicing • Splicing Systems: a busca por universalidade • Sistemas H estendidos • Multi-conjuntos e Sistemas mH • Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis Recursivamente • Prova de Universalidade dos Splicing Systems • Conclusões • Referências 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. Turing Completude da Computação com DNA

  39. Agenda • 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 • Splicing Systems ou Sistemas H • Operação de splicing • Splicing Systems: a busca por universalidade • Sistemas H estendidos • Multi-conjuntos e Sistemas mH • Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis Recursivamente • Prova de Universalidade dos Splicing Systems • Conclusões • Referências 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 pp1021-1024 (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. - DNAComputing Based on Splicing: The Existence of Universal Computers Theory of Computing Systems v32 pp69-112 (1999) [5] PAUN, Gheorghe – DNA computing based on splicing: universality results – Theoretical Computer Science v231 pp275-296 (2000) Turing Completude da Computação com DNA

  41. Perguntas???? rrferreira@inf.ufrgs.br Turing Completude da Computação com DNA

More Related