INFORMATICA E BIOLOGIA DEI SISTEMI - dp.univr.itdp.univr.it/~laudanna/Systems...

12
MONDO DIGITALE •n.1 - marzo 2004 1. INTRODUZIONE Luso di tecniche informatiche in domini applicativi legati alla biologia risale ormai agli anni ottanta quando venne conia- to il termine bioinformatica. Essenzialmen- te si trattava di memorizzare ed esaminare la grande quantità di dati che veniva prodot- ta dai biologi. Pertanto, i settori dell’infor- matica maggiormente interessati furono gli algoritmi, le basi di dati e alcune branche dell’intelligenza artificiale (in particolare, reti neurali) per cercare di estrarre dati si- gnificativi e fare predizioni da insiemi spuri di dati prodotti da esperimenti. Le tecniche informatiche maggiormente usate per que- sti scopi riguardano modelli statici di feno- meni biologici; nessun riferimento viene fatto a possibili evoluzioni funzionali e tem- porali dei fenomeni. Tuttavia, la definizione di bioinformatica fornita da Hwa Lim che ne coniò il temine è “studio del contenuto informativo e del flusso informativo in siste- mi e processi biologici”. Nei primi decenni di bioinformatica si è guardato quasi esclu- sivamente al contenuto informativo (e, quindi, a tecniche statiche) e si è ignorato il flusso informativo. Per capire le motivazioni che privilegiano la bioinformatica statica a quella dinamica oc- corre guardare brevemente all’evoluzione che ha avuto la biologia in questi ultimi anni. Il lancio del progetto “genoma umano” ha portato alla scoperta di quantità di dati supe- riori alle aspettative di chiunque e in breve tempo. A questo punto, conoscendo tutti i geni che compongono il DNA umano si apre una nuova sfida che spesso viene indicata come genoma funzionale (functional geno- mics). Attualmente, si conoscono tutti i “mat- toncini” del funzionamento del corpo umano (i geni) e di alcuni si conoscono anche le fun- zionalità se presi in isolamento, ma ben poco si sa di come i geni e le proteine che questi codificano si comportano in situazioni nor- mali o patologiche. Da qui, la necessità di nuove tecniche per modellare il comporta- mento di sistemi biologici, e non solo la loro struttura come avveniva fino a pochi anni fa. La complessità dei sistemi da trattare è tale da non consentire uno studio accurato e In questo contributo si esaminano i più recenti sviluppi informatici in campo biologico. Si mostra come l’evoluzione delle scienze biologiche abbia im- posto un cambio di paradigma di riferimento nella bioinformatica: ovvero, passando dai progetti di sequenziamento del genoma alla genomica e proteomica funzionale le tecniche informatiche maggiormente adatte si ri- fanno alla teoria dei linguaggi di programmazione con particolare riferi- mento alla concorrenza e alla mobilità del codice. Corrado Priami INFORMATICA E BIOLOGIA DEI SISTEMI 3 4.3

Transcript of INFORMATICA E BIOLOGIA DEI SISTEMI - dp.univr.itdp.univr.it/~laudanna/Systems...

M O N D O D I G I T A L E • n . 1 - m a r z o 2 0 0 4

1. INTRODUZIONE

L’ uso di tecniche informatiche in dominiapplicativi legati alla biologia risale

ormai agli anni ottanta quando venne conia-to il termine bioinformatica. Essenzialmen-te si trattava di memorizzare ed esaminarela grande quantità di dati che veniva prodot-ta dai biologi. Pertanto, i settori dell’infor-matica maggiormente interessati furono glialgoritmi, le basi di dati e alcune branchedell’intelligenza artificiale (in particolare,reti neurali) per cercare di estrarre dati si-gnificativi e fare predizioni da insiemi spuridi dati prodotti da esperimenti. Le tecnicheinformatiche maggiormente usate per que-sti scopi riguardano modelli statici di feno-meni biologici; nessun riferimento vienefatto a possibili evoluzioni funzionali e tem-porali dei fenomeni. Tuttavia, la definizionedi bioinformatica fornita da Hwa Lim che neconiò il temine è “studio del contenutoinformativo e del flusso informativo in siste-mi e processi biologici”. Nei primi decennidi bioinformatica si è guardato quasi esclu-sivamente al contenuto informativo (e,

quindi, a tecniche statiche) e si è ignorato ilflusso informativo.Per capire le motivazioni che privilegiano labioinformatica statica a quella dinamica oc-corre guardare brevemente all’evoluzioneche ha avuto la biologia in questi ultimi anni.Il lancio del progetto “genoma umano” haportato alla scoperta di quantità di dati supe-riori alle aspettative di chiunque e in brevetempo. A questo punto, conoscendo tutti igeni che compongono il DNA umano si apreuna nuova sfida che spesso viene indicatacome genoma funzionale (functional geno-

mics). Attualmente, si conoscono tutti i “mat-toncini” del funzionamento del corpo umano(i geni) e di alcuni si conoscono anche le fun-zionalità se presi in isolamento, ma ben pocosi sa di come i geni e le proteine che questicodificano si comportano in situazioni nor-mali o patologiche. Da qui, la necessità dinuove tecniche per modellare il comporta-mento di sistemi biologici, e non solo la lorostruttura come avveniva fino a pochi anni fa.La complessità dei sistemi da trattare è taleda non consentire uno studio accurato e

In questo contributo si esaminano i più recenti sviluppi informatici in campo

biologico. Si mostra come l’evoluzione delle scienze biologiche abbia im-

posto un cambio di paradigma di riferimento nella bioinformatica: ovvero,

passando dai progetti di sequenziamento del genoma alla genomica e

proteomica funzionale le tecniche informatiche maggiormente adatte si ri-

fanno alla teoria dei linguaggi di programmazione con particolare riferi-

mento alla concorrenza e alla mobilità del codice.

Corrado Priami

INFORMATICA E BIOLOGIADEI SISTEMI

3

4.3

scientifico se non si fa uso di tecniche strut-turate e non ambigue di modellazione e dianalisi. Da qui la nascita di una nuova brancadi biologia chiamata biologia dei sistemi

(systems biology) che ripercorre tappe chealtre discipline hanno percorso in passato e

