appunti di teoria dell informazione

61
Appunti di teoria dell’informazione Marco Valerio Barbera, Alessandro Cammarano, Andrea Cerone, Andrea Moro, Arbri Shqepa, Dora Spenza e Bruno Vaval`a Indice 1 Programma 3 2 Introduzione 4 3 Distanza e spazio metrico 5 4 Spazio di Hamming 5 5 Sorpresa, incertezza ed entropia 8 6 Entropia binaria e comportamento asintotico 10 7 Limitazione sui coefficienti binomiali 14 8 Tipo di una sequenza e l’entropia di distribuzioni discrete 18 9 Divergenza informazionale 24 10 Codici binari a lunghezza variabile 26 11 Entropia come limite della compressione 34 12 Mutua Informazione 37 13 Sorgente dell’informazione 38 14 I Codici Correttori 40 15 Codici lineari 44 16 Codici di Hamming 46 17 Teorema di Shannon 48 18 Capacit` a con errore zero 55 1

Upload: vitalij-zadneprovskij

Post on 16-Jun-2015

292 views

Category:

Education


6 download

DESCRIPTION

Appunti delle lezioni di Jànos Korner. Autori: Marco Valerio Barbera, Alessandro Cammarano, Andrea Cerone, Andrea Moro, Arbri Shqepa, Dora Spenza e Bruno Vavala

TRANSCRIPT

Page 1: Appunti di teoria dell informazione

Appunti di teoria dell’informazione

Marco Valerio Barbera, Alessandro Cammarano,Andrea Cerone, Andrea Moro, Arbri Shqepa,

Dora Spenza e Bruno Vavala

Indice

1 Programma 3

2 Introduzione 4

3 Distanza e spazio metrico 5

4 Spazio di Hamming 5

5 Sorpresa, incertezza ed entropia 8

6 Entropia binaria e comportamento asintotico 10

7 Limitazione sui coefficienti binomiali 14

8 Tipo di una sequenza e l’entropia di distribuzioni discrete 18

9 Divergenza informazionale 24

10 Codici binari a lunghezza variabile 26

11 Entropia come limite della compressione 34

12 Mutua Informazione 37

13 Sorgente dell’informazione 38

14 I Codici Correttori 40

15 Codici lineari 44

16 Codici di Hamming 46

17 Teorema di Shannon 48

18 Capacita con errore zero 55

1

Page 2: Appunti di teoria dell informazione

INDICE 2

Indice analitico 59

Page 3: Appunti di teoria dell informazione

1. Programma 3

1 Programma

Attenzione il programma e solamente informativo, visto che si basa sul corsotenuto dal professor Janos Korner nell’anno accademico 2006/2007 e 2007/2008.Quindi sara cura dello studente sapere quali parti di questi apppunti sono statifatti a lezione e quali argomenti sono stati trattati a lezione ma non sono presentiin questi appunti.

Misure dell’informazione

Conteggio di sequenze e entropia

• Lo spazio di Hamming

• Cardinalita di sfere e l’entropia binaria

• Tipo di una sequenza e l’entropia di distribuzioni discrete

Misure dell’informazione e le loro proprieta analitiche

• Entropia, entropia condizionata, mutua informazione, mutua informazionecondizionata, divergenza informazionale

• La disuguaglianza log-sum, proprieta di non-negativita e convessita dimisure dell’informazione

• Gradi di indipendenza di tre o piu variabili

Codici di sorgente

Codici a lunghezza variabile per sorgenti

• Codici prefissi e UD, disuguaglianze di Kraft, McMillan

• Costruzione di codici di lunghezze prescritte delle parole

• Il minimo della lunghezza media e l’entropia

Struttura temporale di sorgenti

• Concatenazione di codici e tasso di entropia per sorgenti stazionarie

Codici di canale

Problemi non-stocasticii

• Codici a blocco per un canale disturbato, distanza e correzione di errori

• Limitazioni di Varshamov-Gilbert, Plotkin e Hamming

• Codici lineari

Page 4: Appunti di teoria dell informazione

2. Introduzione 4

• Codici di Hamming e codici perfetti

• Capacita di errore zero di un canale e la capacita di Shannon di grafi

• Limitazione tramite il numero cromatico

Problemi stocastici

• Il concetto di capacita

• Il canale binario simmetrico

• Positivita della capacita, bozza della dimostrazione del teorema di Shan-non per il canale binario simmetrico

Testi di riferimento:

• I. Csiszar, J. Korner, Information Theory: Coding Theorems for DiscreteMemoryless Systems. Academic Press, NY (1982)

• F. J. MacWilliams, N. J. A. Sloane, The Theory of Error Correcting Codes.North Holland, Amsterdam (1977)

• T. Cover, J. Thomas, Elements of Information Theory, Wiley, NY (1991)

2 Introduzione

(Facoltativa)I concetti principali della teoria dell’informazione possono essere illustrati con-siderando il modo in cui avviene la comunicazione tra persone: il linguaggio.Due importanti aspetti di un buon linguaggio possono essere introdotti breve-mente:

1. Le parole piu comuni dovrebbero essere piu corte di altre parole menocomuni, in modo tale da non rendere le frasi troppo lunghe. Tale aspetto emolto simile alla compressione dei dati, e rappresenta un aspetto essenzialedel source coding.

2. Se una parte di una frase viene fraintesa a causa di rumori esterni, l’a-scoltatore dovrebbe comunque essere in grado di intendere il significatodell’intera frase. Tale proprieta di robustezza e alla base della comunica-zione nei sistemi elettronici, oltre che nei linguaggi parlati; il lavoro dicostruire dei sistemi di comunicazione in maniera appropriata prende ilnome di channel coding.

Il source coding e il channel coding costituiscono gli aspetti fondamentali dellateoria dell’informazione.Si noti che tali concetti non hanno niente a che vedere con il significato delmessaggio. Per esempio, pronunciare un’esclamazione quale ”Grazie! Torna-te a trovarci” richiede un tempo che non differisce di molto da ”Chiamateun’ambulanza!”, ma il secondo e chiaramente piu importante.

Page 5: Appunti di teoria dell informazione

3. Distanza e spazio metrico 5

La teoria dell’informazione non si occupa dell’importanza o del significato deimessaggi, in quanto tali problemi riguardano la qualita dei dati piuttosto che laquantita degli stessi; quest’ultimo argomento puo essere studiato ricorrendo aisoli strumenti del calcolo delle probabilita.La teoria dell’informazione trova utilizzo in un insieme di discipline (pure edapplicate) quali sistemi adattivi, sistemi predittivi, intelligenza artificiale, si-stemi complessi, cibernetica, informatica, e molte altre. Tale teoria affonda lesue radici nella matematica; tuttavia trova molte applicazioni nella pratica, inmaggior parte e alla base della teoria dei codici.La teoria dei codici si occupa di trovare dei metodi espliciti, detti appuntocodici, per ottenere un aumento dell’efficienza e una riduzione del tasso di erroredurante lo scambio di messaggi all’interno di un canale rumoroso. Tali metodipossono essere suddivisi in compressione dei dati e tecniche di correzione deglierrori.Una terza branca della teoria dell’informazione si occupa degli algoritmi di ci-fratura: i concetti, i metodi e i risultati ottenuti all’interno della teoria dei codicisono largamente usati sia nella crittografia che nella crittanalisi.

3 Distanza e spazio metrico

Occorre stabilire, per una trattazione rigorosa degli argomenti, quando due pa-role sono differenti e di quanto differiscono: sicuramente le parole pazzo e pezzosono piu simili tra loro di quanto non lo siano le parole senza e macro.Per affrontare quest’argomento, e necessario dapprima introdurre la nozione didistanza:

Definizione 3.1 (Distanza). Una distanza (o metrica) su un insieme V e unafunzione

d : V × V → R+

che soddisfa le seguenti proprieta:

d(x, y) ≥ 0 ∀(x, y) ∈ V × V (3.1.1)d(x, y) = 0⇔ x = y ∀(x, y) ∈ V × V (3.1.2)d(x, y) = d(y, x) ∀(x, y) ∈ V × V (3.1.3)d(x, y) ≤ d(x, z) + d(z, y) ∀x, y, z ∈ V (3.1.4)

La coppia (V, d) e chiamata spazio metrico.

4 Spazio di Hamming

Intuitivamente, come si puo notare dall’esempio precedente, due parole (formal-mente stringhe) sono simili tra loro quando, cominciando a leggerle da sinistra

Page 6: Appunti di teoria dell informazione

4. Spazio di Hamming 6

a destra, il numero di lettere (da ora in poi simboli) per le quali differiscono,tenendo conto della posizione, e relativamente basso:

Definizione 4.1 (distanza di Hamming). Siano x, y due stringhe binarie dilunghezza n. La distanza di Hamming di x ed y e definita come:

dH(x, y) =n∑i=1

|xi − yi| ∀x, y ∈ {0, 1}n (4.1.1)

Risulta banale verificare che la definizione di distanza di Hamming soddisfaeffettivamente le proprieta di metrica:

Lemma 4.2. La funzione dH e una distanza.

Dimostrazione. E’ sufficiente verificare che vengono rispettati tutti i vincoliimposti dalla definizione di distanza:

1. Banale, in quanto per definizione della distanza di Hamming si effettuauna sommatoria su componenti positive.

2. supponiamo che sia x 6= y, allora esse differiscono per almeno un simbolo inuna posizione i: allora tale differenza portera ad ottenere una componentepari ad 1 nella sommatoria che definisce la funzione dH .

Viceversa, se x = y allora ∀i xi = yi, ovvero |xi−yi| = 0. Da cio si ottieneche dH(x, y) = 0.

3. Ovvio, in quanto |a− b| = |b− a| ∀a, b ∈ R.

4. Siano date per ipotesi tre stringhe binarie x, y e z Per ogni indice i varraallora uno dei seguenti casi:

• xi = yi = zi: si avra che |xi − yi| = 0, |yi − zi| = 0, |xi − zi| = 0.

• xi = yi 6= zi: si avra che |xi − yi| = 0, |yi − zi| = 1, |xi − zi| = 1.

• xi 6= yi = zi: si avra che |xi − yi| = 1, |yi − zi| = 0, |xi − zi| = 1.

• xi 6= yi 6= zi: si avra che |xi − yi| = 1, |yi − zi| = 1, |xi − zi| = 0.

In ogni caso si otterra che |xi − zi| ≤ |xi − yi| + |yi − zi|: da cio seguebanalmente che la proprieta e verificata.

In questa sezione verranno prese in considerazione solamente le stringhe binarie.Formalmente, e possibile definire l’insieme delle stringhe binarie di lunghezza ncome {0, 1}n. Tale insieme, munito dell’operazione di distanza dH , costituisceuno spazio di Hamming:

Definizione 4.3 (Spazio di Hamming). Lo spazio di Hamming n-dimensionalee costituito dalla coppia ({0, 1}n, dH).

Page 7: Appunti di teoria dell informazione

4. Spazio di Hamming 7

In molte occasioni e utile considerare l’insieme delle stringhe che si trovano al piua distanza di Hamming r da una stringa di riferimento: l’insieme di tali stringheprende il nome di sfera di Hamming. La definizione formale e la seguente:

Definizione 4.4 (Sfera di Hamming). Lo sfera di Hamming di centro x ∈{0, 1}n e raggio r ∈ R e

SH(x, r) = {y ∈ {0, 1}n | dH(x, y) ≤ r} (4.4.1)

Poiche la distanza di Hamming fra due stringhe e sempre un intero, vale

SH(x, r) = SH(x, brc)

Ci si chiede allora se e possibile calcolare la cardinalita di una sfera di Hammingdi centro x e raggio r. Fortunatamente, risulta semplice trovare una formulagenerale per indicare tale valore:

Osservazione 4.5.

|SH(x, r)| =brc∑i=0

(n

i

)(4.5.1)

Dimostrazione. La dimostrazione avviene per conteggio: l’unica stringa a di-stanza 0 da x e essa stessa. Le stringhe a distanza 1 saranno invece n, dove n ela dimensione dello spazio di Hamming; cio e banalmente verificabile in quantole stringhe devono differire da x in un solo indice. Piu formalmente, se y e lastringa presa in considerazione, ∃!i : |xi − yi| = 1.In maniera analoga si puo a calcolare il numero di stringhe a distanza di Ham-ming 2 dal centro della sfera. Tali stringhe dovranno differire da x per due valoridell’indice i: il primo puo essere scelto tra gli n possibili, il secondo tra gli n-1rimanenti. Si ha allora che il numero di stringhe a distanza di Hamming pari a2 dal centro e esattamente

(n2

).

Tale ragionamento puo essere generalizzato: si otterra che le stringhe a distanzadi Hamming esattamente k dal centro sono

(nk

).

Si avra allora che:

SH(x, r) =brc⋃k=0

{y : dH(x, y) = k}

e, poiche tali insiemi sono disgiunti (se non lo fossero, una stringa avrebbe duedistanze diverse dallo stesso centro, e cio e assurdo):

|SH(x, r)| =brc∑k=0

|{y : dH(x, y) = k}| =brc∑k=0

(n

k

).

Page 8: Appunti di teoria dell informazione

5. Sorpresa, incertezza ed entropia 8

Una proprieta interessante dello spazio di Hamming e che, data una sfera, neesiste sempre un’altra che assieme alla prima forma una partizione di tutto lospazio. Questo segue direttamente dalla seguente osservazione.

Osservazione 4.6.

∀x ∈ {0, 1}n, r ≤ n, SH(x, r) e una sfera di Hamming. (4.6.1)

dove con SH(x, r) indichiamo tutte le stringhe appartenenti allo spazio ma nona SH(x, r).

Dimostrazione. Una generica stringa y che non appartiene a SH(x, r) deve di-stare da x di almeno r+1 posizioni. Questo vuol dire che almeno r+1 posizionidi y sono uguali alla stringa x, ovvero alla stringa complementare di x. Le alpiu restanti n − (r + 1) posizioni di y possono invece variare a piacimento. Insostanza y puo distare al piu di n− (r + 1) posizioni da x, ovvero appartiene auna sfera centrata in x e di raggio n− (r + 1). Ricapitolando, i passi logici cheabbiamo fatto possono essere espressi con la seguente sequenza di uguaglianze:

SH(x, r) = {z; dH(0, z) > r} == {z; dH(x, z) ≥ r + 1} == {z; dH(x, z) ≤ n− (r + 1)} = (∗)= SH(x, n− (r + 1))

5 Sorpresa, incertezza ed entropia

(L’intera sezione e facoltativa)In questa sezione si supporra che il lettore abbia le conoscenze di base del calcolodelle probabilita, in quanto risultano essenziali per comprendere gli argomentitrattati nella teoria dell’informazione.Consideriamo un evento E che possa verificarsi quando effettuiamo un esperi-mento: Quanto siamo sorpresi nel sapere che E si sia, in effetti, verificato?Sembra ragionevole assumere che la quantita di sorpresa generata dall’informa-zione che E si e verificato debba dipendere dalla probabilita di E. Per esempio,se l’esperimento consiste nel lanciare una coppia di dadi, allora non saremmotroppo sorpresi nell’apprendere che E si sia verificato, quando E rappresenti l’e-vento che la somma dei due dadi e pari (evento che ha effettivamente probabilita12 ) mentre saremmo certamente piu sorpresi nel sapere che E si sia verificato,quando E rappresenti l’evento che la somma dei dadi vale 12 (probabilita paria 1

36 ). In questa sezione tenteremo di quantificare il concetto di sorpresa. Periniziare, conveniamo di supporre che la sorpresa che uno prova al sapere che unevento E si sia verificato, dipenda solo dalla probabilita di E e denotiamo conS(p) la sorpresa generata dal verificarsi di un evento di probabilita pari a p.

