Calculatoarele moleculare
-trecut, prezent și viitor-
În anul 1987, profesorul Tom Head de la departamentul de
matematică al Universității Binghamton (New York State University) publica
în numărul 49 al Buletinului de Biologie Matematică un articol în care propunea
un model matematic al operației de splicing, operație ce se desfășoară
asupra moleculelor de ADN, în prezența unor enzime restrictive și a unei
ligaze, cu scopul de a dinamiza teoria limbajelor formale prin introducerea
unui nou tip de operație.
După cum se știe, molecula de ADN are o structură dublu-spiralată.
Fiecare din cele două spirale, (numite în limbajul de specialitate catene)
este compusă dintr-o succesiune de baze azotate (nucleotide) legate
între ele în interiorul catenei respective, precum și cu bazele azotate
corespunzătoare din cealaltă catenă ce compune molecula de ADN considerată.
În general, se întâlnesc 4 baze azotate care compun prin înlănțuire o catenă
ADN, și anume adenina (A), timina (T), guanina (G)
și citozina (C). Dacă în interiorul unei catene, bazele azotate se
pot lega în aproape orice succesiune posibilă, legăturile dintre catene
se pot stabili doar între bazele azotate complementare, și anume
adenină - timină, respectiv guanină - citozină. Legăturile
dintre bazele azotate ce compun o catenă sunt puternice, pentru desfacerea
lor fiind necesară utilizarea unor enzime restrictive, iar pentru refacerea
lor utilizarea unei ligaze. Legăturile dintre catene sunt mai slabe,
pentru desfacerea lor fiind suficientă creșterea temperaturii peste o anumită
limită, iar pentru refacerea lor scăderea temperaturii sub limita respectivă.
Fiecare enzimă restrictivă recunoaște o anumită succesiune într-un grup
de baze azotate din cele două catene, și desface o anumită legătură în fiecare
din cele două catene.
Prin această operație, molecula de ADN se va desface în două,
fiecare având câte un capăt liber (una dintre catene - mai lungă decât cealaltă
- va conține un grup de baze azotate nelegate). În prezența unei ligaze,
fiecare moleculă cu un capăt liber va căuta să se lege cu o altă moleculă
aflată în aceeași situație, cu condiția ca bazele azotate libere să-și găsească
complementele pe pozițiile similare, rezultând o moleculă ADN completă.
Acest proces de desfacere a unei molecule ADN în două molecule cu margini
libere și de refacere a unei molecule prin legarea a două molecule cu margini
libere complementare, în condițiile prezentate mai sus pe scurt, poartă
denumirea de splicing.
Mai trebuie spus aici că fiecare bază azotată se leagă într-un
anumit loc cu o baza complementară din catena vecină, precum și în alte
două locuri distincte cu cele două baze azotate din aceeași catenă. Alegând
sensul orar de parcurgere al structurii moleculare a unei baze azotate,
și numerotând cu 1 legătura cu baza complementară, legătura cu baza predecesoare
în propria catenă are numărul 3, iar cea cu baza succesoare numărul 5. Se
poate stabili astfel o ordine de parcurgere liniară a unei catene. Mai mult,
cele două catene ce compun dubla spirală ADN sunt legate astfel încât ordinea
de parcurgere este diferită (de la poziția 3, la poziția 5 pentru o catenă,
și invers pentru cealaltă). Figura de mai jos prezintă o posibilă operație
de splicing asupra unei fracțiuni dintr-o moleculă ADN ale cărei catene
sunt reprezentate liniar, în plan.
Cele 4 baze azotate pot fi considerate ca alcătuind un alfabet,
catenele construite prin diferitele combinații de baze azotate pot fi văzute
ca șiruri liniare generate peste acest alfabet, iar enzimele restrictive
care desfac moleculele ADN ca un fel de reguli de splicing. Sistemul alcătuit
dintr-un astfel de alfabet, un număr inițial finit de șiruri obținute prin
posibile combinații ale simbolurilor ce compun acest alfabet, precum și
din operația de splicing, împreună cu un set finit de reguli pentru aplicarea
acesteia asupra mulțimii de șiruri, se numește sistem splicing (conform
modelului propus de matematicianul Tom Head în 1987). Închiderea operației
de splicing asupra setului inițial finit de șiruri considerat generează
un limbaj splicing.
Formalizarea
Modelul propus de către matematicianul Tom Head a avut un
impact mai deosebit doar asupra cercetărilor din domeniul teoriei limbajelor
formale. Grupuri restrânse de cercetători din toată lumea, atrași de posibilitățile
oferite de către modelul respectiv, l-au extins și studiat în diferite contexte.
Formal, un sistem splicing simplu (rebotezat sistem H) este reprezentat
prin tuplul <A, L, R>, unde A este alfabetul,
L este setul inițial de șiruri (limbajul de pornire), iar R
este mulțimea regulilor de splicing (care respectă condițiile de legare
prezentate anterior). De exemplu, o regulă de splicing poate fi reprezentată
astfel:
(x1a|bx2)/(y1c|dy2) --> x1ady2/y1cbdy2
unde x1abx2 și y1cdy2 sunt șirurile inițiale,
a, b, c, d, aparțin A (a și c, respectiv b și d sunt complementare),
x1, x2, y1, y2 aparțin L sunt șiruri construite peste alfabetul A,
iar rezultatul operației de splicing activate de prezența în cele două șiruri
a simbolilor a, b, c, d este obținerea a două noi șiruri, respectiv x1ady2
și y1cbx2. O altă notație des utilizată pentru aceeași regulă este:
a # b 'există' c # d
Pornind de aici, utilizarea operației formale de splicing
și a sistemelor H s-a propagat în paralel, în ambele direcții (echivalente)
de cercetare ce caracterizează știința calculatoarelor: automate și gramatici
formale. S-a constatat că un sistem H simplu este echivalent unui
automat finit. Diferite tipuri de extensii au fost propuse în scopul creșterii
puterii sistemelor H (set inițial infinit de șiruri și/sau de reguli, șiruri
circulare, restricționarea și creșterea controlului asupra operației de
splicing, etc., în general extensii tipice domeniului teoriei limbajelor
formale sau teoriei automatelor), obținându-se, în final, sisteme H extinse
care pot genera limbaje recursiv numerabile. Pe cealaltă parte, au fost
construite sisteme H extinse, echivalente cu mașinile Turing, propunându-se
chiar algoritmi de construire a unui automat Turing, pornind de la un sistem
H extins și invers. O alta direcție de cercetare o constituie automatele
Watson-Crick, denumite astfel după doi dintre laureații Nobel pentru
descoperiri legate de structura ADN, automate similare mașinii Turing, care
dispun de două benzi de citire/scriere între care există o relație de complementaritate.
Experimentele din laboratorul umed"
În 1994, când se părea că utilizarea sistemelor splicing
se va limita strict în cadrul studiilor teoretice din domeniul limbajelor
formale, respectiv automatelor, iar interesul inițial stârnit de calculul
molecular în mediile științifice se stingea încetul cu încetul, un articol
publicat de profesorul Leonard Adleman de la departamentul de știința calculatoarelor
al University of Southern California, în numărul 268 al revistei Science
a produs senzație. De profesie matematician, Adleman este bine cunoscut
ca unul dintre inventatorii sistemului de criptare cu chei publice RSA.
Implicat în ultima vreme în cercetări legate de virusul HIV, Adleman a avut
ideea de utiliza molecule ADN pentru efectuarea de calcule matematice. Folosind
operații biochimice standard asupra unor molecule ADN, el a reușit să rezolve
practic un caz particular al problemei căii hamiltoniene într-un graf orientat.
Un graf orientat constă dintr-o mulțime finită de noduri, legate între ele
prin arce orientate de la un nod la altul. O succesiune de arce din graf
formează o cale în acel graf. O cale ce trece prin toate nodurile grafului,
atingând fiecare nod o singură dată, se numește cale hamiltoniană. Problema
căii hamiltoniene, pentru un anumit graf, constă în deciderea dacă în acel
graf există o cale hamiltoniană. Această problemă este NP-completă: în timp
ce obținerea unei soluții deterministe este foarte greu de realizat (complexitate
exponențială), verificarea unei soluții posibile se poate face într-un timp
polinomial. Acesta a fost primul experiment reușit de utilizare a calculului
molecular pentru rezolvarea unor probleme. Datorită faptului că moleculele
sunt de fapt fragmente ADN, calculul se mai numește și calcul ADN.
Figura alăturată prezintă graful orientat utilizat. Numărul
de noduri a fost ales intenționat mic, pentru ca o soluție să poată fi determinată
simplu, prin mijloace convenționale. În graful prezentat, calea 1 -->
2 --> 3 --> 4 --> 5 --> 6 --> 7 este o soluție (o cale hamiltoniană).
Algoritmul nedeterminist, utilizat pentru rezolvarea problemei, este următorul:
1. Se generează căi aleatorii prin graf.
2. Sunt păstrate acele căi care pornesc din nodul inițial, și se termină
în nodul final.
3. Sunt păstrate doar acele căi care au dimensiunea egală cu numărul de
noduri din graf.
4. Sunt păstrate doar acele căi în care fiecare nod apare maxim odată.
5. Dacă a rămas cel puțin o cale, problema are soluție, altfel nu.
Primul pas l-a constituit codificarea nodurilor și a arcelor
dintre ele, folosind șiruri liniare de baze azotate orientate 5 - 3. Pentru
codificarea fiecărui nod, s-a generat un șir aleator compus din 20 de baze
azotate. Lungimea a fost aleasă suficient de mare pentru a putea obține
codificări diferite ale nodurilor, care să respecte anumite restricții (prezentate
pe parcurs). Arcele au fost obținute prin concatenare celei de-a doua jumătăți
a șirului, ce codifică nodul de pornire la prima jumătate a șirului, ce
codifică nodul de sosire al arcului:
Nodul 2: 5 - TATCGGATCGGTATATCCGA - 3
Nodul 3: 5 - GCTATTCGAGCTTAAAGCTA - 3
Nodul 4: 5 - GGCTAGGTACCAGCATGCTT - 3
Arcul 2 --> 3: 5 - GTATATCCGAGCTATTCGAG - 3
Arcul 3 --> 4: 5 - CTTAAAGCTAGGCTAGGTAC - 3
Arcele care pornesc din nodul 1 preiau toată codificarea
nodului (și nu doar a doua jumătate), iar cele care se termină în nodul
7 preiau toată codificarea nodului (și nu doar prima jumătate), pentru a
nu permite obținerea unor căi în care nodurile respective apar în altă poziție
decât cea inițială, respectiv finală. Codificările pentru noduri trebuie
astfel alese, încât fiecare arc să fie codificat diferit, iar arcul i -->
j (dacă există) să fie codificat diferit de arcul j --> i (dacă există).
De asemenea, pentru fiecare șir ce codifică un nod (mai puțin pentru nodurile
1 și 7) a fost sintetizat șirul complementar:
5 - GCTATTCGAGCTTAAAGCTA - 3 --> (Nodul 3)
3 - CGATAAGCTCGAATTTCGAT - 3 --> (Complementarul nodului 3)
Astfel, în prezența unei ligaze, complementarul unui nod
poate lega șirul unui arc, ce intră în nodul respectiv, cu șirul unui arc
ce iese din nodul respectiv, formându-se astfel o moleculă bi-catenată,
care reprezintă o cale orientată de la un nod până la altul, trecând printr-un
nod intermediar. Complementarul unui nod este orientat 3 --> 5:
(Arcul 2 --> 3) 5 - GTATATCCGAGCTATTCGAGCT TAAAGCTAGGCTAGGTAC
(Arcul 3 --> 4) - 33 - CGATAAGCTCGAATTTCGAT - 5 (Complementarul nodului
3)
Alegerea codificărilor pentru noduri trebuie să asigure desfășurarea
întocmai a procesului descris, pentru a evita legările necorespunzătoare.
Experimentul s-a desfășurat astfel: într-un buffer lichid
(tub pentru testare) cu o compoziție specială, s-au introdus într-o cantitate
suficient de mare (de ordinul a 10*13 ) moleculele mono-catenate ce codifică
nodurile și arcele grafului respectiv, precum și moleculele mono-catenate,
complementare nodurilor interne ale grafului. În prezența unei ligaze (substanță
care favorizează legarea catenelor corespunzătoare), moleculele respective
au produs căi arbitrare prin graful respectiv. Pentru a păstra doar acele
căi care încep din nodul 1 și se termină în nodul 7, au fost utilizate enzime
speciale în cadrul unei reacții cunoscute sub numele PCR (polymerase
chain reaction). Rezultatul a fost amplificarea (creșterea prin copiere
a) numărului de molecule bi-catenate care corespund acestui criteriu, astfel
încât celelalte practic nu mai contează în etapele următoare ale experimentului.
Pasul următor a constat în separarea moleculelor ADN, care au lungimea egala
cu 7 (140 de baze azotate). Această operație s-a desfășurat într-un mediu
special (gel) care, inserat într-un circuit electric, a condus la separarea
moleculelor pe lungimi, reușindu-se apoi extragerea celor cu o anumită dimensiune
(Figura Vizualizarea desfășurării experimentului ..." A). Moleculele
astfel obținute au fost amplificate și purificate de mai multe ori, prin
succesiunea operațiilor de amplificare și separare prezentate anterior,
pentru a elimina cât mai mult posibil moleculele necorespunzătoare. Ultimul
pas a constat în izolarea moleculelor care conțin o singură dată fiecare
codificare a unui nod al grafului. Pentru aceasta, mediul a fost încălzit
astfel încât moleculele bi-catenate au fost desfăcute în molecule mono-catenate,
păstrându-se apoi doar partea care reprezenta calea prin graf (în exemplele
prezentate anterior, partea superioară). Aceste molecule reprezintă căi
ce încep în nodul 1, trec prin alte 5 noduri și se termină în nodul 7. Pe
rând, moleculele complementare, reprezentând cele 5 noduri interne grafului,
au fost fixate pe un suport cu ajutorul unei substanțe speciale (biotină),
s-a adăugat ligază, iar moleculele reprezentând căile prin graf, care conțineau
codificarea nodului respectiv se legau, celelalte rămânând libere. Acestea
din urmă erau îndepărtate din sistem, și se trecea la următorul nod. La
sfârșit, în tubul de test au rămas acele molecule care începeau cu reprezentarea
nodului 1, se terminau cu reprezentarea nodului 7, și conțineau reprezentarea
fiecărui nod intern. Datorită faptului că lungimea moleculei este 7 (140),
este clar că reprezentarea fiecărui nod apare o singură dată în șirul rezultat.
Soluția rezultată este din nou supusă operației de separare în gel. Dacă
se puteau evidenția molecule de lungime 7, problema avea soluție, altfel
nu (Figura Vizualizarea desfășurării experimentului ..." B).
Procesul de rezolvare a acestei probleme s-a desfășurat pe
parcursul a 7 zile de muncă în laborator. Cel mai mare consumator de timp
a fost ultimul pas, în care s-au utilizat succesiv complementarele nodurilor
interne, pentru eliminarea căilor ce trec de mai multe ori prin același
nod. Numărul de molecule utilizate crește liniar cu numărul de noduri din
graf, ca și numărul de pași ai algoritmului (ceea ce constituie marele avantaj
al metodei). Numărul mare de cópii ale fiecărei molecule asigură, într-un
fel, posibilitatea obținerii unei soluții prin minimizarea efectului erorilor
care pot apare (legări eronate ale moleculelor sau nelegarea lor atunci
când sunt îndeplinite condițiile, deteriorarea moleculelor, separarea incorectă,
etc.).
Concluziile imediate la care a ajuns Adleman și echipa sa
sunt că utilizarea calculului molecular, pentru dimensiuni medii ale acestui
tip de probleme, poate fi mai eficientă decât utilizarea calculatoarelor
convenționale, datorită paralelismului masiv, energiei mici consumate și
a volumului mic în care poate fi codificată o cantitate mare de informații.
Pentru probleme de dimensiuni mici, calculul molecular este ineficient,
iar în cazul problemelor de dimensiuni mari s-ar putea atinge repede limitele
cunoștințelor umane în domeniul biochimiei (dimensiunile moleculelor care
pot fi utilizate, desfășurarea unor procese nedorite, degradarea în timp
a soluțiilor, ceea ce limitează timpul în care un astfel de experiment se
poate desfășura, etc).
Maturizarea
Prima observație, care se poate face în legătură cu experimentul
Adleman, este că acesta nu se bazează pe modelul sistemelor H. Adleman nu
a folosit nimic din ceea ce se obținuse până atunci studiind modelul formal
al operației de splicing (în articolul său nu face nici o referire la vreun
studiu din domeniul teoriei limbajelor formale sau automatelor). Mai mult,
euforia generată de spectaculosul rezultat al experimentului a condus la
apariția unei noi direcții de cercetare, oarecum paralelă cu cea inițiată
de matematicianul Tom Head. Principala problemă a sistemelor splicing formale
este că, pe măsură ce sunt extinse pentru a câștiga în putere, se îndepărtează
tot mai mult de modelul biologic de la care au plecat, astfel încât pentru
sistemele H extinse, cu adevărat interesante, nu pot fi proiectate sisteme
moleculare echivalente, date fiind cunoștințele actuale din domeniul biologiei,
biochimiei și geneticii. Interesați în cele din urmă de efectuarea unor
experimente cu sisteme moleculare similare modelului formal, grupuri de
cercetători din cadrul curentului inițial au propus o soluție mult mai elegantă
și mai rapidă pentru problema abordată de Adleman, utilizând enzime restrictive
pentru fiecare nod intermediar al grafului și o codificare bazată pe molecule
bi-catenate. Experimentul a fost încununat de succes. Pe de altă parte,
conștienți de limitările abordării inițiale, Adleman și o serie de alți
cercetători activi în domeniu (R. Lipton, M. Eigen, D. Bartel) au propus
o serie de îmbunătățiri, precum și câteva modele formale, bazate pe experimentul
Adleman. A fost conceput un model formal pentru un calculator, bazat pe
ADN, având la bază 4 operații elementare: separarea, prin care dintr-un
tub de testare se pot obține două tuburi diferite, prin separarea moleculelor
ADN ce conțin o anumită secvența de baze azotate de restul moleculelor,
unificarea, prin care se pot pune în comun moleculele ADN din două tuburi
diferite, detectarea, prin care se poate determina dacă un tub conține cel
puțin o moleculă ADN, și amplificarea, prin care dint-un tub de testare
se pot obține două, având același conținut (duplicare). Aceste operații
elementare au la bază o serie de procedee biochimice standard, o parte dintre
ele fiind menționate pe parcursul descrierii experimentului Adleman (PCR,
ligare, desfacere, separare în gel, etc). Cu aceste operații se pot scrie
unele programe, care primesc un tub de testare inițial (intrare), și răspund
prin da, nu, sau prin producerea unui set de tuburi de testare finale (ieșire).
Mai târziu, datorită complicațiilor generate de operația de amplificare,
precum și din dorința de a utiliza și altfel de molecule decât ADN, a fost
propus un model restrictionat, în care amplificarea nu mai este utilizată,
iar operațiile rămase au fost adaptate pentru a funcționa asupra unor șiruri
neorientate, generate peste un alfabet posibil diferit de {A, C, G, T}.
Calculatorul ADN bazat pe modelul restricționat este suficient de puternic
pentru a rezolva problema colorării unei hărți cu trei culori diferite,
astfel încât doi vecini să nu fie colorați identic (o problemă NP-completă).
Modelul nerestricționat a permis construirea formală a unui calculator cu
memorie. Printre alte probleme dificile, care pot fi rezolvate utilizând
calculul DNA, se numără și problema satisfacerii formelor conjunctive normale
(asignarea unor valori de adevăr tuturor variabilelor dintr-o FNC, astfel
încât forma să fie adevărată - SAT), și chiar varianta generală a acesteia
privind forme booleene generale, problema satisfacerii unor circuite booleene
generale cu porți binare arbitrare, în general probleme de optimizare, rezolvabile
în acest mod în timp liniar, cel mult polinomial. Un interes aparte a fost
acordat unei propuneri (deocamdată numai la nivel teoretic) de spargere
a celebrului sistem de criptare DES prin calcul molecular (generarea prin
calcul molecular a cheii de decriptare), într-un interval de aproximativ
4 luni. Eforturi au fost depuse pentru a limita cât mai mult posibil efectul
erorilor ce pot apare pe parcursul calculelor moleculare reale, prin utilizarea
unui număr suficient de mare de molecule, îmbunătățirea operațiilor de separare
și purificare la nivel biochimic, sintetizarea unor molecule ce conțin informații
redundante, etc. Însă, cele mai mari eforturi au fost îndreptate în direcția
proiectării unui calculator molecular universal programabil. Cercetările
sunt abia la început.
La rândul lor, cercetătorii din domeniul teoriei limbajelor
formale, interesați de calculul molecular, au continuat să îmbunătățească
continuu modelul sistemelor H, respectiv sistemelor H extinse, colaborând
în același timp cu specialiști din domeniul biologiei, biochimiei, ingineriei
genetice, pentru a face posibilă transpunerea la nivel molecular a sistemelor
formale puternice construite.
Prezent și viitor
Experimentul Adleman a produs o adevărată efervescență în
mediile științifice internaționale. Entuziasmul inițial a condus chiar la
apariția unor afirmații și proiecte ușor desprinse de realitate. Începând
din 1995, o conferință dedicată se desfășoară anual, primele două (1995,
1996) având loc la Princeton, iar ultima (1997) la Philadelphia. Dacă la
conferința din 1996, la întrebări de genul Calculatoarele moleculare -
de ce ?, cum ?, când ?" se răspundea pentru a construi un supercalculator,
pornind de la tehnicile utilizate de Adleman în experimentul său",
iar un participant din partea armatei a strigat chiar start building it
now !", conferința din 1997 a lăsat loc unui optimism moderat, propunând
rezolvarea unor probleme concrete, dificil de rezolvat cu ajutorul tehnicii
de calcul actuale, încercând întâi mici experimente de laborator și crescând,
apoi, treptat, complexitatea problemelor abordate", astfel încât it
will take some time" până când calculul molecular va deveni suficient
de puternic pentru a fi utilizat efectiv, pentru rezolvarea unor probleme
reale. Între timp, ambele direcții de cercetare au luat amploare, și s-ar
putea să se întâlnească la un moment dat, în punctul în care construirea
unui calculator DNA funcțional să fie o problemă rezolvată. Până atunci,
noi modele formale sunt propuse, noi experimente sunt efectuate cu mai mult
sau mai puțin succes, noi posibile aplicații ale calculului molecular sunt
descoperite. Au fost imaginate chiar calculatoare hibride, în care coexistă
componente bazate pe siliciu cu sisteme umede", bazate pe molecule.
O altă direcție foarte promițătoare de cercetare are în vedere utilizarea
structurii 3D a moleculei ADN, ceea ce ar permite reducere a timpului de
rezolvare a unor clase de probleme la o constantă, indiferent de dimensiunea
acestora.
O serie de cifre vin să demonstreze avantajele utilizării
calculului molecular. Astfel, timpul de rezolvare crește în general liniar
cu dimensiunea problemei. Durata unei operații efectuate de (sau cu) o moleculă
este în medie de 103 secunde, de peste 1010 ori mai lent decât calculatoarele
actuale, ceea ce le face inutile pentru calcule secvențiale. Dacă ținem
însă cont de faptul că un tub de test poate conține, în medie, peste 1015
molecule, asta semnifică tot atâtea operații executabile în paralel, calculul
molecular devine foarte util. În ceea ce privește energia consumată, s-a
afirmat că, în timp ce un calculator convențional poate efectua cam 109
operații / Joule, unul molecular ar depăși 1019 operații pentru aceeași
cantitate de energie. Nu în ultimul rând, 1 bit de informație poate fi stocat
în 1 nm3 ADN, în timp ce un calculator convențional are nevoie de 1012 nm*3
pentru același lucru.
Implicațiile produse de reușita primului calcul molecular
experimental sunt fără îndoială mari. Dincolo de influențele exercitate
asupra științei calculatoarelor (prin oferirea unor noi paradigme de calcul,
etc.), acest experiment a deschis drumul către o mai bună înțelegere a modului
în care molecula ADN - constituent fundamental al lumii vii - poate fi utilizată
pentru stocarea și procesarea informației. Fără nici un dubiu, progrese
importante în biochimie și genetică sunt necesare, pentru ca cercetările
să conducă la obținerea unui calculator molecular universal (dacă acest
lucru va fi posibil). Dar nu trebuie neglijate nici progresele în sine așteptate
în biochimie și inginerie genetică, precum și impactul lor în biologie,
chimie, medicină, precum și în alte discipline.
Post Scriptum
În perioada 17-24 august 1997, s-a desfășurat la Mangalia,
în organizarea Fundației Universitare a Mării Negre, școala de vară Molecular
Computing", prima de acest gen în Europa. Manifestarea s-a bucurat
de participarea profesorului Tom Head și a unui număr important de cercetători
din întreaga lume, interesați de teoria și aplicațiile practice ale sistemelor
H în special, și de calcul molecular în general. Am fost plăcut surprins
de nivelul cercetării teoretice românești în domeniu. Această școală a constituit
un bun prilej pentru stabilirea de contacte între cercetători, și pentru
comunicarea ultimelor noutăți din domeniu. Prezentările și discuțiile, desfășurate
pe toată durata manifestării, au constituit o importantă sursă de informație
pentru conceperea acestui articol.
Referințe bibliografice:
1. Adleman, Leonard - Molecular computation of solutions to combinatorial
problems, Science, 268 (1994), 1021-1024.
2. Adleman, Leonard - On constructing a molecular computer, unpublished
(1995).
3. Boneh, D., Dunworth, C., Lipton, R..J.,Sgall, J., - On the computational
power of DNA.
4. Boneh, D., Dunworth, C., Lipton, R.J., - Making DNA computers error resistant.
5. Boneh, D., Dunworth, C., Lipton, R.J., - Breaking DES using a molecular
computer.
6. Head, Tom - Formal language theory and DNA: an analysis of the generative
capacity of recombinant behaviors, Bulletin of Mathematical Biology, 49
(1987), 737-759.
7. Head, Tom - Splicing schemes and DNA, Nanobiology, 1 (1992), 335-342.
8. Mateescu, A., Păun, Gh., Rozenberg, G., Salomaa, A. - Simple splicing
systems, Discrete Applied Mathematics, (to appear).Majoritatea acestor articole,
precum și multe altele sunt accesibile în Internet.