fa ricorso alla teoria dei sistemi complessiper rappresentare sistemi biologici. Questaarea della biologia è estremamente attiva inquesti anni e cerca di lanciare un progetto si-mile al progetto genoma umano, ma con en-fasi sulle funzionalità e interazioni dei com-ponenti basilari del corpo umano.Tornando all’informatica, negli ultimi anni c’èstata molta attenzione ai sistemi mobili e di-stribuiti e ciò ha portato alla definizione disemplici calcoli (linguaggi formali dotati disintassi, definizione della simbologia che uti-lizzano, e semantica, significato attribuito aisimboli, definite rigorosamente) in grado dirappresentare i possibili comportamenti ditali sistemi in modo non ambiguo. Inoltre, ta-li calcoli sono dotati di strumenti formali disupporto in grado di effettuare analisi e veri-fiche di proprietà. Anche in questo campo oc-corre confrontarsi con l’enorme complessitàdi sistemi formati da milioni di entità geogra-ficamente disperse in grado di comunicare ecooperare senza avere una completa cono-scenza dell’ambiente di esecuzione globale esenza avere completa affidabilità e disponi-bilità di risorse.A questo punto, unendo gli sforzi fatti nell’a-rea dei linguaggi di programmazione per mo-dellare i sistemi di calcolo globali (global com-

puting) e quelli fatti in biologia per passare aun approccio sistemico nello studio dei feno-meni naturali nasce la controparte dinamicadella bioinformatica statica e inizia lo studio

M O N D O D I G I T A L E • n . 1 - m a r z o 2 0 0 4

1

0

0

0

1

4

Il termine “Bioinformatica” è stato coniato da Hwa Lim alla fine degli anni ottanta per indicare l’applicazione di tecniche informatichenel dominio applicativo delle scienze della vita. La definizione proposta recita: “lo studio del contenuto informativo e del flusso diinformazione nei sistemi e nei processi correlati alla biologia.” Tuttavia, questa definizione è unilateralmente legata alla biologia equesto non consente di sviluppare la dignità paritetica che informatica e biologia devono avere in questa area di ricerca al fine di otte-nere importanti risultati per entrambe le discipline. A questo proposito una definizione migliore di bioinformatica potrebbe essere “LaBioinformatica è il campo della scienza in cui biologia e informatica si fondono in una unica disciplina per facilitare nuove scoperte bio-logiche e determinare nuovi paradigmi computazionali sul modello dei sistemi viventi.” Questa definizione presa da NCBI al sitowww.ncbi.nlm.gov/Education è molto generale, ed evidenzia nettamente la necessità di interazione tra informatici e biologi e, quindi,la necessità di costruire un linguaggio comune alle due discipline per poter interagire e collaborare. Questo può essere fatto solo me-diante lo sviluppo di curricula formativi interdisciplinari e mediante l’attivazione di grandi progetti di ricerca. Dal punto di vista dei con-tenuti, la nuova disciplina deve sicuramente comprendere la definizione di tecniche statistiche e algoritmi necessari a studiare la gran-de mole di dati che si rende disponibile come risultato degli esperimenti, la definizione di strumenti di scambio e memorizzazione diinformazioni accessibili su larga scala, la definizione di metodologie di rappresentazione e simulazione del comportamento di sistemicomplessi come le reti geniche o metaboliche o i meccanismi di segnalazione intra e inter-cellulari. Infine, la bioinformatica dovrebbeassumere il ruolo che ha la matematica per la fisica, e cioè quello di fornire le basi teoriche per i recenti sviluppi biologici nelle areeomics (genomics, proteomics, metabolomics ecc.). Questa visione ultima è quella più cara ai biologi teorici che vorrebbero vedere in-serita in questa disciplina la loro lunga esperienza sulle teorie evolutive accoppiata con i recenti sviluppi sulla genomica funzionale. Daqui il ruolo primario di modellazione e analisi di sistemi che si vuole affidare alla bioinformatica e che esamineremo più in dettaglio ri-spetto alle altre possibilità in questo contributo. L’obiettivo ultimo è, quindi, quello di avere teorie predittive del comportamento deisistemi e anche metodi prescrittivi della loro evoluzione (si veda, a tal proposito il paragrafo ... con le conclusioni del contributo).

La biologia dei sistemi è un approccio introdotto recentemente da LeroyHood e basato sulla teoria dei sistemi per studiare fenomeni biologici. Ini-zialmente la biologia basava la sua ricerca su un approccio riduzionistico incui i sistemi venivano scomposti nei loro componenti elementari, si studia-vano i singoli componenti per acquisire nuova conoscenza per poi cercare diricombinarli insieme e avere conoscenza sull’intero sistema. Questo approc-cio è fallito a causa della enorme complessità dei sistemi biologici e quindil’incapacità di dominare intellettualmente il processo di ricombinazione. L’i-dea alla base della biologia dei sistemi è quella di trasformare la biologia inuna scienza di scoperta in cui si individua un sistema e se ne studiano le ca-ratteristiche. Anche se il passaggio paradigmatico ai sistemi è interessante eutile di per se, avendo ormai a disposizione l’informazione completa sullesue potenzialità fornita dai risultati del progetto genoma, l’impatto di un ta-le approaccio ha portata enorme. Potremmo sintetizzare dicendo che la bio-logia sta passando dalla produzione della conoscenza all’organizzazionedella conoscenza acquisita. Ovviamente dopo aver organizzato il materialedisponibile si dovrà procedere alternando fasi di produzione e fasi di orga-nizzazione come avviene per tutte le scienze sperimentali.L’obiettivo della biologia dei sistemi si sposa perfettamente con quello del-la bioinformatica che consideriamo in questo contributo, infatti è prevederecorrettamente e modificare il comportamento dei sistemi biologici. Per rag-giungere questo obiettivo le strategie della biologia dei sistemi prevedonol’uso di sistematiche perturbazioni genetiche e ambientali dei modelli conun monitoraggio accurato delle risposte globali a questi cambiamenti al li-vello di geni, proteine, meccanismi di segnalazione e fenotipi. Il monitorag-gio deve basarsi non solo su osservazioni qualitative, ma anche quantitati-ve che devono guidare la definizione di strutture dinamiche per la modella-zione del comportamento dei sistemi. Su tali modelli si devono poi definireverifiche e controlli iterativi come accade nella definizione di nuovi pro-grammi software per permettere la previsione di nuovi comportamenti.

del flusso informativo nei sistemi biologici. Inquesta breve nota verranno trattati questiaspetti dinamici per tre motivi: sono più nuovie, dunque, meno conosciuti, consentono diaprire nuove frontiere di ricerca che, invece,sono ormai ben chiare nella bioinformaticastatica e possono, infine, consentire avanza-menti nello stato dell’arte sia nella modella-zione di sistemi informatici complessi e mobi-li sia nelle conoscenze biologiche fornendopredizioni di comportamento sulla base di si-mulazioni e modelli analitici.

2. RAPPRESENTAZIONEDI SISTEMI BIOLOGICI

Nella biologia moderna è ormai chiara la ne-cessità di integrare tutti i dati provenientidalle discipline dette “omics” (genomics,

proteomics, metabolomics ecc.) per otteneredei modelli di sistemi complessi che possanoessere studiati mediante strumenti automa-tici. Attualmente, seguendo un approccio

guidato da ipostesi i formalismi usati per rap-presentare i sistemi sono di due tipi: quelligrafici informali utilizzati solitamente nei da-

