Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
a
C H 2 O H
O H H
H
H
O H
H
O H
5 1 0 4
C H O
Figura 2: struttura desossiribosio
5
o 3
o in 5
a 3
. Dopo la concatenazione, la
struttura deve mantenere lorientamento, quindi tale operazione pu`o avvenire
solo se i due nucleotidi hanno lo stesso verso e di conseguenza il risultato avr`a
lo stesso verso: N ; N N N .
2. PRINCIPIO DI COMPLEMENTARIET
`
A: Due monomeri si possono appa-
iare solo se i loro tipi rispondono alla regola di Chargaf (A-T; G-C)
3. MIRROR PAIRING. I versi dellappaiamento sulle due catene sono opposti :
La direzione dellappaiamento va dalla testa del monomero alla testa del
monomero appaiato: un monomero pu`o essere appaiato con al pi` u un altro
monomero e due monomeri concatenati con altri due monomeri concatenati.
Questo implica che i monomeri di una singola catena hanno lo stesso orienta-
mento nella direzione del pairing (appaiamento). La Figura 7 a) mostra una
catena concorde con tale principio mentre la b) va contro il principio.
a)
b)
Figura 7: a) stesso verso y. b) verso y opposto
9
4. FREE BILINEAR LOCATION. Le molecole sono libere di posizionarsi in
qualsiasi punto della catena, limportante `e che siano rispettati gli altri prin-
cipi.
Le catene bilineari possono essere denaturate in due singoli lamenti separati;
questo signica che la forza di appaiamento `e debole rispetto alla forza di concate-
nazione. La forza debole di appaiamento `e legata alla complementariet`a. Infatti se
i monomeri appaiati avessero lo steso tipo, allora i legami sarebbero legami chimici
covalenti, ovvero molto forti e quindi molto dicili da rompere in fase di denatu-
razione e tale operazione `e fondamentale per la duplicazione del DNA.
Come `e intuibile, tale struttura bilineare e complementare `e lunica che permette
una duplicazione in tempo polinomiale oltre a facilitare un controllo di possibili
errori. Vedremo che grazie a questa caratteristica si avr`a un numero esponenziale
di coppie in un tempo lineare; se si lavorasse su una sola stringa, infatti, ogni algo-
ritmo di duplicazione avrebbe complessit`a quadratica rispetto alla dimensione della
stringa stessa.
La struttura bilineare pu`o essere rappresentata come in Figura 8, oppure come
in Figura 9 e in entrambi i casi sono rispettati i principi strutturali sopra men-
zionati, tuttavia vedremo che lunica disposizione possibile `e quella antiparallela;
inoltre lappaiamento tra due lamenti pu`o essere parziale dando origine a molte
combinazioni come mostrato in Figura 10.
x
y
y
x
Figura 8: pairing paralleli
x
y
y
x
Figura 9: pairing antiparalleli
10
Figura 10: possibili appaiamenti
Riassumendo la struttura bilineare dei monomeri `e cosi denita:
Il verso di concatenazione corrispondente allasse x. La coda-testa del monomero
corrisponde al verso 5
.
Il verso y corrisponde alla direzione lungo la quale i monomeri si appaiano.
La direzione z perpendicolare al piano xy, identica il punto in cui si posiziona
un ipotetico lettore. Infatti i nucleotidi contengono informazione e per tale
motivo necessitano di essere letti.
In accordo con il principio 1 e 3, i monomeri sono asimmetrici rispetto sia allasse x
che allasse y. La seguente proposizione aerma che sono asimmetrici anche rispetto
allasse z :
Proposizione 1. I monomeri devono essere asimmetrici rispetto allasse z.
Dimostrazione. Se per assurdo un monomero fosse simmetrico allasse z, al-
lora dopo una rotazione attorno allasse y o x, il monomero si posizionerebbe con
verso opposto rispetto allasse x o y e quindi sarebbe simmetrico rispetto a x o y;
ma non pu`o essere perch`e violerebbe il mirror pairing e luniformit`a della concate-
nazione.
Corollario. I monomeri sono oggetti chirali: sono asimmetrici rispetto a tutte
le direzioni. Ad un oggetto chirale si associa un sistema cartesiano.
La asimmetria rispetto allasse z suggerisce un naturale verso di lettura pref-
erenziale e questa intuizione ci porta ad enunciare il Principio del verso di let-
tura uniforme: un lettore (ad esempio lenzima polimerasi) pu`o leggere tutti i
monomeri di una catena stando sempre nello stesso lato rispetto al piano xy, ovvero
tutti i monomeri della stessa catena devono avere lo stesso verso z (Figura 11).
Lemma. Se due oggetti chirali con sistemi di riferimento F1 e F2 dieriscono
per due versi, `e possibile tramite un movimento rigido, sovrapporre i due oggetti in
modo che abbiano lo stesso sistema cartesiano (oggetti omochirali ). Se dieriscono
per un solo verso, non `e possibile sovrapporli e tali oggetti si chiamano eterochirali.
Proposizione 2. Il principio delluniversalit`a del verso di lettura implica che
tutti i monomeri della stessa catena devono avere la stessa chiralit`a.
Dimostrazione. Se per assurdo esistessero due monomeri con chiralita diversa
nello stesso lamento, allora per luniformit`a di concatenamento avrebbero lo stesso
asse x, e per il mirror pairing avrebbero lo stesso asse y, quindi per il lemma devono
dierire per lasse z (essendo per assurdo eterochirali), ma questo contraddice il
11
x
y
z
Let t or e di et r o
al pi ano xy
Let t or e davant i
al pi ano xy
Figura 11: Lettore
principio delluniformit`a di lettura. Segue che i monomeri sono omochirali
Proposizione 3. Il verso di lettura dei due lamenti appaiati coincide se e solo
se i due orientamenti sono antiparalleli.
Dimostrazione. Si `e visto che i monomeri hanno chiralit`a e sono omochirali,
quindi devono essere messi per forza in modo antiparallelo, altrimenti si infrange il
mirror pairing o luniformit`a o la free location. Quindi essendo omochirali il verso
z coincide solo se sono disposti in modo antiparallelo.
(): se sono antiparalleli i monomeri dei due lamenti dieriscono per due versi x
e y, ma essendo omochirali ed avendo versi opposti per x e y, il verso z deve per
forza coincidere e quindi hanno lo stesso verso di lettura.
():Dimostro il contronominale. Se sono paralleli allora i monomeri dieriscono
solo per il verso y, ma essendo omochirali allora devono dierire per unaltro verso,
ed essendo paralleli questa direzione `e lasse z, quindi hanno una diversa direzione
di lettura.
Questa proposizione mostra il grande vantaggio dellantiparallelismo rispetto al
parallelismo: con il primo abbiamo un unico verso di lettura.
Proveremo che la disposizione antiparallela delle due stringhe `e lunica possibile e
lo proveremo utilizzando solo argomenti geometrici.
12
2.4 Triangolo monomerico
Il monomero `e completamente individuato da un triangolo composto da i due punti
di concatenazione ovvero i due fosfati, e il punto di appaiamento (Figura 12)
T
H
H
t es t a( hed)
t est a appai at a
coda( t ai l )
angol o ac ut o
Figura 12: triangolo-monomerico
Langolo del triangolo `e acuto; se fosse stato ottuso avrebbe occupato pi` u spazio e
la catena avrebbe assunto dimensioni spropositate per una cellula. Langolo acuto
ci permette di dare una ulteriore conferma che la disposizione antiparallela `e lunica
possibile. Se solo lo ipotizziamo notiamo che lunico modo per mettere due triangoli
appaiati consiste nel disporli in modo antiparallelo (Figura 13)
T
H
H
H
T
Figura 13: angolo acuto e triangoli antiparalleli
I tre punti che individuano il triangolo sono essenziali per determinare la funzion-
alit`a monomerica:
Il punto H di testa `e i primo punto del monomero lungo il verso di concate-
nazione.
La coda T `e la testa del successivo monomero lungo il verso di concatena-
mento.
H `e la testa del monomero appaiato.
Questi punti specicano il triangolo HTH chiamato appunto triangolo monomreri-
co. In termini di nucleotidi, H corrisponde al fosfato in 5
e T al fosfato in 3
(Figura
14). In base al tipo di informazione trasportata, esistono quattro tipi di triangoli:
A, T, C, G. Quindi dal punto di vista astratto un monomero `e un triangolo avente
un tipo che appartiene allalfabeto delle basi azotate.
Proposizione. Se langolo THH del triangolo `e acuto allora la disposizione
parallela bilineare non `e possibile e quella antiparallela `e lunica possibile.
13
P
T
T
H
H
bas e az ot at a
gr uppo f os f or i c o
Figura 14: punti del triangolo monomerico
Dimostrazione. Se i due monomeri sono sullo stesso piano, sono appaiati lungo
il loro asse di pairing (y) e langolo `e acuto, lunico modo per ottenere la bilinearit`a
`e una disposizione antiparallela. Unaltra disposizione `e mostrata in Figura 15, ma
in questo caso si perde la bilinearit`a.
x
y
y
x
Figura 15: disposizione non lineare
Tuttavia nella struttura bilineare antiparallela, i monomeri non sono sullo stesso
piano perch`e si trovano in un ambiente uido. In questo caso avviene una rotazione
di un certo angolo da parte dei lati esterni del triangolo e questo `e possibile se
contemporaneamente ciascun triangolo `e libero di ruotare lungo lasse x nei punti di
contatto della concatenazione. Questa rotazione provoca la classica forma a doppia
elica del DNA.
14
2.5 Elica bilineare astratta
I legami del doppio lamento sono liberi di muoversi in un ambiente uido, ma tale
movimento rimane connato allinterno di un cilindro chiamato cilindro astratto
(Figura 16). Il triangolo ruota attorno allasse del cilindro il quale `e determinato
H
T
H
T
Figura 16: cilindro monomerico
dai seguenti punti:
Angolo : rotazione rispetto allasse del cilindro del segmento di concate-
nazione; dice di quanto ruota per concatenarsi.
Angolo : torsione; dice di quanto il monomero si piega rispetto alla verticale
Angolo : fase; dice di quanto ruota laccoppiamento nel cilindro (angolo
formato tra H e la perpendicolare di H).
Raggio cilindro.
La forma dellelica del DNA `e quindi completamente determinata da tre angoli, un
raggio e la non complanarit`a (ovvero i monomeri sono situati su piani dierenti).
15
2.6 Forme bilineari
Avendo come riferimento i seguenti principi:
bilinearit`a: doppia catena,
antiparrallelismo: direzione delle due catene opposte 5
e 3
,
complementeriet`a: regola di Charga.
la struttura nucleotidica viene rappresentata tramite due frecce parallele aventi ver-
so opposto:
Se consideriamo le forme bilineari strette si hanno le forme chiamate STICKY
ENDS (ovvero delle incollature, appiccicature) dovute proprio alla complementa-
riet`a la quale si pu`o vedere come una forma di adesione tra cose complementari. Gli
Sticky ends si dierenziano in base ai terminali, ovvero alle sporgenze di ossidrile o
fosfato in 3 o 5 dei lamenti come mostrato in Figura 17.
3
3
st i cky end 3 - 3
3
st i cky end 3
3
5
st i cky end 5 - 3
3
bl unt - y
y
3
st i cky end 3 - y
y
3
y - y
y
5
st i cky end y- 5
5
5
st i cky end 5 - 5
5
st i cky end 5
mol ecol a bl unt : senza spi gol i
1)
2)
6)
7)
2)
3)
4)
5)
8)
9)
10)
Figura 17: sticky-end
16
Nota: la parte y indica la porzione di lamento non complementare.
Alle forme bilineari strette si aggiungono la monostruttura: , gli eteroduplex,
strutture con un singolo lamento: hairpin (punta di capello) e le varie combinazioni
circolari e doppio circolari (Figura 18)
et er odupl ex
har pi n
ci r col ar i
Figura 18: forme non lineari
2.7 Notazione doppia stringa
A questo punto occorre fornire le molecole di una opportuna notazione per poter
descrivere matematicamente le operazioni sulla struttura monomerica.
Dato un alfabeto nito A, deniamo A
e quello inferiore `e il
reverse ovvero 3
.
Ad esempio, se N `e un generico nucleotide una possibile notazione frazionaria `e la
seguente:
NNNCACGNNN
GCAC
Operazioni sulle doppie stringhe
sottostringa [i, j]: porzione di stringa tra le posizioni i e j
concatenazione
complemento (
c
): ad ogni base si prende la lettera complementare
reversing rev(): stringa girata in senso opposto
mirroring rev((
c
)): composizione tra rev e complemento, ovvero la stringa
`e girata dallaltra parte ed `e complementata
Hibridazione ][: indica che le stringhe si possono ibridizzare
pairing
()
c
=
(T)
c
= A
(A)
c
= T
(C)
c
= G
(G)
c
= C
()
c
= ()
c
()
c
mirr() = rev(()
c
) = si usa questo simbolo come abbreviazione
orientamento:
= notazione superiore
rev( )
=< > ovvero:
rev(rev()
c
)
=
c
Nota: rev e mirr sono involutive, ovvero: rev(rev()) = e (
c
)
c
=
Esempio:
Sia la seguente stringa: 5ATTCCG 3
rev(
) = CGGAAT
pairing: | sse = mirr(), ricordando che mirr = rev(
c
)
ovvero si ha il pairing se e solo se `e il mirror() e in questo caso `e denita
loperazione di pairing:
rev()
Esempio.
ATTCCG | CGGAAT
La seconda stringa `e il mirr della prima e quindi `e possibile eettuare il pair-
ing:
ATTCCG
TAAGGC
La dicolt`a rispetto alle stringhe normali consiste nel fatto che si deve oper-
are in primo luogo con doppie stringhe e poi occorre considerare due elementi
aggiuntivi come la coplementariet`a e lorientamento.
Nota:
Se [[ allora
rev( )
=
rev(rev(
c
))
=
c
19
Sopra si legge da 5
a 3
e sotto da 3
a 5
))
=
rev()
=
rev( )
=
rev(rev(
c
))
=
c
che `e proprio < >
][ indica il pairing generale, cio`e si accoppia con se esiste tale che
, e [[ > h, ovvero la lunghezza di `e maggiore di un certo
valore chiamato costante di ibridizzazione che dipende dalla temperatura e
dalla composizione della molecola.
Se sussistono tali condizioni allora pu`o esistere la struttura doppia
rev()
.
Linsieme di tutte le strutture doppie le indichiamo con B
[B
.
Assioma di rotazione:
rev()
=
rev()
Le molecole doppie sono rotazionali perch`e si trovano in un ambiente uido
e pertanto un enzima le pu`o leggere indierentemente da sopra o da sotto.
Overlapping = maxg[ = fg = gp
Loperazione max si riferisce alla massima lunghezza.
Lidea `e la seguente(Figura 19): Due lamenti appaiati hanno una parte
f g
g
p
Figura 19: overlapping
perfettamente appaiata, quindi loverlapping `e quella parte appaiata.
overlap concatenation
< [ >=< fgp > questa `e una operazione che viene eettuata dallenzima
polimerasi (Figura 20).
Extend (ext)
ext(,
) = ext(,
c
) =
Questa operazione corrisponde allestensione di un lamento prendendo come
template, come stampo, il lamento inferiore. Se la seconda molecola si ap-
paia per un pezzo con la prima, allora come risultato si ha lestensione della
prima copiando quello che trova sotto. Ovvero si mette la seconda stringa
in notazione frazionaria, si vede se ce una parte in comune () e copio la
20
f g
g
p
Figura 20: overlap concatenation
sottostringa rimanente nella stringa superiore (indipendentemente da e
).
Inoltre si ha:
ext(, ) = se ,=
ovvero se non si pu`o fattorizzare con il template
, allora lestensione
non fa nulla e ritorna il primo lamento come risultato
Nella notazione a doppia stringa, lext() utilizza come template il lamemto
appaiato.
Abbreviazioni
ext(,)
rev()
ext()
rev()
rev(ext(,))
rev(ext())
ext(,)
rev(ext(,))
ext()
rev(ext())
: Overlap Concatenation su doppia stringa
21
3 Operazioni sul DNA
Consideriamo come oggetto delle operazioni un pool di DNA; un pool `e un mul-
tiinsieme di elementi appartenente a B
[B
[B
[B
.
Possiamo scrivere:
P = n
1
:
1
, n
2
:
2
, . . . , n
k
:
k
dove:
1
. . .
k
B
[B
[B
[B
[B
:
multp : B
[B
N
Esempio:
multp(
1
) = n
1
multp(
k
) = n
k
multp() = 0
Si pu`o dunque scrivere che:
y P sse multp(y) ,= 0: la stringa y appartiene al pool sse nel pool c`e qualche
oggetto di quel tipo.
S P sse type(S) ,= : Ogni lamento in provetta ha come tipo una stringa, i
lamenti che non sono in provetta hanno come tipo una stringa vuota.
Si ha che:
Type(P) = y B
[B
[y P = type(S)[S P
Type `e un insieme di stringhe ovvero `e un linguaggio.
Loperatore type assegna ad un lamento una stringa e loperatore Type asseg-
na ad un pool di lamenti linsieme dei tipi dei suoi lamenti. Stringhe e lamenti
sono concetti dierenti anche se spesso i due termini vengono usati come sinonimi.
Infatti una stringa `e sicamente implementata dal lamento che ha come tipo la
22
stringa stessa.
Le operazioni sul DNA viste con la nostra notazione sono sostanzialmente op-
erazioni su linguaggi. Vedremo le operazioni biologiche mix, split, length, separate,
sintesi, amplicazione, naturazione, denaturazione e sequenziamento.
Note sul calcolo
Dato un singolo lamento S, con la notazione introdotta esso viene rappresen-
tato come stringa e un doppio lamento come una doppia stringa. Si dice che S
ha un tipo: rispettivamente S : t.c type(S) = e S :
t.c. type(S) =
.
Anche una popolazione P ha un tipo, che `e linsieme di tutti i tipi che si hanno
nella popolazione:
Type(P) = type(S) B
[S P dove P = S
1
, S
2
, . . . , S
n
`e un multiinsieme.
Le operazioni viste e che vedremo operano su popolazioni di oggetti per cui si
passa da P a P senza avere la piena conoscenza di come `e fatto P; si conosce sola-
mente il suo tipo, ovvero il tipo degli oggetti in P. Quello che interessa `e passare a
P contenente altri oggetti di un certo tipo; si ha quindi il passagio di tipi: Type(P)
Type(P).
3.1 Operazioni di base: mix, split, length(elettroforesi), sep-
arate, synthetize
1. mix o merge (unione).
mix(P1, P2) = P1 + P2: `e la somma delle molteplicit`a come multiinsieme;
il contenuto di due provette separate viene mescolato in una unica provetta.
2. split (divisione).
split(P) = (P1, P2) tale che P1 + P2 = P e Type(P1) = Type(P2 =
Type(P)): il tipo di entrambi gli elementi prodotti deve uguagliare il tipo
di partenza.
Dopo lo split il linguaggio di P si trova sia in P1 che in P2, quindi se in P si
hanno le stringhe
1
e
2
, allora un certo numero di esse si sono distribuite
sia in P1 che in P2 (Figura 21)
P
P 1
P 2
Figura 21: split
3. length.
length(P) = n
1
, n
2
, . . . , n
n
dalla parte di 5
.
24
(c) Si intinge il supporto solido nella vaschetta C e poich`e, tali nucleotidi
non hanno il fosforo, lunico legame che si pu`o creare `e dalla parte
dellossidrile (3
tra C e G.
(d) Si toglie il supporto dalla vaschetta e quindi tramite opportune oper-
azioni chimiche si sblocca C. A questo punto si ha 5
su CG. Quindi
si intinge il supporto cos` formato in T e dopo averlo estratto si ha
5
, ma la
scrittura avviene nel neolamento in direzione 5
.
G G A G A T C C G A
C C T C T A G G C T A A G C T A G G A C C A T T A C G
T T C G A T C C T G G 5
3
A G C C T A G A G G G G T C C T A G C T T
G C A T T A C C A G G A T C G A A T C G G A T C T C C
o p p u r e
3
5
Aggi unt a di nucl eot i di :
Nes s una aggi unt a di nuc l eot i di :
G A G G A C A T C C G A T T C A G G A G T A C C 5
C T C C T G T A G G 3
o p p u r e
G G A T G T C C T C
C C A T G A G G A C T T A G C C T A C A G G A G
3
5
Figura 29: Direzione di sintesi
Algoritmo per PCR:
PCR(P,n){
let Type(P) = {<a...b>,c,d} //<a..b>: tipo del template; c,d: primers
input P
for i = 1,n do
{
P:= denature(P)
P:= hybridize(P)
P:= extend(P)
}
output P
}
29
3.3.1 Alberi PCR
La visualizzazione della PCR tramite alberi `e particolarmente utile per osservare
cosa accade quando la forma e la posizione delle molecole risulta essere complessa.
Si dimostra che tra le molecole che vengono duplicate esponenzialmente, c`e ne sar`a
sicuramente una di tipo blunt; si avranno tante forme diverse, ma una o pi` u saranno
blunt. La forma della molecola blunt sar`a delimitata dai primers considerando il
template superiore (Figura 30)
a y b 2
b 1 b 2
y
Figura 30: Regola molecola blunt
Esempio.
Con riferimento alla Figura 31a, nel primo ciclo della PCR, la molecola template
si divide e i lamenti 1 e 2 si attaccano ai relativi primer, e dopo il lavoro della
polimerasi si ottengono le molecole descritte nella Figura 31b.
Al secondo ciclo le molecole cos` ottenute si separano e i lamenti 1 e 2 si riattaccano
con i primer (infatti sono i template di partenza) e si ottengono le stesse molecole
ottenute al passo precedente. I lamenti 3 e 4 non si attaccano ai primers perch`e non
sono complementari (rispetto ai primers), per`o si appaiano nella loro parte comune
e la polimerasi completa i lamenti ottenendo cos` una molecola blunt (Figura 31c).
30
1
2
a)
1
2
3
4
b)
3
4
c)
pr i mer
pr i mer
Mol ec ol e ot t enut e
al pr i mo ci cl o
Mol ec ol e ot t enut e
al secondo ci cl o
1
2
Figura 31: esempio blunt
Nota:
Quando si scrive signica che si sta leggendo un lamento singolo da 5
a 3
; se
invece si vuole leggere in notazione doppia si deve scrivere
rev( )
Alcuni alberi PCR:
Esempio 1 , Figura 32
Figura 32: Albero pcr esempio 1
31
Esempio 2 , Figura 33
2
2
1
1
Da quest o l at o,
da qui i n poi , si
ot t engono s equenz e
t ut t e ugual i .
Figura 33: Albero pcr esempio 2
Esempio 3 , Figura 34
2
1
1
2
3
4
3
4
5
5
2
Al t er zo passo si ot t enut a
l a mol ecol a bl unt l a cui l unghezza
quel l a del i mi t at a dai due pr i mer sul l a
mol ecol a i ni zi al e
Figura 34: Albero pcr esempio 3
32
Altri esempi di forme di PCR:
Sticky end 3-3 La polimerasi lavora nel verso 5-3 e con molecole con Sticky
ends 3-3, la PCR non fa nulla (Figura 35)
3
3
5
5
Figura 35: Albero pcr Sticky end 3-3
Sticky end 5-5 Con Sticky ends 5-5 la polimerasi completa i lamenti (Figura
36)
3
3
5
5
Figura 36: Albero pcr Sticky end 5-5
Blunt Ad ogni passo la polimerasi lavora solo sul lamento inferiore e scarta quello
superiore. In questo caso si ha una amplicazione lineare (Figura 37)
3
3
5
5
3 5
3 5
Figura 37: Albero pcr blunt
Forma a Y Anche in questo caso si ha una amplicazione lineare in quanto le
parti nuove non possono essere appaiate dai primers, mentre quelle vecchie
si (Figura 38)
Forma a Y Altro esempio di molecola a forma di Y (Figura 39)
33
1
1
n e w
ol d
2
2
n e w
ol d
Figura 38: Albero pcr y-y
Figura 39: Albero pcr y
3.4 Altre operazioni: Ligasi, Fish, Inx-Sux
ligasi. Concatena le stringhe aggiungendo un legame fosforico.La ligazione `e un
processo di saldatura di frammenti di DNA e avviene grazie ad un enzima
denominato DNA Ligasi. La ligazione tra molecole di DNA, `e indispensabile
per eettuare il clonaggio molecolare (vedi Paragrafo 3.5).
Esempio.
In riferimento alla Figura 40 la polimerasi allunga il primer complementare
al template, poi lenzima ligasi concatena il neolamento con il lamento
accanto. Si pu`o dire che la polimerasi chiude i buchi grandi e la ligasi
i buchi piccoli. Con la notazione introdotta possiamo esprimere la ligasi
come segue:
e forma ununica
catena.
Pol i mer as i
Col l egament o per
Li gasi
Al l ungament o per
Figura 40: Ligasi
34
sh. Si tratta di un pescaggio dei lamenti desiderati, ovvero identica una speci-
ca sequenza di DNA. Si eettua lancoraggio del complementare della parola
che si vuole pescare, la si immerge nella popolazione e i lamenti che cor-
rispondono al template si attaccheranno. Questa operazione si basa sulla
ibridazione molecolare.
ibridazione molecolare. Permette di evidenziare la presenza di una specica se-
quenza di DNA allinterno di un pool. Si basa sulla propriet`a della molecola
di DNA di poter subire i processi di denaturazione e rinaturazione. In con-
dizioni opportune di temperatura i singoli lamenti che presentano sequenze
di basi complementari possono appaiarsi e dare origine a molecole a doppio
lamento, ovvero possono ibridare tra di loro
2
.
Per poter individuare un dato lamento di DNA occorre disporre di una
molecola detta sonda, che contiene la sequenza complementare a quella che
si `e interessati. La sonda viene denaturata a singolo lamento e immersa
in un pool anchesso denaturato. A questo punto la sonda potr`a appaiarsi
al lamento complementare presente tra le migliaia di lamenti non com-
plementari. Si forma cos` un ibrido molecolare a lavvenuta ibridazione pu`o
essere evidenziata mediante un opportuno sistema di rilevazione ad esempio
tramite radiograa se le sonde sono state marcate con elementi radioattivi.
inx-sux. Se si vuole duplicare una molecola blunt, si deve conoscere la porzione
di DNA corrispondente alla testa e alla coda per poi utilizzare i loro comple-
mentari come primers. Non sempre `e possibile avere questa conoscenza, cos`
si aggiunge al lamento un presso e un susso per poi usare i loro comple-
mentari come primers (Figura 41).
a b
a
b
a b
b
a
b
a
Figura 41: inx-sux
Questa operazione utilizza la ligasi. Se non si conosce la sequenza della
molecola N, grazie allinx, la posso pressare e sussare riprendendo il con-
trollo della molecola: N.
Innanzitutto si prendono due molecole note e e gli si leva il fosforo nella
estremit`a 5 per ridurre la possibilit`a di aggancio, quindi la ligasi pu`o operare
solamente tra la punta e la coda (Figura 42). Una volta avvenuta la ligasi, la
polimerasi produrr`a una molecola doppia allungando i singoli lamenti.
A questo punto si ha il completo controllo della molecola poich`e si ha la
conoscenza delle parti terminali ed `e possibile progettare i primers in mo-
do opportuno per applicare la PCR e amplicare la molecola: PCR(,
)
(Figura 43).
2
Lappaiamento avviene per formazione di legami di idrogeno tra le basi complementari
appaiate
35
a
b
Mo l e c o l a N
+
b or a
a or b
Figura 42: Possibili agganci di inx-sux
b a
a
b
a
b
Al l u n g a me n t o p e r PCR
Figura 43: progettazione primer
3.5 Amplicazione con clonaggio molecolare
Tramite clonaggio molecolare `e possibile isolare un singolo gene o in generale un
frammento di DNA e produrne molte copie identiche. Per clonare un lamento di
DNA occorre inserirlo in un vettore di clonaggio tramite il processo di ligazione. I
vettori ricombinati vengono successivamente introdotti in idonee cellule ospiti (cel-
lule batteriche o di lievito), ottenendo una grande collezione di cloni ricombinati che
viene detta libreria di DNA. Dopo aver costruito una libreria, occorre identicare
la sequenza di DNA che contiene il gene.
Lamplicazione, eettuata tramite clonaggio o PCR, permette di ottenere in
entrambi i casi molte copie di una sequenza di DNA; tuttavia dono diversi i prin-
cipi e i metodi: con la clonazione si usa la macchina genetica della natura, ovvero i
batteri; la PCR invece permette di fotocopiare in modo sintetico (con un processo
semplice, poco costoso e soprattutto programmabile) attraverso il meccanismo dei
primers che sono i segnali che dirigono il fenomeno amplicativo.
3.5.1 Vettori di clonaggio
Sono molecole di DNA in grado di replicarsi autonomamente in una cellula ospite.
In tali molecole `e possibile inserire, in una posizione nota, i frammenti di DNA da
clonare. I singoli vettori ricombinati possono essere introdotti in una cellula ospite
(cellula batterica o di lievito) nella quale veicolano il frammento di DNA preceden-
temente inserito. In tali cellule i singoli vettori replicano il proprio DNA e quello
del frammento in esso integrato. Metaforicamente il vettore `e come se fosse un bus
contenente un passeggero; il bus entra in un box specializzato (cellula) che in pochi
istanti replica il bus stesso compreso il passeggero. In questo modo quando la cellula
batterica si divide, porta con se i plasmidi compreso il DNA target.
Esistono quattro tipi di vettori di clonaggio: i plasmisi, i batteriofagi, i cosmidi
e i cromosomi articiali di lievito. I primi tre usano come cellula ospite il batte-
36
rio Escherichia Coli (comunemente chiamato E.Coli), mentre il quarto il commune
lievito di birra. Tali vettori sono in grado di eettuare una replicazione autono-
ma nelle cellule ospiti, presentano pi` u siti di taglio per enzimi di restrizione in
corrispondenza dei quali inserire i frammenti di DNA da clonare (la regione della
cellula che contiene i siti si chiama polylinker), inoltre contengono uno o pi` u mar-
catori selettivi per distinguere le cellule ospiti che contengono il vettore da quelle
che non lo contengono; un marcatore selettivo potrebbe essere un gene resistente
ad un antibiotico.
La scelta dei vettori dipende dalle dimensioni dei lamenti di DNA che si `e inter-
essati a clonare.
3.5.2 Enzimi di restrizione
La scoperta degli enzimi di restrizione ha reso possibile la tecnologia del DNA ri-
combinante. Sono enzimi di origine batterica in grado di tagliare una molecola di
DNA a doppia elica in corrispondenza di speciche sequenze di basi. Questi enzimi
servono ai batteri per difendersi dallinvasione di virus, in quanto riconoscono e
degradano ogni DNA estraneo che penetra nella cellula.
La sequenza di coppie di basi riconosciuta da un enzima di restrizione prende il
nome di sito di restrizione. Ogni enzima riconosce uno specico sito che in genere
`e un palindromo
3
I siti di restrizione possono essere costituite da 4 o 6 o pi` u coppie di nucleotidi
e le modalit`a di taglio possono essere le seguenti:
esattamente al centro, generando estremit`a piatte
in modo asimmetrico, generando estremit`a a singolo lamento (estremit`a
coesive o appiccicose) sporgenti verso il 5
in modo asimmetrico, generando estremit`a a singolo lamento, sporgenti
verso il 3
Esempi di enzimi di restrizione:
Enzima Sequenza di riconoscimento
HaeIII
5
GG
CC3
CC
GG5
HbaI
GC
GC
C
GCG
HpaII
C
CGG
GGC
C
ecoRI
G
AATTC
CTTAA
G
3
In linguistica il palindromo e una parola che rimane identica sia se letta da sinistra
verso destra che viceversa. Nel caso di DNA, palindromo `e una sequenza di nucleotidi a
simmetria binaria che presenta la stessa sequenza di basi se letta in direzione 5-3 sia su
unelica sia sullaltra; esempio
5
GGTACC3
CCATGG5
37
In Figura 44 vediamo alcuni esempi di taglio con altri enzimi di restrizione.
5 CCCGGG3
3 GGGCCC5
5 CCC
3 GGG CCC5
GGG3
5 GGAT CC3
3 CCT AGG5
5 G
3 CCTAG5
5 GATCC3
G5
5 CT GCAG3
3 GAT GT C5
5 CTGCA3
3 G
G3
3 ACGTC5
St i ky end 3
St i ky end 5
Est r emi t a pi at t e
Tagl i o c on
Sma I
Tagl i o c on
Ba m HI
Tagl i o c on
Pst I
Figura 44: Esempi di taglio con enzimi di restrizione
38
3.5.3 Plasmidi
I plasmidi sono molecole circolari di DNA presenti nei batteri. Queste molecole
non sono strettamente necessarie alla vita del batterio, ma possiedono dei geni che
possono fornire caratteristiche aggiuntive al batterio che ne possiede; tipicamente
questi geni codicano la resistenza ad un antibiotico. Inoltre i plasmidi, essendo
dotati di unorigine per la replicazione, hanno la capacit`a di replicarsi autonoma-
mente allinterno di una cellula, e i loro geni vengono espressi indipendentemente
dal cromosoma principale. I geni vengono cos` trasmessi alle cellule glie nella di-
visione cellulare, conferendogli lo steso vantaggio.
I plasmidi possono essere riprodotti in laboratorio e progettati in modo da avere
caratteristiche aggiuntive rispetto a quelli naturali. In Figura 45 vediamo un gener-
ico plasmide in cui sono evidenziate le caratteristiche principali dove A
R
e B
R
sono
i geni capaci di conferire resistenza a un antibiotico.
I plasmidi si replicano in modo autonomo rispetto al cromosoma che contiene lin-
Or i gi ne r epl i cazi one( or i )
A
B
R
R
Pst I
Ec o RI
B a mHI
Si t i di t agl i o per enzi mi di r est r i zi one
Figura 45: Caratteristiche principali di un vettore plasmidico
formazione genetica principale, ma il principio `e lo stesso, ovvero tramite lenzima
DNA polimerasi, quindi durante la divisione cellulare i plasmidi vengono trasferiti
da una cellula allaltra come mostrato in Figura 46.
Grazie agli enzimi di restrizione in grado di tagliare il DNA in corrispondenza di
sequenze speciche, `e possibile utilizzare i plasmidi per introdurre nei batteri del
DNA esogeno al ne di produrre proteine o per amplicare tratti di DNA. La Figura
47 rappresenta il taglio di un plasmide e di un DNA esogeno tramite un enzima di
restrizione. La successiva ligazione tramite lenzima ligasi tra il plasmide e il DNA
estraneo, forma una molecola chiamata plasmide ricombinato.
39
Cr o mo s o ma
Pl a s mi d e
Figura 46: Trasferimento del DNA plasmidico
A
R
3
5 3
5
3 5
Fr a mme n t i d i DNA e s o g e n o
Vet t or e di cl onaggi o
Tagl i o i n cor r i spondenza di un
si t o di r est r i zi one
Figura 47: Ligazione tra molecole di DNA
3.5.4 Algoritmo di clonazione
Le tecniche di clonaggio consistono di inserire un frammento di DNA in un vettore,
introdurre la nuova molecola in una cellula ospite e successivamente isolare il clone
che contiene la molecola di DNA ricombinante.
Lalgoritmo dettagliato `e il seguente:
1. Si sceglie un vettore circolare (plasmide) che include un gene che codica la
resistenza ad un antibiotico A ed un gene per la resistenza ad un antibiotico
B.
2. Si linearizza il vettore tagliandolo con un enzima di restrizione in un sito che
compare una volta sola e che interrompe la sequenza del gene che codica
lantibiotico B. Ad esempio supponiamo che tale gene sia codicato dalla se-
quenza
5
TTTCCCGAATTCAAA3
AAAGGGCTTAAGTTT5
determina la terminazione
P
P
O H
5
3
P
B
Figura 58: ddNTP
della sintesi della catena di DNA. Il legame OH `e infatti indispensabile per il legame
con il nucleotide successivo.
Per questo il metodo di Sanger prende anche il nome di sequenziamento tramite
terminazione della catena o tramite didesossinucleotidi.
I desossi e i didesossinucleotidi sono presenti in ognuna delle quattro reazioni
in un rapporto di concatenazione tale che statisticamente possa essere incorporato
o il nucleotide normale o il corrispondente didesossinucleotide. Ad esempio se sul
lamento template `e presente una base T, allora sul lamento di nuova sintesi deve
essere incorporato una base A. Ora, nella reazione in cui `e presente il ddATP , lenz-
ima pu`o incorporare il dATP o il ddATP. Se avviene lincorporazione con il ddATP
la sintesi termina, se viene incorporato il dATP, la sintesi continua e lenzima pu`o
nuovamente scegliere tra il dATP o il ddATP: si generano quindi frammenti di DNA
di lunghezza diversa, ciascuno dei quali termina nellestremo 3
con un ddNTP.
Analogamente, in ciascuna delle reazioni in cui sono presenti il ddTP, il ddCTP
oppure il ddGTP, si ottengono frammenti di lunghezza diversa ciascuno dei quali
termina in 3
P ma Type(P) =
Type(P)
Ricombinazione.
P =
1
,
2
. . .
n
, Q =
1
,
1
. . .
n
L =
1
. . .
n
t.c.
i
i
,
i
,
()
c
,
,
()
c
, ,
()
c
,
()
c
,
c
< > ovvero il risultato delloverlap concatenation tra e
5
superstringa := qualsiasi stringa che include la stringa
64
a
g
g b
g
g
b a
b
a
a
g
g a
g b
g
b
a
a
a
g
b
g b
b
Se p a r a z i o n e
I br i di zzazi one
p e r PCR
Figura 75: XPCR
5.1 Estrazione con XPCR
Il problema dellestrazione `e il seguente: data una specica sequenza e un pool di
molecole lunghe n aventi in comune lo stesso presso e susso, si vuole produrre
un pool P
2
,
3
4
,
2
,
2
,
Passi:
Split(P) = P
1
, P
2
P1 := PCR(P
1
, , )
P2 := PCR(P
2
, ,
)
P = P
1
P
2
; con gel elettroforesi si selezionano le sequenze corte. In questo
passo rimangono solo stringhe del tipo . . . e . . .
P := PCR(P, ,
)
elettroforesi per selezionare la molecola pi` u lunga: P := separate(P, n+[[ +
[[)
Esempio in Figura 76
65
a b
b
a
1)
2)
3)
4)
5)
6)
P
P 1
P 2
g
g
g
a b g
g
g
a
g
a
a
g
g
a
g
a
Ampl i f i c az i one es ponenz i al e
del l a mol ec ol a <a. . g>
Ampl i f i c az i one es ponenz i al e
del l a mol ec ol a <g. . b>
a b
b
g
g
g
b
a
a b g
b
g
g
b
g
g
b
b
b
Sel ezi one di <a. . g> e <g. . b> con el et t r of or esi
Sel ezi one del l e st r i nghe pi u l unghe con el et t r of or esi
a g
a g
g b
g b
a g
a
b
a
g b
b
a g
g b
Super st r i nga che cont i ene g e che ver r a
ampl i f i cat a dal l a pol i mer asi
Figura 76: Extract con XPCR
5.1.1 Considerazioni
Se =
1
2
P XPCR(P, ) = P t.c. = , A
2
P,
3
4
P,
1
4
/ P
1
4
XPCR(P, )?
Si, infatti la XPCR prende cose di partenza e cose miste:
XPCR(P, ) extr(p, )
66
5.2 Ricombinazione con XPCR
XPCR come generatore dello spazio delle soluzioni:
Partendo da I
i
(i = 1 . . . n), facendo 2(n 1) cicli di XPCR si ottiene tutto
lo spazio.
Esempio.
I
1
= X
1
X
2
X
3
X
4
X
5
X
6
I
2
= Y
1
Y
2
Y
3
Y
4
Y
5
Y
6
I
3
= X
1
Y
2
X
3
Y
4
X
5
Y
6
I
4
= Y 1X
2
Y
3
X
4
Y
5
X
6
sia P = I
i
, i = 1, 2, 3, 4 ovvero estendo con prex e sux
For i=2 to n-1
begin
XPCR(P,xi)
XPCR(P,yi)
end
Lalgoritmo prende P
n
i=i
(x
i
+ y
i
) = x
i
, y
i
n
e in tempo lineare si ha
uno spazio esponenziale
XPCR per ricombinare strinhe:
Esempio.
In riferimento allinsieme I
1
. . . I
4
del punto precedente
Vorrei ottenere: Y
1
Y
2
X
3
Y
4
Y
5
X
6
XPCR
y
2
(I
2
, I
3
) Y
1
Y
2
X
3
Y
4
X
5
Y
6
= I
5
ma `e sottointeso anche X
1
Y
2
Y
3
Y
4
Y
5
Y
6
XPCR
y
4
(I
5
, I
2
) Y
1
Y
2
X
3
Y
4
Y
5
Y
6
= I
6
XPCR
y
5
(I
6
, I
4
) Y
1
Y
2
X
3
Y
4
X
5
X
6
Vorrei ottenere: X
1
Y
2
X
3
X
4
X
5
X
6
XPCR
X
3
(I
1
, I
3
) X
1
Y
2
X
3
X
4
Y
5
X
6
In sostanza per una qualsiasi sequenza presa a caso, esiste sempre una se-
quenza di operazioni XPCR t.c. determina la sequenza voluta.
67
6 Teoria dei Linguaggi Formali (FLT)
6.1 introduzione
La teoria dei linguaggi formali ha un ruolo fondamentale nella teoria della com-
putazione. Inoltre molti meccanismi biologici (DNA, sintesi proteica, metabolismi)
e sici hanno una natura discreta dellinformazione e la teoria dei linguaggi formali
permette di formulare modelli adeguati per modellare un gran numero di fenomeni
in quanto una struttura discreta la si pu`o sempre rappresentare tramite un linguag-
gio formale.
La nozione stessa di problema, una volta codicato, ha uno stretto legame con i
linguaggi e tra tutti i problemi, quelli di decisione (la cui risposta `e si o no), sono
quelli di maggior interesse. Fissato un modello di calcolo `e possibile rappresentare
i parametri del problema mediante stringhe di simboli propri del modello (codica
dellistanza). Dato quindi uno schema di codica per un problema e sia
lal-
fabeto usato dallo schema, linsieme
Riconoscere un linguaggio `e uno dei quattro metodi per denire i linguaggi for-
mali; due di tipo matematico e due di tipo algoritmico:
1. Metodi logici: descrizione tramite propriet`a L = A
t.c. P()
2. Metodi algebrici: costruzione del linguaggio tramite operazioni insiemistiche
3. Metodi generativi:grammatiche che consistono in algoritmi che producono
tutte e solo le parole del linguaggio
4. Metodi reconoscitivi: automi che per ogni A
dicono se appartiene o
meno al linguaggio
Nota:
Dato un algoritmo riconoscitivo se ne ottiene uno generativo (lalgoritmo che prende
tutte le parole di A
un linguaggio su A `e un elemento di (A
sse , , , A
t.c. (
G
) ( = ) (
= )
A partire da una relazione
G
si denisce una riscrittura in pi` u passi
G
:
sse
1
. . .
n
t.c.
1
=
n
=
i
G
i+1
i
Il linguaggio generato da una frammatica G `e L(G):
L(G) = T
[S
G
A
`e un monoide rispetto
alla concatenazione che `e associativa ed ha come elemento neutro ( =
stringa vuota)
Per generare un linguaggio di una grammatica G, si parte dal simbolo S e si
fa una riscrittura a pi` u passi rimpiazzando sottostringhe secondo le regole di
R. Possono esserci pi` u regoole applicabili per uno steso passo; in questo caso
si procede in modo non deterministico, scegliendo tra le regole applicabili e
tra i vari modi di applicarle. Ci si ferma quando non ci sono pi` u regole da
applicare. La parola ottenuta appartiene al linguaggio solo se appartiene a
T
.
Esempio.
L(G) = a
n
b
n
c
n
[n N linguaggio trisomatico di nteresse biologico poich`e
modella lo sviluppo di un embrione nelle sue tre parti (mesoderma,endoderma,ectoderma).
`
E generato dalla seguente grammatica G.
A = a, b, c, B, S; T = a, b, c; R = S abc, S aSBc, cB Bc, bB
bb
69
6.2.2 Classi di Chomsky
Nel denire una grammatica ci sono quattro tipi di regole e una grammatica si dice
di tipo i(i = 0, 1, 2, 3) se tutte le sue produzioni sono di tipo i. Ogni regola di tipo
i `e necessariamente di tipo i 1. Le classi di Chomsky corrispondono alle classi dei
linguaggi L0, L1, L2, L3 generati dalle grammatiche di tipo 0, 1, 2, 3.
Tipi di regole:
indichiamo con N i non terminali: AT
indichiamo con le lettere minuscole i simboli terminali
le regole hanno la forma con e stringhe A
Tipo 0.
A
NA
Cio`e in ci deve essere almeno un simbolo non terminale (non pu`o essere
ab bb). Questa condizione impedisce a stringhe terminalizzate di contin-
uare la derivazione.
Avere due tipi di simboli, terminali (T) e non teminali (N) `e fondamentale.
Sistemi grammaticali composti solo da simboi terminali sono sistemi poveri.
Quando si genera qualcosa e ci sono simboli N, allora quella generazione con-
tiene forme immature che possono ancora essere sviluppate. Lintroduzione di
simbili non terminali e la scelta di accettare solo simboli terminali, denisce
implicitamente una strategia. In generale infatti, il modello di Chomsky `e
basato su una generazione non deterministica, si deriva a caso applicando
ogni produzione possibile e se si prendono strade non nalizzate al risultato
nale non si terminalizza. La distinzione tra T e N serve quindi a selezionare
tra cammini inutili (stringhe parassite) da cammini buoni.
Vedremo che L(G)[G : 0 = RE
Tipo 1.
(0) ([[ [[)
Le grammatiche con queste regole sono equivalenti alle grammatiche CS,
sensibili al contesto, aventi le produzioni del tipo:
X con X N e A
, ,=
Si vede subito che CF CS poich`e la grammatica CF `e una grammatica
CD particolare in cui e sono vuote. Inoltre si dimostra che L2 (CF) pu`o
esprimere simmetrie binarie e L1 (CS) pu`o esprimere simmetrie ternarie; per
cui il linguaggio trisomatico `e discriminante tra L1 e L2: `e generato da una
G : 1 e quindi L1 ma / L2 perch`e questultima ha simmetria binaria, qundi
CF CS.
Tipo 3.
(2) ( T T N) e N
Questa regola dice che a destra, ovvero in c`e un sombolo N oppure una
coppia TN, ad esempio x aY, x b.
Esempio.
Riprendiamo la G per il linguaggio trisomatico e identichiamo il tipo di grammatica
S abc Tipo 2
S aSBc Tipo 2
cB Bc Tipo 1
bB bb Tipo 1
La G `e di tipo 1
6.2.3 Inclusioni
Valgono le seguenti inclusioni strette:
L3 L2 L1 L0
ASF PDA LBA MdT
La classicazione `e importante perch`e indica i quattro livelli di dicolt`a nel
generare i linguaggi `e quindi nel calcolare. Gli strumenti di calcolo che generano i
linguaggi sono sempre pi` u complicati e vanno dagli ASF per L3 ai PDA (nastro a
pila) per L2, alle MdT con nastro limitato per L1 e alle MdT per L0
Le forme di interesse naturale si possono modellare con linguaggi compresi tra
tipo 1 e tipo 2, devono cio`e avere una qualche forma di contestualit`a , ovvero quello
che avviene in una stringa dipende da quello che avviene in unaltro punto della
stringa stessa (si dice che ci sono dei collegamenti a distanza).
71
6.3 Risultati fondamentali
6.3.1 Teorema di universalit`a di Chomsky
L(G)[G : 0 = RE ovvero L0 = RE
Ricordiamo che:
Sia f una funzione da A
in A
} dove T = alfabeto di f
72
S
0
`e il simbolo iniziale e q
0
un simbilo che rappresenta lo stato iniziale.
I simboli $ e # indicano linizio e la ne del nastro. La terza pro-
duzione simula la trascrizione di simboli dellalfabeto sul nastro e pro-
duce la stringa $q
0
#; le produzioni applicate nellordine di esposizione
corrispondono a caricare la macchina M con ingresso .
Regole di programma
regola q
i
xyq
j
L (Spostamento a sinistra)
q
i
x q
j
y
z q
j
q
j
z
regola q
i
xyq
j
R (Spostamento a destra)
q
i
x yq
j
Regole di allungamento
# b#
$ $b
Questa regola ci permette di poter simulare un nastro illimitato, ad
esempio:
$bbb . . . b# $bbb . . . bb# `e stata aggiunta una casella vuota
Regole di uscita
q
f
x xq
f
q
f
# q
#
#
Bq
#
q
#
#
xq
#
q
f
x
Idem per $ #
Queste regole spostano q
f
no alla ne e simulano la sostituzione di B
con #
da destra a sinistra
Le regole cos` ottenute simulano la MdT e formano un sistema di rimpiazza-
mento binario in cui tutte le stringhe non hanno pi` u di due simboli, chiamato
anche Forma Normale di Kuroda.
Si ha dunque L(G
M
) = [S
0
q F
La dierenza tra grammatica e automa sta rispettivamente nel generare e riconoscere
una parola :
g : S
: genera
ASF : q
0
q F : riconosce
Il teorema dice che:
L(M)[M ASF = L3 = REG dove REG = CLOS(FIN,, , +) Dove CLOS
indica la chiusura algebrica rispetto alle operazioni indicate.
74
Dimostraione:
L(M)[M ASF = L3:
Data una G:3 avente produzioni del tipo
G
con = x = T T N,
si pu`o costruire una M ASF che genera lo stesso linguaggio e viceversa:
S aS
1
q
0
a q
1
S
1
bS
2
q
1
b q
2
.
.
.
.
.
.
S
i
b q
i
b q
f
L3 = REG:
Dimostriamo che ogni L(M) con M ASF `e ottenibile con unioni, concate-
nazioni e stella di Kleene di linguaggi niti su un alfabeto A. Il viceversa `e
ovvio.
Sia Q = q
1
. . . q
n
gli stati di M con q
1
stato iniziale e F = q
m
. . . q
n
gli
stati nali.
Cosideriamo il linguaggio:
L
n
i,j
= A
[q
i
q
i+1
. . . q
j
F
ovvero il linguaggio fatto dalle parole che vengono lette passando dagli stati
q
i
. . . q
j
compresi n stati intermedi Q
Per esempio L
3
i,j
`e il linguaggio formato da tutti i simboli che legge la macchi-
na per passare dallo stato i allo stato j passando per tre stati intermedi.
Per induzione si osserva che:
base:
L
0
i,j
A, tale linguaggio `e nito e quindi REG
infatti:
L
0
i,j
= [q
i
q
j
, Q = 0 = a[q
i
q
j
, a A = a A, quindi
essendo A nito, lo `e anche L
0
i,j
e L
0
i,j
`e regolare.
induzione:
L
k+1
i,j
= L
k
i,k+1
(L
k
k+1,k+1
)
L
k
k+1,j
+ L
k
i,j
i, j N
Infatti per andare da q
i
a q
j
avendo k+1 stati si pu`o passare o meno da q
k+1
e i due tipi percorso sono compresi rispettivamente in:
L
k
i,k+1
(L
k
k+1,k+1
)
L
k
k+1,j
e in L
k
i,j
Per ipotesi induttiva L
k
i,j
`e regolare ed essendo L
k+1
i,j
composto da unione e
concatenazione `e esso stesso regolare. Quindi:
L(M) =
q
k
F
L
n
1,k
= REG L
3
= REG
dove Q = q
1
. . . q
n
con q
1
iniziale e q
k
sono stati nali e
L(M) = L
n
1,m
L
n
1,m+1
. . . L
n
1,n
75
6.3.3 Teorema di Ginzburg
`
E un teorema di chiusura. Sia C una classe di Chomsky allora:
L C L R C R REG
Ovvero i linguaggi regolari hanno la propriet`a di conservare la gerarchia di
Chomsky, o meglio lintersezione con i regolari non fa cambiare la classe di comp-
lessit`a .
Dimostrazione.
Si dimostra per casi, L L
i
con i = 0, 1, 2, 3
Se L RE banale RE REG = RE poich`e REG RE
Se L REG, basta considerare che REG `e chiusa rispetto unione e comple-
mento, quindi rispetto lintersezione:
L R = L R
L CS (G:1)
se L CS, R REG L R CS
M ASF tale che R = L(M) si vuole costruire una nuova grammatica
corrispondente al linguaggio intersezione.
Apicizzo le reogole di G: ax yz a
ottenendo G
:
x
q0
y
q0
x
q
i
b
ab
q
j
q
i
a q
j
M
bq
i
b q
i
b q
f
M, q
f
F
Questa grammatica G
partendo da S
q
0
genera stringhe uguali a quelle che
avrebbe generato la G, con la dierenza di avere stringhe apicizzate e indici
q
i
. Gli indici e gli apici spariscono solo se la stringa `e riconosciuta anche
dallautoma M (per costruzione). Tale G
`e di tipo 1.
Esempio:
S
q
0
1q
0
a
2
. . . a
n
a
1
a
2q
i
. . . a
a
1
a
2
. . . a
n
Gli ultimi due passaggi
avvengono sse la stringa `e riconosciuta da M.
L CF (G:2)
se L CF, R REG L R CF
Apicizzo G ottenendo G
,
aggiungo le seguenti regole di tipo 2 ottenendo G
:
S S
q
0
q
f
q
f
F
x yz x
q
1
q
2
y
q
1
q
3
z
q
3
q
2
q
1
, q
2
, q
3
Q
76
x y x
q
1
q
2
y
q
1
q
3
q
1
, q
2
M
a
q,q
a a T, q
1
, q
M
La seconda e la terza regolea mettono coppie di stati, la quarta dice che: a
q,q
.
Se la grammatica originale generava: S x
1
, x
2
. . . x
11
e poi terminalizza
in a
1
, a
2
. . . a
11
, ora la nuova G
, partenso da S
q
0
q
f
genera stringhe del tipo
a
q
0
q
1
b
q
1
q
2
. . . e tale stringha terminalizza solo se lautoma riconosce la parola
secondo la sequenza: aq
0
q
1
, bq
1
. . . q
k
.
Esempio:
S
x
1q
1
q3
, x
2q
3
q7
, x
3q
7
q9
, . . . x
11q
15
q17
con q
17
F.
Nella stringa ci sono tutti ipossibili stati da q
0
a q
f
e i pedici spariscono
quando la stringa `e riconosciuta da M.
Quindi se lautoma riconosce la stringa, tale stringa viene riconosciuta anche
dalla G
) L2
6.3.4 Teorema di Savich
Questo teorema determina il passaggio dalla contestualit`a alla universalit`a .
L RE = L0, L
CS = L1 t.c L = [n : `e di tipo #
n
L
con #
terminale.
La potenza di calcolo degli RE deriva dalla possibilit`a di cancellare, avere cio`e
un calcolo bidirezionale (avanti e indietro). Esempio.
L =
1
,
2
, . . . RE L
=
1
##, 2###, . . .
ovvero allungando opportunamente le parole di L, tutto quello che si otteneva con
una MdT ora lo si pu`o fare con un LBA. Questo signica che se si ha la possi-
bilit`a di cancellare caratteti, la complessit`a dellautoma che generara il linguaggio
`e maggiore. loperazione di cancellare `e un operazione dicile proprio perch`e fa au-
mentere al complessit`a dellautoma. Capire bene cosa eliminare o dimenticare per
una gestione informativa eciente `e una operazione tuttaltro che banale.
Ricordiamo che:
L
1
= CS REC RE = L
0
REC RE
Costruisco un L
k
che `e RE ma non ricorsivo. Si numerino le grammatiche G
i
e le parole
i
di A
, ora i, j N N si controlli se G
i
nei primi j passi ha
trovato
i
; in caso positivo si aggiunga
i
in L
k
, altrimenti no.
Questo `e un metodo generativo per costruire L
k
, quindi L
k
RE, ma non si
conosce un modo nito per stabilire se data una stringa L
k
o / L
k
L
1
REC
La condizione [[ [[ su fa scendere nei decidibili ovvero che presa
L
1
si pu`o stabilire se L
1
o se / L
1
.
Preso G:1 e una stringa tale che [[ = n, la generazione di tramite
le regole (che sono nite) contiene stringhe al pi` u lunghe n (S
1
77
2
. . . ) e quindi controllando tutte le possibili generazioni posso dire se
pu`o essere generata.
L
1
REC
Si numerino tutte le grammatiche G
i
di L
1
e le stringhe
i
di A
.
Sia L
R
=
i
[
i
/ L(G
i
), L
R
`e ricorsivo poich`e le grammatiche sono de-
cidibili; ora se L
R
fosse generato da G:1 ovvero da CS avremmo due casi:
1. L
R
i
[alpha
i
/ L(G
i
) / L(G
i
) ovvero / L(G
cs
)
/ L
R
Assurdo.
2. / L
R
/
i
[alpha
i
/ L(G
i
) L(G
i
) ovvero L(G
cs
)
L
R
Assurdo.
Dimostrazione del teorema di Savich:
Apicizzo le regole d G per trattare tutti i simboli come non terminali (G)
Nella forma contestuale si ha X , ma in G:0 la X si pu`o cancellare,
mentre in G:1 (contestuale) non si pu`o perch`e deve essere [[ [[ quindi
nella trasformazione da a al pi` u si aggiunge materiale e non si pu`o toglire
nulla.
In G:0 sarebbe dunque X , cos` inserisco in G un simbolo come
simbolo ttizio da mettere al posto della cancellazione.
: sposta il a destra
$X
Y
Z
$X
regola 3
XXZ$ regola 4
XXZ# regola 5
XXZ### regola 6
Non permettendo loperazione di cancellazione, lautoma genera la stringa voluta
con laggiunta di altro materiale prodotto durante il calcolo. Ecco perch`e con le
MdT `e importante cancellare i blank generati in fase di elaborazione, altrimenti si
produrrebbero linguaggi CS declassicando la potenza di calcolo.
78
References
1 Chie, Dolni, Malcovati, Pierantoni, Tenchini. Biologia e Genetica. EdiSES
edizioni.
2 Vincenzo Manca. Frontiere della ricerca, DNA Computing il calcolatore in provet-
ta. Mondo digitale n.4, p.19-32, Dicembre 2006.
3 Giuditta Franco, Cinzia Giagulli, Carlo Laudanna, Vincenzo Manca. DNA Ex-
traction by Cross Pairing PCR. LNCS 3384, p.106-114, Springer-Verlag,
2005.
4 Vincenzo Manca. On the logical and geometry of bilinear forms. Fundamenta
Informaticae, volume 64 p.261-273, IOS Press, 2005.
5 Vincenzo Manca, Giuditta Franco. Computing by polymerase chain reaction.
Mathematical Biosciences n.211, p.282-298, 2008
6 Vincenzo Manca, Claudio Zandron. A clause string DNA algorithm for SAT.
Lecture Notes in Computer Science, vol 2340, p.172-181, Springer-Verlag,
2001.
7 Vincenzo Manca. Linguaggi, Grammatiche e Automi. Dipartimento di Informat-
ica, Universit`a di Verona.
8 Appunti del corso di Modelli di calcolo non convenzionali. Dipartimento di In-
formatica, Universit`a di Verona.
9 H.Papadimitriou. Computational Complexity. Addison Wesley Longman.
79