Page 9: Appunti di teoria dell informazione

5. Sorpresa, incertezza ed entropia 9

Determiniamo la forma funzionale di S(p) fissando un certo numero di assiomiche S(p) deve verificare e poi proviamo che questi determinino la forma che S(p)deve avere. Assumeremo da qui in poi che S(p) e definita per ogni 0 < p ≤ 1,ma non e definita per gli eventi aventi p = 0.La nostra prima condizione e semplicemente il fatto intuitivo che non ci sarasorpresa nell’udire che un evento certo si sia verificato.

Assioma 1.S(1) = 0

La nostra seconda condizione stabilisce che piu un evento risulti improbabilepiu grande sara la sorpresa nell’apprendere che si sia in effetti verificato.

Assioma 2. S(p) e una funzione strettamente decrescente di p

p < q ⇒ S(p) > S(q)

La terza condizione e l’ipotesi matematica del fatto che ci aspettiamo intuiti-vamente che un piccolo cambio di p corrisponda a un piccolo cambiamento inS(p).

Assioma 3. S(p) e una funzione continua di p

Per motivare la condizione finale, consideriamo due eventi indipendenti E edF aventi, rispettivamente, probabilita p e q. Poiche P (EF ) = pq, la sorpresaprovocata dall’informazione che entrambi E e F si sono verificate e pari a S(pq).Ora, supponiamo che in un primo tempo ci venga detto che E si e verificato e,in un secondo tempo, che anche F si e verificato. Siccome S(p) rappresenta lasorpresa provocata dal verificarsi di E, ne segue che S(pq) − S(p) rappresentala sorpresa addizionale generata quando veniamo informati del fatto che ancheF si e verificato.Poiche pero F e indipendente da E, il sapere che E si e verificato non modifica laprobabilita che F si modifichi, e quindi la sorpresa addizionale e semplicementeS(q): questo conduce alla considerazione finale

Assioma 4.S(pq) = S(p) + S(q)

Vale inoltre il seguente teorema, che determina la forma della funzione S(p).

Teorema 5.1. Se S(·) soddisfa gli assiomi., allora

S(p) = −Clog2p

dove C e un arbitrario numero intero positivo

Dimostrazione. Dall’ultimo assioma si ha che

S(p2) = S(p) + S(p) = 2S(p)

Page 10: Appunti di teoria dell informazione

6. Entropia binaria e comportamento asintotico 10

e, per induzione, cheS(pm) = mS(p)

Inoltre, siccome per ogni valore intero n, S(p) = S(p1n · · · p 1

n ) = nS(p1n ), segue

che

S(p1n ) =

1nS(p)

Dalle due equazioni precedenti si ha che

S(pmn ) =

m

nS(p)

che e equivalente aS(px) = xS(p)

dove x rappresenta un numero razionale positivo. Per la continuita della funzioneS, risulta verificata per ogni valore x reale non negativo. Ora, per ogni p, 0 <p ≤ 1, poniamo x = −log2p. Allora p = ( 1

2 )x, e risulta

S(p) = xS(12

) = −C log2 p

dove C = S( 12 ) > S(1) = 0 per i primi due assiomi.

Generalmente si pone C = 1. In questo caso si dice che la sorpresa e espressa inunita di bit.Consideriamo ora una variabile aleatoria X che possa assumere uno tra i valorix1, · · · , xn con probabilita pari, rispettivamente, a p1, · · · , pn. Siccome −logpirappresenta la sorpresa sucitata quando X prende il valore xi, segue che laquantita attesa di stupore che riceveremo al momento di sapere il valore assuntodalla variabile X e dato da

H(X) = −n∑i=1

pi log pi (5.1.1)

La quantita H(X) viene definita in teoria dell’informazione come l’entropia dellavariabile aleatoria X. Per convenzione, nel caso in cui una delle pi = 0, porremo0log0 = 0.Poiche H(X) rappresenta la media della quantita di sorpresa che viene suscitataquando si apprenda quale valore ha assunto X, essa puo essere anche interpretatacome la quantita di incertezza che esiste riguardo al valore di X.

6 Entropia binaria e comportamento asintotico

Sebbene precedentemente si sia calcolato la cardinalita esatta di una sfera diHamming, per valori molto grandi del raggio risulta difficile calcolare la sommadi tutti i coefficienti binomiali definiti nella formula 4.5.1

Page 11: Appunti di teoria dell informazione

6. Entropia binaria e comportamento asintotico 11

Dal nostro punto di vista sarebbe piu utile trovare un’approssimazione (fa-cilmente calcolabile) della cardinalita di una sfera di Hamming di centro 0;un primo risultato, abbastanza semplice da dimostrare, si ottiene dal seguentelemma:

Lemma 6.1.

r ≥ n

2⇒ 2n−1 ≤ |SnH(0, r)| ≤ 2n (6.1.1)

Dimostrazione. La cardinalita dello spazio di Hamming e 2n, quindi, dato cheuna sfera al piu puo essere pari a tutto lo spazio di Hamming, vale banalmenteche:

|SnH(0, r)| ≤ 2n

Per dimostrare la minorazione basta, invece, mostrare che la cardinalita dellasfera e almeno quella del suo complementare, ovvero che:

|SnH(0, r)| ≤ |SnH(0, r)| (6.1.2)

doveSnH(0, r) = SnH(1, n− (r + 1))

Difatti, se tale relazione fosse soddisfatta, poiche deve valere che SnH(0, r) +SnH(0, r) = 2n, si avrebbe che la cardinalita della sfera di centro 0 sarebbealmeno 2n−1.La validita della formula 6.1.2 deriva dal fatto che per ogni k vale la seguente:(

n

k

)=(

n

n− k

)quindi, dato che la sfera che stiamo considerando ha, per ipotesi, raggio dialmeno n

2 , la formula che calcola la sua cardinalita, ovvero:

|SH(x, r)| =brc∑i=0

(n

i

)(6.1.3)

contiene la sommabn−(r+1)c∑

i=0

(n

i

)(6.1.4)

che e proprio la cardinalita della sfera complementare.1

Tuttavia tale approssimazione non risulta essere delle migliori per svariati mo-tivi: in prima istanza, non viene considerato il raggio della sfera di Hamming,ma la sola dimensione dello spazio di Hamming. Inoltre, al crescere di n, l’ap-prossimazione della cardinalita della sfera sarebbe tra un dato valore x e il suodoppio 2x. Se si considera uno spazio di Hamming 20-dimensionale, si avrebbe

1La somma 6.1.3 contiene anche la 6.1.4 poiche brc ≥ bn− (r + 1)c

Page 12: Appunti di teoria dell informazione

6. Entropia binaria e comportamento asintotico 12

che la cardinalita di una sfera di centro 0 e raggio r ≥ 10 sarebbe compresa trai valori 524288 e 1048576.Fortunatamente, se si considera il caso in cui la sfera di Hamming abbia raggiostrettamente minore di n

2 , e possibile trovare un’approssimazione che risolve,seppure in maniera parziale, il problema riscontrato per il caso r ≥ n

2 . Taleapprossimazione sfrutta il concetto di entropia binaria (la cui generalizzazione,detta entropia, verra introdotta in 8.3.1):

Definizione 6.2 (Entropia binaria). Sia t ∈ [0, 1], l’entropia binaria e laseguente funzione su t:

h(t) = tlog21t

+ (1− t)log21

(1− t)(6.2.1)

In figura 1 e riportato il grafico della funzione h(t)

Figura 1: Grafico della funzione h(t)

A questo punto e possibile provare che il comportamento asintotico di una sferadi hamming di centro 0 e raggio r soddisfa il seguente lemma:

Lemma 6.3.

r ∈ N, r ≤ n

2⇒ |SnH(0, r)| ≤ 2nh(

rn ) (6.3.1)

Dimostrazione. Per rendere piu intuitiva la dimostrazione del lemma, si consi-deri un esperimento in cui viene lanciata una moneta truccata: per convenzionediremo che l’evento 0 coincide con un lancio risultante in testa, mentre l’evento1 coincide con un lancio risultante in croce.Se r

n rappresenta la probabilita di ottenere croce, si ottiene la seguente funzionedi probabilita

Page 13: Appunti di teoria dell informazione

6. Entropia binaria e comportamento asintotico 13

P (0) = 1− r

n= 1− p P (1) =

r

n= p (6.3.2)

Inoltre, poiche per ipotesi r ≤ n2 vale che P (0) ≥ P (1).

Supponiamo ora che vengano effettuati n lanci, tra di loro indipendenti: la suc-cessione dei risultati puo essere interpretata come una stringa x dello spaziodi Hamming n-dimensionale. Inoltre, poiche i singoli lanci sono tra di loro in-dipendenti, la probabilita di ottenere una certa sequenza x di simboli e datada:

Pn(x) =n∏i=1

P (xi) x = x1 . . . xn (6.3.3)

Dato che ogni volta che si esegue una sequenza di n lanci di monete si ottienesempre una stringa dello spazio di Hamming, vale che:

Pn({0, 1}n) = 12

dove l’estensione di Pn ad insiemi di stringhe e definita come:

Pn(X ) =∑x∈X

Pn(x)

Ora, SnH(0, r) ⊆ {0, 1}n, quindi:

1 ≥ Pn(SnH(0, r))

Inoltre, per ogni stringa x ∈ SnH(0, r) vale la relazione

Pn(x) ≥ miny∈SH(0,r)

Pn(y)

dunque risulta immediato verificare che

Pn(SnH(0, r)) ≥ |SnH(0, r)| · miny∈SnH(0,r)

Pn(y)

Le stringhe y con probabilita Pn(y) minima, considerato che P (1) ≤ P (0), sonoquelle che, all’interno della sfera, contengono il maggior numero possibile di 1.Ora, dato che la distanza massima dalla stringa 0 e r, si ha che le stringhe conprobabilita minima sono quelle con r bit posti ad 1.Ricordiamo che abbiamo posto p , r

n , da cui segue che r = np.Segue allora che:

|SnH(0, r)| · miny∈SnH(0,r)

Pn(y) = |SnH(0, r)|pnp(1− p)n(1−p)

2In verita si sta facendo un abuso di notazione, dato che P n e una funzione definita sustringhe e non su insiemi di stringhe. Nel caso in cui P n sia applicata a un insieme la siintende come la somma delle probabilita dei singoli elementi dell’insieme.

Page 14: Appunti di teoria dell informazione

7. Limitazione sui coefficienti binomiali 14

Se adesso riscriviamo p come 2log2p, per le proprieta delle potenze, otteniamoche:

pnp(1− p)n(1−p) = 2n(plog2p+(1−p)log2(1−p)) = 2n(−h(p)) (6.3.4)

Abbiamo cosı mostrato che:

1 ≥ Pn(SnH(0, r)) ≥ |SnH(0, r)| · miny∈SnH(0,r)

Pn(y) = |SnH(0, r)| · 2n(−h(p))

da cui deriva banalmente che

|SnH(0, r)| ≤ 2n(h( rn ))

Corollario 6.4. Dal lemma 6.3 segue che(n

r

)≤ 2nh(

rn ) ∀n, r

Verifica. Se r ≤ n2 il corollario segue da 6.3, poiche(

n

r

)≤ |SH(0, r)| ≤ 2nh(

rn )

Se r ≥ n2 , allora n− r ≤ n

2 e possiamo applicare il lemma 6.3:(n

r

)=(

n

n− r

)≤ 2nh(

n−rn )

Ricordando che la funzione entropia e simmetrica, si ha(n

r

)=(

n

n− r

)≤ 2nh(

n−rn ) = 2nh(1−

rn ) = 2nh(

rn )

Dato che l’entropia binaria e una funzione a valori in (0, 1), questo corollario cipermette di migliorare la limitazione superiore in 6.1.1.

7 Limitazione sui coefficienti binomiali

Diamo ora una limitazione sui coefficienti binomiali in termini di entropia. Lalimitazione e algebrica e se n e lineare in r da buoni risultati, anche se e menoprecisa della formula di Stirling3.

3Si veda Approssimazione di Stirling (Wikipedia)

Page 15: Appunti di teoria dell informazione

7. Limitazione sui coefficienti binomiali 15

T1 = {0}

...

Tr

...

Tn = {1}

Figura 2: {0, 1}n

Proposizione 7.1.

1n+ 1

2nh(rn ) ≤

(n

r

)≤ 2nh(

rn ) ∀n, r

Dimostrazione. La minorazione(nr

)≤ 2nh(

rn ) e stata verificata nel corollario

6.4. Ci resta da dimostrare che(n

r

)≥ 1n+ 1

2nh(rn )

Definiamo la famiglia di insiemi Tr come segue:

Tr = {x ∈ {0, 1}n t.c.n∑i=1

xi = r}

Ognuno degli insiemi Tr ha cardinalita

|Tr| =(n

r

)poiche contiene tutte e sole le stringe che hanno r bit ad 1. Quindi, consideratauna stringa x appartenente a Tr, tutte le altre stringhe della classe sono ottenibilipermutando la stringa x.Dalla definizione di Ti risulta chiaro che

{0, 1}n =n⋃i=0

Ti (7.1.1)

ovvero lo spazio di Hamming e partizionabile in (n + 1) classi, come mostratoin figura 7.Siano P e Pn le distribuzioni di probabilita definite in 6.3.2 e 6.3.3. Vogliamodimostrare che la classe che ha la maggiore probabilita complessiva e Tr, ovvero

Page 16: Appunti di teoria dell informazione

7. Limitazione sui coefficienti binomiali 16

Affermazione 7.2. Se r = np, allora

maxqPn(Tq) = Pn(Tr)

ovveromaxq∈[0,1]

Pn(Tnq) = Pn(Tnp)

Notiamo che se q non e un razionale con denominatore n, l’insieme Tnq risultavuota, quindi Pn(Tnq) vale 0.Poniamo, ora, q = s

n con s ∈ NQuello che intendiamo dimostrare, e, quindi

Pn(Tnq)Pn(Tnp)

≤ 1 ∀q (7.2.1)

Notiamo che il termine a sinistra dell’equazione non e una divisione per 0 datoche p = r

n e l’insieme Tnp non e mai vuoto.

Dimostrazione. Poiche le stringhe di una generica classe hanno tutte lo stessotipo, possiamo scrivere:

Pn(Tnq) = |Tnq|pnq(1− p)n(1−q) (7.2.2)

Infatti, la classe Tnq contiene tutte e sole le stringhe che hanno un bit ad 1in nq posizioni e che quindi hanno probabilita pari a pnq(1 − p)n(1−q) (si vedala definizione di P [6.3.2]). Quindi, la probabilita complessiva della classe Tnq edata dalla probabilita di ogni stringa per il numero di stringhe che appartengonoalla classe.Ricordando che |Tr| =

(nr

), possiamo riscrivere l’espressione 7.2.1 come segue:

Pn(Tnq)Pn(Tnp)

=n!

s!(n−s)!pnq(1− p)n(1−q)

n!r!(n−r)!p

np(1− p)n(1−p)= (7.2.3)

r!s!

(n− r)!(n− s)!