ta base pubblici (come per esempio, EcoCyc,KEGG, aMAZE, TransPath, INETRACT, SPAD sivedano per esempio [5, 8, 13] e le Figure 1 e2) e quelli rigorosi prevalentemente basati suequazioni differenziali. Se, invece, si utilizzaun approccio basato su scoperte, i modellivengono inferiti mediante tecniche statisti-che come le reti bayesiane.I formalismi grafici spesso hanno il difetto dinon essere formali e ancor più spesso di es-sere ambigui; inoltre, non esiste una notazio-ne standard (già le Figure 1 e 2 differiscononella simbologia grafica e nella loro semanti-ca – cioè il significato attribuito ai simboli uti-lizzati). I formalismi matematici non sonocomposizionali e non si riescono a inferire inmodo automatico dalle rappresentazioni gra-fiche. Queste limitazioni impediscono di otte-nere dei modelli che permettano di studiarein modo soddisfacente i sistemi biologici sia

M O N D O D I G I T A L E • n . 1 - m a r z o 2 0 0 4

1

5

0

0

0

1

FIGURA 1Rappresentazionein SPAD

IFN–α

JAK 1 Tyk 2 JAK 1

IFN

rece

ptor

–I

IFN

rece

ptor

–I

IFN

rece

ptor

–I

IFN

rece

ptor

–I

Tyk 2

STAT 1

STAT 1 STAT 1

STAT 1 STAT 1

STAT 1

ISGF 3ISRE

p48 p48 p48

GAF

GAS

DNA

DNA

ISGF3 – α

Membrana nuclearePlasma membrane

STAT 2

STAT 1 STAT 2

STAT 2

STAT 1 STAT 2

IFN–α

IFN–α

in termini di struttura che di funzionalità. Re-centi sforzi della comunità biologica mostra-no che tali limitazioni possono essere supe-rate se si adottano tecniche di modellazioneconcettuale che sono da molti anni alla basedella teoria dei sistemi, dello sviluppo delsoftware o della progettazione di grandi basidi dati. Un aspetto cruciale è la possibilità dicombinare nello stesso modello sia aspettistatici che dinamici del sistema. Infine, l’im-portanza della semantica viene evidenziataper determinare dipendenze e relazioni tra levarie parti del modello in modo non ambiguo.La possibilità di definire una struttura (testodi un programma) e un meccanismo (seman-tica operazionale) per derivare da questa ladescrizione di un comportamento dinamico(sistema di transizione) è una peculiarità del-la definizione formale dei linguaggi di pro-grammazione. Quindi la teoria dei linguaggi,in particolare di quelli concorrenti e mobili,può fornire un notevole supporto alla biolo-gia dei sistemi dove molti eventi concorrentiche modificano l’evoluzione del sistema nelsuo complesso sono sempre presenti.

Le problematiche che si devono risolvere peravere rappresentazioni utili e non ambiguedei sistemi sono la definizione di:❙ una rappresentazione grafica standard e fa-cilmente comprensibile ai biologi;❙ una rappresentazione formale dei sistemi acui si possano applicare metodi rigorosi dianalisi e simulazione;❙ un meccanismo di estrazione automaticadelle rappresentazioni formali da quellegrafiche nascondendo i dettagli matematiciagli utenti;❙ un meccanismo di riflessione dei risultatidelle analisi nell’interfaccia grafica.Un approccio recentissimo per rappresenta-re sistemi biologici in modo grafico, ma se-mi-formale è basato su UML (Unified Mo-

deling Language) che fornisce meccanisminaturali per descrivere i componenti di unsistema e le loro interazioni. Inoltre, la mo-dularità dei diagrammi e delle descrizioniUML ha una corrispondenza immediata conla struttura multilivello dei sistemi naturali(per esempio, un organismo è composto diorgani che sono a loro volta composti da

M O N D O D I G I T A L E • n . 1 - m a r z o 2 0 0 4

1

0

0

0

1

6

FIGURA 2Rappresentazione

in aMAZE

Activates

Activates

Catalyzes

DecomponeUbiquitination Degradazione

Translocates

Activates

Activates

Fascie

Fascie

Fascie

TNF alpha

TNFR1

TRADD

TRAFF2

ApoptosisCIAP1

IKKbeta

IKKalpha IKAP

NIK

NFKappaB

NFKappaB

NFKappaBNFKappaB

IKappaB P-IKappaB P-IKappaB

S26

Ubiq-P-IKappaB

Membrana nucleare

Membrana cellulare

Citoplasma

Extracellulare

Nucleo

Sottounità gammaComplesso IKK

Complesso IKB Complesso IKB

Fosforilazzazione

Regola la trascrizione

cellule che sono composte da componentiquali proteine, apparati, nucleo, DNA ecc.).Sono stati già definiti anche alcuni ambientisoftware per modellare sistemi biologicicon UML (si veda www.biouml.org). Lo sfor-zo più significativo in questa direzione è co-munque fornito dalla definizione di un profi-lo SB-UML specifico per la biologia dei si-stemi [12] sottoposto al comitato di standar-dizzazione OMG.Utilizzare UML e i suoi meccanismi di esten-sione per la biologia dei sistemi è una sceltastrategica per i seguenti motivi. Il formali-smo è grafico e non molto distante da quellisolitamente usati dai biologi ai quali si ri-chiede, quindi, un piccolo sforzo di adegua-mento. Anche se UML non ha una semanticaformale, è sufficientemente strutturato daconsentire la definizione di traduttori auto-matici in calcoli formali. Importanti istituticome il Pasteur di Parigi lo utilizzano comemeccanismo di rappresentazione per il cir-colo delle informazioni interne e questo fa-vorisce la sua diffusione. Inoltre, essendouno standard molto diffuso nell’area IT(Information Technology) corredato da mol-ti strumenti automatici, dovrebbe essere ri-dotta la fase di start-up per la produzione distrumenti mirati al dominino biologico.Adesso si descriverà brevemente come lealgebre di processo possono rappresentarei sistemi biologici. I processi biomolecolarisono reti di proteine che interagiscono, cia-scuna composta da molte parti strutturalidistinte e indipendenti chiamate “domini”.Le interazioni binarie tra domini dipendonodalla complementarietà strutturale e chimi-ca di particolari porzioni delle proteine. L’in-terazione tra proteine causa a sua volta va-riazioni biochimiche dei domini che influen-zano le future interazioni dei componenticoinvolti. Inoltre, l’interazione tra proteineguida direttamente il funzionamento delle

