Ronaldo R Ferreira Turing Completude da Computação com DNA 1 Ronaldo Rodrigues Ferreira...
Transcript of Ronaldo R Ferreira Turing Completude da Computação com DNA 1 Ronaldo Rodrigues Ferreira...
Turing Completude da Computação com DNA 1Ronaldo R Ferreira
Turing Completude da Computação com DNA
Ronaldo Rodrigues [email protected]
CM524 - Teoria da Computação AvançadaPPGC UFRGS 2005/2
Dra. Leila Ribeiro e Dr. Tiarajú A Diverio
Porto Alegre, dezembro de 2005
Turing Completude da Computação com DNA 2Ronaldo R Ferreira
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écnicas2. Splicing Systems ou Sistemas H Operação de splicing Splicing Systems: a busca por universalidade Sistemas H estendidos Multi-conjuntos e Sistemas mH3. Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis
Recursivamente4. Prova de Universalidade dos Splicing Systems5. Conclusões6. Referências
Agenda
Turing Completude da Computação com DNA 3Ronaldo R Ferreira
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écnicas2. Splicing Systems ou Sistemas H Operação de splicing Splicing Systems: a busca por universalidade Sistemas H estendidos Multi-conjuntos e Sistemas mH3. Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis
Recursivamente4. Prova de Universalidade dos Splicing Systems5. Conclusões6. Referências
Agenda
Turing Completude da Computação com DNA 4Ronaldo R Ferreira
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’ 3’
3’ 5’
Turing Completude da Computação com DNA 5Ronaldo R Ferreira
Introdução
PCR: uma das bases da Computação com DNA
5’ 3’
3’ 5’ 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.
Turing Completude da Computação com DNA 6Ronaldo R Ferreira
Introdução
PCR: uma das bases da Computação com DNA
Turing Completude da Computação com DNA 7Ronaldo R Ferreira
• 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
Turing Completude da Computação com DNA 8Ronaldo R Ferreira
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 vin e terminam em vout
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
Turing Completude da Computação com DNA 9Ronaldo R Ferreira
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. ParaCada aresta (i,j) no grafo, um oligonucleotídeo Oi->j foi criado. Esse é compostoPelo 10-mer da extremidade 3’ de Oi (a não ser para i=0. Nesse caso, é todo oOi), seguido pelo 10-mer da extremidade 5’ de Oj (a não ser para j=6. NesseCaso, é todo Oj). Assim, a orientação do grafo é preservada (O2->3 != O3->2).O complementar de Oi é Oi’.
i: GCTAGCTAGCGCGTGGGCGAJ: GGCTCGCTGCGGGCTCGCTG 5’ 3’
Oi->j : GCGTGGGCGAGGCTCGCTGCOi->j’: CGCACCCGCTCCGAGCGACG
Turing Completude da Computação com DNA 10Ronaldo R Ferreira
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 11Ronaldo R Ferreira
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 12Ronaldo R Ferreira
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 oProblema.
A computação procede através da filtragem de strings que não representamUma solução.
Modelo implementado por Adleman em [2].
Turing Completude da Computação com DNA 13Ronaldo R Ferreira
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çãoDe um estado para outro da Máquina de Turing.
Sejam S e T duas strings sob o alfabeto . A operação de splicing consiste emCortar 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 14Ronaldo R Ferreira
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écnicas2. Splicing Systems ou Sistemas H Operação de splicing Splicing Systems: a busca por universalidade Sistemas H estendidos Multi-conjuntos e Sistemas mH3. Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis
Recursivamente4. Prova de Universalidade dos Splicing Systems5. Conclusões6. Referências
Agenda
Turing Completude da Computação com DNA 15Ronaldo R Ferreira
Splicing Systems
Operação de Splicing
Considere um alfabeto V e duas palavras x e y, formadas por símbolos de VO local onde uma enzima E1 pode cortar uma palavra pode ser descrito peloPar (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 essaPalavra entre u1 e u2. O mesmo vale para E2 e u3u4.Se duas enzimas produzem extremidades aderentes, então escrevemosIsso como ((u1,u2),(u3,u4))
CCCCCT CGACCCCC AAAAAG CGCAAAAAGGGGGAGC TGGGGG TTTTTCGC GTTTTT
Turing Completude da Computação com DNA 16Ronaldo R Ferreira
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 quatroPalavras:
X1u1u2x2 x1u1u4y2 y1u3u2x2 y1u3u4y2
Splicing!!!
Turing Completude da Computação com DNA 17Ronaldo R Ferreira
Splicing Systems
Splicing Systems: a busca por universalidade
Tendo a operação de splicing, pode-se desenhar uma mecanismo gerador deLinguagem: pegamos um alfabeto, um conjunto de palavras sobre esse alfabeto,(axiomas) e um conjunto de regras de splicing. Partindo dos axiomas, ao iterarOs splicing, tem-se um conjunto de palavras. Esse mecanismo é chamado deSplicing System. O conjunto de palavras produzidas é a linguagem.
Pode-se também considerar símbolos auxiliares, os quais podem ser utilizadosDurante o processo de splicing, mas que não são permitidos a aparecerem nasPalavras geradas. Com esses símbolos, tem-se os Sistemas de SplicingEstendido (extended splicing systems). O modelo básico é chamado de nãoEstendido.
Busca-se então, um sistema H universal. Dado um conjunto fixado de símbolosAuxiliares, de axiomas e de regras de splicing, esse sistema pode se comportar comoQualquer sistema H γ se adicionarmos uma codificação de γ como um axiomaDo sistema H universal.
Turing Completude da Computação com DNA 18Ronaldo R Ferreira
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 19Ronaldo R Ferreira
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 T2. A → BC, para A,B,C E N3. A → λ, para A E N, onde λ é a palavra vazia4. AB → CD, para A,B,C,D E N
Forma Normal de Kuroda
Turing Completude da Computação com DNA 20Ronaldo R Ferreira
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 porS(x) = 1 para x E S, e S(x) = 0 para x ~E S
Turing Completude da Computação com DNA 21Ronaldo R Ferreira
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 22Ronaldo R Ferreira
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écnicas2. Splicing Systems ou Sistemas H Operação de splicing Splicing Systems: a busca por universalidade Sistemas H estendidos Multi-conjuntos e Sistemas mH3. Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis
Recursivamente4. Prova de Universalidade dos Splicing Systems5. Conclusões6. Referências
Agenda
Turing Completude da Computação com DNA 23Ronaldo R Ferreira
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 simuladaPor um sistema mH estendido com um conjunto finito de regras; dois axiomasSã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 F1 C RE, FIN C F2 C RE
Um sistema mH estendido gera a classe das linguagensRecursivamente 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 24Ronaldo R Ferreira
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 elementosDo conjunto Lab; escrevemos r: u → v. Por U denotamos os conjunto N U T. Assim, é construído oSistema 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 = X12YSX2
2
com multiplicidade A(w0) = 1
Turing Completude da Computação com DNA 25Ronaldo R Ferreira
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 = Z1YZ2, para E U, w´ = Z1YZ2, 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 w0 e que contenhaO 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 26Ronaldo R Ferreira
Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis Recursivamente
As regras nos grupos 1, 3 e 5 separam palavras da forma X12zX2
2 duas palavrasX1
2z1 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´X2
2.
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 27Ronaldo R Ferreira
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 = X12YSX2
2, A(w0) = 1.
Assuma que temos a palavra X12w1Yw2X2
2 com multiplicidade 1. Se w2 iniciar com um membroEsquerdo de uma produção em P, então podemos aplicar a regra 1. Assuma que esse é o caso,A palavra é X1
2w1Yuw3X22 para algum r: u → v E P. Usando o axioma (r)v[r] de A obtemos:
( X12w1Yu|w3X2
2, (r)v|[r] ) ├ ( X12w1Yu[r], (r)vw3X2
2 )
Agora, somente a regra 2 pode ser aplicada às palavras que obtemos, envolvendo ambasPalavras:
( X12w1Y|u[r], (r)|vw3X2
2 ) ├ ( X12w1Yvw3X2
2, (r)u[r] )
Assim, passamos de X12w1Yuw3X2
2 para X12w1Yvw3X2
2. Isso corresponde à r: u → v E P
Turing Completude da Computação com DNA 28Ronaldo R Ferreira
Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis Recursivamente
Se para a palavra X12w1Yw3X2
2 aplicarmos a regra 3, temos:
( X12w1Y|w3X2
2, Z1Y|Z2 ) ├ ( X12w1YZ2, Z1Yw3X2
2 )
Agora, só podemos aplicar a regra 4.
( X12w1YZ2, Z1Yw3X2
2 ) ├ ( X12w1Yw3X2
2, Z1YZ2 )
Em cada momento temos um multi-conjunto com uma palavra X12w1Yw3X2
2 ou duasPalavras X1
2z1, z2X22. No primeiro caso, se w1 = λ, podemos remover X1
2 usando aRegra 7; então podemos remover também X2
2 usando a regra 8. Essa é a única maneiraDe remover símbolos não terminais. Se a palavra não é terminal, ela não pode mais serProcessada, pois não há mais símbolos Y.
Concluindo, podemos simular derivações em G e mover livremente Y na palavra deMultiplicidade 1, portanto L(γ) C L(G).
Turing Completude da Computação com DNA 29Ronaldo R Ferreira
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écnicas2. Splicing Systems ou Sistemas H Operação de splicing Splicing Systems: a busca por universalidade Sistemas H estendidos Multi-conjuntos e Sistemas mH3. Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis
Recursivamente4. Prova de Universalidade dos Splicing Systems5. Conclusões6. Referências
Agenda
Turing Completude da Computação com DNA 30Ronaldo R Ferreira
Prova de Universalidade dos Splicing Systems
Definição Informal
Sistemas H Universais possuem todos os componentes fixados, a não ser o conjuntoDos axiomas, capaz de se comportar como qualquer Sistema H γ, quando umaCodificação de γ é introduzida no conjunto de axiomas do Sistema Universal.
Turing Completude da Computação com DNA 31Ronaldo R Ferreira
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, AU C VU*, AU E F1 e RU C Vu*#VU*$VU*#VU*, RU E F2, é ditoSer 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 32Ronaldo R Ferreira
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.
Prova de Universalidade dos Splicing Systems
Turing Completude da Computação com DNA 33Ronaldo R Ferreira
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 34Ronaldo R Ferreira
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 deGramáticas de Chomsky tipo-0 com um dado alfabeto terminal, existem gramáticas universais, ouSeja, construções GU = ( NU, T, -, PU ) tal que para qualquer gramática G = ( N, T, S, P ), existeUma palavra w(G) E ( NU U T )+ (a codificação de G), tal que L(GU´) = L(G) paraGU´ = ( NU, T, w(G), PU ). A linguagem L(GU´) consiste de todas as palavras terminais z, tais quew(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 35Ronaldo R Ferreira
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 = X1
2YSX22 não é considerado. Os outros
Axiomas estão fixados, pois dependem somente de NU e PU.
Passamos de γ1 para γ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´ = X1
2Yw(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-0Equivalente a γ0, então o sistema γU, associado com a gramática universal GU, irá simular o trabalhoDe 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 36Ronaldo R Ferreira
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 37Ronaldo R Ferreira
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écnicas2. Splicing Systems ou Sistemas H Operação de splicing Splicing Systems: a busca por universalidade Sistemas H estendidos Multi-conjuntos e Sistemas mH3. Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis
Recursivamente4. Prova de Universalidade dos Splicing Systems5. Conclusões6. Referências
Agenda
Turing Completude da Computação com DNA 38Ronaldo R Ferreira
Conclusões
A operação de splicing hoje é extremamente difícil de ser realizada. O PCRNão é um moranguinho!!! Com as técnicas atuais é praticamente impossível conseguirO splicing perfeito.
A Computação com DNA é uma cozinha. Além disso, as técnicas deBiologia Molecular empregadas possuem uma taxa de erro extremamenteAlta.
Um sistema mH com dois axiomas e um conjunto finito de regras deSplicing é 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 daBiologia Molecular empregadas, apesar do grande esforço em Computação com DNARealista.
Portanto, caso as técnicas de Biologia Molecular avancem, no sentido de diminuição de erros, aumentoDo controle experimental, barateamento de custos, o Computador de DNA é viável no sentido deComputação Realista.
Turing Completude da Computação com DNA 39Ronaldo R Ferreira
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écnicas2. Splicing Systems ou Sistemas H Operação de splicing Splicing Systems: a busca por universalidade Sistemas H estendidos Multi-conjuntos e Sistemas mH3. Prova de Equivalência entre Splicing Systems e Linguagens Enumeráveis
Recursivamente4. Prova de Universalidade dos Splicing Systems5. Conclusões6. Referências
Agenda
Turing Completude da Computação com DNA 40Ronaldo R Ferreira
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. - DNA Computing 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)