pn(q−p)(1− p)n(p−q) (7.2.4)

A questo punto utilizziamo la disuguaglianza:

Affermazione 7.3.

k!l!≤ kk−l ∀k, l (7.3.1)

Verifica. Distinguiamo due casi, a seconda di quale sia il maggiore fra k ed l.Se k ≥ l si ha

k!l!

=k(k − 1) · · · (k − (k − l − 1)) · l · (l − 1) · · · 1

l(l − 1) · · · 1

Page 17: Appunti di teoria dell informazione

7. Limitazione sui coefficienti binomiali 17

Semplificando tutti i fattori comuni, otteniamo k − l fattori al nominatore,ognuno dei quali e minore di k, per cui si ha:

k!l!

=k(k − 1) · · · (k − (k − l − 1)) · l · (l − 1) · · · 1

l(l − 1) · · · 1≤ kk−l

Viceversa, se k < l si ha:

k!l!

=k(k − 1) . . . 1

l(l − 1) . . . k(k − 1) . . . 1≤ 1

(k + 1)l−k≤ (k + 1)k−l ≤ kk−l

Applicando la disuguaglianza 7.3.1 alla formula 7.2.4 otteniamo:

Pn(Tnq)Pn(Tnp)

=r!s!

(n− r)!(n− s)!

pn(q−p)(1− p)n(p−q) ≤

≤ rr−s(n− r)s−rpn(q−p)(1− p)n(p−q) =poiche r = np e s = nq =

= (np)n(p−q)(n− np)n(q−p)pn(q−p)(1− p)n(p−q) =

= nn(p−q)pn(p−q)nn(q−p)pn(q−p)(1− p)n(q−p)+n(p−q) == 1

Abbiamo quindi dimostrato che la classe che ha la maggiore probabilita com-plessiva e Tnp.A questo punto, ricordando l’espressione 7.1.1 e che {0, 1}ne partizionato in(n+ 1) classi (T0 . . . Tn), possiamo scrivere:

1 = Pn({0, 1}n) = Pn

(n⋃i=0

Ti

)≤ (n+ 1) max

iPn(Ti)

1 ≤ (n+ 1)Pn(Tnp)1 ≤ (n+ 1)|Tnp|pnp(1− p)n(1−p) per la 7.2.2

1 ≤ (n+ 1)(n

r

)pnp(1− p)n(1−p)

da cui, per la 6.3.4, segue(n

r

)≥ 1n+ 1

2nh(p)

Page 18: Appunti di teoria dell informazione

8. Tipo di una sequenza e l’entropia di distribuzioni discrete 18

8 Tipo di una sequenza e l’entropia di distribu-zioni discrete

Sia X un insieme finito, che rappresenta un alfabeto generico.Indichiamo con Xn l’insieme delle stringhe di lunghezza n sull’alfabeto X :

Xn 4= {x t.c. x = x1...xn, xi ∈ X} (8.0.2)

ora, data una qualsiasi x ∈ Xn e un a ∈ X , definiamo con N(a, x) il numero divolte che il simbolo a appare nella stringa x, ovvero:

N(a, x) = |{i, xi = a}| ∀x ∈ Xn (8.0.3)

Poiche vale la seguente uguaglianza,∑a∈X

N(a, x) = n ∀x ∈ Xn

definendo

Px(a)4=

1nN(a, x) (8.0.4)

e considerando che ∑a∈X

N(a, x) = n

otteniamo che ∑a∈X

Px(a) = 1

La funzione Px appena definita e chiamata il tipo di x ed essa e, di fatti, unadistribuzione di probabilita sugli elementi di X .La definizione di Px e utile per partizionare Xn: infatti, data una qualsiasidistribuzione di probabilita P sugli elementi di X , possiamo definire

T (n)P

4= {x ∈ Xn; Px = P} (8.0.5)

Gli insiemi della partizione di Xn sono tutti i T (n)P al variare di P . Chiaramente,

non per tutte le P varra che T (n)P 6= ∅ in quanto, preso un qualsiasi x ∈ Xn e

a ∈ X , per la 8.0.4 deve valere che nPx(a) ∈ N, cosa che non e necessariamentevera per una distribuzione generica P .Qual’e il significato di questa partizione? Cio che stiamo facendo e raggruppareassieme le stringhe di Xn che hanno lo stesso tipo, ovvero che possono essereottenute le une dalle altre tramite permutazioni.Una domanda che ha senso porsi a questo punto, e la cui risposta ci sara utile inseguito, e quanti sono gli insiemi non vuoti della partizione di Xn che abbiamoappena creato. Un risultato facile da ottenere e il seguente:

Page 19: Appunti di teoria dell informazione

8. Tipo di una sequenza e l’entropia di distribuzioni discrete 19

Lemma 8.1.|{P t.c. T nP 6= ∅}| ≤ (n+ 1)|X |

Dimostrazione. Dato che dobbiamo contare solamente le distribuzioni di pro-babilita P per le quali T nP non e vuoto, deve essere che P = Px per un qualchex ∈ Xn. Questo implica che, ∀a ∈ X , nP (a) e il numero di volte, compreso tra0 ed n, che il simbolo a compare nelle stringhe di T nP .Detto questo, e facile rendersi conto che per contare le P a cui siamo interessatie sufficiente decidere, ∀a ∈ X quante sono le occorrenze del simbolo a. Dato cheper ogni a possiamo scegliere tra n+ 1 valori, dal nostro conteggio otteniamo ilvalore (n+ 1)|X |.E ovvio che, non avendo tenuto conto del fatto che la somma delle occorrenzedegli elementi di X non puo superare n, il risultato del conteggio e sicuramentesuperiore al vero numero di distribuzioni P per le quali T nP 6= ∅.

In verita la maggiorazione trovata puo essere migliorata leggermente affermandoche

Lemma 8.2.|{P t.c. T nP 6= ∅}| ≤ (n+ 1)|X |−1

Dimostrazione. Facendo riferimento alla tecnica di conteggio utilizzata per di-mostrare 8.1, basta decidere il numero di occorrenze dei primi n−1 simboli dellastringa. Infatti, decidere il numero di occorrenze di tutti i simboli di X tranneuno, determina univocamente il numero di occorrenze di quest’ultimo.

In senso intuitivo, il lemma precedente afferma che, per ogni n, ci sono pochedistribuzioni per cui l’insieme T nP non e vuoto. Inoltre il lemma afferma cheil numero dei tipi di stringhe e polinomiale, mentre la quantita di stringhe eesponenziale nella lunghezza delle stringhe.Mostriamo ora un risultato che, dato un T nP , limita superiormente e inferior-mente, con precisione esponenziale, la sua cardinalita:

Proposizione 8.3. Se T nP non e vuoto, allora

2nH(P )

(n+ 1)|X |−1≤ |T nP | ≤ 2nH(P )

dove H(P ) e la funzione entropia, definita come

H(P ) =∑x∈X

P (x) log1

P (x)(8.3.1)

con H(0) = 0 (estesa per continuita).

Dimostrazione: |T nP | ≤ 2nH(P ). Definiamo la misura prodotto Pn(x) come

Pn(x) ,n∏i=0

P (xi) ∀x ∈ T nP

Page 20: Appunti di teoria dell informazione

8. Tipo di una sequenza e l’entropia di distribuzioni discrete 20

Dove la funzione di probabilita P e quella definita in 8.0.4.Ora, poiche nP (a) e il numero di occorrenze del simbolo a in ciascuna stringadell’insieme T nP , Pn(x) puo essere riscritta come:

Pn(x) =∏a∈X

P (a)n·P (a) =

[∏a∈X

P (a)P (a)

]n= 2n·

Pa∈X P (a) logP (a) = 2−nH(P )

Il penultimo passaggio si ha per riscrittura e proprieta del logaritmo. Usandoquesto modo di scrivere Pn(x), otteniamo che:

1 ≥ Pn(T nP ) =∑x∈T nP

Pn(x) = |T nP | · 2−nH(P )

e questo implica che|T nP | ≤ 2nH(P )

Dimostrazione: |T nP | ≥2nH(p)

(n+1)|X|−1 . Prima di iniziare e necessario provare che:

Affermazione 8.4. Se T nP 6= 0 allora Pn(T nP ) = maxQ|X Pn(T nQ )

Dimostrazione. Tale affermazione si dimostra calcolando, dato una qualsiasidistribuzione di probabilita Q sugli elementi di X , il seguente valore:

Pn(T nQ )Pn(T nP )

=|TQ| ·

∏a∈X P (a)nQ(a)

|TP | ·∏a∈X P (a)nP (a)

Ora notiamo che, per una qualsiasi distribuzione di probabilita Q sugli elementidi X , vale che

|T nQ | =n!∏

a∈X (nQ(a))!

Questo perche un modo di comporre una stringa x ∈ T nQ e quello di decidere,per ogni simbolo a ∈ X , quali sono le nQ(a) coordinate di x a cui dovra essereassegnato il simbolo a. Quindi, per il primo simbolo, diciamo a1, abbiamo ncoordinate a disposizione e nQ(a1) simboli, che possono essere posizionati in(

nnQ(a1)

)modi. Per il secondo simbolo, ovvero a2 abbiamo n−nQ(a1) coordinate

a disposizione e nQ(a2) simboli, che possono essere posizionati in(n−nQ(a1)nQ(a2)

)modi. Procedendo in questo modo, otteniamo che il numero totale di modi dicomporre una stringa x ∈ T nQ e pari a(

n

nQ(a1)

)(n− nQ(a1)nQ(a2)

)(n− nQ(a1)− nQ(a2)

nQ(a3)

)· · ·(n−

∑|X |−1i=1 (nQ(ai))nQ(a|X |)

)che equivale, per la definizione di coefficiente multinomiale, a

n!∏a∈X (nQ(a))!

Page 21: Appunti di teoria dell informazione

8. Tipo di una sequenza e l’entropia di distribuzioni discrete 21

Considerando quanto appena detto, e utilizzando la 7.3.1, possiamo scrivere ilvalore Pn(T nQ )

Pn(T nP ) come:

n!Qa∈X (nQ(a))!

n!Qa∈X (nP (a))!

·∏a∈X

P (a)n[Q(a)−P (a)] =∏a∈X

(nP (a))!(nQ(a))!

·∏a∈X

P (a)n[Q(a)−P (a)] ≤

≤∏a∈X

[nP (a)]n[P (a)−Q(a)] ·∏a∈X

[P (a)]n[Q(a)−P (a)] =

=∏a∈X

nn[P (a)−Q(a)] ·∏a∈X

[P (a)]n[P (a)−Q(a)]+n[Q(a)−P (a)] =

= nPa∈X n[P (a)−Q(a)] = nn[

Pa∈X P (a)−

Pa∈X Q(a)] = n0 = 1

Abbiamo quindi ottenuto che

Pn(T nQ )Pn(T nP )

≤ 1

che e proprio cio che volevamo.Notiamo che la dimostrazione appena fatta mostra che le classi T nQ (al variare diQ) non sono equiprobabili e che quella piu probabile contiene tutti gli elementidell’alfabeto in modo uniforme.

Continuando la dimostrazione, abbiamo che:

1 = Pn(Xn) =∑

Q:T nQ 6=∅

Pn(T nQ ) ≤ (n+ 1)|X |−1 ·maxQ

Pn(T nQ ) =

= (n+ 1)|X |−1Pn(T nP ) = (n+ 1)|X |−1 · |T nP | · 2−nH(P )

pertanto |T nP | ≥1

(n+ 1)|X |−1· 2nH(P )

Abbiamo partizionato l’insieme Xn in classi, in modo che due stringhe appar-tengano alla stessa classe se possono essere ottenute l’una dall’altra tramite unapermutazione. E interessante chiedersi qual’e la classe Q che ha la probabilitamassima, ovvero

maxQ

Pn(TnQ) = Pn(T np )

se p e un possibile tipo.Fissata una stringa x ∈ X ci chiediamo qual’e la distribuzione che massimizzala probabilita della stringa x, ovvero

maxQ

Qn(x)

Page 22: Appunti di teoria dell informazione

8. Tipo di una sequenza e l’entropia di distribuzioni discrete 22

Il problema del minimo e banale:

minQ

Qn(x) = 0

poiche basta che Q assegni una probabilita 0 ad almeno uno dei simboli di x.

Proposizione 8.5.maxQ

Qn(x) = Pnx (x)

Dimostrazione. Nel seguito, indichiamo con P = Px, mentre Q e una distribu-zione qualsiasi.

Qn(x) =∏a∈X

Q(a)nP (a) =

= 2nPa∈X P (a) logQ(a)

Poiche P = Px:Pn(x) = 2n

Pa∈X P (a) logP (a)

Per dimostrare l’affermazione ci basta dimostrare che

Pn(x) ≥ Qn(x) ∀x ∈ X

Poiche quella esponenziale e una funzione monotona, dimostriamo che∑a∈X

P (a) logQ(a) ≤∑a∈X

P (a)logP (a)

ovvero ∑a∈X

P (a) logP (a)Q(a)

≥ 0 (8.5.1)

L’ultima affermazione (8.5.1) si dimostra utilizzando la disuguaglianza log-sum(8.6), e la tesi segue.

Lemma 8.6 (Disuguaglianza Log-Sum). Siano ai, bi i = 1, 2, . . . t

ai ≥ 0, bi ≥ 0 e sia a =t∑i=1

ai, b =t∑i=1

bi allora

t∑a=1

ai logaibi≥ a log

a

b(8.6.1)

con uguaglianza se e solo se esiste c tale che ai = cbi ∀i

Page 23: Appunti di teoria dell informazione

8. Tipo di una sequenza e l’entropia di distribuzioni discrete 23

Verifica(Lemma). NOTA: nel seguito, consideriamo l’estensione per continuitadella funzione logaritmo:

0 log 0 = 0 0 log00

= 0

Dimostriamo l’affermazione per casi, in base ai valori ai e bi. Vediamo per primoil caso ai > 0, bi > 0, ∀i

Affermazione 8.7 (Affermazione). La disuguaglianza log-sum e valida nel casoai > 0, bi > 0, ∀i

Verifica(Affermazione). Se esistesse un i tale che bi = 0, ai > 0 la disugua-glianza risulterebbe soddisfatta, poiche la somma al membro sinistro di 8.6.1conterrebbe un addendo infinito.Altrimenti, se esistesse almeno un i tale che ai = 0 e bi > 0, immaginiamodi ordinare gli elementi ai in modo che tutti quelli pari a zero abbiamo indicecompreso fra un certo t′ + 1 e t.Indichiamo con a′, b′ la somma dei primi t′ elementi di ai e bi:

a′ =t′∑i=1

ai = a b′ =t′∑i=1

bi = b′ ≤ b

Si ha quindi:

t′∑a=1

ai logaibi

+t∑

a=t′+1

ai logaibi︸ ︷︷ ︸

=0

≥ a′ loga′

b′= a log

a

b′≥ a log

a

b

e quindi la disuguaglianza e soddisfatta.

Affermazione 8.8 (Affermazione). La disuguaglianza log-sum e valida nel casoa = b, ai > 0, bi > 0, ∀i ed e verificata con uguaglianza se e solo se ai = bi ∀i

Verifica(Affermazione). Effettuiamo un cambio di base, passando dal logaritmoin base 2 a quello in base naturale.

log et∑i=1

ai lnaibi≥ log ea ln

a

b

Semplificando le costanti loge, e poiche vale in generale la disuguaglianza ln 1x ≥