cellule, e le modifiche delle proprietà bio-chimiche delle proteine sono, quindi, il mec-canismo principale che guida molte funzio-nalità cellulari. Queste caratteristiche corri-spondono piuttosto strettamente a quelledei sistemi distribuiti in cui la topologia diinterconnessione delle varie componentipuò variare dinamicamente cambiando cosìle potenziali interazioni future.Per avere un parallelo più dettagliato tra si-stemi biologici e algebre di processo si pos-sono considerare le molecole che interagi-scono come processi concorrenti e la com-plementarietà delle caratteristiche biochi-miche come coppie di operazioni comple-mentari (send e receive) sullo stesso canaledi comunicazione. La modifica successivaall’interazione biologica è modellata con-sentendo la comunicazione di canali che,quindi, alterano la struttura topologica del-la rete di interconnessione. Infatti, se uncerto processo riceve un nuovo nome di ca-nale, da quel momento in poi lo può utiliz-zare per comunicare con tutti gli altri pro-cessi che lo conoscono. Al contrario, se uncerto processo consuma il nome di un cana-le per effettuare su di lui una comunicazio-ne, non potrà poi più comunicare con i pro-cessi che conoscono quel canale fino a chenon acquisisce nuovamente il nome. Tecni-camente, il comportamento dinamico dei si-stemi biologici viene formalmente definitodalla semantica operazionale dei calcoli. Inletteratura sono stati proposti recentemen-te numerosi calcoli per rappresentare siste-mi biologici (si ricordano tra questi Bioche-mical πi-calculus [10], BioAmbients [11], Co-re Molecular Biology [2], Brane calculus [1]).La descrizione accurata degli aspetti quan-titativi che guidano i processi molecolariviene inglobata nel parallelo sopra riportatoutilizzando algebre di processo stocastiche

in cui le transizioni sono governate da distri-

M O N D O D I G I T A L E • n . 1 - m a r z o 2 0 0 4

1

7

0

0

0

1

L’acronimo UML indica un linguaggio grafico e semi-formale usato per la progettazione di sistemi basati su tecnologie ad oggetti.Esso è sicuramente il linguaggio più diffuso anche in ambiente industriale; è supportato da oltre 70 strumenti automatici di pro-gettazione e da oltre 80 libri descrittivi. La sua diffusione è in continuo aumento e sta coprendo un sempre maggior numero di do-mini applicativi compresi recentemente i sistemi biologici. Una delle maggiori caratteristiche che lo rende estremamente versatileè la sua estendibilità con meccanismi (profili) previsti già nella definizione del linguaggio. L’utilizzo di profili è stato recentementeadottato da alcuni biologi [12] per definire uno standard di modellazione di sistemi biologici. Inoltre, l’esistenza dello standard XML(eXtensible Markup Language) per salvare i modelli UML facilita l’integrazione tra strumenti automatici di tipo diverso. In partico-lare, molti data base biologici pubblici consentono di esportare informazioni in questo formato.

buzioni probabilistiche. Il calcolo delle di-stribuzioni da associare alle transizioni sibasa sull’osservazione che l’interazione tradue proteine è governata da una costante diinterazione determinata empiricamente inbase alle affinità biochimiche dei reagenti edalla concentrazione. L’unico dei calcolimenzionati che può gestire aspetti stocasti-ci è il π-calcolo nella sua variante stocastica[9, 10] (si veda, a tal proposito il paragrafo 4sulla simulazione). Per esempio, il meccani-smo di trascrizione regolato da un ciclo afeedback positivo astrattamente rappresen-tato dal diagramma biologico in figura 3 è

tradotto dal programma in Biochemical π-calcolo stocastico di tabella 1.Si conclude questo paragrafo discutendobrevemente i meccanismi di estrazione e ri-flessione, ipotizzando di avere una rappre-sentazione grafica UML-like. In informaticasono stati fatti notevoli sforzi per cercare diottenere modelli formali basati su algebre diprocesso a partire da rappresentazioni UML[5]. Queste tecniche possono essere usateper ottenere descrizioni formali di sistemibiologici quando questi sono rappresentatimediante UML e, quindi, applicare le tecnichedi analisi tipiche delle algebre di processo.

M O N D O D I G I T A L E • n . 1 - m a r z o 2 0 0 4

1

0

0

0

1

8

Le algebre di processo sono dei semplici calcoli introdotti alla fine degli anni settanta da Tony Hoare e Robin Milner per modellarele peculiarità dei sistemi concorrenti in modo rigoroso. Esse comprendono pochi operatori che compongono azioni elementari in-dicate con lettere minuscole nel seguito e processi indicati invece con lettere maiuscole: sequenzializzazione di azioni e processi(a.P), composizione parallela di processi (P|Q), composizione non deterministica di processi (P + Q), dichiarazione di nomi nuovi(new a), operatore di scelta [x = y], ricorsione (rec X. P). Le azioni sequenziali possono essere di tre tipi: a!b per spedire il nome bsul canale a, a?x per ricevere un dato che rimpiazzerà la variabile targa x sul canale a, oppure t per rappresentare un’azione internadel sistema non visibile a un osservatore esterno. Lo scopo principale è quello di definire l’interazione e la cooperazione tra pro-cessi concorrenti e mobili.La semantica intuitiva degli operatori elencati sopra è la seguente. L’azione a è la prima azione atomica che il processo a.P può com-piere. La ricezione a?x lega le occorrenze della variabile x nel processo prefisso P. In altre parole, un dato sarà ricevuto sul canale a esostituirà tutte le occorrenze libere della variabile targa x in P. Il prefisso di invio a!x invia il nome x sul canale a senza legare le occor-renze di x in P. Nel processo (new x)P, l’operatore di restrizione new crea un nuovo (unico) nome x il cui raggio di azione è P. L’opera-tore di scelta [x = y] è soddisfatto se i due nomi sono uguali e consente l’esecuzione del processo che prefigge. Se la scelta non è sod-disfatta l’esecuzione si ferma. Nella composizione parallela P|Q i due processi sono eseguiti indipendentemente e possono comuni-care se condividono uno stesso nome di canale. In altre parole a!x.P|a?y.Q può comunicare inviando dalla parte sinistra alla parte de-stra della composizione il nome x sul canale a. Il processo risultante dopo la comunicazione sarà P|Q {x/y}, dove {x/y} rappresenta l’o-perazione di sostituzione del nome x alle occorrenze libere di y nel processo cui è applicata. La somma rappresenta una scelta non de-terministica: P + Q si comporterà in modo mutuamente esclusivo o come P o come Q. Infine, rec X.P rappresenta la definizione ricorsi-va del processo P, cioè la possibilità di ripetere l’esecuzione del processo P tante volte quante si vuole.La semantica formale di questi calcoli è solitamente fornita in modo operazionale sfruttando l’approccio operazionale introdotto daGordon Plotkin e basato su assiomi e regole di inferenza. Il rigore formale che ne deriva consente di dimostrare proprietà dei pro-grammi senza perdere in intuizione. Il comportamento dinamico dei sistemi rappresentati viene espresso mediante sistemi di transi-zione che sono essenzialmente dei grafi etichettati orientati. Gli stati rappresentano le configurazioni del sistema e le transizioni leazioni che il sistema può compiere per cambiare configurazione. Le etichette delle transizioni forniscono informazioni sul tipo di azio-ne che esse rappresentano.

Algebre di processo stocastiche

Inizialmente le algebre di processo sono state utilizzate solo per descrivere e studiare aspetti qualitativi di sistemi concorrenti e mobi-li. L’evoluzione della teoria e le prime applicazioni a casi di studio reali hanno subito mostrato il limite di un approccio qualitativo. Peresempio se si vuole progettare un sistema distribuito di una qualche complessità non si può prescindere dalle prestazioni del sistemasin dai primi passi di progettazione. Questo ha fornito la spinta per estendere la teoria delle algebre di processo con informazioniquantitative vedendo la comparsa in letteratura sia di algebre di processo temporali che probabilistiche. Questo primo passo nelquantitativo non è però sufficiente a risolvere tutti i problemi posti dalla progettazione avanzata di sistemi. Il passo decisivo viene fat-to da Jane Hillston quando introduce una variante stocastica di una semplice algebra di processo. L’idea di base è quella di arricchire iprefissi sequenziali delle algebre di processo (si veda il riquadro su algebre di processo) con una distribuzione probabilistica: i nuoviprefissi hanno, quindi, la forma (a,F).P dove a è l’azione standard delle algebre di processo e F è la distribuzione probabilistica conti-nua. A questo punto, il supporto a tempo di esecuzione del calcolo viene reso probabilistico introducendo il concetto di gara tra tuttele azioni che sono abilitate per essere eseguite in una data configurazione. L’idea è che tutte le azioni abilitate tentano di eseguire il lo-ro compito, ma solo la più veloce riesce. Un teorema fondamentale delle distribuzioni continue assicura che la probabilità che dueazioni abilitate terminino simultaneamente è zero. Ciò rende non ambiguo il meccanismo di scelta della azioni abilitate. A questo pun-to, il sistema di transizione viene a coincidere, con piccoli aggiustamenti tecnici, con un processo stocastico che può essere studiatoper avere misure quantitative del sistema che rappresenta facendo riferimento a tecniche standard. Il vantaggio di questo approcciorispetto, ad esempio, a reti di code è che il passaggio dalla specifica al processo stocastico avviene automaticamente attraverso la se-mantica del calcolo e quindi può essere dimostrato corretto una volta per tutte.

M O N D O D I G I T A L E • n . 1 - m a r z o 2 0 0 4

1

9

0

0

0

1

FIGURA 3Rappresentazionedi un meccanismodi trascrizioneregolato da un cicloa feedback positivo

TABELLA 1Rappresentazionein BioSPI delsistema di figura 3

Chinasi

aTF

TF

TF

Ptail

degpdegp

degmdegm

utr

pA pA

Chinasi

DegradazioneRNA

Degradazioneproteina

Fascia

Trascrizione

Trasmissioneutr

Fascia

Fascia

Sottofascia

Spinadorsale

Sys = Gene_A Gene_TF Transer Transl RNA_Deg Protein_Deg

Gene_A = (basal(), 4).(Gene_A RNA_A) + (pA(), 40).(Gene_A RNA_A)

RNA_A = (utr(), 1).(RNA_A Protein_A) + (degm(), 1)

Protein_A = (νbb1, bb2, bb3)(Binding_Site Kinase)

Binding_Site = (–––––bind ⟨bb1, bb2, bb3⟩, 0.1).Bound_Site + (degp(), 0.1).(

––––bb3, ∞)

Bound_Site = (––––bb1, 10).Binding_Site + (degp(), 0.1).(

––––bb3. ∞).(

––––bb3, ∞)

Kinase = (––––bb2 ⟨ptail⟩, 10).Kinase + (bb3(), ∞)

Gene_TF = (basal(), 4).(Gene_TF RNA_TF) + (pA(), 40).(Gene_TF RNA_TF)

RNA_TF = (utr(), 1).(RNA_TF Protein_TF) + (degm(), 1)

Protein_TF = (bind (c_bb1, c_bb2, c_bb3), 0.1).Bound_TF + (degp(), 0.1)

Bound_TF = (c_bb1(), 10).Protein_TF + (c_bb3(), ∞) + (c_bb2(tail), 10).((c_bb1(), 10).Active_TF(tail) + (c_bb3(), ∞))

Active_TF(tail) = (––––tail, 100).Active_TF(tail) + (degp(), 0.1)

Transer = (–––––basal, 4).Transer + (ptail(), 100).(

pA, 40).Transer

Transl = (––––utr, 1).Transl

RNA_Deg = (degm––––––

, 1).RNA_Deg

Protein_Deg = (–––––degp, 0.1).Protein_Deg

3. ANALISILe tecniche di analisi del comportamentodei sistemi specificati mediante algebre diprocesso si dividono in statiche e dinami-che. Quelle più usate fino ad oggi in ambitobiologico sono quelle dinamiche che preve-dono la costruzione di un modello del com-portamento a partire dalla descrizione (peresempio un sistema di transizione, cioè ungrafo orientato in cui i nodi rappresentanogli stati del sistema e le transizioni gli even-ti che causano il passaggio di stato – si vedatabella su algebre di processo). Le proprietàche si riescono a studiare con queste tecni-che possono essere sia di tipo qualitativoche di tipo quantitativo. Tra le prime si ricor-dano la causalità tra transizioni o eventi, lalocalità in cui certe transizioni avvengono,la concorrenza di transizioni [3].Lo studio della relazione di causalità tra tran-sizioni (la prima causa la seconda se è condi-zione necessaria per la seconda e ne influen-za l’esecuzione) consente di determinare suun modello dinamico di una malattia qualisono gli eventi scatenanti e consente anchedi tracciare in modo preciso il comportamen-to di un dato farmaco sui meccanismi di se-gnalazione della malattia. Da qui il concettodi modello predittivo se attraverso questeanalisi si riescono a prevedere nuovi compor-tamenti biologici validabili attraverso esperi-menti di laboratorio.Anche la località gioca un ruolo essenzialenella modellazione e nell’analisi di sistemibiologici. Infatti, è essenziale sapere la loca-lizzazione di certi componenti per determi-nare la probabilità o semplicemente la pos-sibilità di una loro interazione. Dato un ge-nerico modello comportamentale di un si-stema biologico, la località può essere uti-lizzata per ridurne la dimensione eliminan-do i comportamenti derivanti da interazionitra componenti che non sono sufficiente-mente vicini o che non possono proprio en-trare in contatto.Altro esempio importante di proprietà daconsiderare è la concorrenza, ossia la possi-bilità per due o più transizioni di avvenirecontemporaneamente. Questo consente distudiare fenomeni come ad esempio il rollingdei globuli bianchi in corrispondenza di tes-suti infiammati nel suo complesso e non