1− x, otteniamo:

t∑i=1

ai lnaibi≥

t∑i=1

ai

(1− bi

ai

)=

=t∑i=1

ai −t∑i=1

bi = a− b = 0

Page 24: Appunti di teoria dell informazione

9. Divergenza informazionale 24

Notiamo che l’uguaglianza si ottiene solo se

ai lnaibi≥ ai

(1− bi

ai

)∀i

Affermazione 8.9 (Affermazione). La disuguaglianza log-sum e valida nel casob = ac per qualche c ed e verificata con uguaglianza se e solo se ai = bi

c ∀i

Verifica(Affermazione). Sia c , ba e bi = bi

c

Per la definizione di bi si ha

t∑i=1

bi =b

c= a

Verifichiamo che la disuguaglianza log-sum e verificata:

t∑a=1

ai logaibi

=t∑

a=1

ai logai

bic=

=t∑

a=1

ai logai

bi+

t∑a=1

ai log1c≥

≥ a loga

a+ a log

1c

= a loga

ac=

= a loga

b

Con uguaglianza sse ai = bi ∀i

9 Divergenza informazionale

Per capire meglio il concetto di entropia, introduciamo una nuova misura, chenon e una misura nel senso usuale degli spazi metrici.

Definizione 9.1 (Divergenza informazionale). Si definisce divergenza informa-zionale (o misura di Kullback-Leiber) delle distribuzioni di probabilita P e Q laquantita:

D(P ||Q) ,∑a∈X

P (a) logP (a)Q(a)

Page 25: Appunti di teoria dell informazione

9. Divergenza informazionale 25

La divergenza informazionale esprime quanto due distribuzioni di probabilitasono diverse fra loro.Se x ∈ T np

Qn(x) = 2−nD(P ||Q)Pn(x)

Si noti che:

D(P ||Q) ≥ 0 ∀P,∀QD(P ||Q) = 0 ⇔ P = Q

Perche la divergenza informazionale non e una metrica?

• non e simmetrica, ovvero D(P ||Q) = D(Q||P ) non e vero in generale

• non soddisfa la disuguaglianza triangolare

Utilizziamo la divergenza informazionale per dimostrare che, fra tutte le distri-buzioni su un insieme fissato, l’entropia e massimizzata solo dall’equidistribu-zione.

Proposizione 9.2. L’entropia e massimizzata solo dall’equidistribuzione, ov-vero

H(P ) ≤ H(E) ∀P |X

dove E e l’equidistribuzione

E(x) =1|X |

∀x ∈ X

con uguaglianza se e solo se P = E

Dimostrazione. Per la dimostrazione utilizziamo la misura di Kullback-Leiber.

D(P ||E) =∑x∈X

P (x) logP (x)E(x)

=

=∑x∈X

P (x) log |X | −∑x∈X

P (x) log1

P (x)=

= log |X | −H(P ) ≥ 0

con D(P ||E) = H(E)−H(P )

Page 26: Appunti di teoria dell informazione

10. Codici binari a lunghezza variabile 26

10 Codici binari a lunghezza variabile

Definizione 10.1 (Codice binario a lunghezza variabile). Un codice binarioa lunghezza variabile e una funzione

f :M−→ {0, 1}∗

dove

{0, 1}∗ =∞⋃i=1

{0, 1}i

Nota La definizione di {0, 1}∗ implica che ∅ 6∈ {0, 1}∗L’insieme {0, 1}∗ e infinito numerabile e contiene tutte le stringhe binarie dilunghezza arbitraria ma finita.Nel seguito, con messaggio indicheremo un elemento m ∈ M, mentre conparola codice ci riferiremo ad una stringa binaria f(m), ovvero alla codificadi un qualche messaggio secondo la funzione f

Definizione 10.2 (Estensione per concatenazione). L’estensione per concate-nazione del codice f :M−→ {0, 1}∗ e la funzione f∗ definita come segue:

f∗ :M∗ −→ {0, 1}∗

dove

M∗ =∞⋃i=1

Mi

Ovvero se m ∈M∗ ⇒ m = m1 . . .mt allora

f∗(m) , f(m1)f(m2) . . . f(mt)

Definizione 10.3 (Codice Uniquely Decodable). Si dice che un codice f e UD(Uniquely Decodable) se la sua estensione per concatenazione f∗ e iniettiva

Osservazione 10.4 (f iniettiva, f∗ non iniettiva). Consideriamo la funzionef , che ad ogni numero j associa la stringa binaria lunga j che ha un 1 in ogniposizione.

M = [m] f(j) , 1j = 1 . . . 1︸ ︷︷ ︸j

j ∈ [m]

f iniettiva, mentre f∗ chiaramente non lo e (data l’ambiguita sulla concatena-zione).Il codice g(j) = 1 . . . 1︸ ︷︷ ︸

j

0 e, invece, un codice UD.

Osservazione 10.5. Se f e un codice UD ⇒ ∀x ∈ {0, 1}∗ esiste al piu unm ∈M∗ tale che f(m) = x

Page 27: Appunti di teoria dell informazione

10. Codici binari a lunghezza variabile 27

Alcuni esempi di codici UD sono i codici prefisso, i codici che utilizzano un mar-catore di fine parola e quelli che codificano i messaggi con stringhe di lunghezzafissa.

Definizione 10.6 (Codice prefisso). Un codice f : M −→ {0, 1}∗ si diceprefisso (o prefix-free) se ∀m,m′ ∈M,m 6= m′ si ha che

f(m) 6≺ f(m′)

dove

x ≺ y ⇔ x = x1 . . . xt

y = x1 . . . xtyt+1 . . . yt′

Per comodita, nel seguito considereremo ogni parola il prefisso di se stessa:∀x = x1 . . . xt, x ≺ x

Osservazione 10.7. Ogni codice prefisso e UD

Non e vero il viceversa. Ad esempio, il codice costituito dalle due parole codice0 e 01 non e un codice prefisso (e postfisso), ma e UD. Tuttavia, esistono anchecodici che non sono prefissi o postfissi ma sono UD.

Definizione 10.8 (Lunghezza media di un codice prefisso). Data la distribu-zione di probabilita P sull’insieme M, consideriamo il codice prefisso

f :M−→ {0, 1}∗

La lunghezza media del codice f rispetto a P e data dalla formula:∑m∈M

P (m)|f(m)| (10.8.1)

dove|f(m)| = t se f(m) ∈ {0, 1}t

Dato P |M, ci chiediamo qual’e la minima lunghezza media di un codice fprefisso. Di fatto, l’entropia della distribuzione P limita in modo invalicabile lacompressione dell’informazione. Per dimostrarlo, introduciamo il lemma 10.9.

Lemma 10.9 (Disuguaglianza di Kraft). Se f : M −→ {0, 1}∗ e un codiceprefisso, allora ∑

m∈M2−|f(m)| ≤ 1 (10.9.1)

Dimostrazione: disuguaglianza di Kraft. Prima di iniziare la dimostrazione verae propria, definiamo YL(x) l’insieme delle estensioni di x, che utilizzeremo inseguito.

YL(x) , {z ∈ {0, 1}L t.c. x ≺ z}

Page 28: Appunti di teoria dell informazione

10. Codici binari a lunghezza variabile 28

y︷ ︸︸ ︷MMMM︸ ︷︷ ︸

x

|MMMMM |MMMM

︸ ︷︷ ︸z

Figura 3: caso YL(x) ∩ YL(y) 6= ∅

La cardinalita dell’insieme YL(x) dipende da L e dalla lunghezza di x:

se L < |x| ⇒ YL(x) = ∅se L = |x| ⇒ YL(x) = {x}se L > |x| ⇒ |YL(x)| = 2L−|x|

Affermiamo che per ogni coppia di stringhe x ed y,

YL(x) ∩ YL(y) 6= ∅ ⇐⇒ x ≺ y o viceversa (10.9.2)

Per verificarlo, consideriamo i due casi:i) caso YL(x) ∩ YL(y) 6= ∅Se l’intersezione 10.9.2 non e vuota, esiste almeno una stringa z tale che

z ∈ YL(x) ∩ YL(y)

Poiche z e un’estensione sia di x che di y, la situazione che si ottiene e simile aquella riportata in figura 10.ii) caso YL(x) ∩ YL(y) = ∅Se l’intersezione e vuota, poiche consideriamo le estensioni alla stessa lunghezza,deve verificarsi che x 6≺ y e viceversa.Poiche siamo nell’ipotesi che il codice considerato e prefisso, quest’ultimo e ilnostro caso.Procediamo, quindi, con la dimostrazione del lemma 10.9.Sia f :M−→ {0, 1}∗ un codice prefisso. Indichiamo con L la lunghezza massimadi una parola codice di f :

L , maxm∈M

|f(m)|

Possiamo quindi scrivere la seguente disuguaglianza:

2L = |{0, 1}L| ≥ |⋃

m∈MYL(f(m))| = (10.9.3)

Page 29: Appunti di teoria dell informazione

10. Codici binari a lunghezza variabile 29

In 10.9.3 utilizziamo la disuguaglianza poiche non e detto che l’unione esauriscal’intero spazio

=∑m∈M

|YL(f(m))| = (10.9.4)

Il codice f e prefisso per ipotesi ⇒ gli insiemi YL sono disgiunti

=∑m∈M

2L−|f(m)| (10.9.5)

Ognuno degli insiemi YL ha cardinalita 2L−|f(m)|, poiche |f(m)| bit sono giafissati ed L− |f(m)| possono variare.Dividendo il primo (10.9.3) e l’ultimo (10.9.5) termine della disuguaglianza per2L si ottiene:

1 ≥∑m∈M

2−|f(m)|

ed il lemma 10.9.1 e dimostrato.

Completata questa dimostrazione, siamo pronti a dimostrare come effettivamen-te l’entropia limiti la compressione dell’informazione.

Teorema 10.10. ∀P |M, codice prefisso f :M−→ {0, 1}∗ arbitrario, e validala disuguaglianza ∑

m∈MP (m)|f(m)| ≥ H(P )

Dimostrazione. Vogliamo dimostrare∑m∈M

P (m)|f(m)| −H(P ) ≥ 0

Usando la definizione di entropia, il termine puo essere riscritto come:

∑m∈M

P (m)|f(m)| −∑m∈M

P (m) log1

P (m)=

=∑m∈M

P (m)(log 2|f(m)| + logP (m)) =

=∑m∈M

P (m) logP (m)

2−|f(m)| ≥

applicando in sequenza la disuguaglianza Log-Sum e la disuguaglianza di Kraft

( ∑m∈M

P (m)

)(log

∑m∈M P (m)∑m∈M 2−|f(m)|

)=

= 1 · log1∑

m∈M 2−|f(m)| ≥ log11

= 0

Page 30: Appunti di teoria dell informazione

10. Codici binari a lunghezza variabile 30

Dimostrando che il termine da cui siamo partiti e non negativo, abbiamo dimo-strato la tesi.Da notare: l’uguaglianza si ha per P (m) = 2−|f(m)|,∀m ∈M.

Teorema 10.11 (Kraft). Se l : M→ N e una funzione che ad un insieme diparole associa una determinata lunghezza delle parole e vale∑

m∈M2−l(m) ≤ 1

allora ∃ un codice prefisso f :M→ {0, 1}∗ tale che |f(m)| = l(m) ∀m ∈M

Dimostrare questo teorema ci permette di affermare che la disuguaglianza diKraft e una condizione necessaria e sufficiente affinche esista un codiceprefisso con lunghezza delle parole determinata dalla funzione l.

Dimostrazione. Ordiniamo i messaggi per ordine crescente delle lunghezze:

l(m1) ≤ . . . ≤ l(mt), t = |M|

Denotiamo L = l(mt) (il messaggio di lunghezza massima). Ora introduciamoun algoritmo greedy che rispettando le specifiche del teorema, ci permette dicostruire il nostro codice prefisso:

1◦ passo) Sia x1 ∈ {0, 1}L arbitrario. Definiamo f(m1) , x1|l(m1), ovvero ilprefisso di x1 lungo l(m1).

S-esimo passo) Dopo aver costruito f(m1) . . . f(mS−1) parole codice, costruia-mo l’s-esima. Sia xs ∈ {0, 1}L −

⋃S−1i=1 YL(f(mi)) arbitraria, f(xs) ,

xs|l(ms) , ovvero tronchiamo xs per aver il prefisso di lunghezza l(ms).

Descritto l’algoritmo, e necessario ora dimostrare che questo termina sempre,producendo il codice prefisso.

Affermazione 10.12. La procedura non si blocca.

Dimostrazione. Per assurdo, supponiamo avvenga il contrario: l’r-esimo passo,r ≤ t non e eseguibile. Cio significa che:

{0, 1}L = ∪r−1i=1YL(f(mi))⇒ 2L = |

r−1⋃i=1

YL(f(mi))| ≤r−1∑i=1

2L−l(mi)

⇒ 1 ≤r−1∑i=1

2−l(mi) <t∑i=1

2−l(mi) ≤ 1 ⇒ contraddizione

Non rimane da dimostrare che il codice cosı costruito e prefisso, ovvero:

Page 31: Appunti di teoria dell informazione

10. Codici binari a lunghezza variabile 31

Affermazione 10.13. Gli insiemi YL(f(mi)) non si contengono (sono disgiun-ti)

Dimostrazione. E’ necessario valutare 2 casi:

1. La seguente relazione

YL(f(ms)) 6⊃ YL(f(mi)) ∀i < s

e valida perche le lunghezze sono state ordinate, l(ms) ≥ l(mi) ∀i < s.Da qui segue che

|YL(f(ms))| ≤ |YL(f(mi))| ∀i < s

2. La relazione inversa

YL(f(ms)) 6⊆ YL(f(mi)) ∀i < s

e anche vera, perche xs ∈ YL(f(ms)), ma xs 6∈⋃S−1i=1 YL(f(mi))

I due casi appena visti dimostrano l’affermazione.

La tesi e ora dimostrata.Nota: un codice prefisso e massimale se soddisfa Kraft con uguaglianza.

Osservazione 10.14. Un codice e massimale se non e contenuto in un altro(piu grande).Nota: esistono codici prefisso infiniti (qualcuno e stato visto anche in preceden-za).

La seguente proposizione mostra il limite della lunghezza minima del codiceprefisso.

Proposizione 10.15. ∀P |M ∃f :M→ {0, 1}∗ codice prefisso tale che∑m∈M

P (m)|f(m)| < H(P ) + 1

Dimostrazione. Sia l :M→ N , definiamo

l(m) , dlog1

P (m)e ∀m ∈M

Poiche vale chedqe < q + 1 ∀q ∈ R

possiamo verificare la disuguaglianza

Page 32: Appunti di teoria dell informazione

10. Codici binari a lunghezza variabile 32

∑m∈M

P (m)l(m) =∑m∈M

P (m)dlog1

P (m)e <

<∑m∈M

P (m)(log1

P (m)+ 1) = H(P ) + 1

Dimostriamo, inoltre, che il codice cosı costruito e prefisso (thm di Kraft [10.11]): ∑

m∈M2−dlog

1P (m) e ≤

∑m∈M

2− log 1P (m) =

∑m∈M

2logP (m) =∑m∈M

P (m) = 1

Osservazione 10.16. Dagli ultimi teoremi e proposizioni si puo notare comel’entropia non puo essere raggiunta se la distribuzione P |M non e formata dapotenze di 2.