semplicemente studiando il comportamentodi un singolo globulo. I risultati che si otten-gono nei due casi sono abbastanza difformi ehanno ricadute diverse sull’evolvere dell’in-fiammazione.Passando alle proprietà quantitative si ricor-da come i sistemi di transizione possano, conpiccole manipolazioni, essere interpretati co-me processi stocastici quando gli archi sonoetichettati mediante distribuzioni probabili-stiche (tipicamente esponenziali in tempocontinuo). Queste tecniche sono state adot-tate da molti anni nel campo della valutazio-ne delle prestazioni dei sistemi distribuiti,originando quelle che sono chiamate algebredi processo stocastiche.Analizzare le proprietà di sistemi individua-li non è abbastanza. Ulteriori conoscenzesulle funzionalità e possibili evoluzioni direti molecolari possono essere acquisiteconfrontando i sistemi relativamente allecondizioni biologiche in cui operano, ai tipidi cellule e organismi che li compongono.La biologia computazionale (disciplina chesviluppa algoritmi efficienti per manipolaregrandi quantità di dati, ad esempio al fine diconfrontare due o più o sequenze di DNA,per ricostruire sequenze di nucleotidi datauna conoscenza frammentaria delle se-quenze o per generare alberi evolutivi apartire da un insieme di genotipi) ha otte-nuto importanti risultati confrontando lesequenze e le strutture di singole molecole.In modo analogo, si possono usare stru-menti messi a disposizione dalla teoria del-la concorrenza come le equivalenze basatesul concetto di bisimulazione per confron-tare il comportamento dinamico di interereti molecolari. Quello che è possibile,quindi, definire è una misura di omologiadei processi molecolari derivata dallo stu-dio dei modelli. Le ricadute di una tale ap-plicazione sono significative sia in campoinformatico che biologico-medico. Dal pun-to di vista computazionale si può trarre ispi-razione per nuove nozioni di equivalenza inquanto la nozione di omologia biologica èmolto più complessa di quella di bisimula-zione. Sul lato biologico lo studio compara-tivo di condizioni patologiche (per esempio,confronto del comportamento di un tessutonormale e di un tessuto tumorale) può con-

M O N D O D I G I T A L E • n . 1 - m a r z o 2 0 0 4

1

0

0

0

1

10

sentire di tracciare a ritroso importanti pas-si che stanno alla base dell’attivazione del-la malattia. Questo è tanto più possibilequanto più si riescono a compenetrare nelladefinizione delle equivalenze anche le no-zioni di causalità e località.Il problema principale delle tecniche dinami-che sopra descritte è dato dalla dimensionedel sistema di transizione che è esponenzialerispetto alla descrizione testuale in algebredi processo. La conseguenza immediata èche data la grande dimensione dei sistemibiologici è impensabile avere algoritmi chepossano esaminare in modo esaustivo lospazio degli stati. Le soluzioni proposte sonoprevalentemente orientate a ridurre la com-plessità computazionale del problema infor-matico a scapito della precisione dei risultatiche si possono ottenere. Si descriverà qui unpossibile utilizzo di tecniche di analisi staticae si rimanda al prossimo paragrafo la discus-sione delle tecniche di simulazione.Le tecniche di analisi statica sono state intro-dotte originariamente per effettuare ottimiz-zazioni di compilatori, ma oggi le loro aree diapplicazione sono molto più ampie. L’idea al-la base di queste tecniche è la possibilità diestrarre informazioni complesse sul compor-tamento dinamico di sistemi semplicementeguardando alla loro descrizione testuale: ilprogramma. Questo vuol dire che non è ne-cessario costruire il modello del comporta-mento dinamico (il sistema di transizione) e,quindi, viene meno il vincolo dato dall’espo-nenzialità della rappresentazione. Al contra-rio dell’analisi dinamica, ogni analisi staticadeve essere definita in relazione a una parti-colare proprietà che si vuole studiare e alparticolare linguaggio di specifica che si in-tende usare. Da qui la necessità di avere unformalismo unico per descrivere molti aspet-ti diversi dei sistemi biologici al fine di limita-re il numero di analisi che si devono definire. Le informazioni che si estraggono medianteanalisi statica del testo del programma sonocorrette rispetto al comportamento dinamicodel programma, ma non è possibile ottenereinformazioni esatte. Il compromesso dell’a-nalisi statica per avere algoritmi efficienti è ascapito della precisione delle informazioni ri-cavate. Da qui il concetto di approssimazio-ne. Ci possono essere sia approssimazioni

per eccesso che approssimazioni per difetto.Nel primo caso si ottiene uno spazio delle so-luzioni del problema che contiene stretta-mente le soluzioni esatte e, quindi, si può af-fermare con certezza solo ciò che non potràmai accadere. Nel caso di approssimazioniper difetto si ottiene uno spazio delle soluzio-ni del problema che è strettamente contenu-to nello spazio delle soluzioni esatte. In que-sto caso si può dire con certezza solo ciò cheaccadrà sicuramente. La situazione inaccet-tabile per una approssimazione è quando lospazio delle soluzioni calcolato contiene soloun sottoinsieme delle soluzioni esatte perchéin questo caso non si ha alcun controllo sullacorrettezza dei risultati ottenuti.Anche se l’analisi statica è stata introdottaper studiare proprietà completamente diver-se, può contribuire in modo significativo allosviluppo della bioinformatica. Infatti le tecni-che di approssimazione individuate consen-tono di studiare sistemi almeno un ordine digrandezza più grandi di quelli studiati me-diante tecniche dinamiche. Le proprietà chepossono essere esaminate riguardano la lo-calizzazione di componenti all’interno distrutture più complesse, le loro possibili inte-razioni e migrazioni (per esempio la trasloca-zione nel nucleo di una cellula e la conse-guente trascrizione), la determinazione di ci-cli a feedback positivo o negativo all’internodi grandi reti di segnalazione [7].

4. SIMULAZIONE

Come accennato nella precedente sezione,anche le tecniche di simulazione consento-no di evitare la costruzione di un intero mo-dello del comportamento dinamico, elimi-nando il problema dell’esponenzialità dellerappresentazioni. L’idea alla base della si-mulazione è quella di eseguire il program-ma che rappresenta il sistema biologicoscegliendo una tra tutte le possibili esecu-zioni (in termini di modello dinamico vuoldire scegliere un cammino sul sistema ditransizione). Ripetendo un numero moltoelevato di volte l’esecuzione si ottiene unadescrizione “media” del comportamento di-namico del sistema considerato.I principali tentativi di modellare il compor-tamento dinamico dei sistemi biologici so-

M O N D O D I G I T A L E • n . 1 - m a r z o 2 0 0 4

1

11

0

0

0

1