Mostriamo ora un altro risultato sui codici UD, il lemma di McMillan.

Lemma 10.17 (McMillan). Se f :M−→ {0, 1}∗ e UD ⇒∑m∈M

2−|f(m)| ≤ 1

Corollario 10.18 (tramite la sufficienza di Kraft, 10.9). Per ogni codice f :M−→ {0, 1}∗ UD esiste un codice prefisso f :M−→ {0, 1}∗ tale che |f(m)| =|f(m)|, ∀m ∈M

Dimostrazione(lemma di McMillan). Definiamo

q ,∑m∈M

2−|f(m)|

Se non fosse minore di uno, le sue potenze andrebbero a infinito. Vediamo chenon e cosı. Sia n arbitrario,

Page 33: Appunti di teoria dell informazione

10. Codici binari a lunghezza variabile 33

qn =

( ∑m∈M

2−|f(m)|

)n=∑m∈M

2−|f(m)| . . .∑m∈M

2−|f(m)|

︸ ︷︷ ︸n fattori

= (10.18.1)

Rinominiamo la variabile m in ogni fattore con mi

=∑

m1∈M2−|f(m1)| . . .

∑mn∈M

2−|f(mn)| =

=∑

m1∈M

∑m2∈M

. . .∑

mn∈M2−|f(m1)|2−|f(m2)| . . . 2−|f(mn)| =

=∑

m∈Mn

2−Pni=0 |f(mi)| =

Ricordiamo che m = m1 . . .mn ∈Mn

f∗(m) = f(m1)f(m2) . . . f(mn)

|f∗(m)| =n∑i=0

|f(mi)|

=∑

m∈Mn

2−|f∗(m)|

Raggruppando le parole codice concatenate in base alla lunghezza della parolacodice complessiva si ottiene:

nL∑i=1

∑m∈Mm

|f∗(m)|=i

2−|f∗(m)|

doveL = max

m∈M|f(m)|

Poiche la sommatoria 10 e finita e tutti i suoi termini sono positivi, possiamopermutare i termini della sommatoria. Nella sommatoria interna, |f∗(m)| = i.Poiche f∗ e iniettiva, la sommatoria interna vale al piu 2−i ∗ 2i = 1

Page 34: Appunti di teoria dell informazione

11. Entropia come limite della compressione 34

Possiamo quindi scrivere:

nL∑i=1

∑m∈Mm

|f∗(m)|=i

2−|f∗(m)| =

=nL∑i=1

|{m t.c. m ∈Mn e |f∗(m)| = i}|︸ ︷︷ ︸f∗ iniettiva ⇒≤2i

2−i ≤

≤nL∑i=1

2i · 2−i =

=nL∑i=1

1 = nL

Concludiamo quindi affermando che

qn ≤ nL ∀n

Abbiamo mostrato che qn cresce al piu linearmente con n, ovvero che q ≤ 1Infatti, vale che

q ≤ n√nn√L con n

√n→ 1 e n

√L→ 1

Nota Nel caso q = 1, la dimostrazione proposta puo essere utilizzata per dimo-strare la disuguaglianza di Kraft [10.9]

11 Entropia come limite della compressione

Consideriamo una sequenza X1X2 . . . Xn di variabili aleatorie.Il comportamento complessivo della sequenza dipende da:

• la distribuzione di probabilita delle singole variabili aleatorie

• il grado di indipendenza delle variabili aleatorie

Definizione 11.1 (Entropia di una variabile aleatoria). Data una variabilealeatoria X che assume valori in X , X ∈ X , definiamo entropia di X lafunzione:

H(X) ,∑x∈X

Pr{X = x} log1

Pr{X = x}= H(PX)

dove con PX indichiamo la distribuzione di probabilita della variabile aleatoriaX.

Page 35: Appunti di teoria dell informazione

11. Entropia come limite della compressione 35

Definizione 11.2 (Entropia congiunta di due variabili aleatorie). Date duevariabili aleatorie X,Y che assumono valori X ∈ X , Y ∈ Y, definiamo entropiacongiunta di (X,Y ) la funzione:

H(X,Y ) , H((X,Y )) ovvero

H(X,Y ) =∑x∈X

∑y∈Y

Pr{X = x, Y = y} log1

Pr{X = x, Y = y}

In modo analogo si definisce l’entropia congiunta di un qualsiasi numero (finito)di variabili aleatorie.

Definizione 11.3 (Entropia condizionata). Date due variabili aleatorie X,Y ,definiamo entropia condizionata di X dato Y la funzione:

H(Y |X) , H(X,Y )−H(X)

In senso intuitivo, l’entropia condizionata di Y dato X misura la quantitadi informazione fornita dalla variabile aleatoria Y , considerando che X e giaconosciuta.

Affermazione 11.4. Date due variabili aleatorie X,Y l’entropia condizionatadi Y dato X non e mai negativa.

H(Y |X) ≥ 0 ovvero

H(X,Y ) ≥ H(X)

Dimostrazione.

H(Y |X) = H(X,Y )−H(X) =

=∑x∈X

∑y∈Y

Pr{X = x, Y = y} log1

Pr{X = x, Y = y}+

−∑x∈X

Pr{X = x} log1

Pr{X = x}=

=∑x∈X

∑y∈Y

Pr{X = x, Y = y} log1

Pr{X = x, Y = y}+

−∑x∈X

∑y∈Y

Pr{X = x, Y = y} log1

Pr{X = x}=

=∑x∈X

∑y∈Y

Pr{X = x, Y = y} log1

Pr{X=x,Y=y}Pr{X=x}

Poiche Pr{X = x, Y = y} = Pr{X = x}Pr{Y = y|X = x}, possiamo scrivere:∑x∈X

Pr{X = x}∑y∈Y

Pr{Y = y|X = x} log1

Pr{Y = y|X = x}≥ 0

Page 36: Appunti di teoria dell informazione

11. Entropia come limite della compressione 36

Affermazione 11.5 (Chain rule). Date n variabili aleatorie X1 . . . Xn:

H(X1 . . . Xn) =n∑i=2

H(Xi|X1 . . . Xi−1) +H(X1)

Verifica.

H(X1 . . . Xn) = H((X1 . . . Xn−1), Xn) = H(Xn|X1 . . . Xn−1) +H(X1 . . . Xn−1)

Iterando si arriva all’affermazione

Consideriamo la differenza

H(Y )−H(Y |X) (11.5.1)

in analogia con la misura

µ(B)− µ(B −A) = µ(A ∩B) (11.5.2)

La differenza 11.5.2 ha la misura di un insieme, quindi e non negativa. L’analogiasuggerisce che anche la differenza 11.5.1 sia non negativa. Per lo stesso motivo,ci aspettiamo che 11.5.1 sia simmetrica (scambiando il ruolo di X e Y ).

Affermazione 11.6. La misura H(Y )−H(Y |X) e

i) simmetrica

ii) non negativa

Verifica. Vediamo prima di tutto che l’espressione e simmetrica:

H(Y )−H(Y |X) =∑x∈X

∑y∈Y

Pr{X = x, Y = y} log1

Pr{Y = y}+ (11.6.1)

−∑x∈X

∑y∈Y

Pr{X = x, Y = y} log1

Pr{Y = y|X = x}=

(11.6.2)

=∑x∈X

∑y∈Y

Pr{X = x, Y = y} logPr{Y = y|X = x}

Pr{Y = y}=

(11.6.3)

=∑x∈X

∑y∈Y

Pr{X = x, Y = y} logPr{X = x, Y = y}

Pr{X = x}Pr{Y = y}(11.6.4)

Dall’ultima linea si vede chiaramente che l’espressione e simmetrica.

Page 37: Appunti di teoria dell informazione

12. Mutua Informazione 37

Per verificare che l’espressione H(Y )−H(Y |X) e anche non negativa, possiamoutilizzare la disuguaglianza log-sum (8.6).Definiamo:

PXY = P{X = x, Y = y}PX ∗ PY = P{X = x}P{Y = y}

L’espressione 11.6.4 puo essere riscritta come:

∑(x,y)∈(X ,Y)

PXY (x, y) logPXY (x, y)

PX ∗ PY (x, y)=

= D(PXY ||PX ∗ PY ) ≥ 0

12 Mutua Informazione

Definizione 12.1 (Mutua informazione). La mutua informazione di X e Y edefinita come:

I(Y ∧X) , H(Y )−H(Y |X)

I(Y ∧X) ≥ 0 ed uguale a 0 se X e Y sono indipendenti.

Proposizione 12.2.H(X) +H(Y ) ≥ H(X,Y )

Proposizione 12.3.

I(Y ∧X) = H(Y )−H(Y |X) == H(Y )− [H(X,Y )−H(X)] == H(X) +H(Y )−H(X,Y ) ≥ 0

Introduciamo ora la mutua informazione di due variabili aleatorie condiziona-te da una terza variabile aleatoria affermando cosi che l’indipendenza non enecessariamente una relazione tra coppie.

I(Y ∧X|Z) , H(X|Z) +H(Y |Z)−H(X,Y |Z)

Proposizione 12.4. Non possibile stabilire a priori quale sia maggiore tra lamutua informazione e la mutua informazione congiunta.

(I(X ∧ Y ) ≶ I(X ∧ Y |Z)

Page 38: Appunti di teoria dell informazione

13. Sorgente dell’informazione 38

Dimostrazione: I(X ∧ Y ) ≥ I(X ∧ Y |Z). Siano X, Y e Z tre variabile aleatorietalmente correlate da essere uguali (X ≡ Y ≡ Z) e sia X non degenere 4

I(X ∧ Y ) = H(X)−H(X|X) ≥ 0I(X ∧X|X) = H(X|X) +H(X|X)−H(X,X|X) ≤ H(X|X) = 0

Dimostrazione: I(X ∧ Y ) ≤ I(X ∧ Y |Z). Siano (X, Y) uniformemente distri-buite su {0,1}x{0,1} e sia Z = X ⊗ Y .Otteniamo:

I(X ∧ Y ) = 0

poiche X e Y sono indipendenti.

I(X ∧ Y |Z) = H(X|Z)−H(X|Y Z) = H(X|Z) = H(X) = 1

1) dove H(X|Y Z) = 0 perche una volta che conosco due delle tre v.a., la terzae univocamente determinata;2) eH(X|Z) = H(X) perche X e Z sono indipendenti, essendo la loro probabilitacongiunta equidistribuita.

Osservazione: Date n v.a. dove in ogni sottoinsieme di n-1 v.a. quest’ultime sonoindipendenti non vuol dire che le n variabili saranno indipendenti

13 Sorgente dell’informazione

Definizione 13.1 (Sorgente dell’informazione). Dato un insieme alfabeto X ,|X | < ∞, definiamo sorgente dell’informazione una sequenza X1X2 . . . Xn divariabili aleatorie, tale che Xi ∈ X , ∀1 ≤ i ≤ n

Definizione 13.2 (Tasso di entropia di una sorgente). Sia {Xi}∞i=1 una sorgentedell’informazione. Definiamo il tasso di entropia della sorgente (se esiste!) comeil limite:

limn→∞

1nH(X1X2 . . . Xn)

Vogliamo dare una condizione necessaria per l’esistenza di questo limite. Perfarlo, e necessario introdurre il concetto di stazionarieta.

Definizione 13.3 (Sorgente stazionaria). Una sorgente {Xi}∞i=1 e detta stazio-naria se

Pr{X1 . . . Xn = x1 . . . xn} = Pr{X1+k . . . Xn+k = x1 . . . xn}4Una variabile aleatoria e degenere quando la sua distribuzione si concentra in un unico

punto.

Page 39: Appunti di teoria dell informazione

13. Sorgente dell’informazione 39

Un processo stazionario e un processo stocastico in cui la funzione di probabilitadi una variabile aleatoria non cambia ne nel tempo ne nello spazio.In riferimento alla definizione 13.3, la probabilita Pr e la stessa ∀n, ∀k, ∀x ∈ Xn.La seguente proposizione afferma che la stazionarieta e una condizione sufficien-te, ma non necessaria, affinche esista il limite 13.2.

Proposizione 13.4. Se una sorgente {Xi}∞i=1 e stazionaria, allora esiste illimite

limn→∞

1nH(X1 . . . Xn)

Dimostrazione. Nel seguito dimostriamo un’affermazione un po’ piu forte diquella iniziale, ovvero che

Affermazione 13.5. La sequenza 1nH(X1 . . . Xn) e monotona decrescente (ad

un valore finito).

Questa affermazione si puo interpretare in modo intuitivo nel senso che leosservazioni ripetute sono sempre meno sorprendenti.

1nH(X1 . . . Xn) ≤ 1

n− 1H(X1 . . . Xn−1) ∀n

(n− 1)H(X1 . . . Xn) ≤ nH(X1 . . . Xn−1)

Per dimostrare l’affermazione 13.5 e sufficiente dimostrare quest’ultima disu-guaglianza.

(n− 1)H(X1 . . . Xn) ≤ nH(X1 . . . Xn−1)

Ricordando che vale H(X,Y ) = H(Y |X) +H(X), possiamo riscrivere l’espres-sione H(X1 . . . Xn) come H(X1 . . . Xn−1) +H(Xn|X1 . . . Xn−1):

(n− 1)(H(X1 . . . Xn−1) +H(Xn|X1 . . . Xn−1)) ≤ nH(X1 . . . Xn−1)

E semplificando:

(n− 1)H(Xn|X1 . . . Xn−1) ≤ H(X1 . . . Xn−1) ∀n

Applicando la regola Chain rule (11.5) possiamo scrivere:

H(X1 . . . Xn−1) = H(X1) +H(X2|X1) + . . .+H(Xn−1|Xn−2 . . . X1) =

Per la stazionarieta della sorgente si ha:

= H(Xn) +H(Xn|Xn−1) + . . .+H(Xn|Xn−1 . . . X2) ≥

Possiamo scrivere la maggiorazione poiche, aggiungendo altre variabili, l’entro-pia condizionata non puo che diminuire:

Page 40: Appunti di teoria dell informazione

14. I Codici Correttori 40

≥ H(Xn|X(n− 1) . . . X1) + . . .+H(Xn|Xn−1 . . . X1) == (n− 1)H(Xn|X(n− 1) . . . X1)

14 I Codici Correttori

‘Il problema fondamentale della comunicazione e quello di riprodurre a unaestremita esattamente o approssimativamente il messaggio selezionato all’altraestremita. [...] L’aspetto significante e che l’effettivo messaggio sia uno sele-zionato da un insieme di messaggi possibili. Il sistema deve essere progettatoper funzionare con ogni possibile selezione, e non semplicemente per quell’unicache verra effettivamente scelta, dal momento che essa non e nota in fase diprogettazione.’

Claude Shannon

Per studiare il problema della comunicazione tra una sorgente ed una destinazio-ne, utilizzando un canale affetto da perturbazioni ovvero soggetto ad alterazionistocastiche, e necessario creare un modello semplificato di comunicazione.

Figura 4: Modello per la comunicazione

In figura 4 e illustrato il modello in tutte le sue componenti:

• i messaggi da inviare sono codificati in modo da comprimere il piu possibilel’informazione;

• vengono utilizzate alcune tecniche che introducono ‘nuove’ informazioniche permettono di recuperare eventuali errori generati durante la comuni-cazione;

• il destinatario della comunicazione deve effettuare alcune trasformazionial fine di recuperare eventuali errori verificatisi durante la comunicazione.