no basati su equazioni differenziali ordina-rie o stocastiche, su metodi di simulazionediscreta che possono rifarsi alle tecnicheMonte-Carlo, reti bayesiane [4]. Ciascunodegli approcci menzionati è in grado di cat-turare alcuni degli aspetti specifici deimeccanismi di segnalazione cellulare, manessuno è in grado di integrare la dinamicacon gli aspetti molecolari e biochimici.Queste limitazioni possono essere supera-te mediante l’utilizzo di algebre di proces-so come si è già visto nelle precedenti se-zioni.Il primo ambiente di simulazione basatosulla realizzazione di un supporto a tempodi esecuzione probabilistico per il π-calcolo,implementando quindi una variante dellostocastico πi-calcolo [9] è BioSPI [10]. Larealizzazione è basata su Flat ConcurrentProlog e supporta completamente comuni-cazioni e scelte non deterministiche (resepoi probabilistiche dal supporto a tempo diesecuzione che implementa l’algoritmo diGillespie).Il sistema realizzato consente di specificarele quantità iniziali dei vari componenti di cuisi vogliono studiare le potenziali interazionie i tassi probabilistici con cui avvengono le

comunicazioni sui vari canali che compaio-no nella specifica del sistema (si veda peresempio Tabella 1). Il meccanismo di simu-lazione permette poi di monitorare come leconcentrazioni e i prodotti delle interazionivariano al variare del tempo (anche la scalatemporale può essere variata scegliendoquella più adeguata al fenomeno considera-to). Per esempio il risultato della simulazio-ne del programma di tabella 1 fornisce il ri-sultato riportato in figura 4.

5. CONCLUSIONI E SVILUPPIFUTURI

In questo contributo sono stati esaminati gliaspetti della bioinformatica principalmentelegati alla descrizione dei comportamenti di-namici dei sistemi biologici complessi. Gliobiettivi scientifici principali che sono staticonsiderati riguardano:❙ la rappresentazione dei sistemi che sia ami-chevole per i biologi, ma che consenta altempo stesso di derivare in modo automaticomodelli formali per lo studio rigoroso delcomportamento biologico;❙ l’analisi qualitativa e quantitativa di pro-prietà dei sistemi e possibile definizione diuna omologia di processi molecolari basatasu nozioni di equivalenze comportamentalidefinite i teoria della concorrenza;❙ la simulazione del comportamento di siste-mi basata su implementazioni di supporti atempo di esecuzione probabilistici per le al-gebre di processo;❙ la necessità di costituire un linguaggio co-mune tra informatici e biologi per la forte in-terdisciplinarietà della bioinformatica.Le tecniche di analisi e di simulazione nonsono in alternativa, ma servono entrambeper avere una visione complessiva del siste-ma studiato quanto più precisa possibile.Infatti, mentre con le simulazioni si riesconoa studiare quantitativamente le variazionipercentuali delle sostanze coinvolte in certifenomeni biologici esse sono inerentemen-te limitate nella capacità di fornire rispostegenerali su proprietà intrinseche di sistemi.Le tecniche di analisi analitica basate suimetodi formali sono, invece, adatte a forni-re risposte generali a domande del tipo “unsegnale può passare attraverso una certa

M O N D O D I G I T A L E • n . 1 - m a r z o 2 0 0 4

1

0

0

0

1

12

FIGURA 4Risultati della

simulazionemediante BioSPI del

sistemarappresentato

graficamente infigura 3 e in

stocastico p-calcoloin tabella 1