Il modello descritto e semplificato; non e, difatti, possibile inviare messaggi daldestinatario alla sorgente. Illustreremo successivamente tale situazione. Studia-mo il problema della correzione degli errori limitandoci all’analisi di stringhe dilunghezza fissata.

Definizione 14.1. Un codice correttore di blocco di lunghezza n e un insiemeC ⊆ {0, 1}n.

Page 41: Appunti di teoria dell informazione

14. I Codici Correttori 41

Definizione 14.2. La distanza di un codice correttore C e

dH(C) = min{x,y}∈(C2)

dH(x, y) (14.2.1)

L’obiettivo che ci poniamo e quello di massimizzare la cardinalita di un genericocodice correttore di blocco C di lunghezza n nel quale le stringhe hanno unadistanza almeno d. Indichiamo con M(n, d) tale grandezza. Formalmente:

M(n, d) = maxC⊆{0,1}n

dH(C)≥d

|C| (14.2.2)

Osservazione 14.3. Se C ha distanza minima d allora il codice correttore puoessere utilizzato per correggere un numero di errori massimo pari a bd−1

2 c.

Immaginiamo che si siano verificati k errori durante la comunicazione dellastringa x e limitiamoci a studiare il caso in cui k ≤ bd−1

2 c. Cosa possiamo diredella stringa y che viene ricevuta dal destinatario?

1. Se y = x allora la stringa ricevuta non ha subito nessuna alterazione. Sottole nostre ipotesi (k ≤ bd−1

2 c) infatti non e possibile che si siano verificatiun numero di errori in grado di trasformare la stringa in un’altra stringadi C poiche la distanza minima tra due stringhe e maggiore di d.

2. Se la stringa y /∈ C allora y ∈ SH(x, bd−12 c) e dunque possiamo associare

ad y la stringa x.

Il secondo punto apparira piu chiaro dopo aver dimostrato la seguente osserva-zione.

Osservazione 14.4. Se dH(C) ≥ d =⇒ SH(x, d−12 )∩SH(y, d−1

2 ) = ∅, ∀{x, y} ∈(C2

).

Dimostrazione. (Facoltativa)Siano x e y due stringhe del codice C. Supponiamo, per assurdo, che esista unastringa z ∈ {0, 1}n che appartenga all’intersezione delle sfere di centro x e y.Applicando la disuguaglianza triangolare ottengo

dH(x, y) ≤ dH(x, z) + dH(z, y) ≤ d− 12

+d− 1

2= d− 1

Ma sappiamo che la distanza minima tra due stringhe e d dunque siamo giuntiad un assurdo.

Rifocalizziamo la nostra attenzione sullo studio del termine M(n, d). Data lacomplessita dello studio della grandezza M(n, d) in tutte le sue variabili ci li-miteremo a studiare il caso in cui la minima distanza tra due stringhe nel co-dice cresce linearmente con la lunghezza delle stringhe. Tale comportamento siottiene fissando un generico δ ∈ [0, 1] e studiando M(n, nδ).

Page 42: Appunti di teoria dell informazione

14. I Codici Correttori 42

Come vedremo piu avanti M(n, nδ) ha una crescita esponenziale; risulta dunquenaturale effettuare una normalizzazione:

R(δ)4= limn→∞

1nlog2M(n, nδ) (14.4.1)

R(δ) rappresenta la frazione di ogni bit destinata al mantenimento dell’infor-mazione; la restante parte e necessaria per la correzione degli errori. Utilizzare,dunque, n bit per rappresentarne nδ.

Teorema 14.5 (Limitazione Inferiore di Gilbert-Varshamov).

R(δ) ≥ 1− h(δ), δ ≤ 12

Dimostrazione. Per la dimostrazione viene utilizzato un algoritmo greedy cheseleziona delle stringhe a distanza di Hamming maggiore o uguale a d.

Passo 1 Fisso n e d e seleziono una stringa x(1) ∈ {0, 1}n.

Passo t Scelgo la stringa xt ∈ {0, 1}n − ∪t−1i=0SH(x(i), d− 1) se e ancora possibile.

Sia C ⊆ {0, 1}n l’insieme (finito) costruito dall’algoritmo. E’ garantito, per co-struzione che dH(C) ≥ d. L’algoritmo si blocca dopo m passi perche si verificache

{0, 1}n −m⋃i=1

SH(x(i), d− 1) = ∅

Le sfere scelte hanno la proprieta che il centro di una non e contenuto nell’altra.Per union-bound abbiamo che

2n = |{0, 1}n| ≤m∑i=1

|SH(x(i), d− 1)| ≤ m2nh(d−1n ) ≤ m2nh(

dn )

La penultima disuguaglianza risulta da un lemma visto precedentemente e daδ ≤ 1

2 . Dalle disuguaglianze risulta che

logm ≥ n(1− h(d

n)) (ricordiamo che d = nδ e M(n, d) = m )

Pertanto:

R(δ)4= limn→∞

1nlog2M(n, nδ) ≥ lim

n→∞

1nn(1− h(

n)) = lim

n→∞(1− h(δ)) = 1− h(δ)

Osservazione 14.6. L’algoritmo appena visto produce una copertura dello spa-zio attraverso sfere di Hamming non disgiunte che non si contengono.

Ora presentiamo una limitazione superiore del limite per qualsiasi valore di δ.

Page 43: Appunti di teoria dell informazione

14. I Codici Correttori 43

Proposizione 14.7. Limitazione superiore di Hamming

R(δ) ≤ 1− h(δ

2) δ ∈ [0, 1]

Dimostrazione.

dH(x, y) ≥ d⇒ SH(x,d− 1

2) ∩ SH(y,

d− 12

) = ∅

Consideriamo C ottimale: |C| = M(n, d), dH(C) ≥ d. Tutte le sfere delle stringhein C sono disgiunte, pertanto {0, 1}n ⊇

⋃x∈C SH(x, d−1

2 ). Da cio, segue che:

2n ≥ |⋃x∈C

SH(x,d− 1

2)| disgiunte=

∑x∈C|SH(x,

d− 12

)| = |C| · |SH(0,d− 1

2)| ≥

≥ |C| · |SH(0, bd− 12c)| ≥ |C| · 2nh(

b d−12 cn )

n+ 1

⇒ M(n, d) ≤ 2n(n+ 1)

2nh(b d−1

2 cn )

Poiched− 3

2≤ bd− 1

2c

si ha:

h(d

2n− 3

2n) ≤ h(

bd−12 cn

)

e quindi:

M(n, nδ) ≤ (n+ 1) · 2n·[1−h( d2n− 32n )] = (n+ 1) · 2n·[1−h( δ2− 3

2n )]

⇒ 1nlog2M(n, nδ) ≤ log (n+ 1)

n+ 1− h(

δ

2− 3

2n)

⇒ R(δ)4= limn→∞

1nlog2M(n, nδ) ≤

≤ limn→∞

log (n+ 1)n

+ limn→∞

1− h(δ

2− 3

2n) = 1− h(

δ

2)

Nella proposizione successiva vedremo quanto sia effettivamente poco accuratala limitazione di Hamming.

Proposizione 14.8. Limitazione di Plotkin

R(δ) = 0 δ >12

Page 44: Appunti di teoria dell informazione

15. Codici lineari 44

Dimostrazione. Sia C ⊆ {0, 1}n ottimale con |C| = M(n, d) = M dH(C) ≥ d.Prendendo in considerazione la distanza media, si ha che:

d ≤ dH(C) ≤

∑{x,y}∈(C2) dH(x, y)(|C|

2

) =2

M(M − 1)·

∑{x,y}∈(C2)

n∑i=1

dH(xi, yi) =

=2

M(M − 1)·n∑i=1

∑{x,y}∈(C2)

dH(xi, yi) =

Nella sommatoria interna, il contributo viene dato da tutte le coppie di stringheche differiscono nella posizione i. Definendo Mi = |{x t.c. x ∈ C e xi = 1}|, vie-ne creata una bipartizione dell’insieme per cui |M |−Mi = |{x t.c. x ∈ C e xi =0}|. A questo punto e molto semplice calcolare le differenze utili, quindi:

=2

M(M − 1)·n∑i=1

Mi(M −Mi) ≤

(disuguaglianza fra media geometrica e aritmetica) ≤ 2M(M − 1)

n

(M

2

)2

Pertanto:

d ≤ n

2M

M − 1⇒ d

n≤ 1

2M

M − 1⇒ se M →∞ δ =

d

n≤ 1

2

Inoltre, se δ > 12 allora M e finito e, banalmente, abbiamo:

R(δ)4= limn→∞

1nlog2M(n, nδ) = 0

15 Codici lineari

Definizione 15.1 (Codice lineare). Un insieme C ⊆ {0, 1}n e un codicelineare se:

1. non e vuoto ⇔ C 6= ∅

2. e linearemente chiuso ⇔ ∀(x, y) ∈ C × C x⊕ y ∈ C

Da cui segue che 0 ∈ C.

Osservazione 15.2. {0, 1}ne uno spazio lineare n-dimensionale sul campo fi-nito GF (2) (l’aritmetica modulo 2).Un codice C e lineare se e solo se C e un sottospazio lineare di {0, 1}n.

Page 45: Appunti di teoria dell informazione

15. Codici lineari 45

Definizione 15.3 (Peso di una stringa). Sia x una stringa di {0, 1}n. Sidefinisce allora il peso della stringa x, w(x) come:

w(x) ,n∑i=1

xi = |{i t.c. xi = 1}|

Definizione 15.4 (Peso minimo di un insieme). Il peso minimo di un insiemee il peso minimo delle stringhe appartenenti all’insieme:

w(C) , minx∈C/{0}

w(x)

Affermazione 15.5. Se C e lineare, w(C) = dH(C)

Verifica. L’affermazione dH(C) ≤ w(C) e vera poiche:

dH(C) = min{x,y}∈(C2)

dH(x, y) ≤ miny∈C/{0}

dH(0, y) = miny∈C/{0}

w(y) , w(C)

La disuguaglianza vale perche se considero un insieme piu ristretto dell’insiemedi partenza, il minimo su tale insieme non puo che aumentare.

Verifichiamo l’affermazione inversa: dH(C) ≥ w(C).Siano {x, y} ∈

(C2

)tali che dH(x, y) = minx′,y′∈C dH(x′, y′)

Si ha quindi

dH(x, y) = dH(x⊕ x, y ⊕ x) = dH(0, y ⊕ x) = w(y ⊕ x) ≥ w(C)

I piu semplici codici lineari sono i codici controllori di parita.

Definizione 15.6 (Codice controllore di parita). Un codice controllore di paritae un codice lineare del tipo

C0 = {x tale chen∑i=1

xi = 0} |C0| = 2n−1 (l’ultimo bit fissa la parita)

dove la sommatoria si intende modulo 2.

Un codice di questo tipo rileva l’esistenza di un unico errore o, ugualmente, diun numero dispari di bit alterati.

dH(C) = 2

Ricordando che un codice a distanza d e in grado di correggere bd−12 c errori,

otteniamo che il codice parity-check non puo essere utilizzato per correggereerrori.

Page 46: Appunti di teoria dell informazione

16. Codici di Hamming 46

Osservazione 15.7. Attenzione! Si potrebbe pensare che una definizione deltipo

C1 = {x tale chen∑i=1

xi = 1} |C1| = 2n−1

sia equivalente alla 15.6.Questo non e vero, poiche 0 6∈ C1 e quindi C1 non e un sottospazio lineare

Definizione 15.8 (Nucleo di una matrice). Sia H una matrice n×m. Il nucleodi H e definito come:

kerH = {x tale che xH = 0}

Il nucleo di una matrice e uno spazio linearmente chiuso.

Affermazione 15.9 (Affermazione). ∀C ⊆ {0, 1}n sottospazio lineare ∃H taleche C = kerH

16 Codici di Hamming

Sia C ⊆ {0, 1}n un codice correttore in grado di correggere un solo errore.La distanza del codice Ce dH(C) ≥ 2d+ 1 = 3.Vogliamo determinare la massima cardinalita di un codice Cdi questo tipo,ovvero M(n, 3).Usando la disuguaglianza di Hamming (si veda 14.7), possiamo affermare che:

M(n, 3) ≤ |{0, 1}n|

|SH(0, 1)|=

2n

n+ 1

Teorema 16.1 (Teorema di Hamming). Sia n+ 1 = 2m per qualche m. Allora

M(n, 3) =2n

n+ 1

Dimostrazione. La limitazione

M(n, 3) ≤ 2n

n+ 1

segue dalla disuguaglianza di Hamming (14.7), poiche |SH(0, 1)| = n+ 1.Resta da dimostrare che

M(n, 3) ≥ 2n

n+ 1La dimostrazione e costruttiva; verifichiamo che esiste un codice C lineare con|C| = 2n

n+1

Sia H una matrice n×m, le cui righe sono tutti i vettori dello spazio {0, 1}m−{0}.Definiamo, quindi, il codice lineare Ccome segue:

C , kerH = {x ∈ {0, 1}n tale che xH = 0}

Page 47: Appunti di teoria dell informazione

16. Codici di Hamming 47

Affermazione 16.2 (Affermazione).

|C| = 2n

n+ 1dH(C) = 3

1. Ce linearmente chiuso

2. dH(C) = 3

3. |C| ≥ 2n

n+1

1) Ce linearmente chiuso

Verifica. Siano x′, x′′ due stringhe appartenenti a C, ovvero

x′H = 0 x′′H = 0

Affinche Csia linearmente chiuso, deve valere che x⊕ C = C ∀x ∈ C.

(x′ ⊕ x′′)H = x′H ⊕ x′′H = 0⊕ 0 ∈ C

2) Poiche Ce linearmente chiuso, per verificare che la distanza e 3 ci bastaverificare che il minimo peso e 3 (si veda 15.5).

Verifica. Sia x di peso 1.Dobbiamo mostrare che ∀i, e(i) /∈ kerH, ovvero che e(i)H 6= 0.Ma il risultato della moltiplicazione e(i)H e l’i-esima riga di H e, per definizione,0 /∈ H.Questo implica che w(C) ≥ 2.Se x e di peso 2, allora esistono i, j con i 6= j e tali che x = e(i) ⊕ e(j)Dobbiamo dimostrare che

(e(i) ⊕ e(j))H 6= 0 ∀i 6= j

Due stringhe in XOR si annullano se e solo se sono uguali:e(i)H ⊕ e(j)H = 0 solo se e(i) = e(j), ma i 6= j, quindi (e(i) ⊕ e(j))H 6= 0.Abbiamo quindi dimostrato che w(C) ≥ 3

3) Basta mostrare che ∀y ∈ {0, 1}n ∃x ∈ C tale che y ∈ SH(x, 1)

Verifica. Nel caso che yH = 0 allora y ∈ C e banalmente y ∈ SH(y, 1). Nel casoche yH 6= 0 allora yH e una riga della matrice H, supponiamo che sia la i-esimariga. Allora vale yH = e(i)H, dove e(i) e la stringa binaria con tutti 0 trannenella coordinata i. Visto che la somma modulo due di una stringa binaria conse stessa e uguale a 0, yH ⊕ e(i)H = 0, possiamo affermare che y ⊕ e(i) ∈ C equindi concludere la verifica affermando che y ∈ SH(y ⊕ e(i), 1).

Page 48: Appunti di teoria dell informazione

17. Teorema di Shannon 48

17 Teorema di Shannon