Proteine A(# molecole)

–TF

gene

+TF

gen

e

70

60

50

40

30

20

10

0

500450400350300250200150100500

0 50 100 150 200

0 50 100 150 200

t

t

molecola sotto certe condizioni? Sotto ognicondizione?” oppure “ se modifichiamo ilcomportamento di una certa molecola, cosaaccadrà a un’altra data molecola? O al siste-ma nel suo complesso?”Uno dei motivi principali del graduale ab-bandono dell’approccio riduzionista (si ve-da il riquadro sulla biologia dei sistemi) nel-la biologia attuale è dovuto all’impossibilitàdi coniugare la conoscenza acquisita sullecomponenti minimali dei sistemi per otte-nere un modello dell’insieme. Ciò è dovutoalla enorme complessità dei sistemi biologi-ci. Un vantaggio che deriva dall’uso delle al-gebre di processo (e dalla teoria dei lin-guaggi in generale) è la loro natura ineren-temente composizionale che fornisce rego-le precise e non ambigue di composizione dioggetti elementari per costruire oggetti piùcomplessi.In conclusione di questo paragrafo si riporta-no alcune considerazioni sulle possibili evo-luzioni della bioinformatica. L’obiettivo a lun-go termine della bioinformatica (o almenodegli aspetti di questa disciplina maggior-mente discussi in questo contributo) sonoquelli di fornire tecniche sia predittive cheprescrittive del comportamento dei sistemibiologici complessi. Le tecniche predittivesono in grado di prevedere i comportamentidi un sistema e, quindi, sono semplicementedescrittive, mentre le tecniche prescrittivedovrebbero essere in grado di imporre un de-terminato comportamento (o classe di com-portamenti) ai sistemi, essendo, quindi, in-vasive. Si discutono adesso brevemente ledue tipologie di tecniche.Una tecnica predittiva si basa sulla bontàdel modello del sistema biologico e median-te analisi delle proprietà del modello deter-mina possibili evoluzioni. Questa strategiapuò essere usata dai ricercatori per dimo-strare in laboratorio certi comportamentiancora non noti oppure per prevedere lereazioni di un farmaco in presenza di deter-minate malattie. Essenziale per ottenerebuoni risultati è la fase di validazione deimodelli che si utilizzano e, da qui, la grandeattività attuale nella modellazione di siste-mi biologici reali mediante algebre di pro-cesso al fine di ottenere dal modello almenotutti i comportamenti noti del sistema con-

siderato mediante applicazione di tecnichedi analisi.Le tecniche prescrittive definiscono, invece,algoritmi che vengono eseguiti su hardwarevivente. Considerando che ogni singola cel-lula ha approssimativamente 1 MIPS di po-tenza di calcolo e 1 MEGA di memoria, le po-tenzialità dei computer viventi sono estre-mamente interessanti. La possibilità di usa-re le cellule per eseguire algoritmi avrebbeuna ricaduta immensa anche in campo bio-logico-medico. Per esempio, riprogramman-do le cellule che esibiscono comportamentianomali si potrebbero trovare cure efficaciper tutta la classe delle malattie auto-im-muni come la sclerosi multipla oppure per itumori. Su questa strada si stanno muoven-do numerosi importanti gruppi di ricercacercando di definire un modello completodel funzionamento della cellula. Questo èsicuramente il primo passo per ipotizzarepoi metodologie in grado di controllare edeventualmente modificare il comportamen-to delle cellule.Concludendo si può certamente affermareche gli aspetti dinamici dei sistemi biologicie le tecniche informatiche per dominarne lacomplessità sono un campo di ricerca agliesordi e che probabilmente dominerà lascena bioinformatica dei prossimi anni conattività altamente interdisciplinari. Infatti,per validare i modelli di comportamento cheportino a tecniche predittive è assoluta-mente necessario interagire con biologi eper poter comprendere completamente i ri-sultati delle analisi i biologi devono potercomprendere ciò che gli informatici hannofatto. Da qui la necessità di creare una co-

M O N D O D I G I T A L E • n . 1 - m a r z o 2 0 0 4

1

13

0

0

0

1

Il termine “composizionalità” in teoria dei linguaggi indica la possibilità didefinire la semantica di un costrutto in termini della semantica dei suoicomponenti. Questa è chiaramente una proprietà fondamentale per poterdefinire in modo finito e chiaro la semantica dei linguaggi di programma-zione. Infatti se la definizione della semantica non fosse composizionaledovremmo elencare la semantica di tutti i possibili programmi esprimibiliin un dato linguaggio e per ogni linguaggio interessante questi sono infini-ti. Parlando di sistemi (biologici) la composizionalità è la possibilità di de-finire un modello mediante integrazione (composizione) dei modelli deisotto-sistemi che lo costituiscono. Quando le regole di composizione sonochiare per un certo formalismo e dominio applicativo, la composizionalitàè anche una metodologia di progettazione e sviluppo che consente di esa-minare e determinare soluzioni per problemi semplici che poi verrannocomposte per risolvere problemi più complessi.

munità scientifica internazionale che sia acavallo tra le discipline delle scienze dellavita e quelle del settore dell’informazione.Recentemente la branca della biologia deisistemi sta cercando di percorrere questastrada reclutando fisici, matematici e infor-matici all’interno dei loro istituti di ricerca.Analogo sforzo dovrebbe essere fatto neicentri di ricerca bioinformatici che nasconodai dipartimenti di informatica. Occorre te-ner presente che come sempre quando sicreano nuove comunità scientifiche da ag-gregazioni di persone provenienti da areedisciplinari diverse è essenziale stabilire im-mediatamente un criterio di pariteticità trale varie anime del gruppo. Per far questo ènecessario individuare con chiarezza quelleche sono le necessità e le aspettative deibiologi e quali quelle degli informatici assu-mendo che nessuna delle due scienze è alservizio dell’altra. Su questa base paritariasarà poi possibile attivare progetti di gran-de respiro e creare una robusta comunitàscientifica.

Bibliografia[1] Cardelli L.: Brane calculus. Rapporto tecnico Mi-

crosoft Research Cambridge, 2003.

[2] Danos V., Laneve C.: Graphs for Core molecular

biology. Proceedings of CMSB03, LNCS 2602,Springer-Verlag, 2003.

[3] Degano P., Priami C.: Noninterleaving seman-tics of mobile processes. Theoretical Computer

Science, Vol. 216, n. 1-2, 1999, p. 237-270.

[4] De Jong H.: Modeling and Simulation of GeneticRegulatory Systems. A Literature Review. Jour-

nal of Computational Biology, Vol. 9, n. 1, 2002,p. 67-103.

[5] Karp P.D., Krummenacker M., Paley S., Wagg J.:Integrated pathway/genome databases andtheir role in drug discovery. Trends in Biotech-

nology, Vol. 17, n. 7, 1999, p. 275-281.

[6] Koremblat K., Priami C.: Towards extracting _-calculus from UML sequence and state dia-grams. In Compositional verification of UMLmodels 03, apparirà su ENTCS 2003.

[7] Nielson F., Nielson H.R., Priami C., Scuch da Ro-sa D.: Control Flow Analysis of BioAmbients.Bioconcur 2003, Apparirà su ENTCS.

[8] Ogata H., Goto S., K. Sato, Fujibuchi W., BonoH., Kanehisa Kegg M.: Kyoto encyclopedia ofgenes and genomes. Nucleic Acids Research,Vol. 27, n. 1, 2000, p. 29–34.

[9] Priami C.: Stochastic π-calculus. The Computer

Journal, Vol. 38, n. 6, 1995, p. 578-589.

[10] Priami C., Regev, Shapiro E., Silverman W.: Ap-plication of a stochastic passing-name calculusto representation and simulation of molecularprocesses. Information Processing Letters, Vol.80, 2001, p. 25-31.

[11] Regev A., Panina E.M., Silverman W., Cardelli L.,Shapiro E.: BioAmbients: an abstraction for bio-

logical compartments. Apparirà su TheoreticalComputer Science.

[12] Roux-Rouquie M., Caritey N., Gaubert L., Ro-senthal-Sabroux C.: Using the Unified Modeling

Language (UML) to guide Systemic description

of Biological Processes and Systems. Appariràsu BioSystems.

[13] Wingender E., Chen X., Fricke E., Geffers R.,Hehl R., Liebich I., Krull M., Matys V., Michael H.,Ohnhauser R., Pruss M., Schacherer F., ThieleS., Urbach S.: The transfac system on gene ex-pression regulation. Nucleic Acids Research,Vol. 29, n. 1, 2001, p. 281–283.

CORRADO PRIAMI ha ricevuto laurea e dottorato di ri-cerca in informatica all’Università di Pisa, è stato ri-cercatore all’Ecole Normale Superieur di Parigi epoi all’Università di Verona dove è diventato pro-fessore associato di Informatica. Attualmente èprofessore straordinario di informatica all’Univer-sità di Trento, Dipartimento di Informatica e Tlc, do-ve guida il gruppo di bioinformatica ed è responsa-bile dei corsi di laurea e laurea specialistica inInformatica. Rappresenta l’Università di Trento nelconsiglio di amministrazione della Trento School ofManagement ed è delegato di ateneo per i progettieuropei nel sesto programma quadro. I suoi inte-ressi di ricerca coprono, oltre la bioinformatica, i si-stemi distribuiti e mobili e i linguaggi di program-mazione in senso lato. Coordina un progetto euro-peo nell’area del global computing e un progettonazionale sulle tematiche riportate nell’articolo.Partecipa, inoltre, a numerosi altri progetti sia na-zionali che internazionali e ha numerose collabora-zioni con industrie nel settore delle comunicazionimobili e delle biotecnologie. Opera come revisoredi progetti europei e nazionali nelle sue aree di in-teresse. Ha pubblicato oltre 80 articoli su riviste econvegni internazionali ed è autore e curatore di al-cuni libri sulle tematiche sopra esposte. Ha parteci-pato e partecipa, anche come presidente, a nume-rosi comitati di programma di eventi internazionaliprevalentemente nell’area della bioinformatica.Co-dirige una scuola di dottorato aperta a giovaniricercatori informatici e biologi per la costruzione diun gruppo scientifico [email protected]

M O N D O D I G I T A L E • n . 1 - m a r z o 2 0 0 4

1

0

0

0

1

14