In questa sezione ci occupiamo del problema di codificare la sorgente dei messag-gi limitando la probabilita degli errori di comunicazione. In particolare studiamoil caso in cui il canale di comunicazione e un canale DMC, ovvero un canale di-screto, stazionario e privo di memoria, dove per stazionario intendiamo che lecaratteristiche del canale non cambiano nel tempo e per privo di memoria inten-diamo che il canale non viene influenzato dai messaggi che vengono fatti passareattraverso di esso.Per modelizzare un canale DMC utiliziamo una matrice stocastica W a cui adogni riga associamo un elemento dell’alfabeto X di input e ad ogni colonnaassociamo un elemento dell’alfabeto Y di output (entrambi finiti). In questomodo la generica coordinata {x, y} di W rappresenta la probabilita che, datox ∈ X in input, appaia y ∈ Y dall’altro lato del canale. Questo modello puoessere inoltre esteso per descrivere l’invio sul canale, in un generico intervallo ditempo lungo n, di stringhe x ∈ Xn. Questo porta alla seguente definizione diDMC:

Definizione 17.1 (Canale DMC). Un canale DMC e un insieme {Wn : Xn →Yn, n ∈ N} di matrici stocastiche di cui la generica matrice Wn rappresentail disturbo del canale sull’invio di stringhe di messaggi lunghe n, ed e definitacome:

Wn(y|x) ,n∏i=1

W (yi|xi)

dove W e la matrice5 che rappresenta il disturbo del canale sull’invio di singolimessaggi.

Nel contesto in cui ci troviamo, una codifica e definita nel seguente modo:

Definizione 17.2 (Codifica Canale). Una codifica canale e una coppia (Cn, φn)dove Cn ⊆ Xn e φn : Yn → Cn dove, Cn rappresenta l’insieme di messaggi chesi desidera comunicare, mentre φn e la funzione di decodifica che associa ad ognistringa di output del canale una rispettiva stringa in Cn.

La difficolta principale che si deve affrontare se si vuole utilizzare un canaledisturbato e dovuta dal fatto che solitamente, inviando x ∈ Xn, dall’altro latodel canale potrebbe comparire una qualsiasi y ∈ Yn. Cio potrebbe portarci apensare che in genere, i canali disturbati non possono essere utilizzati per comu-nicare. Fortunatamente non e cosı e in questa sezione vedremo che scegliendoopportunamente la codifica canale e possibile utilizzare un canale disturbatoper comunicare con una probabilita di errore non solo limitata, ma addiritturatendente a 0.

5Indichiamo la generica coordinata {x, y} di W con W (y|x) e non con W (x, y) in quan-to questa rappresenta la probabilita condizionata di avere il simbolo y in uscita dal canalesupponendo che sia stato inviato x.

Page 49: Appunti di teoria dell informazione

17. Teorema di Shannon 49

Ci chiediamo, ora, quali siano le caratteristiche che una codifica canale deveavere per essere considerata “buona”: innanzitutto vogliamo che la probabilitache un messaggio y venga associato al x corretto sia alta, e poi vogliamo averela possibilita di comunicare una ragionevole quantita di messaggi differenti. Inaltre parole stiamo cercando di massimizzare le quantita Wn(φ−1

n ) e |Cn|, dovela prima e definita come

∑y∈φ−1

n (x)Wn(y|x) ed e la probabilita che, data in

input x, si ottenga sull’output una y che la funzione di decodifica mappera inx.Il problema e che queste quantita sono in ‘conflitto’ tra di loro. Pertanto voglia-mo trovare un giusto trade-off. Questo viene solitamente tradotto in termini diTasso di trasmissione e di Probabilita di errore.

Definizione 17.3 (Tasso di trasmissione). Si definisce tasso di trasmissione (otrasmission rate) il valore:

1n

log |Cn|

che rappresenta idealmente il numero di bit trasmessi nell’unita di tempo.

La probabilita di errore puo essere espressa come:

Wn(ϕ−1(x)|x) = 1−Wn(ϕ−1(x))

A questo punto, e possibile definire il massimo di tale probabilita.

Definizione 17.4 (Massima probabilita dell’errore). Si definisce massima pro-babilita dell’errore il valore:

e(Wn, Cn, ϕn) , maxx∈Cn

Wn(ϕ−1n (x)|x

)Quello che vorremmo ottenere e un trasmission rate alto con bassa probabilitadi errore.

Definizione 17.5 (Tasso raggiungibile). R ≥ 0 , R ∈ N e un tasso raggiungibile(o achievable trasmission rate) per il DMC {Wn}n∈N se esiste

{Cn, ϕn}n∈N

tale che

e(Wn, Cn, ϕn) −→ 0

limn→∞

1n

log |Cn| ≥ R

Notiamo subito che ogni tasso raggiungibile e finito, ovvero che:

Osservazione 17.6.

R ≤ log |X |

Page 50: Appunti di teoria dell informazione

17. Teorema di Shannon 50

Dimostrazione.

R ≤ 1n

log |Cn| ≤1n

log |Xn| = log |X |

Dato che siamo interessati a cercare delle codifiche buone per un certo canaleDMC risulta comodo definire la capacita del canale, ovvero il massimo tassoraggiungibile per un certo canale W .

Definizione 17.7 (Capacita del canale). Dato il DMC {W}

C(W ) , sup{R tale che R e un tasso raggiungibile }

Confrontando, quindi, con la capacita del canale il tasso raggiungibile di unacerta codifica possiamo farci un’idea di quanto questa sia ‘buona’.Il problema di questa definizione di capacita e che, sebbene molto precisa, nonci fornisce nessuno strumento da utilizzare per definire una buona codifica. Ilteorema di Shannon entra in gioco proprio in questo momento in quanto rappre-senta il collegamento tra il concetto di entropia e quello di capacita del canale.Prima di mostrare l’enunciato del teorema di Shannon e pero necessario dare laseguente definizione:

Definizione 17.8 (Capacita di Shannon). La capacita di Shannon di un canaleW e indicata con C∗(W ) ed e definita come:

C∗(W ) , max(Y,X):P(Y |X)=W

I(X ∧ Y ) (17.8.1)

La capacita di Shannon di un canale e quindi la massima mutua informazione (siveda 12.1) tra le coppie di variabili aleaorie X e Y con distribuzione condizionatapari a quella della matrice stocastica W associata al canale.Una prima osservazione da fare e che, in verita, nella definizione di capacita diShannon del canale l’unico elemento veramente variabile e la distribuzione dellavariabile aleatoria X in quanto, una volta scelta quest’ultima, la distribuzionedi Y e univocamente determinata dal canale W . Infatti vale che

Pr(Y = y) =∑x∈X

Pr(X = x)Pr(Y = y|X = x) =∑x∈X

Pr(X = x)W (y|x)

Per questo motivo, se chiamiamo P una generica distribuzione di probabilitasull’alfebetoX di input, possiamo definire

maxP

I(P,W ) , max(Y,X):P(Y |X)=W

I(X ∧ Y )

Un’altra osservazione importante e che dato che abbiamo a che fare con una mu-tua informazione, tanto piu le variabili aleatorie X e Y per le quali I(X ∧Y ) =C∗(W ) sono indipendenti tra loro, tanto piu la capacita di Shannon del canale e

Page 51: Appunti di teoria dell informazione

17. Teorema di Shannon 51

vicina a 0. In sostanza, cercare C∗(W ) equivale a cercare la distribuzione di pro-babilita sugli elementi dell’alfabeto di input che massimizza il condizionamentosugli elementi dell’alfabeto di output. Questa osservazione avvicina la definizio-ne della capacita di Shannon del canale ad una visione del tutto intuitiva dicapacita del canale.A questo punto si e portati a pensare che sarebbe inverosimile il fatto che possaesistere un canale con una capacita bassa ma con una capacita di Shannon alta,o viceversa; in sostanza cio che ci aspettiamo e che queste due quantita sianodirettamente proporzionali. In effetti non sbagliamo in quanto le due capacitanon sono solamente direttamente proporzionali ma addirittura uguali! Questo eil risultato sorprendente del teorema di Shannon:

Teorema 17.9 (Teorema di Shannon).

C(W ) = C∗(W )

Un primo dubbio che e lecito avere riflettendo su quanto detto finora e che forsela definizione di capacita di Shannon dovrebbe anche tener conto della duratadella trasmissione. Saremmo portati quindi a definire la capacita di Shannoncome

max(Y n,Xn):P(Y n|Xn)=Wn

I(Xn ∧ Y n)

In verita il fatto di utilizzare il canale per n istanti di tempo consecutivi nonporta a migliorare il tasso di trasmissione. Questo e quanto risulta dalla seguenteaffermazione:

Affermazione 17.10.

1n

max(Y n,Xn):PY n|Xn=Wn

I(Xn ∧ Y n) = max(Y,X):PY |X=W

I(X ∧ Y )

Dimostrazione. Definiamo :

tn =1n

max(Y n,Xn):PY n|Xn=Wn

I(Xn ∧ Y n)

Verifichiamo che tn ≥ t1.Sia X la variabile aleatoria massimizzante, ovvero la variabile aleatoria condistribuzione PX tale che t1 = I(X,Y ). Siano Xn = X1, . . . , Xn e Y n =Y1, . . . , Yn rispettivamente una sequenza di variabili aleatorie totalmente in-dipendenti tali che PXi , PX per ogni i, e la sequenza di variabili aleatoriedefinite univocamente dal canale e dalle Xi.Notiamo che per definizione di tn e per definizione di mutua informazionepossiamo scrivere:

tn ≥1nI(Xn ∧ Y n) =

1n

[H(Y n)−H(Y n|Xn)]

Inoltre, utilizzando la Chain Rule (si veda 11.5) si ottiene che

Page 52: Appunti di teoria dell informazione

17. Teorema di Shannon 52

H(Y n) = H(Y1) +n∑i=2

H(Yi|Y1, . . . , Yi−1) = H(Y1) +n∑i=2

H(Yi) =n∑i=1

H(Yi)

dove il penultimo passaggio vale in quanto, dato che le Xi sono indipendenti, leYi sono indipendenti.Sempre per la Chain Rule possiamo scrivere:

H(Y n|Xn) = H(Y1|Xn) +n∑i=2

H(Yi|Xn, Y1, . . . , Yi−1) =

= H(Y1|X1) +n∑i=2

H(Yi|Xi) =n∑i=1

H(Yi|Xi)

dove il penultimo passaggio vale perche le coppie (Xi, Yi) sono totalmente indi-pendenti6.Da queste ultime due uguaglianze possiamo trarre che

1n

[H(Y n)−H(Y n|Xn)] =1n

[n∑i=1

H(Yi)−n∑i=1

H(Yi|Xi)] =1n

n∑i=1

I(Xi ∧ Yi)

e poiche ogni Xi e uguale a X e ogni Yi e uguale a Y , per definizione di t1possiamo scrivere:

1n

n∑i=1

I(Xi ∧ Yi) ≤1n

n∑i=1

t1 = t1

da cui l’asserto.Verifichiamo ora che tn ≤ t1.Sia Xn la variabile aleatoria con distribuzione PXn tale che tn = 1

nI(Xn ∧Y n).Per definizione di mutua informazione possiamo scrivere:

ntn = I(Xn ∧ Y n) = H(Y n)−H(Y n|Xn)

In maniera simile al primo passo della dimostrazione, possiamo affermare che:

H(Y n)−H(Y n|Xn) ≤n∑i=1

H(Yi)−n∑i=1

H(Yi|Xi)

diversamente dal caso precedente ora possiamo solo dare una limitazione su-periore dato che, sebbene valga sempre che H(Y n|Xn) =

∑ni=1H(Yi|Xi) per

via dell’indipendenza tra le coppie (Xi, Yi), non e sempre vero che H(Y n) =

6Attenzione, non stiamo erroneamente affermando che in generale le Yi sono sempre indi-pendenti tra loro o che una Yi non puo dipendere dalle Xj precedenti a Xi, ma solo che, datoil canale, Xi e tutto cio che e necessario per determinare Yi.

Page 53: Appunti di teoria dell informazione

17. Teorema di Shannon 53

∑ni=1H(Yi). Infatti, dato che non possiamo fare supposizioni sulla sequenza

Xn, non e detto che le variabili Yi sono totalmente indipendenti, quindi nonvale piu che

H(Y1) +n∑i=2

H(Yi|Y1, . . . , Yi−1) = H(Y1) +n∑i=2

H(Yi)

ma al piu possiamo affermare che:

H(Y1) +n∑i=2

H(Yi|Y1, . . . , Yi−1 ≤ H(Y1) +n∑i=2

H(Yi)

in virtu del fatto che, in generale, date due variabili aleatorie X ′ e Y ′, vale cheH(Y ′) ≥ H(Y ′|X ′) ).Per finire possiamo osservare che

n∑i=1

H(Yi)−n∑i=1

H(Yi|Xi) =n∑i=1

I(Xi ∧ Yi) ≤ nt1

dove l’ultimo passaggio vale per definizione di t1.

Possiamo ora definire un verso del teorema di Shannon7:

Teorema 17.11 (Teorema inverso di Shannon).

C(W ) ≤ C∗(W )

Dimostrazione. Vogliamo dunque mostrare che ogni tasso raggiungibile per {W}e minore o uguale a C∗(W ). Assumiamo che questo tasso sia R, quindi esisteuna codifica canale {Cn, ϕn}n∈N, con Cn ⊆ Xn, tale che

εn = e(Wn, Cn, ϕn) −→ 0 (17.11.1)

limn→∞

1n

log |Cn| ≥ R (17.11.2)

Introduciamo ora alcune variabili aleatorie che ci saranno utili durante la di-mostrazione. Sia Mn una variabile aleatoria distribuita uniformemente su Cn,sia Y n la variabile aleatoria che assume il valore corrispondente all’output delcanale quando in input viene inserito il valore Mn e sia Mn , ϕn(Y n). Sono danotare le seguenti proprieta delle variabili aleatorie appena introdotte

∀x ∈ Cn Pr{Y n = y |Mn = x} = Wn(y|x) (17.11.3)

Pr{Mn 6= Mn} ≤ εn (17.11.4)H(Mn) = log |Cn| (17.11.5)

7La dimostrazione che la capacita C∗(W ) e effettivamente raggiungibile utilizza la sceltacasuale e non verra presentata in questa sede.

Page 54: Appunti di teoria dell informazione

17. Teorema di Shannon 54

Dato che vogliamo studiare la quantita 1n log |Cn|(vedi limite 17.11.2) riscrivia-

mo l’argomento del limite nei termini delle variabili aleatorie appena introdotte.

1n

log |Cn| =1nH(Mn) =

=1nH(Mn)− 1

nH(Mn|Mn) +

1nH(Mn|Mn) =

=1nI(Mn ∧ Mn) +

1nH(Mn|Mn) (17.11.6)

A questo punto bastera mostrare che il primo termine di 17.11.6 sia minore diC∗(W ) e che il secondo termine di 17.11.6 tenda a 0.

Affermazione 17.12 (Disuguaglianza di Fano).

1nH(Mn|Mn) −→ 0

Dimostrazione. Definiamo una variabile aletoria Zn che assume valore 1 nel casoche Mn = Mn e 0 altrimenti. La probabilita che Zn assuma valore 0 e minore ouguale ad εn visto 17.11.4.

1nH(Mn|Mn) ≤ 1

nH(Mn, Zn|Mn) =

1nH(Zn|Mn) +

1nH(Mn|Zn, Mn) ≤

≤ 1nH(Zn) +

1n

Pr{Zn = 0}H(Mn|Zn = 0, Mn)

+1n

Pr{Zn = 1}H(Mn|Zn = 1, Mn)

Visto che Zn e una variabile aleatoria binaria al piu la sua entropia sara paria 1 quindi il primo addendo dell’ultima equzione puo essere limitato da 1

n chebanalmente tende a 0 nel caso che n tenda a infinito. Nel terzo addendo e facilevedere come l’entropia assuma valore 0 sapendo sia Mn e sia che Zn e uguale a1. Infatti, per la definizione di Zn, Mn = Mn se Zn = 1. Per quanto riguardail secondo addendo sappiamo che la probabilita che Zn sia uguale a 0 e minoreo uguale a εn inoltre possiamo limitare l’entropia condizionata con l’entropia diMn, quindi

1nH(Zn) +

1n

Pr{Zn = 0}H(Mn|Zn = 0, Mn)

+1n

Pr{Zn = 1}H(Mn|Zn = 1, Mn) ≤

1n

+1nεnH(Mn) + 0 ≤

1n

+1nεn logXn −→ 0

Page 55: Appunti di teoria dell informazione

18. Capacita con errore zero 55

Prima di mostrare che il primo termine di 17.11.6 e minore di C∗(W ) presen-tiamo una disuguaglianza chiamata data-processing.

Affermazione 17.13 (Disuguaglianza data-processing). Date tre variabili alea-torie tali che Mn → Mn → Y n

I(Mn ∧ Mn) ≤ I(Mn ∧ Y n)

Dimostrazione. Per la chain rule possiamo riscrivere I(Mn ∧ Y n, Mn) in duemodi

I(Mn ∧ Y n, Mn) = I(Mn ∧ Mn) + I(Mn ∧ Y n|Mn)

= I(Mn ∧ Y n) + I(Mn ∧ Mn|Y n)

visto che Mn e Mn sono condizionalmente indipendenti dato Y n abbiamo cheI(Mn ∧ Mn|Y n) = 0 e quindi possiamo affermare

I(Mn ∧ Mn) ≤ I(Mn ∧ Y n)

Affermazione 17.14. 1nI(Mn ∧ Mn) ≤ C∗(W )

Dimostrazione. Utilizzando la disuguaglianza data-processing possiamo affer-mare

I(Mn ∧ Mn) ≤ I(Xn ∧ Y n) == H(Y n)−H(Y n|Xn) ≤

≤n∑i=1

H(Yi)− (H(Y1|Xn) +n∑i=2

H(Yi|XnY1 . . . Yi−1)) =

=n∑i=1

I(Xi ∧ Yi) ≤ nC∗(W )

Mostrate queste due affermazioni la tesi in 17.11 e dimostrata.

18 Capacita con errore zero

Abbiamo visto nella sezione 17 il problema della capacita di un canale disturba-to. In questa sezione presenteremo un problema proposto da Shannon nel 1956 incui, diversamente dal problema visto precedentemente, si vuole conoscere qualee il massimo tasso raggiungibile nel caso che la probabilita di errore sia esatta-mente 0. Prima di definire la capacita di un canale con errore zero ricordiamoalcune definizioni.W e una matrice stocastica le cui righe sono indicizzate congli elementi dell’alfabeto di input X e le colonne con gli elementi dell’alfabeto di

Page 56: Appunti di teoria dell informazione

18. Capacita con errore zero 56

output Y e W (y|x) indica la probabilita di ricevere il simbolo y avendo inviatoil simbolo x. Inoltre indichiamo con W (.|x) il vettore (W (y1|x), . . . ,W (yn|x))con yi ∈ Y, ∀ i e con x ∈ X. Possiamo ora definire la capacita di un canale conerrore zero in questo modo.

Definizione 18.1 (Capacita di un canale con errore zero).

C0(W ) = lim supn→∞

1n

logN(W,n)

Dove N(W,n) e la massima cardinalita di un insieme di vettori mutualmenteortgonali(cioe il prodotto scalare tra ogni coppia di vettori di questo insieme epari a 0) tra i vettori Wn(.|x) con x ∈ Xn

Ricordiamo che data una matrice W , con Wn indichiamo la matrice strocasticacosı definita

Wn(y|x) ,n∏i=1

W (yi|xi)

con y ∈ Y n e x ∈ Xn. Una interessante caratteristica di questo problema e chepuo essere completamente caratterizzato nei termini di strutture combinatori-che, quali i grafi. Infatti data una matrice stocastica W possiamo associarle ungrafo cosı definito

G(W ) = (V,E) con V = X e E = {{x1, x2} : x1 e x2 sono distinguibili}

Dove per x1 e x2 distinguibili si intende, @ y ∈ Y tale che W (y|x1) > 0 eW (y|x2) > 0. Cioe due elementi dell’alfabeto input X sono distinguibili se e solose non esiste un elemento dell’alfabeto output Y in cui entrambi possono esseretrasformati. E da notare che per ogni grafo G e possibile costruire una matricestocastica W tale che G = G(W ). Prima di presentare la definizione di capacitadi un grafo definiamo il prodotto tra due grafi G = (V1, E1) e F = (V2, E2).

G× F = (V1 × V2, E′) dove

E′ = {{x1x2, z1z2} : {x1, z1} ∈ E1 oppure {x2, z2} ∈ E2}

Sfruttando questa definizione di prodotto tra grafi possiamo considerare le po-tenze di un grafo G × G × . . . × G = Gn. In questo caso due stringhe sonodistinguibili, ovvero fanno parte di uno spigolo di Gn, se e solo se almeno in unadelle loro coordinate i rispettivi simboli sono distinguibili nel grafo di partenzaG (viene lasciato come esercizio vedere che, data questa definizione di prodottodi grafi, vale Gn(W ) = G(Wn)). Intuitivamente, con la capacita di un grafo,vogliamo studiare il massimo numero di stringhe distinguibili. Dato che abbia-mo tradotto la relazione di distinguibilita nella relazione di adiacenza dei verticiin un grafo, il numero massimo di stringhe distinguibili equivale al numero diclique del grafo preso in considerazione. Definiamo ora la capacita di un grafoin questo modo.

Page 57: Appunti di teoria dell informazione

18. Capacita con errore zero 57

Definizione 18.2 (Capacita di un grafo).

C(G) = lim supn→∞

n√ω(Gn)

dove con ω(Gn) si intende il numero di clique del grafo Gn.

Possiamo ora ridefinire la capacita con errore zero nei termini della capacita diun grafo.

C0(W ) = logC(G(W ))

Presenteremo ora alcune limitazioni sulla capacita di grafi (e quindi anche perC0) utilizzando il grafo C5 in figura 5 come indicatore della bonta delle limita-zioni stesse. La prima limitazione si basa sul semplice fatto che data una clique

1

2

3

4

5

Figura 5: C5

da k vertici nel grafo G, possiamo costruire una clique di kn vertici nel grafo Gn

considerando semplicemente l’n-esima potenza della clique in G. Per esempionel grafo in figura 5 i vertici 1 e 2 formano una clique da 2 elementi. Se conside-riamo la potenza n-esima del grafo possiamo considerare la clique formata daivertici etichettati con stringhe di lunghezza n che utilizzano i soli caratteri 1 e2. Quindi abbiamo una limitazione inferiore per il numero di clique di Cn5 perogni n, cioe ω(Cn5 ) ≥ 2n e quindi una limitazione per la sua capacita.

C(C5) ≥ 2

Piu in generale possiamo affermare che ω(Gn) ≥ (ω(G))n e quindi

C(G) ≥ ω(G)

Con un piccolo ragionamento in piu possiamo vedere che la limitazione puoessere leggermente migliorata in questo modo, data una clique in Gk con kfinito

C(G) ≥ k

√ω(Gk)

Considerando il grafo C25 e possibile trovare una clique da 5 elementi(trovare

effettivamente l’insieme di 5 elementi che formano una clique in C25 e lasciato

come esercizio per il lettore). Quindi possiamo affermare che

C(C5) ≥ 2√

5

Page 58: Appunti di teoria dell informazione

18. Capacita con errore zero 58

Ora introduciamo alcune limitazioni superiori studiando sempre il numero diclique del grafo preso in considerazione. In particolare sappiamo che il numerodi clique di un grafo e sempre limitato superiormente dal numero cromatico delgrafo stesso. Inoltre data una colorazione per un grafo G con k colori possiamocostruire una colorazione del grafo Gn con kn colori(si consideri il colore di unvertice del nuovo grafo come una sequenza di colori). Allora possiamo affermare

C(G) ≤ lim supn→∞

n√χ(Gn) ≤ lim sup

n→∞

n√

[χ(G)]n = χ(G)

In particolare per il nostro grafo C5 possiamo affermare

C(C5) ≤ 3

Prima di presentare una limitazione superiore migliore di quella appena fornitaintroduciamo il concetto di numero cromatico frazionario di un grafo. Possiamovedere il numero cromatico come il minimo numero di insiemi stabili di verticinecessari a ricoprire tutti i vertici del grafo dato. Il numero cromatico frazionarioe una generalizzazione del concetto appena esposto, vogliamo sempre coprire conalmeno 1 insieme ogni vertice del grafo, ma in questo caso possiamo associaredei pesi agli insiemi stabili di vertici e vogliamo che la somma dei pesi degliinsiemi stabili che coprono un vertice sia almeno 1 e vogliamo minimizzare lasomma di tutti i pesi degli insiemi considerati. Prima di definire formalmente ilnumero cromatico frazionario consideriamo il grafo C5. In questo grafo esistono5 insiemi stabili e vogliamo associargli ad ognuno di loro dei “pesi” in modo chesia minimo il peso totale e che per ogni vertice x la somma dei pesi associati aglistabili che contengono un dato vertice sia almeno 1. Nel caso di C5 il numerocromatico frazionario e pari a 2.5 (trovare effettivamente l’assegnamento deirispettivi pesi ad ogni insieme stabile e lasciato come esercizio per il lettore).Possiamo ora introdurre la definizione formale del numero cromatico frazionario,nei termini della programmazione lineare.

Definizione 18.3 (Numero cromatico frazionario di un grafo). Sia f : Y (G)⇒[0, 1] dove con Y (G) intendiamo gli insiemi stabili di G.

min∑

A∈Y (G)

f(A)

f :∑

A∈Y (G)t.c. x∈A

f(A) ≥ 1 ∀x ∈ V (G)

E da notare che vincolando la funzione f ad assumere solo valori interi(0 o 1)abbiamo definito il numero cromatico nei termini della programamzione lineareintera. Infatti la funzione da minimizzare, in questo caso, e il numero degliinsiemi stabili associati al valore 1 che e equivalente al cercare il minimo numerodi colori(insiemi stabili) necessari a colorare(coprire) un grafo. E facile vederecome il valore del numero cromatico frazionario di un grafo sia maggiore o al piu

Page 59: Appunti di teoria dell informazione

18. Capacita con errore zero 59

uguale al numero di clique di quest’ultimo e che data una colorazione frazionariadi un grafo G di peso w possiamo costruire una colorazione per Gn di peso alpiu wn quindi

C(G) ≤ n√χ∗(Gn) ≤ n

√[χ∗(G)]n = χ∗(G)

Tornando al grafo C5 visto che χ∗(C5) = 2.5 e vista l’affermazione appena fattasu C(G) possiamo ulteriormente limitare la capacita di C5

C(C5) ≤ 2.5

Infine citiamo due particolari limitazioni superiori per C(G), di cui una intro-dotta da Lovasz nel 1979 e da lui utilizzata per determinare il valore esatto diC(C5)

C(C5) = 2√

5

chiamata theta di Lovasz. Questo oggetto indicato anche θ(G) possiede alcuneinteressanti caratterestiche dal punto di vista dell’informatica teorica visto chepuo essere computato in tempo polinomiale per un qualsiasi grafo ed e intrap-polato tra il numero cromatico ed il numero di clique di un grafo che sono duenoti problemi NP-completi.

ω(G) ≤ θ(G) ≤ χ(G)

Anche se il valore θ(G) assume il valore esatto della capacita nel caso del grafoC5 sappiamo che non puo essere il valore esatto della capacita di un qualsiasigrafo visto che Haemers, sempre nel 1979, ha presentato un’altra limitazioneper la capacita di un grafo, che sebbene in molti casi sia peggiore di θ(G), inalcuni casi assume valori minori del theta di Lovasz.Concludiamo questa sezione presentando una struttura introdotta da ClaudeBerge, ispirato dai lavori di Shannon. La struttura introdotta e quella dei grafiperfetti di cui presentiamo solo la definizione.

Definizione 18.4 (Grafo perfetto). G e perfetto se e solo se

∀G′ ⊆ G ω(G′) = χ(G′)

dove χ(G′) e il numero cromatico del grafo G′

E banale vedere che per ogni grafo perfetto la sua capacita e pari a ω(G). Unproblema aperto e molto interessante e il seguente:

Dato un grafo G tale che per ogni G′ ⊆ G vale C(G′) = ω(G′).G e un grafo perfetto?

Page 60: Appunti di teoria dell informazione

Indice analitico

Tipo di una stringa, 18

CanaleCodifica, 48DMC, 48

Canalecapacita del, 50

Capacita del canale, 50Capacita di Shannon, 50Chain rule, 36Codice

binario a lunghezza variabile, 26controllore di parita, 45correttore, 40

distanza di, 41massima cardinalita di, 41

estensione per concatenazione del,26

prefisso, 27con lunghezza delle parole de-

terminata da una funzione, 30lunghezza media di, 27massimale, 31minima lunghezza media di, 27

prefix-free, 27UD, 26

Codicelineare, 44

Coefficienti binomialilimitazione con entropia binaria,

14minorazione con entropia binaria,

14

Distanza, 5di Hamming, 6

Disuguaglianzadata-processing, 55Fano, 54log-sum, 22

Divergenza informazionale, 24DMC, 48

Entropia, 19

binaria, vedi Entropia binariachain rule, 36condizionata, 35

non-negativita della, 35congiunta, 35di una variabile aleatoria, 34massimizzata dall’equidistribuzio-

ne, 25Entropia binaria, 12

grafico della funzione, 12

Gilbert-Varshamovlimitazione di, 42

Hammingdistanza di, vedi Distanzalimitazione di, 43sfera di, vedi Sfera di Hammingspazio di, 6

partizione in classi, 15Hamming

teorema di, 46

Insiemepeso minimo di, 45

Kraftdisuguaglianza di, 27teorema di, 30

Massima probabilita dell’errore, 49McMillan

lemma di, 32Misura di Kullback-Leiber, vedi Diver-

genza informazionaleMutua informazione, 37

Nucleo di una matrice, 46

Pesodi una stringa, 45minimo di un insieme, 45

Plotkinlimitazione di, 43

60

Page 61: Appunti di teoria dell informazione

INDICE ANALITICO 61

Sfera di Hamming, 7cardinalita di, 7

approssimazione, 11comportamento asintotico, 12

Shannoncapacita di, 50teorema di, 51

Sorgente dell’informazione, 38stazionaria, 38tasso di entropia, 38

CS per l’esistenza del limite, 39Spazio metrico, 5Stringa

peso di, 45tipo di una, 18

Tassodi trasmissione, 49raggiungibile, 49

Teoremadi Hamming, 46

Teorema di Shannon, 51