14.11.2014 Views

Appunti di Teoria dell'Informazione e Codici - Università di Palermo

Appunti di Teoria dell'Informazione e Codici - Università di Palermo

Appunti di Teoria dell'Informazione e Codici - Università di Palermo

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Dipartimento <strong>di</strong> Ingegneria Elettrica, Elettronica e delle<br />

Telecomunicazioni <strong>Università</strong> <strong>di</strong> <strong>Palermo</strong><br />

<strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong><br />

<strong>dell'Informazione</strong><br />

e Co<strong>di</strong>ci<br />

Giovanni Garbo, Stefano Mangione<br />

03/03/2011


ii<br />

<strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci


Sommario<br />

Capitolo - 1.......................................................................................................... 7<br />

Le Sorgenti d’Informazione ............................................................................... 7<br />

1.1 - Premessa .................................................................................................................. 7<br />

1.2 - Misura dell’Informazione ...................................................................................... 8<br />

1.3 - Sorgenti d’Informazione ...................................................................................... 10<br />

Esempio I.1.1 ............................................................................................................................ 13<br />

1.4 - Informazione Associata a un Messaggio ............................................................. 13<br />

Capitolo - 2........................................................................................................ 15<br />

Sorgenti con Alfabeto Continuo ...................................................................... 15<br />

2.1 - Entropia <strong>di</strong> una Sorgente con Alfabeto Continuo ............................................. 15<br />

2.2 - Sorgenti Gaussiane ............................................................................................... 16<br />

Capitolo - 3........................................................................................................ 19<br />

La Co<strong>di</strong>fica <strong>di</strong> Sorgente .................................................................................... 19<br />

3.1 - Premessa ................................................................................................................ 19<br />

3.2 - La Regola del Prefisso .......................................................................................... 19<br />

3.3 - Lunghezza Me<strong>di</strong>a <strong>di</strong> un Co<strong>di</strong>ce. .......................................................................... 20<br />

3.4 - La Disuguaglianza <strong>di</strong> Kraft. ................................................................................ 21<br />

Esempio 3.1 .............................................................................................................................. 21<br />

3.5 - Limite Inferiore per la Lunghezza <strong>di</strong> un Co<strong>di</strong>ce. .............................................. 22<br />

Esempio 3.2 .............................................................................................................................. 23<br />

3.6 - La Proprietà <strong>di</strong> Equipartizione. .......................................................................... 24<br />

3.7 - Teorema sulla Co<strong>di</strong>fica <strong>di</strong> una Sorgente DMS. .................................................. 25<br />

Teorema 3.1 .............................................................................................................................. 27<br />

Esempio 3.3 .............................................................................................................................. 27<br />

3.8 - Co<strong>di</strong>fica <strong>di</strong> Sorgenti con Memoria. ..................................................................... 28<br />

Esempio 3.4 .............................................................................................................................. 29<br />

Esempio 3.5 .............................................................................................................................. 29<br />

Capitolo - 4........................................................................................................ 31<br />

Canali Privi <strong>di</strong> Memoria ................................................................................... 31<br />

4.1 - L’Informazione Mutua. ....................................................................................... 31<br />

4.2 - Concetto <strong>di</strong> Canale. .............................................................................................. 32<br />

4.3 - Il Canale Simmetrico Binario. ............................................................................. 34<br />

4.4 - Capacità del Canale AWGN a Banda Limitata. ................................................ 35<br />

4.5 - Informazione Mutua tra M-messaggi. ................................................................ 37<br />

4.6 - Canali in Cascata. ................................................................................................. 38


ii<br />

<strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

4.7 - L’Inverso del Teorema della Co<strong>di</strong>fica <strong>di</strong> Canale ............................................... 40<br />

Teorema 4.1 .............................................................................................................................. 43<br />

Capitolo - 5 ........................................................................................................ 45<br />

Cenni <strong>di</strong> Trasmissione Numerica ..................................................................... 45<br />

5.1 - Scenario <strong>di</strong> Riferimento. ...................................................................................... 45<br />

5.2 - Struttura del modulatore e del co<strong>di</strong>ficatore <strong>di</strong> sorgente ................................... 45<br />

5.3 - Struttura del Ricevitore. ...................................................................................... 46<br />

5.4 - La Regola <strong>di</strong> Decisione Ottima. ........................................................................... 47<br />

5.5 - Il Criterio della Massima Verosimiglianza. ....................................................... 47<br />

5.6 - Funzioni <strong>di</strong> Verosimiglianza. ............................................................................... 48<br />

5.7 - Le Regioni <strong>di</strong> Decisione. ....................................................................................... 48<br />

5.8 - L’Union Bound. .................................................................................................... 50<br />

5.9 - Bound <strong>di</strong> Bhattacharrya. ..................................................................................... 52<br />

5.10 - Bound <strong>di</strong> Gallager. ............................................................................................. 55<br />

Capitolo - 6 ........................................................................................................ 57<br />

Il Teorema <strong>di</strong> Shannon sulla Co<strong>di</strong>fica <strong>di</strong> Canale ............................................ 57<br />

6.1 - Premessa. ............................................................................................................... 57<br />

6.2 - La Disuguaglianza <strong>di</strong> Jensen ............................................................................... 57<br />

Definizione 6.1 .......................................................................................................................... 58<br />

Definizione 6.2 .......................................................................................................................... 58<br />

6.3 - Il Teorema <strong>di</strong> Shannon sulla Co<strong>di</strong>fica <strong>di</strong> Canale. .............................................. 60<br />

Teorema 6.1 .............................................................................................................................. 66<br />

Capitolo - 7 ........................................................................................................ 69<br />

Strutture Algebriche .......................................................................................... 69<br />

7.1 - Gruppo .................................................................................................................. 69<br />

7.2 - Anello ..................................................................................................................... 69<br />

7.3 - Campo ................................................................................................................... 69<br />

7.4 - Spazio vettoriale ................................................................................................... 69<br />

Capitolo - 8 ........................................................................................................ 71<br />

8.1 - Lo Spazio ........................................................................................................ 71<br />

8.2 - Generalizzazione della <strong>di</strong>stanza <strong>di</strong> Hamming .................................................... 72<br />

Capitolo - 9 ........................................................................................................ 73<br />

Co<strong>di</strong>ci Binari a Blocchi..................................................................................... 73<br />

9.1 - Co<strong>di</strong>ficatore, Co<strong>di</strong>ce, Deco<strong>di</strong>ficatore .................................................................. 73<br />

Definizione 9.1 - co<strong>di</strong>ficatore a blocchi .................................................................................... 73<br />

Definizione 9.2 - co<strong>di</strong>ce binario a blocchi ................................................................................ 73<br />

Definizione 9.3 - deco<strong>di</strong>ficatore ................................................................................................ 74<br />

9.2 - Utilità della co<strong>di</strong>fica <strong>di</strong> canale ............................................................................. 74<br />

9.3 - La deco<strong>di</strong>fica a massima verosimiglianza .......................................................... 76<br />

Regola <strong>di</strong> decisione a Massima Verosimiglianza ...................................................................... 76


In<strong>di</strong>ce iii<br />

9.4 - Definizioni e teoremi sui co<strong>di</strong>ci rivelatori e correttori ...................................... 77<br />

Definizione 9.4 ......................................................................................................................... 77<br />

Definizione 9.5 ......................................................................................................................... 77<br />

Teorema 9.1 .............................................................................................................................. 78<br />

Definizione 9.6 ......................................................................................................................... 78<br />

Teorema 9.2 .............................................................................................................................. 78<br />

Capitolo - 10...................................................................................................... 81<br />

Co<strong>di</strong>ci Lineari a Blocchi .................................................................................. 81<br />

10.1 - Premessa .............................................................................................................. 81<br />

10.2 - Morfismi .............................................................................................................. 81<br />

Definizione 10.1 - omomorfismo.............................................................................................. 81<br />

Definizione 10.2 - monomorfismo............................................................................................ 82<br />

Definizione 10.3 - isomorfismo ................................................................................................ 82<br />

10.3 - Schema <strong>di</strong> principio <strong>di</strong> un co<strong>di</strong>ce lineare a blocco ........................................... 82<br />

10.4 - Matrice generatrice del co<strong>di</strong>ce .......................................................................... 83<br />

10.5 - Distribuzione dei pesi <strong>di</strong> un co<strong>di</strong>ce lineare a blocco ........................................ 84<br />

Definizione 10.4 ....................................................................................................................... 84<br />

10.6 - Capacità <strong>di</strong> rivelazione <strong>di</strong> un co<strong>di</strong>ce lineare a blocco ...................................... 85<br />

Teorema 10.1 ............................................................................................................................ 85<br />

10.7 - Probabilità <strong>di</strong> non rivelazione d’errore <strong>di</strong> un co<strong>di</strong>ce lineare .......................... 85<br />

10.8 - Laterali <strong>di</strong> un sottogruppo ................................................................................. 86<br />

10.9 - Deco<strong>di</strong>fica tramite i rappresentanti <strong>di</strong> laterale ................................................ 87<br />

Teorema 10.2 ............................................................................................................................ 88<br />

10.10 - Probabilità d’errore <strong>di</strong> un co<strong>di</strong>ce lineare a blocchi ....................................... 88<br />

10.11 - Co<strong>di</strong>ci perfetti, bound <strong>di</strong> Hamming ................................................................ 89<br />

Capitolo - 11...................................................................................................... 91<br />

Co<strong>di</strong>ci Sistematici ............................................................................................. 91<br />

11.1 - Co<strong>di</strong>ci Sistematici ............................................................................................... 91<br />

11.2 - Matrice <strong>di</strong> controllo <strong>di</strong> parità ............................................................................ 92<br />

11.3 - Co<strong>di</strong>ci duali ......................................................................................................... 93<br />

11.4 - Deco<strong>di</strong>fica basata sulla sindrome ...................................................................... 93<br />

Capitolo - 12...................................................................................................... 95<br />

Co<strong>di</strong>ci <strong>di</strong> Hamming e loro duali ....................................................................... 95<br />

12.1 - Co<strong>di</strong>ci <strong>di</strong> Hamming ............................................................................................ 95<br />

Esempio 12.1 ............................................................................................................................ 96<br />

12.2 - Duali dei co<strong>di</strong>ci <strong>di</strong> Hamming ............................................................................. 96<br />

12.3 - Co<strong>di</strong>ci ortogonali e transortogonali .................................................................. 97<br />

Capitolo - 13...................................................................................................... 99<br />

Co<strong>di</strong>ci Convoluzionali ...................................................................................... 99<br />

13.1 - Premessa .............................................................................................................. 99<br />

13.2 - Struttura del co<strong>di</strong>ficatore ................................................................................... 99


iv<br />

<strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

13.3 - Matrice generatrice e generatori. .................................................................... 100<br />

13.4 - Diagramma <strong>di</strong> stato del co<strong>di</strong>ficatore. .............................................................. 101<br />

13.5 - Co<strong>di</strong>ci catastrofici ............................................................................................. 103<br />

13.6 - Trellis degli stati ............................................................................................... 103<br />

Esempio 13.1 ........................................................................................................................... 105<br />

Capitolo - 14 .................................................................................................... 107<br />

L’Algoritmo <strong>di</strong> Viterbi ..................................................................................... 107<br />

14.1 - Deco<strong>di</strong>fica hard e soft <strong>di</strong> un co<strong>di</strong>ce convoluzionale. ...................................... 107<br />

14.2 - L’algoritmo <strong>di</strong> Viterbi ...................................................................................... 109<br />

14.3 - Efficienza dell’algoritmo <strong>di</strong> Viterbi ................................................................ 111<br />

Capitolo - 15 .................................................................................................... 113<br />

Prestazioni dei Co<strong>di</strong>ci Convoluzionali ........................................................... 113<br />

15.1 - Funzione <strong>di</strong> trasferimento <strong>di</strong> un co<strong>di</strong>ficatore convoluzionale. ..................... 113<br />

15.2 - Bound sulla probabilità <strong>di</strong> primo evento d’errore. ....................................... 116<br />

Esempio 15.1 ........................................................................................................................... 118<br />

15.3 - Bound sulla probabilità d’errore sul bit informativo. .................................. 120<br />

Capitolo - 16 .................................................................................................... 123<br />

Anelli <strong>di</strong> Polinomi ........................................................................................... 123<br />

16.1 - Premessa ............................................................................................................ 123<br />

16.2 - L’anello polinomi a coefficienti in ............................................................... 123<br />

16.3 - Spazi <strong>di</strong> polinomi .............................................................................................. 124<br />

Capitolo - 17 .................................................................................................... 125<br />

Co<strong>di</strong>ci polinomiali ........................................................................................... 125<br />

Capitolo - 18 .................................................................................................... 127<br />

Ideali <strong>di</strong> un anello <strong>di</strong> polinomi ....................................................................... 127<br />

18.1 - Premessa ............................................................................................................ 127<br />

18.2 - Ideali <strong>di</strong> un anello con identità. ....................................................................... 127<br />

Teorema 18.1 .......................................................................................................................... 128<br />

Teorema 18.2 .......................................................................................................................... 129<br />

Capitolo - 19 .................................................................................................... 131<br />

Co<strong>di</strong>ci Ciclici ................................................................................................... 131<br />

19.1 - Rappresentazione polinomiale <strong>di</strong> un co<strong>di</strong>ce ciclico. ...................................... 131<br />

Definizione 19.1 ...................................................................................................................... 131<br />

19.2 - L’anello ...................................................................................... 131<br />

Teorema 19.1 .......................................................................................................................... 133<br />

19.3 - Polinomio generatore <strong>di</strong> un co<strong>di</strong>ce ciclico ...................................................... 133<br />

19.4 - Polinomio <strong>di</strong> parità <strong>di</strong> un co<strong>di</strong>ce ciclico .......................................................... 133<br />

Esempio 19.1 ........................................................................................................................... 134<br />

19.5 - Matrice generatrice <strong>di</strong> un co<strong>di</strong>ce ciclico ......................................................... 135


In<strong>di</strong>ce v<br />

19.6 - Co<strong>di</strong>ci ciclici Sistematici ................................................................................... 135<br />

Esempio 19.2 .......................................................................................................................... 136<br />

19.7 - Duale <strong>di</strong> un co<strong>di</strong>ce ciclico ................................................................................. 136<br />

Capitolo - 20.................................................................................................... 139<br />

Campi finiti ..................................................................................................... 139<br />

20.1 - Polinomi irriducibili e campi ad essi associati ............................................... 139<br />

Definizione 20.1 ..................................................................................................................... 139<br />

Teorema 20.1 .......................................................................................................................... 139<br />

20.2 - Or<strong>di</strong>ne degli elementi <strong>di</strong> un gruppo ................................................................ 140<br />

20.3 - Or<strong>di</strong>ne degli elementi <strong>di</strong> un campo finito ....................................................... 140<br />

20.4 - Or<strong>di</strong>ne <strong>di</strong> un campo finito ................................................................................ 141<br />

Teorema 20.2 - Or<strong>di</strong>ne <strong>di</strong> un campo finito ............................................................................. 141<br />

20.5 - Elementi primitivi <strong>di</strong> un campo ....................................................................... 142<br />

20.6 - Campi <strong>di</strong> polinomi ............................................................................................ 142<br />

Esempio 20.1 .......................................................................................................................... 143<br />

20.7 - Polinomi irriducibili primitivi ......................................................................... 143<br />

Definizione 20.2 ..................................................................................................................... 144<br />

Definizione 20.3 ..................................................................................................................... 144<br />

Teorema 20.3 .......................................................................................................................... 144<br />

20.8 - Alcune proprietà dei campi finiti .................................................................... 145<br />

Esempio 20.2 .......................................................................................................................... 145<br />

Capitolo - 21.................................................................................................... 149<br />

Co<strong>di</strong>ci BCH ..................................................................................................... 149<br />

21.1 - Co<strong>di</strong>ci BCH ....................................................................................................... 149<br />

Esempio 21.1 .......................................................................................................................... 150<br />

Capitolo - 22.................................................................................................... 155<br />

La Trasformata <strong>di</strong> Fourier Discreta .............................................................. 155<br />

22.1 - La Trasformata <strong>di</strong> Fourier Discreta ............................................................... 155<br />

22.2 - DFT e co<strong>di</strong>ci ciclici ........................................................................................... 157<br />

Definizione 22.1 ..................................................................................................................... 157


Capitolo - 1<br />

LE SORGENTI D’INFORMAZIONE<br />

1.1 - Premessa<br />

Uno dei maggiori problemi che s’incontrano nella stesura <strong>di</strong> un testo che tratti la<br />

teoria dell’informazione è quello della notazione da adottare, non è, infatti, semplice<br />

trovare il giusto compromesso tra sinteticità e chiarezza della stessa.<br />

Nel seguito avremo spesso a che fare con variabili aleatorie (V.A.) che in<strong>di</strong>cheremo<br />

con lettere maiuscole. Come è noto ad ogni V.A. si può associare una <strong>di</strong>stribuzione <strong>di</strong><br />

probabilità (DDP) ed una densità <strong>di</strong> probabilità (ddp) che altro non è se non la<br />

derivata della DDP, intesa eventualmente in senso generalizzato.<br />

Nel caso delle variabili aleatorie <strong>di</strong>screte che possono cioè assumere un numero<br />

finito <strong>di</strong> valori è più comodo fare riferimento alla <strong>di</strong>stribuzione <strong>di</strong> massa <strong>di</strong> probabilità<br />

(dmp) cioè ad una funzione ( ) che associa ad ogni valore che la V.A. può<br />

assumere la probabilità dell’evento: “ assume il valore ”.<br />

Quando si riterrà che non vi siano possibilità d’equivoci si ometterà il pe<strong>di</strong>ce che<br />

in<strong>di</strong>vidua la V.A. affidando all’argomento della funzione anche questo compito, cioè<br />

( ) ( ).<br />

Si noti che la notazione che qui si adotta è purtroppo analoga a quella<br />

normalmente utilizzata per in<strong>di</strong>care la ddp <strong>di</strong> una variabile aleatoria, un minimo <strong>di</strong><br />

attenzione al contesto dovrebbe, si spera, essere sufficiente ad evitare confusioni. Le<br />

ddp verranno <strong>di</strong> regola in<strong>di</strong>cate con lettere greche con a pe<strong>di</strong>ce la V.A. cui si<br />

riferiscono ad esempio ( ).<br />

Come è noto per le variabili aleatorie <strong>di</strong>screte è particolarmente semplice desumere da<br />

una qualunque delle tre funzioni <strong>di</strong> probabilità appena citate le altre. In particolare se è<br />

nota la dmp <strong>di</strong> una variabile aleatoria <strong>di</strong>screta che assume valori appartenenti<br />

all’insieme la corrispondente DDP ( ) sarà una funzione definita su<br />

tutto costante a tratti con <strong>di</strong>scontinuità d’ampiezza ( ) in corrispondenza dei<br />

valori che la V.A. può assumere. La ddp ( ) sarà espressa da ( )<br />

∑ ( ) ( ).<br />

Nel calcolo delle sommatorie che s’incontreranno ad ogni piè sospinto si<br />

in<strong>di</strong>cherà il più sinteticamente possibile l’in<strong>di</strong>ce su cui le suddette operano. Ad esempio<br />

avendo a che fare con una V.A. <strong>di</strong>screta che assuma valori in un insieme<br />

, la con<strong>di</strong>zione <strong>di</strong> normalizzazione della sua dmp sarà in<strong>di</strong>cata come segue:


8 Capitolo - 1 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

anziché:<br />

∑ ( )<br />

A<br />

(1.1.1)<br />

∑ ( ) (1.1.2)<br />

Analogamente quando si avrà a che fare con variabili aleatorie multi<strong>di</strong>mensionali,<br />

come ad esempio nel caso <strong>di</strong> una -upla <strong>di</strong> simboli emessi consecutivamente,<br />

si utilizzeranno <strong>di</strong>stribuzioni <strong>di</strong> massa congiunte che saranno caratterizzate<br />

scrivendo, ove possibile, pe<strong>di</strong>ce e argomento in grassetto. Ad esempio nel caso <strong>di</strong> una<br />

coppia <strong>di</strong> variabili aleatorie che assumono entrambe valori sull’insieme , la<br />

con<strong>di</strong>zione <strong>di</strong> normalizzazione verrà sinteticamente scritta:<br />

anziché<br />

∑ ( )<br />

A<br />

(1.1.3)<br />

∑ ∑ ( ) (1.1.4)<br />

Nel caso delle ddm con<strong>di</strong>zionate con<br />

( ) (1.1.5)<br />

si in<strong>di</strong>cherà sinteticamente la seguente probabilità con<strong>di</strong>zionata:<br />

( ) (1.1.6)<br />

anche in questo caso, quando si riterrà che non vi siano possibilità d’equivoci si<br />

ometterà il pe<strong>di</strong>ce affidando agli argomenti l’identificazione delle variabili aleatorie cui<br />

si fa riferimento.<br />

1.2 - Misura dell’Informazione<br />

Il concetto d’informazione a livello intuitivo è chiaro. Si acquisisce un’informazione<br />

nel momento in cui si viene a conoscenza <strong>di</strong> qualcosa che prima ci era ignoto.<br />

Quantificare l’informazione da un punto <strong>di</strong> vista matematico richiede invece qualche<br />

riflessione.<br />

Per inquadrare meglio il problema facciamo riferimento ad un esperimento<br />

casuale che com’è noto è caratterizzato da un insieme <strong>di</strong> possibili risultati, da una<br />

famiglia d’eventi (insiemi <strong>di</strong> risultati) e dalle probabilità associate a ciascuno <strong>di</strong> essi.<br />

In prima istanza si accetta facilmente l’idea che il contenuto informativo <strong>di</strong> un evento<br />

sia tanto più grande quanto più esso è inatteso, ciò ad esempio si riflette nella<br />

<strong>di</strong>mensione del carattere utilizzato nei titoli <strong>di</strong> un quoti<strong>di</strong>ano che, <strong>di</strong> regola, è


Le Sorgenti d’Informazione 9<br />

<strong>di</strong>rettamente proporzionale alla “sensazionalità” dell’evento <strong>di</strong> cui il titolo intende dare<br />

notizia. Una notizia è tanto più sensazionale quanto più essa è inattesa, “un padrone ha<br />

morso il suo cane”.<br />

Pertanto, volendo definire una misura per la quantità d’informazione associata ad<br />

un evento, minor preve<strong>di</strong>bilità deve equivalere ad un valore maggiore <strong>di</strong> tale misura.<br />

Inoltre, qualora si verifichino più eventi, per semplicità pren<strong>di</strong>amone in considerazione<br />

solo due, la misura dell’informazione complessiva dovrebbe essere pari alla<br />

somma delle informazioni acquisite con il manifestarsi dei singoli eventi, sempre che le<br />

informazioni acquisite con il manifestarsi <strong>di</strong> uno <strong>di</strong> essi non abbiano reso più<br />

preve<strong>di</strong>bile se non ad<strong>di</strong>rittura certo, o anche impossibile, il manifestarsi del secondo.<br />

In conclusione appare abbastanza chiaro che un’accettabile misura dell’informazione<br />

debba essere:<br />

- legata alla probabilità che il generico evento ha <strong>di</strong> manifestarsi ed in particolare<br />

debba crescere al <strong>di</strong>minuire <strong>di</strong> essa e debba variare con continuità al variare <strong>di</strong><br />

quest’ultima;<br />

- nel caso <strong>di</strong> un evento congiunto debba essere pari alla somma delle informazioni<br />

associate ai singoli eventi, se questi sono tra loro statisticamente in<strong>di</strong>pendenti.<br />

Ricordando che la probabilità che si verifichino più eventi statisticamente in<strong>di</strong>pendenti<br />

è pari al prodotto delle probabilità dei singoli eventi, si può pensare <strong>di</strong><br />

quantificare l’informazione sfruttando la nota proprietà dei logaritmi<br />

( ) ( ) ( ) (1.2.1)<br />

In particolare si assume come informazione (A) associata ad un evento<br />

manifesta con probabilità<br />

(A) valga:<br />

che si<br />

(A) ( ) (1.2.2)<br />

È opportuno sottolineare che l’informazione associata all’evento non <strong>di</strong>pende<br />

dalla natura <strong>di</strong> quest’ultimo, ma solo dalla probabilità che esso ha <strong>di</strong> manifestarsi,<br />

pertanto la notazione utilizzata è in realtà impropria in quanto presenta l’informazione<br />

come associata all’evento e non alla sua probabilità.<br />

Si verifica facilmente che (1.2.2) sod<strong>di</strong>sfa i due requisiti sopra in<strong>di</strong>cati, in<br />

particolare cresce al <strong>di</strong>minuire <strong>di</strong> . É stato anche <strong>di</strong>mostrato che il logaritmo è l’unica<br />

funzione che sod<strong>di</strong>sfa i requisiti sopra elencati.<br />

Osserviamo anche che la base adottata per il logaritmo non è concettualmente<br />

importante, cambiarla equivale infatti ad introdurre un fattore <strong>di</strong> scala, come appare<br />

ovvio se si ricorda la regola per il cambiamento <strong>di</strong> base dei logaritmi:


10 Capitolo - 1 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

(1.2.3)<br />

In pratica scegliere la base nella (1.2.2) equivale a scegliere una particolare unità <strong>di</strong><br />

misura. La potenza <strong>di</strong> un motore non cambia se viene misurata in KW o in HP, anche<br />

se espressa in cavalli è più accattivante.<br />

Nella <strong>Teoria</strong> dell’Informazione si utilizzano tipicamente due basi per il logaritmo<br />

che compare nella (1.2.2) la base se si intende misurare l’informazione il nat, o la<br />

base se la si vuole misurarla in bit (binary information unit non binary <strong>di</strong>git).<br />

Ad esempio nel caso del lancio <strong>di</strong> una moneta non truccata al manifestarsi dell’evento<br />

è associata un’informazione pari a – o a –<br />

L’utilizzo del bit come unità <strong>di</strong> misura è <strong>di</strong> regola preferito dal momento che la<br />

quasi totalità dei moderni sistemi <strong>di</strong> informazione utilizza sistemi <strong>di</strong> calcolo che<br />

lavorano in base 2 e che i dati tra computer vengono scambiati tipicamente sotto forma<br />

<strong>di</strong> parole binarie. In quel che segue il logaritmo naturale verrà in<strong>di</strong>cato con ed il<br />

logaritmo in base con omettendo cioè l’in<strong>di</strong>cazione della base.<br />

1.3 - Sorgenti d’Informazione<br />

Una sorgente d’informazione, è un sistema che emette in modo più o meno<br />

casuale sequenze d’elementi appartenenti ad un assegnato insieme, l’alfabeto della<br />

sorgente. Come vedremo, la natura dei simboli è del tutto inessenziale per lo sviluppo<br />

della teoria, potremo quin<strong>di</strong> sempre pensare che l’alfabeto sia numerico, cioè che la<br />

sorgente emetta una sequenza <strong>di</strong> variabili aleatorie, che, se l’insieme è finito, saranno <strong>di</strong><br />

tipo <strong>di</strong>screto. In alternativa possiamo sempre pensare <strong>di</strong> definire sull’insieme dei<br />

simboli emessi, che costituisce in sostanza l’insieme dei risultati <strong>di</strong> un esperimento<br />

casuale, una V.A. biettiva.<br />

Un sistema <strong>di</strong> trasmissione ha il compito <strong>di</strong> recapitare dei dati in modo affidabile<br />

da un emissario a un destinatario. Il grado d’affidabilità del sistema può essere<br />

caratterizzato dal numero d’errori da cui è me<strong>di</strong>amente afflitto.<br />

Si osservi che emissario e destinatario possono anche trovarsi nello stesso luogo ed<br />

essere ad<strong>di</strong>rittura lo stesso soggetto, come ad esempio avviene nel caso della<br />

memorizzazione <strong>di</strong> dati, che si auspica possano essere utili in futuro, su un supporto<br />

fisico.<br />

L’emissario in sostanza è una sorgente d’informazione che può generare segnali<br />

a tempo continuo o <strong>di</strong>screto.


Le Sorgenti d’Informazione 11<br />

Le sorgenti <strong>di</strong> tipo <strong>di</strong>screto sono quelle che emettono dei simboli, o lettere, appartenenti<br />

ad un assegnato insieme, al più numerabile, che chiameremo alfabeto <strong>di</strong><br />

sorgente.<br />

Se la probabilità che in un dato istante la sorgente emetta una qualunque lettera<br />

non <strong>di</strong>pende dai simboli emessi negli altri istanti si <strong>di</strong>ce che la sorgente è priva <strong>di</strong><br />

memoria.<br />

Una sorgente <strong>di</strong>screta priva <strong>di</strong> memoria (Discrete Memoryless Source) potrebbe<br />

ad esempio essere quella che emette la sequenza dei risultati ottenuti lanciando<br />

ripetutamente un dado, l’alfabeto utilizzato sarebbe in questo caso costituito da sei<br />

simboli che si potrebbero etichettare con i primi sei numeri naturali.<br />

Viceversa una sorgente <strong>di</strong>screta dotata <strong>di</strong> memoria potrebbe essere una sorgente che<br />

trasmette un testo in lingua italiana. Esisterebbero pochi dubbi su quale sarà il simbolo<br />

emesso successivamente alla sequenza “p r e c i p i t e v o l i s s i m e v o l m e n t”, o<br />

sul fatto che dopo l’emissione della lettera q verrà emessa una u, a meno che i due<br />

simboli precedenti non siano stati s o, fatti salvi, ovviamente, gli errori, sempre in<br />

agguato malgrado e, talvolta, a causa dei correttori ortografici.<br />

Come anticipato nella premessa, non si perde generalità se si assume che la<br />

sorgente emetta una sequenza <strong>di</strong> variabili aleatorie che assumono valori<br />

appartenenti ad un sottoinsieme <strong>di</strong> che si può porre in corrispondenza biunivoca con<br />

l’insieme delle lettere che costituiscono l’alfabeto della sorgente che supporremo finito.<br />

In sostanza quanto detto equivale ad associare un’etichetta numerica ad ogni lettera<br />

dell’alfabeto della sorgente.<br />

In quel che segue supporremo che la sia stazionaria cioè che la sua<br />

statistica a qualunque or<strong>di</strong>ne <strong>di</strong>penda esclusivamente dalla posizione relativa degli<br />

istanti <strong>di</strong> osservazione, non dall’origine dei tempi. L’ipotesi appena fatta implica, tra<br />

l’altro, che l’alfabeto utilizzato non vari al variare dell’in<strong>di</strong>ce temporale Detta la<br />

V.A. emessa dalla sorgente all’istante , ad ogni simbolo dell’alfabeto si può<br />

associare una probabilità d’emissione:<br />

( ) (1.3.1)<br />

L’informazione che si acquisirebbe rilevando l’emissione della lettera<br />

nulla sapere sulle lettere precedentemente emesse varrebbe quin<strong>di</strong>:<br />

senza<br />

( ) ( ) (1.3.2)<br />

assumendo ove necessario ( ) , alla sorgente si può associare la sua entropia:


12 Capitolo - 1 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

( ) ∑ ( )<br />

( )<br />

∑ (1.3.3)<br />

L’entropia ( ) appena definita, è la me<strong>di</strong>a statistica dell’informazione<br />

associata all’emissione dell’ -esimo simbolo. Essa rappresenta pertanto l’informazione<br />

che me<strong>di</strong>amente si acquisisce per effetto dell’emissione <strong>di</strong> un simbolo da parte della<br />

sorgente all’istante . Osserviamo che la stazionarietà della sequenza comporta che<br />

( ) sia in<strong>di</strong>pendente da , tale in<strong>di</strong>ce può quin<strong>di</strong> essere omesso.<br />

Si noti che anche l’entropia <strong>di</strong>pende esclusivamente dalla <strong>di</strong>stribuzione <strong>di</strong> probabilità<br />

dei simboli emessi e non dalla loro natura.<br />

L’entropia <strong>di</strong> una sorgente, è limitata superiormente. In particolare se l’alfabeto<br />

ha car<strong>di</strong>nalità si ha:<br />

∑ (1.3.4)<br />

Per verificare la precedente <strong>di</strong>suguaglianza consideriamo due possibili dmp:<br />

∑<br />

∑<br />

(1.3.5)<br />

vale la seguente catena <strong>di</strong> <strong>di</strong>suguaglianze:<br />

∑ ∑ ∑ ∑<br />

∑ ( )<br />

(1.3.6)<br />

La maggiorazione effettuata è corretta in<br />

quanto nell’insieme <strong>di</strong> definizione <strong>di</strong> risulta<br />

(ve<strong>di</strong> Fig.E 1.1). La precedente permette<br />

<strong>di</strong> affermare che se sostituiamo la dmp ad argomento<br />

del logaritmo con una <strong>di</strong>versa da quella utilizzata per<br />

il calcolo della me<strong>di</strong>a otteniamo comunque una<br />

maggiorazione dell’entropia.<br />

In particolare se nella (1.3.6) si sceglie<br />

Fig.E 1.1 - y x , y (x).<br />

si ottiene:


Le Sorgenti d’Informazione 13<br />

∑<br />

∑<br />

∑<br />

∑<br />

(1.3.7)<br />

da cui la (1.3.4).<br />

Fig.E 1.2 - Entropia <strong>di</strong> una sorgente binaria in<br />

funzione della dmp dei dati<br />

Esempio I.1.1<br />

Si consideri una sorgente che emette simboli<br />

appartenenti ad un alfabeto binario costituito quin<strong>di</strong><br />

da due soli simboli ad esempio, , detta la<br />

probabilità che venga emesso il simbolo<br />

l’entropia della sorgente vale:<br />

( ) ( ) ( )<br />

Si osservi che ( ) (ve<strong>di</strong> Fig.E 1.2) in accordo<br />

con la (1.3.7) raggiunge il suo massimo per .<br />

In sostanza una sorgente fornisce me<strong>di</strong>amente<br />

tanta più informazione quanto meno preve<strong>di</strong>bile è il simbolo che essa<br />

emetterà. Nel caso <strong>di</strong> una sorgente binaria la massima entropia è pari ad un bit e si<br />

ottiene quando la sorgente emette dati equiprobabili.<br />

La (1.3.7) mostra che il massimo contenuto informativo me<strong>di</strong>o si ottiene da<br />

sorgenti in cui ogni simbolo ha la stessa probabilità <strong>di</strong> essere emesso <strong>di</strong> qualsiasi altro<br />

appartenente all’alfabeto.<br />

1.4 - Informazione Associata a un Messaggio<br />

Si può anche definire l’informazione derivante dall’emissione <strong>di</strong> una<br />

-upla <strong>di</strong><br />

simboli emessi consecutivamente dalla sorgente. In questo caso parleremo <strong>di</strong> M-<br />

messaggio emesso dalla sorgente, che possiamo pensare come la realizzazione <strong>di</strong> una<br />

V.A. M-<strong>di</strong>mensionale<br />

allora esisteranno al più<br />

. Se l’alfabeto della sorgente ha car<strong>di</strong>nalità<br />

possibili messaggi. In<strong>di</strong>cando con<br />

A , il generico M-messaggio e con<br />

ad esso associata è data da:<br />

( ) la probabilità che sia emesso, l’informazione<br />

( )<br />

(1.4.1)<br />

( )<br />

me<strong>di</strong>ando sui possibili messaggi otteniamo l’entropia associata all’M-messaggio:<br />

( ) ∑ ( )<br />

A<br />

( )<br />

Se i simboli emessi dalla sorgente sono i.i.d. allora risulta:<br />

(1.4.2)


14 Capitolo - 1 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

( ) ∏ ( ) (1.4.3)<br />

sostituendo la precedente nella (1.4.2):<br />

( ) ∑ ( )<br />

A<br />

( )<br />

∑ ( )<br />

A<br />

∏ ( )<br />

∑ ( ) ∑<br />

A<br />

( )<br />

∑ ∑ ( )<br />

A<br />

( )<br />

(1.4.4)<br />

∑ ∑ ( )<br />

( )<br />

( )<br />

pertanto, se la sorgente è stazionaria e priva <strong>di</strong> memoria, l’entropia associata ad un<br />

messaggio <strong>di</strong> lunghezza M è M volte l’entropia associata al singolo simbolo.<br />

Assumiamo adesso:<br />

( ) ∏ ( ) (1.4.5)<br />

( ) sod<strong>di</strong>sfa ovviamente le con<strong>di</strong>zioni necessarie per essere una possibile dmp <strong>di</strong> una<br />

V.A.multi<strong>di</strong>mensionale. Seguendo la falsariga della (1.3.6) si può scrivere:<br />

∑ ( )<br />

d’altro canto risulta:<br />

A<br />

( )<br />

∑ ( )<br />

A<br />

∑ ( )<br />

A<br />

( ( )<br />

( )<br />

( )<br />

)<br />

∑ ( )<br />

A<br />

( )<br />

( )<br />

(1.4.6)<br />

∑ ( )<br />

A<br />

( )<br />

∑ ( )<br />

A<br />

∏ ( )<br />

∑ ( ) ∑<br />

A<br />

( )<br />

∑ ∑ ( )<br />

A<br />

( )<br />

∑ ∑ ( )<br />

A<br />

( )<br />

(1.4.7)<br />

∑ ( ) ( )<br />

dove l’ultima uguaglianza vale solo nel caso in cui la i simboli emessi dalla sorgente<br />

siano identicamente <strong>di</strong>stribuiti, cioè nel caso in cui la sorgente sia stazionaria, pur non<br />

essendo necessariamente priva <strong>di</strong> memoria.<br />

Dalle (1.4.6) e (1.4.7) deduciamo che in generale per sorgenti stazionarie risulta<br />

( ) ( ) (1.4.8)<br />

cioè a parità <strong>di</strong> car<strong>di</strong>nalità dell’alfabeto e <strong>di</strong> lunghezza del messaggio la massima<br />

informazione me<strong>di</strong>a è fornita da sorgenti prive <strong>di</strong> memoria che emettono simboli<br />

equiprobabili.


Capitolo - 2<br />

SORGENTI CON ALFABETO CONTINUO<br />

2.1 - Entropia <strong>di</strong> una Sorgente con Alfabeto Continuo<br />

Consideriamo adesso una sorgente che emette con cadenza regolare simboli<br />

appartenenti ad un insieme non numerabile. Potremo quin<strong>di</strong> sempre pensare che la<br />

sorgente emetta una sequenza <strong>di</strong> variabili aleatorie <strong>di</strong> tipo continuo. La sorgente<br />

sarà quin<strong>di</strong> completamente caratterizzata da un processo aleatorio a tempo <strong>di</strong>screto<br />

continuo in ampiezza, che è completamente caratterizzato qualora sia nota la sua<br />

statistica a qualunque or<strong>di</strong>ne.<br />

Per definire l’entropia ( ) <strong>di</strong> una tale sorgente, cioè l’informazione che<br />

me<strong>di</strong>amente acquisiremmo in seguito all’emissione <strong>di</strong> un singolo simbolo, senza nulla<br />

sapere dei simboli emessi precedentemente da una tale sorgente, dovremo<br />

necessariamente fare riferimento alla densità <strong>di</strong> probabilità ( ) della variabile<br />

aleatoria che essa genera in un dato istante. Se supponiamo che la sorgente sia<br />

stazionaria tale densità <strong>di</strong> probabilità sarà in<strong>di</strong>pendente dall’istante <strong>di</strong> osservazione.<br />

Basandoci su quanto detto per le sorgenti con alfabeto <strong>di</strong>screto, sorge spontaneo<br />

definire tale entropia come segue:<br />

( ) ∫ ( )<br />

(2.1.1)<br />

( )<br />

assumendo che . Tale definizione non gode <strong>di</strong> tutte le proprietà <strong>di</strong> cui godeva<br />

l’entropia <strong>di</strong> una sorgente con alfabeto finito, essa ad esempio può assumere anche<br />

valori negativi e può non essere limitata.<br />

Anche per le sorgenti ad alfabeto continuo possiamo definire l’entropia associata<br />

a più simboli emessi. Nel caso <strong>di</strong> due soli simboli si ha:<br />

( ) ∫ ∫ ( )<br />

( )<br />

∫ ∫ ( )<br />

( )<br />

∫ ∫ ( )<br />

( )<br />

( ) ( )<br />

( ) ( )<br />

se X e Y sono statisticamente in<strong>di</strong>pendenti dalla precedente si ottiene:<br />

(2.1.2)<br />

Si può provare che in generale risulta:<br />

( ) ( ) ( ) (2.1.3)<br />

( ) ( ) ( ) (2.1.4)


Capitolo - 2 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci 16<br />

2.2 - Sorgenti Gaussiane<br />

Osserviamo che:<br />

( ) ∫ ( ) ( ( ))<br />

∫ ( )( ( ) ) ∫ ( ( )) ( )<br />

∫ ( ( ))<br />

(2.2.1)<br />

ne segue che se ∫ ( ( )) la ( ) è limitata inferiormente. Ciò avviene<br />

certamente se la<br />

anche quella <strong>di</strong> ( ( )) . La<br />

( ) è limitata. La sommabilità <strong>di</strong> ( ) garantisce in questo caso<br />

( ) è certamente limitata inferiormente anche quando la<br />

( ) non si mantiene limitata, purchè in corrispondenza ai valori <strong>di</strong> in cui <strong>di</strong>verge lo<br />

faccia più lentamente <strong>di</strong> con per . Consideriamo adesso una<br />

generica ddp ( ) risulta:<br />

∫ ( )<br />

∫ ( )<br />

( )<br />

∫ ( ) ( ( )<br />

( )<br />

( )<br />

∫ ( )<br />

)<br />

( )<br />

( )<br />

La precedente può essere pensata come una generalizzazione della (1.4.6).<br />

(2.2.2)<br />

Supponiamo che la sorgente emetta una variabile aleatoria con varianza finita ,<br />

ponendo nella (2.2.2) ( )<br />

√<br />

( ¯ )<br />

, cioè scegliendo una ddp Gaussiana con<br />

varianza<br />

otteniamo:<br />

∫ ( )<br />

( )<br />

∫ ( ) (√<br />

( ¯ )<br />

)<br />

√ ∫ ( ) ∫ ( ) (<br />

( ¯ )<br />

)<br />

(2.2.3)<br />

( ) ∫ ( ) ( ¯ )<br />

( )<br />

( )<br />

d’altro canto si verifica facilmente che ( ) è anche l’entropia <strong>di</strong> una variabile<br />

aleatoria Gaussiana, con varianza .<br />

Quanto appena esposto ci porta a concludere che a parità <strong>di</strong> varianza le sorgenti<br />

continue Gaussiane generano la massima informazione me<strong>di</strong>a.


Sorgenti con Alfabeto Continuo 17<br />

È opportuno osservare che l’entropia <strong>di</strong> una sorgente stazionaria continua è<br />

in<strong>di</strong>pendente dal valor me<strong>di</strong>o della variabile aleatoria emessa. Un valor me<strong>di</strong>o non<br />

nullo incide solo sul valor quadratico me<strong>di</strong>o della sequenza emessa aumentandolo. Il<br />

che in altri termine vale a <strong>di</strong>re che un valor me<strong>di</strong>o <strong>di</strong>verso da zero aumenta la potenza<br />

me<strong>di</strong>a del processo senza offrire alcun beneficio in termini d’informazione me<strong>di</strong>a a<br />

esso associata.


Capitolo - 3<br />

LA CODIFICA DI SORGENTE<br />

3.1 - Premessa<br />

Gli attuali sistemi <strong>di</strong> trasmissione sono spesso basati su un mezzo trasmissivo <strong>di</strong><br />

capacità limitata che viene con<strong>di</strong>viso tra più utenti, <strong>di</strong>venta quin<strong>di</strong> essenziale cercare <strong>di</strong><br />

ottimizzarne l’utilizzo al fine <strong>di</strong> consentire l’accesso alla risorsa ad un maggior numero<br />

<strong>di</strong> soggetti. È quin<strong>di</strong> auspicabile mettere in atto dei meto<strong>di</strong> che consentano <strong>di</strong><br />

“compattare” le informazioni da trasmettere in modo da utilizzare il sistema per il<br />

minor tempo possibile, ovvero da occupare una minore quantità <strong>di</strong> banda, senza<br />

pregiu<strong>di</strong>care il contenuto informativo del messaggio. Lo stesso <strong>di</strong>scorso ovviamente<br />

vale nel caso dell’immagazzinamento delle informazioni, “zippare” un file serve a<br />

sfruttare meglio la memoria dell’hard <strong>di</strong>sk.<br />

La quasi totalità dei sistemi <strong>di</strong> trasmissione oggigiorno è numerica, e fa uso <strong>di</strong><br />

sistemi d’elaborazione <strong>di</strong>gitale che lavorano in base due, pertanto ci occuperemo <strong>di</strong><br />

analizzare delle tecniche <strong>di</strong> co<strong>di</strong>fica <strong>di</strong> sorgente che associno alle singole lettere o a<br />

interi messaggi emessi da quest’ultima delle parole binarie cioè delle stringhe <strong>di</strong><br />

lunghezza non necessariamente costante costituite utilizzando un alfabeto <strong>di</strong> due sole<br />

lettere.<br />

Una sorgente che utilizza un alfabeto <strong>di</strong> car<strong>di</strong>nalità può emettere al più M-<br />

messaggi <strong>di</strong>stinti, se a ciascuno <strong>di</strong> essi si associa una parola binaria si <strong>di</strong>ce che si è<br />

definito un co<strong>di</strong>ce.<br />

3.2 - La Regola del Prefisso<br />

Il co<strong>di</strong>ce citato nel precedente paragrafo può essere costruito utilizzando parole<br />

binarie tutte con lo stesso numero <strong>di</strong> bit, nel qual caso la lunghezza minima <strong>di</strong> tali<br />

parole non potrà essere inferiore a:<br />

( ) (3.2.1)<br />

dove in<strong>di</strong>ca il primo intero non minore.<br />

Si possono anche utilizzare parole <strong>di</strong> co<strong>di</strong>ce <strong>di</strong> lunghezza variabile, in questo<br />

caso, però, occorrerà prestare attenzione al fatto che se s’invia un file costituito da più<br />

M-messaggi consecutivi i singoli messaggi dovranno essere deco<strong>di</strong>ficabili in modo<br />

univoco, dovremo in altri termini essere certi del fatto che a coppie <strong>di</strong>stinte <strong>di</strong> sequenze<br />

finite <strong>di</strong> messaggi il co<strong>di</strong>ce non associ la stessa stringa binaria (da qui in poi con stringa<br />

in<strong>di</strong>cheremo una sequenza <strong>di</strong> lunghezza finita <strong>di</strong> parole <strong>di</strong> co<strong>di</strong>ce).


20 Capitolo - 3 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

Tale requisito è certamente sod<strong>di</strong>sfatto se nessuna delle parole del co<strong>di</strong>ce è<br />

identica alla parte iniziale <strong>di</strong> un’altra parola <strong>di</strong> co<strong>di</strong>ce. In questo caso <strong>di</strong>ciamo che il<br />

co<strong>di</strong>ce sod<strong>di</strong>sfa la regola del prefisso.<br />

È opportuno sottolineare che la regola del prefisso è solo sufficiente, si potrebbero<br />

cioè in<strong>di</strong>viduare dei co<strong>di</strong>ci che pur non rispettandola, sono deco<strong>di</strong>ficabili in<br />

modo univoco. Tali co<strong>di</strong>ci tuttavia ci obbligherebbero per effettuare la deco<strong>di</strong>fica ad<br />

attendere la ricezione se non dell’intera sequenza <strong>di</strong> M-messaggi certamente <strong>di</strong> più <strong>di</strong><br />

un messaggio. Viceversa, se il co<strong>di</strong>ce sod<strong>di</strong>sfa la regola del prefisso la deco<strong>di</strong>fica può<br />

essere effettuata istantaneamente cioè ogniqualvolta una parola binaria coincide con<br />

una parola <strong>di</strong> co<strong>di</strong>ce l’M-messaggio corrispondente si può dare per identificato, non<br />

essendo possibile alcuna ambiguità.<br />

3.3 - Lunghezza Me<strong>di</strong>a <strong>di</strong> un Co<strong>di</strong>ce.<br />

Note le caratteristiche della sorgente e fissata la lunghezza del messaggio da<br />

co<strong>di</strong>ficare e detto ( ) il numero <strong>di</strong> bit che costituiscono la parola binaria ( ) che il<br />

co<strong>di</strong>ce associa all’M-messaggio , ad ogni co<strong>di</strong>ce si può associare una lunghezza<br />

me<strong>di</strong>a della parola <strong>di</strong> co<strong>di</strong>ce:<br />

∑ ( ) ( )<br />

(3.3.1)<br />

A<br />

ne <strong>di</strong>scende che il numero me<strong>di</strong>o <strong>di</strong> bit utilizzati per ciascun simbolo emesso dalla<br />

sorgente è pari a .<br />

La conoscenza <strong>di</strong> tale dato è importante in quanto ci permette ad esempio <strong>di</strong><br />

stimare con buona approssimazione lo spazio <strong>di</strong> memoria necessario per archiviare un<br />

file “tipico” costituito da un numero sufficientemente grande <strong>di</strong> simboli emessi dalla<br />

sorgente .<br />

Dal nostro punto <strong>di</strong> vista un co<strong>di</strong>ce <strong>di</strong> sorgente è tanto migliore quanto minore è<br />

la sua lunghezza me<strong>di</strong>a a patto che ovviamente la sua deco<strong>di</strong>fica non risulti troppo<br />

onerosa.<br />

Esiste un importante teorema che, nel caso <strong>di</strong> sorgenti DMS stazionarie da un<br />

lato pone un limite inferiore alla lunghezza me<strong>di</strong>a ottenibile al variare del co<strong>di</strong>ce scelto<br />

e dall’altro garantisce che, se si è <strong>di</strong>sposti ad accettare una maggiore complessità nei<br />

processi <strong>di</strong> co<strong>di</strong>fica/deco<strong>di</strong>fica è possibile approssimare tale limite bene quanto si<br />

vuole.


La Co<strong>di</strong>fica <strong>di</strong> Sorgente 21<br />

Per <strong>di</strong>mostrare tale teorema ci serviremo <strong>di</strong> una con<strong>di</strong>zione necessaria alla<br />

deco<strong>di</strong>ficabilità <strong>di</strong> un co<strong>di</strong>ce <strong>di</strong> sorgente, a <strong>di</strong>fferenza <strong>di</strong> quella del prefisso che, come<br />

già detto, è invece una con<strong>di</strong>zione sufficiente.<br />

3.4 - La Disuguaglianza <strong>di</strong> Kraft.<br />

Consideriamo una sorgente DMS con alfabeto <strong>di</strong> car<strong>di</strong>nalità ed un generico<br />

co<strong>di</strong>ce per gli M-messaggi emessi da essa. Comunque scelto vale l’identità:<br />

( ∑ ( ) ) ∑ ∑<br />

A<br />

A A<br />

A<br />

∑ ( ( ) ( ) ( ))<br />

(3.4.1)<br />

la sommatoria ad ultimo membro della precedente può anche essere calcolata<br />

“accorpando” i termini con uguale esponente. A tale scopo in<strong>di</strong>chiamo con la<br />

massima lunghezza raggiunta dalle parole <strong>di</strong> co<strong>di</strong>ce. Il massimo esponente che può<br />

comparire nell’ultimo membro della (3.4.1) vale quin<strong>di</strong> . Ciò premesso, possiamo<br />

scrivere:<br />

( ∑ ( ) ) ∑ (3.4.2)<br />

A<br />

essendo il numero <strong>di</strong> stringhe <strong>di</strong> bit che si possono ottenere giustapponendo<br />

parole <strong>di</strong> co<strong>di</strong>ce.<br />

Se preten<strong>di</strong>amo che il co<strong>di</strong>ce sia univocamente deco<strong>di</strong>ficabile, dovrà necessariamente<br />

essere , se così non fosse, esisterebbero certamente almeno due<br />

sequenze <strong>di</strong> M-messaggi co<strong>di</strong>ficate con la stessa stringa binaria <strong>di</strong> bit.<br />

La considerazione fatta suggerisce per la (3.4.2) la seguente maggiorazione:<br />

( ∑ ( ) ) ∑ ∑ (3.4.3)<br />

A<br />

Osserviamo che la precedente deve valere per ogni e, visto che il primo membro, se<br />

crescesse con lo farebbe esponenzialmente, non può essere sod<strong>di</strong>sfatta a meno che<br />

non risulti<br />

∑ ( )<br />

A<br />

(3.4.4)<br />

la precedente va sotto il nome <strong>di</strong> Disuguaglianza <strong>di</strong> Kraft ed in quanto con<strong>di</strong>zione<br />

necessaria all’univoca deco<strong>di</strong>ficabilità costituisce un vincolo sulla <strong>di</strong>stribuzione delle<br />

lunghezze delle parole d’un co<strong>di</strong>ce.<br />

Esempio 3.1<br />

Premesso che:un grafo è definito da una coppia d’insiemi ( );


22 Capitolo - 3 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

- l’insieme è detto insieme dei vertici ;<br />

- l’insieme è detto insieme dei lati e definisce una relazione (detta <strong>di</strong> a<strong>di</strong>acenza)<br />

su<br />

- a ciascun vertice <strong>di</strong> un grafo si può associare un grado definito come il numero <strong>di</strong> lati in cui<br />

esso appare;<br />

- un percorso <strong>di</strong> lunghezza è definito come una sequenza <strong>di</strong> vertici , tali che<br />

( ) , ;<br />

- un grafo è detto connesso se comunque scelti due vertici <strong>di</strong>stinti esiste un percorso tra essi;<br />

- un ciclo è un percorso in cui il primo e l’ultimo vertice coincidono;<br />

- un albero è un grafo connesso senza cicli;<br />

- in un albero i no<strong>di</strong> <strong>di</strong> grado uno sono detti foglie;<br />

- un albero ha ra<strong>di</strong>ce se uno dei vertici viene etichettato come tale;<br />

- un albero binario è un albero con ra<strong>di</strong>ce in cui nessun vertice ha grado maggiore <strong>di</strong> tre e la<br />

ra<strong>di</strong>ce ha grado non maggiore <strong>di</strong> due;<br />

- per or<strong>di</strong>ne <strong>di</strong> un vertice si intende la lunghezza del percorso che lo connette alla ra<strong>di</strong>ce, i<br />

vertici <strong>di</strong> or<strong>di</strong>ne a<strong>di</strong>acenti ad un nodo <strong>di</strong> or<strong>di</strong>ne sono detti figli ed il vertice che li<br />

connette è detto padre.<br />

Un metodo per costruire un co<strong>di</strong>ce che sod<strong>di</strong>sfi la regola del prefisso è definire un albero binario<br />

avente foglie ed associare ai vertici stringhe binarie <strong>di</strong> lunghezza pari al loro or<strong>di</strong>ne secondo le<br />

seguenti regole:<br />

- alla ra<strong>di</strong>ce si associa la stringa vuota<br />

- ai vertici figli si associano stringhe <strong>di</strong>stinte ottenute a partire da quelle associate ai vertici<br />

padri, giustapponendovi rispettivamente i simboli ‘0’ ed ‘1’.<br />

Al termine della costruzione, le foglie dell’albero hanno associate parole <strong>di</strong> co<strong>di</strong>ce che<br />

sod<strong>di</strong>sfano la regola del prefisso. E’ utile notare che la <strong>di</strong>seguaglianza <strong>di</strong> Kraft è sod<strong>di</strong>sfatta per<br />

costruzione. In particolare lo è come uguaglianza nel caso in cui il numero <strong>di</strong> vertici dell’albero sia<br />

.<br />

3.5 - Limite Inferiore per la Lunghezza <strong>di</strong> un Co<strong>di</strong>ce.<br />

messaggio<br />

Forti del precedente risultato consideriamo la seguente funzione del generico M-<br />

( )<br />

( )<br />

∑ ( ˜ )<br />

˜ A<br />

(3.5.1)<br />

( ) sod<strong>di</strong>sfa tutte le con<strong>di</strong>zioni per poter essere la dmp <strong>di</strong> una M-upla <strong>di</strong> variabili<br />

aleatorie <strong>di</strong>screte che assumono valori appartenenti all’alfabeto , pertanto, tenendo<br />

conto della (1.3.6), si può scrivere:<br />

( ) ∑ ( )<br />

A<br />

∑ ( )<br />

( )<br />

A<br />

( )<br />

∑ ( )<br />

A<br />

( )<br />

∑ ( ) ∑ ( ˜ )<br />

A<br />

˜ A<br />

(3.5.2)<br />

∑ ( ) ( ) ( ∑ ( ˜ ) ) ( ∑ ( ˜ ) )<br />

A<br />

˜ A<br />

˜ A<br />

La <strong>di</strong>suguaglianza <strong>di</strong> Kraft ci garantisce che il logaritmo all’ultimo membro della<br />

precedente non è positivo, se ne conclude che vale la <strong>di</strong>suguaglianza<br />

( ) (3.5.3)<br />

che, se la sorgente è stazionaria, comporta:


La Co<strong>di</strong>fica <strong>di</strong> Sorgente 23<br />

( ) (3.5.4)<br />

La precedente ci fa capire che, non possono esistere co<strong>di</strong>ci univocamente deco<strong>di</strong>ficabili<br />

che utilizzano un numero me<strong>di</strong>o <strong>di</strong> bit per simbolo minore dell’entropia<br />

della sorgente da co<strong>di</strong>ficare. Esiste quin<strong>di</strong> un limite inferiore alla possibilità <strong>di</strong><br />

“comprimere”, senza per<strong>di</strong>te, le informazioni emesse dalla sorgente, a prescindere dalla<br />

complessità del co<strong>di</strong>ficatore, che come s’intuisce, tipicamente cresce al crescere <strong>di</strong> .<br />

La (3.5.4) ha anche il merito <strong>di</strong> chiarire meglio l’importanza dell’entropia nell’ambito<br />

della <strong>Teoria</strong> dell’Informazione.<br />

Esempio 3.2<br />

Un algoritmo ricorsivo per la costruzione <strong>di</strong> un co<strong>di</strong>ce <strong>di</strong> sorgente ottimo nel senso della<br />

lunghezza me<strong>di</strong>a delle parole è dovuto ad Huffman (1952).<br />

L’algoritmo <strong>di</strong> Huffman consiste nella costruzione ricorsiva <strong>di</strong> un albero binario. Ricordando che<br />

l’obiettivo è ottenere la minore lunghezza me<strong>di</strong>a possibile, si intuisce che a simboli meno probabili<br />

devono corrispondere parole <strong>di</strong> co<strong>di</strong>ce aventi lunghezza maggiore, ovvero foglie aventi or<strong>di</strong>ne<br />

maggiore.<br />

Per costruire l’albero si deve <strong>di</strong>sporre delle probabilità ( ) <strong>di</strong> manifestazione degli<br />

messaggi . L’albero costruito dall’algoritmo <strong>di</strong> Huffman ha vertici: i primi sono<br />

associati alle probabilità , mentre i restanti vengono determinati ricorsivamente. A ciascun<br />

vertice viene associata una variabile booleana che ne in<strong>di</strong>ca l’utilizzo da parte dell’algoritmo.<br />

Al passo -esimo,<br />

si procede come segue:<br />

si scelgono tra i vertici non ancora marcati come utilizzati i due vertici e aventi le<br />

probabilità associate minori, si marcano e come utilizzati e si introduce un nuovo vertice<br />

avente probabilità associata pari a si aggiungono all’insieme dei lati i due elementi<br />

( ) e ( ).<br />

Sostanzialmente l’algoritmo può essere riassunto come segue: “inizialmente tutti i vertici sono<br />

orfani; a ciascun passo si scelgono i due orfani aventi probabilità associata minima e li si dota <strong>di</strong> un<br />

vertice padre (a sua volta orfano) avente probabilità pari alla somma delle probabilità dei figli”.<br />

Al termine dell’algoritmo resta un unico vertice non ancora utilizzato, e lo si denota ra<strong>di</strong>ce<br />

dell’albero. Una volta costruito l’albero, il co<strong>di</strong>ce <strong>di</strong> Huffman è definito dalla procedura<br />

dell’Esempio 3.1.<br />

Fig.E 3.1 - Albero e co<strong>di</strong>ce <strong>di</strong> Huffman associato al co<strong>di</strong>ce con M = 2<br />

Come esempio, consideriamo la costruzione <strong>di</strong> un co<strong>di</strong>ce <strong>di</strong> Huffman per una sorgente DMS<br />

stazionaria avente alfabeto e probabilità <strong>di</strong> emissione e .<br />

Essendo la sorgente binaria, con il co<strong>di</strong>ce contiene due sole stringhe ‘0’ ed ‘1’; la<br />

lunghezza me<strong>di</strong>a del co<strong>di</strong>ce risulta , mentre l’entropia è data da ( )<br />

Con , gli M-messaggi possibili sono quattro, caratterizzati<br />

dalle probabilità <strong>di</strong> emissione , , e ; l’albero costruito<br />

secondo l’algoritmo <strong>di</strong> Huffman è riportato in Fig.E 3.1.<br />

La lunghezza me<strong>di</strong>a del co<strong>di</strong>ce risulta ( ) ed il numero<br />

me<strong>di</strong>o <strong>di</strong> bit utilizzati per simbolo ( ), in accordo con la (3.5.4).


24 Capitolo - 3 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

3.6 - La Proprietà <strong>di</strong> Equipartizione.<br />

Occupiamoci adesso <strong>di</strong> un’importante proprietà delle sorgenti d’informazione.<br />

Consideriamo una DMS stazionaria con entropia ( ) , fissiamo un e,<br />

nell’insieme <strong>di</strong> tutti gli M-messaggi, pren<strong>di</strong>amo in considerazione il sottoinsieme<br />

S così definito<br />

( ( ) )<br />

Dalla precedente <strong>di</strong>scende innanzi tutto che:<br />

( )<br />

( ( ) ) (3.6.1)<br />

∑<br />

( ( ) )<br />

S<br />

∑ ( )<br />

(3.6.2)<br />

( ( ) )<br />

Dalla quale deduciamo che la car<strong>di</strong>nalità <strong>di</strong> S non può essere maggiore <strong>di</strong><br />

quin<strong>di</strong> tutti i messaggi appartenenti ad S possono essere co<strong>di</strong>ficati utilizzando parole<br />

<strong>di</strong> co<strong>di</strong>ce <strong>di</strong> lunghezza fissa con un numero <strong>di</strong> bit non superiore a:<br />

( ( ) ) (3.6.3)<br />

Tenendo conto del fatto che la sorgente è per ipotesi priva <strong>di</strong> memoria si può anche<br />

scrivere:<br />

S<br />

( ( ) ) ∑<br />

( )<br />

( ) ∑ ( ( ))<br />

( ( ) )<br />

(3.6.4)<br />

Dall’ultimo membro della precedente si può facilmente estrapolare la definizione<br />

dell’insieme<br />

, cioè del complementare <strong>di</strong> S rispetto all’insieme degli M-messaggi:<br />

¯ |∑ ( ( )) ( )| (3.6.5)<br />

Ci proponiamo <strong>di</strong> maggiorare la probabilità dell’evento: “la sorgente ha emesso un<br />

messaggio appartenete a ”. A tal fine ricor<strong>di</strong>amo che la <strong>di</strong>suguaglianza <strong>di</strong> Chebyshev<br />

garantisce che la probabilità che una V.A. con varianza <strong>di</strong>sti dal suo valore me<strong>di</strong>o<br />

per più <strong>di</strong> è non maggiore <strong>di</strong> .<br />

Osserviamo che ∑ ( ( )) può essere interpretata come una V.A. ottenuta<br />

sommando le variabili aleatorie statisticamente in<strong>di</strong>pendenti ( ( )) tutte<br />

identicamente <strong>di</strong>stribuite. Osserviamo che il valor me<strong>di</strong>o <strong>di</strong> ciascuna <strong>di</strong> esse vale<br />

( ) quin<strong>di</strong> il valor me<strong>di</strong>o <strong>di</strong> vale:


La Co<strong>di</strong>fica <strong>di</strong> Sorgente 25<br />

(∑ ( ( ))) ( ) (3.6.6)<br />

Anche la varianza <strong>di</strong> è volte la varianza <strong>di</strong> ( ) e vale:<br />

∑( ( ( )) ( )) ( ) (3.6.7)<br />

In conclusione, ponendo<br />

, la probabilità che un M-messaggio appartenga<br />

ad<br />

sarà non maggiore <strong>di</strong><br />

( S )<br />

∑ ( ( ( ( ) )) ( )) ( ( ) )<br />

(3.6.8)<br />

La <strong>di</strong>suguaglianza appena scritta ci <strong>di</strong>ce che la probabilità che un M-messaggio<br />

non appartenga a S tende a zero al tendere <strong>di</strong> all’infinito.<br />

In altri termini abbiamo appena mostrato che “asintoticamente” i messaggi<br />

emessi da una sorgente possono essere sud<strong>di</strong>visi in due classi la prima contiene<br />

(<br />

messaggi sostanzialmente equiprobabili con probabilità <strong>di</strong> manifestarsi<br />

) , la<br />

seconda contenente messaggi che si presentano con probabilità prossima a zero.<br />

La proprietà appena descritta, che vale anche per sorgenti dotate <strong>di</strong> memoria, va<br />

sotto il nome <strong>di</strong> proprietà <strong>di</strong> equipartizione (equipartition property).<br />

Tra l’altro essa ci <strong>di</strong>ce che, pur <strong>di</strong> considerare messaggi sufficientemente lunghi,<br />

il numero <strong>di</strong> messaggi <strong>di</strong>stinti che una sorgente emette è approssimativamente pari a<br />

( )<br />

che rappresenta solo una frazione degli teoricamente generabili.<br />

Il fatto che esista un sottoinsieme <strong>di</strong> messaggi aventi un’esigua probabilità <strong>di</strong><br />

manifestarsi può essere utilmente sfruttato nel caso in cui si vogliano mettere a punto<br />

dei sistemi <strong>di</strong> co<strong>di</strong>fica che accettino una qualche per<strong>di</strong>ta nel contenuto informativo. Si<br />

potrebbe ad esempio pensare <strong>di</strong> progettare un co<strong>di</strong>ficatore <strong>di</strong> sorgente che ignori i<br />

messaggi poco probabili. Ciò porterebbe a una per<strong>di</strong>ta d’informazione che potrebbe<br />

però essere trascurabile rispetto a quella che si perderebbe comunque a causa ad<br />

esempio degli errori introdotti dal sistema <strong>di</strong> trasmissione.<br />

3.7 - Teorema sulla Co<strong>di</strong>fica <strong>di</strong> una Sorgente DMS.<br />

Abbiamo visto che la (3.5.4) impone un limite inferiore alla lunghezza me<strong>di</strong>a del<br />

co<strong>di</strong>ce, ma, la stessa, nulla ci <strong>di</strong>ce su quanto a detto limite ci si possa avvicinare.<br />

Per rispondere a questo quesito utilizzeremo la proprietà <strong>di</strong> equipartizione<br />

introdotta nel paragrafo precedente al fine <strong>di</strong> costruire un co<strong>di</strong>ce univocamente<br />

deco<strong>di</strong>ficabile per gli M-messaggi emessi dalla sorgente.


26 Capitolo - 3 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

Fissiamo ad arbitrio un , possiamo utilizzare il primo bit (binary <strong>di</strong>git) della<br />

parola del costruendo co<strong>di</strong>ce per classificarla come appartenente o meno all’insieme S<br />

definito nel precedente paragrafo. Osserviamo quin<strong>di</strong> che, per identificare<br />

univocamente tutti gli elementi <strong>di</strong> S , sulla base della (3.6.3), saranno sufficienti<br />

ulteriori S ( ( ) ) bit. Restano da co<strong>di</strong>ficare gli elementi appartenenti<br />

ad . A tal fine ricor<strong>di</strong>amo che tali elementi hanno una probabilità molto piccola <strong>di</strong><br />

manifestarsi, quin<strong>di</strong> incidono poco sulla lunghezza me<strong>di</strong>a del co<strong>di</strong>ce che è la quantità<br />

che ci interessa limitare. Ciò premesso possiamo utilizzare per co<strong>di</strong>ficarli un numero <strong>di</strong><br />

bit , laddove bit sarebbero sufficienti a co<strong>di</strong>ficare tutti gli<br />

M-messaggi.<br />

In sostanza la generica parola <strong>di</strong> co<strong>di</strong>ce avrà lunghezza S o<br />

, e non vi è<br />

nessuna ambiguità per il deco<strong>di</strong>ficatore che osservando il primo bit <strong>di</strong> ogni parola<br />

saprebbe quale è la sua lunghezza. Ciò ovviamente è vero solo se il co<strong>di</strong>ficatore e il<br />

deco<strong>di</strong>ficatore sono esenti da errori.<br />

Calcoliamo adesso lunghezza me<strong>di</strong>a per simbolo emesso dalla sorgente del<br />

co<strong>di</strong>ce che abbiamo appena costruito:<br />

( S ( S ) ( )) (3.7.1)<br />

che, tenuto conto della (3.6.8), si può maggiorare come segue:<br />

( S ( S ) ( )) ( S ( S ))<br />

( S ̅̅̅ )<br />

( ( ( ) ) ) ( )<br />

(3.7.2)<br />

( ( ) ) ( )<br />

( )<br />

Si osservi che<br />

può essere scelto arbitrariamente, in particolare possiamo<br />

scegliere<br />

ottenendo:<br />

( ) ( ) (3.7.3)<br />

Osserviamo adesso che nell’ultimo membro della (3.7.3) tutti gli adden<strong>di</strong> eccetto il<br />

primo tendono a zero al crescere <strong>di</strong> , possiamo quin<strong>di</strong> scriverla nella forma:<br />

( ) ( ) (3.7.4)


La Co<strong>di</strong>fica <strong>di</strong> Sorgente 27<br />

La precedente è molto importante perché ci permette <strong>di</strong> affermare che per le<br />

DMS, accettando eventualmente una complessità elevata <strong>di</strong> co<strong>di</strong>fica/deco<strong>di</strong>fica, si può<br />

costruire un co<strong>di</strong>ce che usa un numero me<strong>di</strong>o <strong>di</strong> bit per simbolo prossimo quanto si<br />

vuole all’entropia della sorgente.<br />

In conclusione mettendo insieme la (3.5.3) e la (3.7.4) abbiamo <strong>di</strong>mostrato il<br />

seguente<br />

Teorema 3.1<br />

Data una DMS stazionaria con entropia ( ) e comunque scelto , esiste un<br />

intero in corrispondenza al quale si può costruire un co<strong>di</strong>ce univocamente<br />

deco<strong>di</strong>ficabile che esibisce una lunghezza me<strong>di</strong>a per simbolo <strong>di</strong> sorgente che sod<strong>di</strong>sfa<br />

la seguente <strong>di</strong>suguaglianza:<br />

( ) ( ) (3.7.5)<br />

Inoltre, qualunque sia<br />

, non è possibile costruire co<strong>di</strong>ci per i quali risulti:<br />

( ) (3.7.6)<br />

***********<br />

Vale la pena <strong>di</strong> osservare che il co<strong>di</strong>ce che abbiamo costruito, se da un lato c’è<br />

stato utile per ottenere la (3.7.5), dal punto <strong>di</strong> vista pratico sarebbe <strong>di</strong>fficilmente<br />

applicabile perché presuppone la conoscenza della dmp della sorgente, dato questo <strong>di</strong><br />

cui in pratica <strong>di</strong>fficilmente si <strong>di</strong>spone. Esistono algoritmi <strong>di</strong> co<strong>di</strong>fica che tendono al<br />

limite inferiore imposto dalla (3.7.5) pur non presupponendo la conoscenza della dmp<br />

in parola, e che quin<strong>di</strong> si rivelano molto più utili in pratica.<br />

Esempio 3.3<br />

L’algoritmo <strong>di</strong> Huffman descritto nell’Esempio 3.2 richiede la conoscenza a priori delle<br />

probabilità dei simboli <strong>di</strong> sorgente. Descriviamo brevemente un possibile metodo per ottenere una<br />

versione adattativa dell’algoritmo che presuppone solo la conoscenza della car<strong>di</strong>nalità dell’alfabeto<br />

.<br />

L’idea è riassumibile in due punti:<br />

- utilizzare, invece delle probabilità <strong>di</strong> manifestazione, le frequenze relative <strong>di</strong> manifestazione<br />

dei simboli <strong>di</strong> sorgente, inizializzate con una <strong>di</strong>stribuzione a priori nota a co<strong>di</strong>ficatore e<br />

Fig.E 3.2 - Schema a blocchi <strong>di</strong> un generico codec (co<strong>di</strong>ficatore/deco<strong>di</strong>ficatore) adattativo.<br />

deco<strong>di</strong>ficatore


28 Capitolo - 3 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

- non aggiornare la tabella delle frequenze relative <strong>di</strong> apparizione dei simboli fintanto che il<br />

deco<strong>di</strong>ficatore non li ha potuti osservare.<br />

Lo schema <strong>di</strong> riferimento dell’algoritmo adattativo (che è <strong>di</strong> carattere generale) è riportato in<br />

Errore. L'origine riferimento non è stata trovata..<br />

Si noti che così descritto, questo metodo richiede nella peggiore delle ipotesi la ricostruzione<br />

(previa verifica <strong>di</strong> consistenza) dell’albero <strong>di</strong> Huffman per ogni simbolo trasmesso, il che può essere<br />

Fig.E 3.3 - Andamento temporale (blu), al variare <strong>di</strong> M, della lunghezza me<strong>di</strong>a del co<strong>di</strong>ce prodotto dal<br />

codec adattativo <strong>di</strong> Fig.E 3.2 per la sorgente DMS dell’Esempio 3.3. In rosso l’entropia stimata in base<br />

alle frequenze relative.<br />

impraticabile. Inoltre, l’algoritmo adattativo così formulato è basato sull’assunzione che le frequenze<br />

relative convergano in tempi brevi alle probabilità <strong>di</strong> manifestazione dei simboli; per “brevi” si<br />

intende rispetto al tempo durante il quale si può assumere che la sorgente sia effettivamente<br />

stazionaria.<br />

In Fig.E 3.3 è mostrato l’andamento temporale della lunghezza (me<strong>di</strong>a) del co<strong>di</strong>ce per un<br />

co<strong>di</strong>ficatore adattativo che elabora simboli quaternari caratterizzati dalle probabilità <strong>di</strong><br />

manifestazione , , e , al variare della lunghezza degli<br />

M-messaggi; l’entropia della sorgente è pari a ( ) .<br />

3.8 - Co<strong>di</strong>fica <strong>di</strong> Sorgenti con Memoria.<br />

Una sorgente è detta con memoria quando la probabilità <strong>di</strong> emissione <strong>di</strong> un<br />

simbolo <strong>di</strong>pende dalla sequenza <strong>di</strong> simboli emessa in precedenza:<br />

( ) ( ) (3.8.1)<br />

Come puntualizzato al termine del capitolo precedente, per una sorgente <strong>di</strong>screta<br />

con memoria l’entropia <strong>di</strong> un M-messaggio è minore dell’entropia della sorgente<br />

riguardata come senza memoria. Ciò implica che co<strong>di</strong>ficare una sorgente con memoria<br />

con meto<strong>di</strong> che possono essere ottimi nel caso <strong>di</strong> sorgenti DMS può risultare ben<br />

lontano dall’ottimo.<br />

Si potrebbe osservare che la proprietà <strong>di</strong> equipartizione, valida anche per sorgenti<br />

con memoria, permette <strong>di</strong> affermare che la co<strong>di</strong>fica senza memoria <strong>di</strong> M-messaggi è,


La Co<strong>di</strong>fica <strong>di</strong> Sorgente 29<br />

asintoticamente per<br />

qualche unità è quasi sempre proibitivo.<br />

, ottima; d’altra parte l’impiego <strong>di</strong> valori <strong>di</strong> M maggiori <strong>di</strong><br />

L’approccio utilizzato in pratica per la co<strong>di</strong>fica <strong>di</strong> sorgenti con memoria consiste<br />

nell’operare una forma <strong>di</strong> pre-co<strong>di</strong>fica allo scopo <strong>di</strong> rendere il più possibile incorrelata<br />

la sorgente. Riportiamo <strong>di</strong> seguito alcuni esempi <strong>di</strong>dattici che s’ispirano a meto<strong>di</strong><br />

impiegati nella pratica.<br />

Esempio 3.4<br />

Nel caso <strong>di</strong> sorgenti <strong>di</strong>screte ottenute tramite campionamento <strong>di</strong> segnali a valori <strong>di</strong>screti (si pensi<br />

ad esempio ad una scansione FAX), si può impiegare la co<strong>di</strong>fica run-length (RLE).<br />

L’idea alla base della RLE è sostituire sequenze costituite da simboli identici con una in<strong>di</strong>cazione<br />

<strong>di</strong> quale simbolo viene ripetuto quante volte. Ad esempio, la co<strong>di</strong>fica run-length della sequenza:<br />

A, A, A, A, A, B, B, B, B, B, B, C, C, C, C, A, A, B, B, B, B, B, C, C, C<br />

è data da:<br />

(A,5), (B,6), (C,4), (A,2), (B,5), (C,3).<br />

Per valutare l’efficienza della co<strong>di</strong>fica run-length si deve tenere conto dell’overhead richiesto per<br />

co<strong>di</strong>ficare la lunghezza dei run. Per ottenere qualche numero tangibile, consideriamo la piccola<br />

immagine in bianco e nero (32 righe, 128 colonne) in Fig.E 3.4.<br />

Questa immagine, riguardata come una sequenza <strong>di</strong> simboli binari emessi da una sorgente DMS,<br />

ha una entropia <strong>di</strong> 0.5871 bit/simbolo (578 pixel neri, 3518 pixel bianchi), ovvero un contenuto<br />

informativo stimato <strong>di</strong> 2405 bit.<br />

Se co<strong>di</strong>ficata RLE per colonne con lunghezza massima dei run pari a 511, è rappresentata da 313<br />

run aventi una entropia stimata <strong>di</strong> 4.582 bit/run ovvero un contenuto informativo complessivo non<br />

inferiore a 1435 bit (con un guadagno potenziale del 65% rispetto alla <strong>di</strong>mensione non co<strong>di</strong>ficata <strong>di</strong><br />

4096 bit).<br />

Si deve però notare che la lunghezza massima dei run è un parametro problematico da impostare,<br />

in quanto se, da una parte, incrementandolo il numero complessivo <strong>di</strong> run <strong>di</strong>minuisce, dall’altra il<br />

numero <strong>di</strong> bit necessario a co<strong>di</strong>ficare la lunghezza <strong>di</strong> un singolo run aumenta, sicché per immagini <strong>di</strong><br />

piccola <strong>di</strong>mensione come questa l’effettivo guadagno può risultare marginale.<br />

Da segnalare che per la co<strong>di</strong>fica <strong>di</strong> immagini in bianco e nero (ad. esempio FAX), esistono<br />

generalizzazioni bi<strong>di</strong>mensionali della co<strong>di</strong>fica run length, che sfruttano le correlazioni esistenti tra le<br />

righe.<br />

Esempio 3.5<br />

Nel caso <strong>di</strong> sorgenti<br />

<strong>di</strong>screte generiche esistono<br />

molti meto<strong>di</strong>, nessuno<br />

dei quali ottimo.<br />

Un approccio utilizzato<br />

nella co<strong>di</strong>fica <strong>di</strong> sorgente<br />

<strong>di</strong> dati correlati è<br />

Fig.E 3.4 - Immagine (ingran<strong>di</strong>ta in modo da evidenziare i singoli pixel) per l’esempio<br />

<strong>di</strong> co<strong>di</strong>fica run-length (32x128x1).<br />

quello a <strong>di</strong>zionario. Il<br />

più <strong>di</strong>ffuso algoritmo <strong>di</strong><br />

co<strong>di</strong>fica <strong>di</strong> sorgente a<br />

<strong>di</strong>zionario è il Lempel-Ziv (del 1977, LZ77), implementato in molte utility “zip” (pkzip, winzip,<br />

infozip, gzip, compress e altre).<br />

L’idea della co<strong>di</strong>fica LZ77 è sostituire, nella sequenza originaria, a sequenze <strong>di</strong> simboli già<br />

incontrate una in<strong>di</strong>cazione <strong>di</strong> “a partire da dove” e “per quanti simboli” è possibile copiarle. Per<br />

chiarire, consideriamo la co<strong>di</strong>fica LZ77 della sequenza dell’Esempio 3.4<br />

(A,1,4), (B,1,5), (C,1,3), (A,11,6), (C,1,2).<br />

Il primo blocco, (A,1,4), viene deco<strong>di</strong>ficato come: “dopo un simbolo A, torna in<strong>di</strong>etro <strong>di</strong> un passo<br />

e copia per quattro volte”, ovvero una sequenza <strong>di</strong> cinque simboli A. Il secondo blocco ed il terzo<br />

blocco sono analoghi al primo. Per comprendere come viene interpretato il quarto blocco, notiamo<br />

che dopo i primi tre blocchi il deco<strong>di</strong>ficatore avrà prodotto la sequenza:<br />

A, A, A, A, A, B, B, B, B, B, B, C, C, C, C.


30 Capitolo - 3 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

A questo punto, aggiungere un simbolo A, tornare in<strong>di</strong>etro <strong>di</strong> un<strong>di</strong>ci passi e copiare per sei volte<br />

corrisponde ad aggiungere la sequenza A, B, B, B, B, B, C in coda. L’ultimo blocco è <strong>di</strong> tipo runlength<br />

come i primi tre.<br />

La co<strong>di</strong>fica LZ77 dell’immagine in bianco e nero <strong>di</strong> Fig.E 3.4 è una sequenza <strong>di</strong> solo 60 triplette<br />

aventi una entropia stimata <strong>di</strong> 11.52 bit ciascuna, per un contenuto informativo complessivo non<br />

minore <strong>di</strong> 692 bit (con un guadagno potenziale dell’83% sulla <strong>di</strong>mensione non co<strong>di</strong>ficata <strong>di</strong> 4096<br />

bit).


4.1 - L’Informazione Mutua.<br />

Capitolo - 4<br />

CANALI PRIVI DI MEMORIA<br />

Consideriamo un generico esperimento casuale. Abbiamo detto che al manifestarsi<br />

<strong>di</strong> un dato evento E è associata una quantità d’informazione<br />

; la stessa<br />

(E )<br />

quantità può essere interpretata come la nostra incertezza sull’evento E . Ad esempio<br />

se (E ) allora sul fatto che E si manifesti non abbiamo nessuna incertezza ed in<br />

questo caso si avrebbe<br />

(E )<br />

nel caso in cui<br />

(E ) fosse molto piccola<br />

avremmo una grande incertezza sul fatto che E si possa manifestare, ed acquisiremmo<br />

quin<strong>di</strong> una grande informazione qualora si manifestasse.<br />

Consideriamo adesso una coppia d’eventi E , E , il manifestarsi <strong>di</strong> E può<br />

variare la nostra incertezza su E se ad esempio E E il manifestarsi <strong>di</strong> E<br />

rimuoverebbe tutta l’incertezza<br />

(E ) che a priori avevamo su E . Se, viceversa, i<br />

due eventi fossero statisticamente in<strong>di</strong>pendenti il manifestarsi <strong>di</strong> E<br />

immutata l’incertezza che a priori avevamo su E .<br />

lascerebbe<br />

In altri termini se sapessimo che E è verificato il manifestarsi <strong>di</strong> E ci fornirebbe<br />

un’informazione in genere <strong>di</strong>versa da quella che avremmo avuto a priori (cioè senza<br />

saper nulla circa E ). In particolare l’informazione fornita a posteriori (cioè sapendo<br />

che E è verificato) dal manifestarsi <strong>di</strong> E varrebbe<br />

(E E ) .<br />

Si definisce informazione mutua (E E ), l’incertezza che rimarrebbe sull’evento<br />

E qualora E si manifestasse. In formule:<br />

( )<br />

( ) ( )<br />

( )<br />

( )<br />

(4.1.1)<br />

Alla luce della definizione appena data la scelta del nome Informazione mutua<br />

può apparire infelice, esso probabilmente trae origine dal fatto che ricordando la regola<br />

<strong>di</strong> Bayes possiamo scrivere:<br />

( )<br />

( )<br />

( ) ( )<br />

( )<br />

( )<br />

( ) (4.1.2)<br />

Osserviamo che, nel caso in cui E E , (E E ) varrebbe cioè E ci<br />

(E )<br />

fornirebbe su E tutta l’informazione che ci potrebbe fornire E stesso. E cioè<br />

rimuoverebbe ogni incertezza su E . Viceversa se (E E ) ( E ) ( E ) allora


32 Capitolo - 4 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

(E E ) che sta a significare che il manifestarsi <strong>di</strong> E non mo<strong>di</strong>ficherebbe<br />

l’incertezza su E .<br />

È anche opportuno sottolineare che (E E ) può assumere anche valori negativi,<br />

ciò da conto del fatto che il manifestarsi <strong>di</strong> E potrebbe rendere molto più incerto, se<br />

non impossibile il manifestarsi <strong>di</strong> E .<br />

4.2 - Concetto <strong>di</strong> Canale.<br />

Come già detto, un sistema <strong>di</strong> trasmissione ha la finalità <strong>di</strong> inviare un messaggio<br />

da un emissario a un destinatario in luoghi o tempi <strong>di</strong>versi. Per recapitare il messaggio,<br />

il sistema si gioverà <strong>di</strong> un mezzo trasmissivo che viene abitualmente chiamato canale.<br />

Il concetto <strong>di</strong> canale è piuttosto ampio, nel senso che esso può includere, a seconda<br />

delle necessità, o solo il mezzo fisico, ad esempio il solo doppino telefonico o un nastro<br />

magnetico, o anche tutto ciò che è compreso tra un microfono e un altoparlante.<br />

Nel caso ad esempio <strong>di</strong> un sistema <strong>di</strong> trasmissione numerico modulato linearmente,<br />

si può pensare che il canale includa, modulatore, amplificatore RF, mezzo<br />

fisico, amplificatore d’ingresso, eventuale demodulatore a frequenza interme<strong>di</strong>a,<br />

demodulatore, filtri adattati e campionatori. In questo caso il canale accetterà in<br />

ingresso un numero complesso appartenente a una data costellazione e fornirà in uscita<br />

un numero complesso che in genere <strong>di</strong>fferisce da quello inviato per effetto del rumore e<br />

dei <strong>di</strong>sturbi introdotti dal mezzo e dagli apparati. Se decidessimo <strong>di</strong> includere nel<br />

canale anche il decisore, l’uscita del canale sarebbe si un punto della costellazione, ma<br />

come sappiamo non sempre lo stesso che si era inviato.<br />

Qui ci limitiamo a considerare canali <strong>di</strong> tipo <strong>di</strong>screto che sono caratterizzati da un<br />

alfabeto d’ingresso e da uno d’uscita , legati da un mapping aleatorio.<br />

In pratica non si lede la generalità se si pensano ingresso e uscita come una<br />

coppia <strong>di</strong> variabili aleatorie definite sullo stesso esperimento casuale.<br />

Se l’alfabeto d’ingresso e quello d’uscita hanno rispettivamente car<strong>di</strong>nalità ed<br />

e se e sono i rispettivi alfabeti, il canale è univocamente<br />

in<strong>di</strong>viduato quando sono note le seguenti dmp con<strong>di</strong>zionate:<br />

( | ) ( | ) (4.2.1)<br />

Risulta spontaneo pensare alle come agli elementi <strong>di</strong> una matrice con un<br />

numero <strong>di</strong> righe pari alla car<strong>di</strong>nalità dell’alfabeto <strong>di</strong> ingresso e un numero <strong>di</strong> colonne<br />

uguale alla car<strong>di</strong>nalità <strong>di</strong> quello d’uscita. Chiameremo matrice <strong>di</strong> transizione <strong>di</strong><br />

canale.


Canali Discreti Privi <strong>di</strong> Memoria 33<br />

Nel caso in cui l’alfabeto d’ingresso è finito e quello d’uscita ha la potenza del<br />

continuo il canale è caratterizzato se si conoscono le seguenti densità <strong>di</strong> probabilità<br />

con<strong>di</strong>zionate:<br />

( | ) ( | ) (4.2.2)<br />

Si <strong>di</strong>ce che il canale è privo <strong>di</strong> memoria se, la probabilità <strong>di</strong> rivelare un<br />

data sequenza <strong>di</strong> M simboli d’uscita in corrispondenza ad un dato M-messaggio <strong>di</strong><br />

ingresso è data da<br />

( [ ] | [ ]) ∏ ( ) (4.2.3)<br />

se l’alfabeto d’uscita è finito.<br />

Ovvero la densità <strong>di</strong> probabilità della sequenza d’uscita<br />

sequenza d’ingresso è data da:<br />

con<strong>di</strong>zionata ad una<br />

( ) ∏ ( ) (4.2.4)<br />

nel caso in cui l’alfabeto d’uscita ha la potenza del continuo.<br />

Se in ingresso al canale è connessa una sorgente che emette simboli compatibili<br />

con il canale, e se sono note le probabilità d’emissione ( ) <strong>di</strong> ciascun<br />

simbolo dell’alfabeto <strong>di</strong> sorgente dalle (4.2.1) e (4.2.2) possiamo dedurre la<br />

<strong>di</strong>stribuzione <strong>di</strong> massa <strong>di</strong> probabilità dell’alfabeto d’uscita del canale, cioè dei simboli<br />

:<br />

( ) ∑ (4.2.5)<br />

ovvero la densità <strong>di</strong> probabilità della V.A. d’uscita:<br />

( ) ∑ ( ) (4.2.6)<br />

Consideriamo un canale <strong>di</strong>screto e privo <strong>di</strong> memoria (DMC - Discrete Memoryless<br />

Channel).<br />

Se in uscita rilevassimo il simbolo l’incertezza residua sull’emissione del<br />

generico simbolo d’ingresso varrebbe:<br />

( )<br />

(4.2.7)<br />

che ricordando la (4.1.2) è uguale a


34 Capitolo - 4 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

( )<br />

(4.2.8)<br />

( )<br />

me<strong>di</strong>ando su tutte le possibili coppie ingresso uscita otteniamo una misura dell’incertezza<br />

che me<strong>di</strong>amente ci rimane sul simbolo in ingresso dopo aver osservato il<br />

corrispondente simbolo in l’uscita. Abbiamo appena definito l’informazione mutua<br />

me<strong>di</strong>a:<br />

( ) ∑ ∑ ( )<br />

( )<br />

( )<br />

∑ ∑ ( )<br />

( | )<br />

( )<br />

(4.2.9)<br />

∑ ∑ ( )<br />

sostituendo nella precedente la (4.2.5) otteniamo ancora:<br />

( ) ∑ ∑<br />

∑<br />

(4.2.10)<br />

Sebbene l’informazione mutua (4.2.8) possa assumere anche valori negativi così<br />

non è per l’informazione mutua me<strong>di</strong>a (4.2.9), risulta infatti:<br />

( ) ∑ ∑ ∑ ∑ ( )<br />

∑ ∑ ( ) [∑ ∑ ∑ ∑ ( )]<br />

(4.2.11)<br />

Osservando la (4.2.10) ci ren<strong>di</strong>amo conto che l’informazione mutua non <strong>di</strong>pende<br />

solo dal canale, ma anche dalla dmp della sorgente. Al fine <strong>di</strong> fornire una grandezza<br />

caratteristica del solo canale si procede alla ricerca del massimo della (4.2.10) al variare<br />

delle <strong>di</strong>stribuzioni<br />

<strong>di</strong> massa <strong>di</strong> probabilità della sorgente. Otteniamo<br />

così la cosiddetta capacità <strong>di</strong> canale:<br />

I( ) (4.2.12)<br />

che, come vedremo, gioca un ruolo fondamentale nel<br />

<strong>di</strong>mensionamento <strong>di</strong> un sistema <strong>di</strong> trasmissione.<br />

La ricerca del suddetto massimo, dato il tipo <strong>di</strong><br />

<strong>di</strong>pendenza da<br />

non è in genere semplice.<br />

Fig.E 4.1 - Canale Simmetrico Binario<br />

4.3 - Il Canale Simmetrico Binario.<br />

Si consideri un canale schematizzato in Fig.E 4.1<br />

che accetta ed emette simboli appartenenti a un alfabeto binario sorgente che emette


Canali Discreti Privi <strong>di</strong> Memoria 35<br />

simboli appartenenti a un alfabeto binario costituiti cioè rispettivamente da due soli<br />

simboli, , ; la matrice <strong>di</strong> transizione a esso associata sarà quin<strong>di</strong> una<br />

che se risulta<br />

è simmetrica e caratterizza un BSC (Binary<br />

Simmetric Channel).<br />

| | (4.3.1)<br />

Se il canale è connesso a una sorgente che emette simboli con probabilità ,<br />

risulta:<br />

( ) ( )<br />

( )( )<br />

L’informazione mutua me<strong>di</strong>a <strong>di</strong> un BSC varrà quin<strong>di</strong>:<br />

(4.3.2)<br />

( ) ∑ ∑ ∑ ∑ ∑ ∑<br />

∑ ∑<br />

∑<br />

( ) ( ) ( )<br />

(4.3.3)<br />

( )( ) ( ) ∑<br />

( ) ( ) ∑ ( ) ( )<br />

Fig.E 4.2 - Capacità del canale simmetrico<br />

binario<br />

(ve<strong>di</strong> Fig.E 4.2).<br />

Dalla precedente si evince facilmente che la<br />

capacità <strong>di</strong> canale si ottiene massimizzando l’entropia<br />

dell’uscita ( ), che, come già visto, lo é<br />

quando i simboli d’uscita sono equiprobabili, cosa<br />

che, data la simmetria del canale, avviene quando<br />

lo sono quelli emessi dalla sorgente. Conclu<strong>di</strong>amo<br />

che la capacità <strong>di</strong> un BSC vale:<br />

( ) (4.3.4)<br />

È interessante osservare che implicherebbe che da conto del fatto<br />

che in questo caso il canale sarebbe ovviamente del tutto inutile ai fini del trasferimento<br />

d’informazione.<br />

Fig.E 4.3 - Canale Gaussiano<br />

4.4 - Capacità del Canale AWGN a Banda<br />

Limitata.<br />

Consideriamo adesso il canale con ingresso e<br />

uscita ad alfabeto continuo rappresentato in Fig.E 4.3


36 Capitolo - 4 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

esso aggiunge alla variabile aleatoria generata dalla sorgente un <strong>di</strong>sturbo costituito da<br />

una variabile aleatoria Gaussiana a me<strong>di</strong>a nulla e varianza , statisticamente<br />

in<strong>di</strong>pendente dalla variabile aleatoria in ingresso.<br />

L’informazione mutua associata al canale in questione è data da:<br />

( ) ( ) ( )<br />

∫ ( )<br />

∫ ( )<br />

( )<br />

( )<br />

∫ ∫ ( )<br />

( )<br />

(4.4.1)<br />

∫ ( ) ∫ ( )<br />

( )<br />

Osserviamo che ( )<br />

√<br />

( )<br />

in quanto <strong>di</strong>fferisce da per il solo<br />

<strong>di</strong>sturbo<br />

la (2.2.3) otteniamo:<br />

che abbiamo detto essere Gaussiano. Sostituendo nella (4.4.1) e ricordando<br />

( ) ∫ ( )<br />

∫ ( ) ( )<br />

( )<br />

(4.4.2)<br />

∫ ( )<br />

( )<br />

( )<br />

la capacità del canale in parola si ottiene quin<strong>di</strong> massimizzando l’integrale ad ultimo<br />

membro della precedente, cioè l’entropia dell’uscita. Sappiamo (ve<strong>di</strong> § 2.2 - ) che il<br />

massimo dell’entropia, a parità <strong>di</strong> varianza, si ottiene da una sorgente Gaussiana.<br />

Affinché la ( ) sia Gaussiana, deve esserlo la variabile aleatoria . In questo<br />

caso in<strong>di</strong>cata con la sua varianza, in virtù dell’in<strong>di</strong>pendenza tra ed si ha:<br />

La capacità del canale Gaussiano è quin<strong>di</strong> data da:<br />

(4.4.3)<br />

( ) ( ( )) ( ) ( ) ( )<br />

( )<br />

(4.4.4)<br />

Consideriamo adesso il canale AWGN (Ad<strong>di</strong>ttive White Gaussian Noise) (ve<strong>di</strong><br />

Fig.E 4.4) cioè un canale con ingresso e uscita a tempo continuo che agisce sul segnale<br />

d’ingresso sommando a quest’ultimo un segnale<br />

stazionario Gaussiano a me<strong>di</strong>a nulla e densità spettrale <strong>di</strong><br />

potenza bilatera costante pari ad<br />

Fig.E 4.4 - Canale AWGN<br />

Come sappiamo ogni sistema <strong>di</strong> trasmissione è<br />

affetto quantomeno dal rumore termico che si può modellare proprio con un processo<br />

Gaussiano bianco.


Canali Discreti Privi <strong>di</strong> Memoria 37<br />

Osserviamo adesso che ogni sistema d’interesse pratico tratta <strong>di</strong> fatto segnali a banda<br />

limitata. Pertanto per limitare la potenza <strong>di</strong> rumore introdotta ogni canale <strong>di</strong> fatto viene<br />

limitato in banda tramite un apposito filtro posto tipicamente in ingresso al ricevitore.<br />

Se in<strong>di</strong>chiamo con la banda del segnale sappiamo che esso può essere ricostruito a<br />

partire dai suoi campioni purché ne vengano prelevati almeno al secondo. Il canale<br />

AWGN equivale quin<strong>di</strong> a un canale Gaussiano utilizzato con la stessa cadenza. La<br />

varianza dei campioni del segnale coinciderà quin<strong>di</strong> con la potenza me<strong>di</strong>a del segnale, e<br />

quella del rumore con la frazione <strong>di</strong> potenza <strong>di</strong> quest’ultimo contenuta nella banda del<br />

segnale risulta quin<strong>di</strong>:<br />

( )<br />

(4.4.5)<br />

dove ( ) rappresenta la potenza del segnale e in<strong>di</strong>ca la densità spettrale <strong>di</strong> potenza<br />

monolatera del rumore. Sostituendo nella (4.4.4) otteniamo:<br />

(<br />

( )<br />

) (4.4.6)<br />

La precedente in<strong>di</strong>ca la capacità del canale AWGN limitato in banda per uso del canale,<br />

espressa quin<strong>di</strong> in bit. In pratica è più utile esprimere la capacità in termini <strong>di</strong> bit al<br />

secondo, in questo caso a partire dalla precedente è sufficiente osservare che il canale<br />

viene utilizzato volte al secondo. La capacità espressa in bit/sec del canale in<br />

questione vale quin<strong>di</strong>:<br />

(<br />

( )<br />

) (4.4.7)<br />

Osserviamo che nella (4.4.7) appare il rapporto segnale rumore. La precedente ci <strong>di</strong>ce<br />

che per aumentare la capacità <strong>di</strong> un canale a tempo continuo possiamo aumentarne il<br />

rapporto segnale rumore o aumentarne la banda, tenendo però presente che un aumento<br />

della banda, a parità <strong>di</strong> potenza del segnale, comporta un deterioramento del rapporto<br />

segnale rumore.<br />

4.5 - Informazione Mutua tra M-messaggi.<br />

Consideriamo un DMC. Utilizzando le dmp congiunte, possiamo facilmente<br />

definire l’informazione mutua tra M-messaggi in ingresso e in uscita.<br />

( ) ∑ ∑ ( )<br />

( )<br />

( ) (4.5.1)<br />

la precedente può anche essere riscritta:<br />

( ) ∑ ( )<br />

( )<br />

∑ ∑ ( )<br />

( ) (4.5.2)


38 Capitolo - 4 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

e, ricordando la (1.3.6), può essere maggiorata come segue:<br />

( ) ∑ ( )<br />

∏ ( )<br />

∑ ∑ ( )<br />

( )<br />

∑ ∑ ( ) ( ) ∏ ( )<br />

( )<br />

∑ ∑ ( ) ( ) ∑<br />

( )<br />

( )<br />

(4.5.3)<br />

∑ ∑ ∑ ( ) ( )<br />

( )<br />

( )<br />

∑ ( )<br />

L’uguaglianza vale se i simboli d’uscita sono mutuamente statisticamente in<strong>di</strong>pendenti<br />

perché in questo caso si avrebbe ( ) ∏ ( ). Questa con<strong>di</strong>zione è certamente<br />

sod<strong>di</strong>sfatta se la sorgente è priva <strong>di</strong> memoria.<br />

Se la sorgente ed il canale sono stazionari tenuto conto della (4.2.12) possiamo<br />

ulteriormente scrivere:<br />

( ) ∑ ( ) ( ) (4.5.4)<br />

4.6 - Canali in Cascata.<br />

Consideriamo adesso il caso <strong>di</strong> due canali in cascata (ve<strong>di</strong> Fig.E 4.5).<br />

Supponiamo che l’alfabeto d’uscita del primo canale coincida con quello d’ingresso del<br />

secondo, e che l’uscita <strong>di</strong> ciascun canale <strong>di</strong>penda esclusivamente dal suo ingresso. Ciò<br />

significa che<br />

( ) ( ) (4.6.1)<br />

Fig.E 4.5 - Canali in cascata<br />

Facendo sempre riferimento alla figura, consideriamo la <strong>di</strong>fferenza tra le informazioni<br />

mutue ( )ed ( ). Si ha:


Canali Discreti Privi <strong>di</strong> Memoria 39<br />

( ) ( ) ∑ ( )<br />

∑ ( )<br />

( )<br />

( )<br />

( ) ( )<br />

( ) ( )<br />

∑ ( ) ( ( ) ( )<br />

( ) ( )<br />

∑ ( )<br />

)<br />

( )<br />

( )<br />

( ∑ ( ) ( ) ( )<br />

( ) ( )<br />

( ))<br />

( ∑ ( ) ( ) ( ) ( )<br />

( ) ( )<br />

( ))<br />

(4.6.2)<br />

( ∑ ( ) ( ) ( )<br />

( )<br />

( ))<br />

( ∑ ( ) ( ) ( ) ( ))<br />

(∑ ( ) ∑ ( ) ) (∑ ( ) )<br />

Fig.E 4.6<br />

In definitiva abbiamo mostrato che se si collegano due, o, ovviamente, più canali<br />

in cascata l’informazione mutua tra ingresso e uscita può solo <strong>di</strong>minuire. Il risultato<br />

appena ottenuto vale anche nel caso in cui si colleghino in cascata al canale dei sistemi<br />

deterministici, come ad esempio un co<strong>di</strong>ficatore in ingresso e\o un deco<strong>di</strong>ficatore<br />

d’uscita.<br />

Consideriamo (ve<strong>di</strong> Fig.E 4.6) il caso <strong>di</strong> una DMS connessa a un co<strong>di</strong>ficatore che<br />

opera in modo deterministico su M-messaggi emessi dalla sorgente per generare<br />

sequenze <strong>di</strong> lettere compatibili con un DMC con alfabeti d’ingresso e d’uscita della<br />

stessa car<strong>di</strong>nalità . L’uscita del canale è poi connessa a un deco<strong>di</strong>ficatore che opera in<br />

modo deterministico sugli L-messaggi emessi dal canale per “cercare” <strong>di</strong> ricostruire gli<br />

M-messaggi emessi dalla sorgente. Ovviamente una con<strong>di</strong>zione sufficiente affinché in<br />

uscita venga ricostruito correttamente il messaggio è che il canale non abbia introdotto<br />

<strong>di</strong>sturbi tali da indurre il deco<strong>di</strong>ficatore in errore.


40 Capitolo - 4 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

Assumiamo inoltre che le durate dell’M-messaggio emesso dalla sorgente e del<br />

corrispondente L-messaggio in uscita al co<strong>di</strong>ficatore siano uguali, pertanto se la sorgente<br />

emette lettere con una cadenza regolare la cadenza dei simboli in ingresso al<br />

canale sarà data da:<br />

(4.6.3)<br />

Con riferimento alla Fig.E 4.6 considerando l’informazione mutua (<br />

conto della (4.6.2) possiamo scrivere:<br />

), tenuto<br />

dove<br />

( ) ( ) ( ) (4.6.4)<br />

è la capacità relativa ad una coppia <strong>di</strong> simboli ingresso/uscita del canale.<br />

4.7 - L’Inverso del Teorema della Co<strong>di</strong>fica <strong>di</strong> Canale<br />

È a questo punto opportuno ricordare che il nostro obiettivo nella progettazione<br />

<strong>di</strong> un sistema <strong>di</strong> trasmissione è ottenere la minore probabilità d’errore compatibilmente<br />

con dei prefissati vincoli <strong>di</strong> potenza impiegabile e/o <strong>di</strong> banda, senza tralasciare<br />

ovviamente la complessità del sistema che, quando non si scontra con barriere tecnologiche,<br />

ha un forte impatto sui costi.<br />

Facendo sempre riferimento alla Fig.E 4.6 considerando ad esempio la -esima<br />

lettera dell’M-messaggio emesso dalla sorgente, il sistema commette un errore se la -<br />

esima lettera del corrispondente M-messaggio in uscita dal deco<strong>di</strong>ficatore non coincide<br />

con quella emessa.<br />

La probabilità che il sistema commetta un errore sulla -esima lettera del<br />

messaggio è quin<strong>di</strong> uguale alla ( ), che, in termini della dmp congiunta delle<br />

variabili vale:<br />

∑ ( )<br />

A<br />

(4.7.1)<br />

La probabilità d’errore appena calcolata <strong>di</strong>pende in genere dall’in<strong>di</strong>ce . Se<br />

volessimo farci un’idea della probabilità d’errore me<strong>di</strong>a su un generico simbolo dell’Mmessaggio<br />

potremmo calcolare la me<strong>di</strong>a aritmetica delle ottenendo:<br />

∑ (4.7.2)<br />

Consideriamo adesso la catena <strong>di</strong> <strong>di</strong>suguaglianze:


Canali Discreti Privi <strong>di</strong> Memoria 41<br />

( ) ( ) ∑ ( )<br />

A<br />

∑ ∑ ( )<br />

A A<br />

( )<br />

( )<br />

∑ ∑ ( )<br />

A A<br />

( )<br />

( )<br />

∑ ( ( ) ∑ ( )<br />

A<br />

A<br />

∑ ( ( ) ∑ ( )<br />

A<br />

A<br />

∑ ∑ ∑ ( )<br />

A A<br />

)<br />

( )<br />

)<br />

∏ ( | )<br />

( | )<br />

(4.7.3)<br />

∑ ∑ ∑ ( )<br />

A A<br />

( | )<br />

Il nostro scopo è quello <strong>di</strong> esplicitare il legame tra le grandezze associate all’informazione<br />

e la probabilità d’errore espressa dalla (4.7.1), appare pertanto opportuno<br />

riscrivere la (4.7.3) nella forma:<br />

( ) ( ) ∑ ∑ ( )<br />

( )<br />

∑ ( )<br />

( )<br />

(4.7.4)<br />

(<br />

)<br />

Introducendo la probabilità <strong>di</strong> corretta decisione sul -esimo<br />

simbolo possiamo maggiorare la seconda sommatoria in parentesi nella precedente<br />

come segue:<br />

∑ ( )<br />

A<br />

( )<br />

∑ ( )<br />

A<br />

( )<br />

∑ ( )<br />

A<br />

( )<br />

∑ ( )<br />

A<br />

∑ ( ) ( ( )<br />

)<br />

A<br />

(4.7.5)<br />

∑ ( ( ) ( ))<br />

A<br />

( )<br />

( )<br />

Procedendo in modo analogo sulla prima sommatoria in parentesi nella (4.7.4) si<br />

ottiene anche:


42 Capitolo - 4 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

∑ ( )<br />

A<br />

( )<br />

∑ ( )<br />

A<br />

( )<br />

( )( )<br />

∑ ( )<br />

A<br />

( )( )<br />

∑ ( )<br />

A<br />

( )<br />

∑ ( ) ( ( | )( )<br />

)<br />

A<br />

( )<br />

( )<br />

(4.7.6)<br />

∑ ( ) ( | )( )<br />

A<br />

(<br />

)<br />

∑ ( ) ∑ ( )<br />

A<br />

A<br />

(<br />

( )<br />

)<br />

( )<br />

dove<br />

rappresenta la car<strong>di</strong>nalità dell’alfabeto . Tenuto conto delle (4.7.5) e (4.7.6) il<br />

primo membro della (4.7.4) può essere quin<strong>di</strong> ulteriormente maggiorato:<br />

( ) ( ) ∑ [<br />

( )<br />

( )<br />

( ) ]<br />

∑ [ ( ) ( )<br />

( ) ]<br />

(4.7.7)<br />

∑ ( ) ( ) ( ) ∑ ( )<br />

Nella precedente ( ) può essere interpretata come l’entropia <strong>di</strong> una sorgente binaria<br />

che emette le due lettere che costituiscono il suo alfabeto con probabilità e .<br />

Ricordando la (1.3.6) possiamo ancora scrivere:<br />

( ) ( ) ( ) ∑ [ ( )<br />

( ) ]<br />

(4.7.8)<br />

( ) ( )<br />

( )<br />

( ) ( )<br />

Sfruttando il fatto che, per ipotesi, la sorgente è priva <strong>di</strong> memoria e tenendo in conto la<br />

(4.6.4) abbiamo ancora:<br />

( ) ( ) ( ) ( ) ( ) ( )<br />

( )<br />

(4.7.9)<br />

che, in virtù della (4.6.3), conduce alla:<br />

( ) ( ) ( ) ( ) (4.7.10)


Canali Discreti Privi <strong>di</strong> Memoria 43<br />

Per assegnata car<strong>di</strong>nalità dell’alfabeto<br />

<strong>di</strong> sorgente possiamo tracciare<br />

il grafico della funzione: ( ) (<br />

Fig.E 4.7 - F(P e ) (N )P e H(P e )<br />

) ( ).<br />

Come si può notare (ve<strong>di</strong> Fig.E<br />

4.7) la ( ) pertanto la limitazione<br />

imposta dalla (4.7.10), che per como<strong>di</strong>tà<br />

riscriviamo nella forma:<br />

( ) ( ) (4.7.11)<br />

non avrà alcun effetto fintanto che risulta ( ) o, che è lo stesso, quando<br />

( )<br />

(4.7.12)<br />

cioè fintantoché l’entropia della sorgente espressa in bit al secondo si mantiene minore<br />

della capacità <strong>di</strong> canale anch’essa espressa in bit al secondo.<br />

Quando viceversa la (4.7.12) non è sod<strong>di</strong>sfatta la (4.7.11) pone un limite inferiore<br />

alla probabilità d’errore ottenibile; saranno cioè compatibili con la (4.7.11) solo valori<br />

<strong>di</strong> che fanno si che il valore assunto dalla ( ) resti al <strong>di</strong> sopra della quantità<br />

( ) che nel piano <strong>di</strong> Fig.E 4.7 è rappresentata da una retta parallela all’asse<br />

delle ascisse, saranno dunque compatibili con la (4.7.11) soltanto valori <strong>di</strong> probabilità<br />

d’errore che restino alla destra dell’ascissa dell’intersezione <strong>di</strong> detta retta con la curva<br />

( ).<br />

Quello che abbiamo appena <strong>di</strong>mostrato è noto come: inverso del teorema della<br />

co<strong>di</strong>fica <strong>di</strong> canale.<br />

Teorema 4.1<br />

Non è possibile ottenere una probabilità d’errore piccola a piacere all’uscita <strong>di</strong> un<br />

canale che ha una capacità<br />

se quest’ultima è minore dell’entropia (espressa<br />

sempre in<br />

) della sorgente ad esso connessa.<br />

**********<br />

Purtroppo il teorema appena enunciato nulla ci <strong>di</strong>ce circa la probabilità <strong>di</strong> errore<br />

effettivamente ottenibile nel caso in cui la capacità del canale sia maggiore dell’entropia<br />

della sorgente.


Capitolo - 5<br />

CENNI DI TRASMISSIONE NUMERICA<br />

5.1 - Scenario <strong>di</strong> Riferimento.<br />

Al fine <strong>di</strong> introdurre il teorema <strong>di</strong> Shannon sulla co<strong>di</strong>fica <strong>di</strong> canale, è opportuno<br />

introdurre alcuni concetti <strong>di</strong> trasmissione numerica.<br />

Come schema <strong>di</strong> principio del nostro sistema consideriamo una sorgente che<br />

emette lettere appartenenti ad un alfabeto <strong>di</strong> car<strong>di</strong>nalità finita N con una cadenza<br />

<strong>di</strong> lettere al secondo. La suddetta sorgente è connessa a un co<strong>di</strong>ficatore <strong>di</strong> sorgente<br />

( )<br />

che ogni secon<strong>di</strong> emette un M-messaggio ( ) che potremo<br />

( )<br />

pensare come il risultato <strong>di</strong> un esperimento casuale . piloterà un co<strong>di</strong>ficatore <strong>di</strong><br />

canale.<br />

( )<br />

Il co<strong>di</strong>ficatore <strong>di</strong> canale, o modulatore, ha il compito <strong>di</strong> associare ad ogni<br />

un segnale ( ) (<br />

ad energia finita, in<strong>di</strong>viduato da una funzione reale ) ( ), <strong>di</strong> durata<br />

non maggiore <strong>di</strong> , che verrà inviato sul canale, che qui supporremo AWGN (Ad<strong>di</strong>tive<br />

White Gaussian Noise), cioè un canale che si limita a sommare al segnale un processo<br />

stazionario Gaussiano bianco ( ), con densità spettrale <strong>di</strong> potenza bilatera costante ,<br />

o, che è lo stesso, con funzione <strong>di</strong> autocorrelazione ( ) ( ).<br />

Il ricevitore è chiamato, a fornire una stima dell’M-messaggio trasmesso, basandosi<br />

sul segnale ricevuto e, ove possibile, sulla conoscenza della statistica <strong>di</strong> sorgente.<br />

5.2 - Struttura del modulatore e del co<strong>di</strong>ficatore <strong>di</strong> sorgente<br />

Il set <strong>di</strong> segnali utilizzato dal co<strong>di</strong>ficatore <strong>di</strong> canale sopra citato ha car<strong>di</strong>nalità<br />

finita. Esso sarà pertanto contenuto in un sottospazio S K <strong>di</strong> <strong>di</strong>mensione<br />

dello spazio dei segnali a energia finita.<br />

Tramite la procedura <strong>di</strong> ortonormalizzazione <strong>di</strong> Gram-Smith potremo costruire<br />

quin<strong>di</strong> una base ortonormale per . Ogni segnale emesso dal modulatore si<br />

può quin<strong>di</strong> esprimere nella forma:<br />

S K<br />

∑ (5.2.1)<br />

La precedente suggerisce anche uno schema <strong>di</strong> principio per il co<strong>di</strong>ficatore <strong>di</strong><br />

sorgente che in sostanza associa a ogni sequenza <strong>di</strong> lettere emesse dalla<br />

sorgente il vettore<br />

che consente al co<strong>di</strong>ficatore <strong>di</strong> canale<br />

<strong>di</strong> generare a sua volta tramite la (5.2.1) il segnale da inviare sul canale.


46 Capitolo - 5 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

5.3 - Struttura del Ricevitore.<br />

Nell’intervallo (stiamo trascurando il ritardo introdotto dal canale), Il<br />

ricevitore vede al suo ingresso il segnale<br />

(5.3.1)<br />

a energia finita che possiamo pensare come una manifestazione <strong>di</strong> un segnale aleatorio<br />

.<br />

Il segnale ricevuto può essere scomposto in due segnali: il primo, S K<br />

, appartenente<br />

al sottospazio S K il secondo, ˜ , ortogonale a detto sottospazio.<br />

In particolare avremo<br />

dove<br />

S ∑ (5.3.2)<br />

∫ ( ( ) ( )) ( ) (5.3.3)<br />

Teniamo presente che tutte le funzioni in gioco sono reali e, a parte il rumore,<br />

nulle al <strong>di</strong> fuori dell’intervallo , quin<strong>di</strong> tali sono anche le funzioni che<br />

rappresentano i componenti della base ortonormale utilizzata. La (5.3.3) esprime<br />

pertanto il prodotto scalare tra il segnale ricevuto e l’ -esimo elemento .<br />

Le sono variabili aleatorie Gaussiane a me<strong>di</strong>a nulla con varianza ,<br />

l’ortonormalità della base garantisce anche che esse sono mutuamente<br />

statisticamente in<strong>di</strong>pendenti. Osserviamo che il segnale ˜ S non contiene<br />

nessuna informazione circa il segnale trasmesso in quanto non appartiene per<br />

costruzione allo spazio S K dei segnali trasmessi. La nostra strategia <strong>di</strong> decisione si può<br />

quin<strong>di</strong> basare esclusivamente su S , o, che è lo stesso, sul vettore delle sue<br />

componenti rispetto alla base .<br />

In sostanza il vettore costituisce la cosiddetta statistica sufficiente su cui deve<br />

operare il ricevitore per fornire una stima del messaggio trasmesso.<br />

Possiamo pensare il ricevitore costituito da due sistemi in cascata, un demodulatore<br />

che ha il compito <strong>di</strong> calcolare il vettore ed un decisore che sulla base <strong>di</strong><br />

quest’ultimo provvede a stimare il messaggio trasmesso.<br />

In pratica si può pensare al vettore come alla realizzazione <strong>di</strong> un vettore <strong>di</strong><br />

variabili aleatorie definito sull’esperimento casuale innescato dall’emissione <strong>di</strong> un<br />

messaggio e dal suo invio sul canale AWGN.


Cenni <strong>di</strong> Trasmissione Numerica 47<br />

5.4 - La Regola <strong>di</strong> Decisione Ottima.<br />

Vogliamo che la strategia seguita dal ricevitore nel suo complesso conduca alla<br />

minima probabilità d’errore me<strong>di</strong>a. In altri termini vogliamo che sia minima la<br />

probabilità <strong>di</strong> prendere decisioni sbagliate sul messaggio trasmesso, noto il segnale<br />

ricevuto e la probabilità <strong>di</strong> emissione <strong>di</strong> ciascun messaggio.<br />

Ovviamente la minimizzazione della probabilità d’errore equivale alla massimizzazione<br />

della probabilità <strong>di</strong> corretta decisione. La regola <strong>di</strong> decisione ottima sarà<br />

quin<strong>di</strong> quella che ci fa scegliere per il messaggio se risulta:<br />

( ) ( ) (5.4.1)<br />

La regola <strong>di</strong> decisione appena descritta si esprime sinteticamente scrivendo:<br />

˜ argma ( ) (5.4.2)<br />

Nell’ipotesi, in questo contesto remota, in cui due o più messaggi massimizzino la<br />

precedente sceglieremo a caso tra essi.<br />

Quando si adotta la regola <strong>di</strong> decisione (5.4.2) si sta applicando il criterio della<br />

massima probabilità a posteriori (MAP Maximum A posteriori Probability).<br />

5.5 - Il Criterio della Massima Verosimiglianza.<br />

Detto un intorno <strong>di</strong> e ( ) la sua misura possiamo scrivere:<br />

( )<br />

( )<br />

( )<br />

(5.5.1)<br />

in<strong>di</strong>cando con ( ) la densità <strong>di</strong> probabilità <strong>di</strong> , la probabilità che vale<br />

∫ ( ) Scegliendo opportunamente ˜ e ̂ in .possiamo ulteriormente elaborare<br />

la (5.5.1) come segue:<br />

( )<br />

( )<br />

( )<br />

( )<br />

(<br />

( )<br />

)<br />

( ) ∫ ( )<br />

∫ ( )<br />

∫ ( ) ( )<br />

( ˜ ) ( )<br />

( ̂ ) ( ) ( )<br />

( ˜) ( )<br />

( ) ( )<br />

( )<br />

sostituendo la (5.5.2) nella (5.4.2) otteniamo:<br />

(5.5.2)<br />

˜ argma {<br />

( ) ( )<br />

} (5.5.3)<br />

( )


48 Capitolo - 5 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

Appare chiaro che la densità <strong>di</strong> probabilità marginale <strong>di</strong> al denominatore della precedente<br />

non ha alcuna influenza sull’argomento che lo rende massimo, pertanto possiamo<br />

ulteriormente scrivere:<br />

˜ argma ( ) ( ) (5.5.4)<br />

5.6 - Funzioni <strong>di</strong> Verosimiglianza.<br />

Un’ulteriore semplificazione della (5.5.3), si ottiene infine se i messaggi<br />

sono tutti equiprobabili. In questo caso, semplificando ulteriormente la notazione, ponendo<br />

cioè ( ) ( ), la regola <strong>di</strong> decisione ottima <strong>di</strong>venta:<br />

deci<strong>di</strong> per ˜ se:<br />

˜ argma ( ) (5.6.1)<br />

La densità <strong>di</strong> probabilità ( ) prende il nome <strong>di</strong> funzione <strong>di</strong><br />

verosimiglianza. Essa, come si può notare, <strong>di</strong>pende sostanzialmente dal canale, che in<br />

questo caso pensiamo costituito dalla cascata del modulatore, del canale AWGN e del<br />

demodulatore.<br />

Un ricevitore che adotta la regola <strong>di</strong> decisione (5.6.1) applica il criterio della<br />

Massima Verosimiglianza MV, o ML (Maximum Likelihood), se si preferisce<br />

l’acronimo inglese.<br />

È opportuno precisare che il criterio MV viene <strong>di</strong> regola adottato, anche quando<br />

la statistica della sorgente non è nota, in questo caso il criterio non è ottimo, non<br />

conduce cioè alla minima probabilità d’errore me<strong>di</strong>a, ma spesso non si può fare altrimenti<br />

non conoscendo la statistica della sorgente, in ogni caso, in genere, la per<strong>di</strong>ta in<br />

termini <strong>di</strong> prestazioni adottando il criterio MV anziché il MAP è in genere accettabile.<br />

5.7 - Le Regioni <strong>di</strong> Decisione.<br />

Ricor<strong>di</strong>amo che ad ogni messaggio corrisponde tramite la (5.2.1) uno ed un<br />

sol punto nello spazio S K . Osserviamo quin<strong>di</strong> che, se è stato trasmesso , allora<br />

all’uscita del demodulatore sarà presente il vettore<br />

, dove<br />

è la realizzazione <strong>di</strong> un vettore <strong>di</strong> variabili aleatorie Gaussiane a me<strong>di</strong>a<br />

nulla e matrice <strong>di</strong> covarianza cioè <strong>di</strong> variabili tra loro mutuamente statisticamente<br />

in<strong>di</strong>pendenti, ne consegue che , per fissato , è anch’esso un vettore <strong>di</strong> variabili<br />

aleatorie mutuamente in<strong>di</strong>pendenti con matrice <strong>di</strong> covarianza e me<strong>di</strong>a<br />

m<br />

.<br />

Si ha pertanto:


Cenni <strong>di</strong> Trasmissione Numerica 49<br />

( ) ∏<br />

√<br />

( )<br />

( ) ∏<br />

( )<br />

(5.7.1)<br />

ad ogni<br />

( )<br />

∑ ( )<br />

( )<br />

si può quin<strong>di</strong> associare l’insieme dei punti <strong>di</strong> S K<br />

( ) ( ) (5.7.2)<br />

che è denominato regione <strong>di</strong> decisione <strong>di</strong> .<br />

Se abbiamo cura <strong>di</strong> assegnare a caso all’una o all’altra regione i punti <strong>di</strong> S K che si<br />

trovano al confine tra due o più regioni <strong>di</strong> decisione, ci si convince facilmente che<br />

∪ (5.7.3)<br />

Per il canale AWGN possiamo ancora scrivere:<br />

{ ( )<br />

‖<br />

‖<br />

( )<br />

‖<br />

‖<br />

}<br />

(5.7.4)<br />

{ }<br />

dalla precedente s’intuisce facilmente che le frontiere delle regioni <strong>di</strong> decisione sono<br />

iperpiani <strong>di</strong> S K , e che la probabilità che cada sulla frontiera <strong>di</strong> una regione <strong>di</strong> decisione<br />

è in questo caso nulla, essendo nulla la misura <strong>di</strong> tali frontiere.<br />

Il concetto <strong>di</strong> regione <strong>di</strong> decisione è applicabile anche in un contesto più generale,<br />

basandosi <strong>di</strong>rettamente sulla (5.5.3) nel caso <strong>di</strong> messaggi non equiprobabili.<br />

Anche nel caso in cui lo spazio d’osservazione S K è <strong>di</strong>screto si possono definire<br />

le regioni <strong>di</strong> decisione, tenendo però presente che tutte le densità <strong>di</strong> probabilità che<br />

compaiono nelle (5.5.3) e (5.6.1) vanno intese come <strong>di</strong>stribuzioni <strong>di</strong> massa <strong>di</strong><br />

probabilità e che in questo caso l’eventualità che il vettore cada su un punto <strong>di</strong> S K<br />

appartenente alla frontiera <strong>di</strong> una regione <strong>di</strong> decisione può essere <strong>di</strong>versa da zero.<br />

In<strong>di</strong>chiamo con la probabilità che il ricevitore stimi in modo errato il<br />

messaggio sotto la con<strong>di</strong>zione che sia stato trasmesso il messaggio , detto il<br />

complementare <strong>di</strong> R rispetto allo spazio <strong>di</strong> osservazione S K , ( ) si potrà esprimere<br />

come segue:<br />

( ) (<br />

( ) ) (5.7.5)<br />

La probabilità d’errore me<strong>di</strong>a del sistema sarà espressa dalla me<strong>di</strong>a statistica delle<br />

( ). Avremo quin<strong>di</strong>:<br />

∑ ( ) ( ) (5.7.6)


50 Capitolo - 5 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

che nel caso <strong>di</strong> equiprobabilità dei messaggi trasmessi varrà:<br />

∑ ( ) (5.7.7)<br />

Sebbene la precedente sia concettualmente semplice, calcolarne il valore può<br />

essere complicato. La sua valutazione comporta generalmente il calcolo d’integrali su<br />

domini multi<strong>di</strong>mensionali che <strong>di</strong>fficilmente si risolvono in forma chiusa, e che anche<br />

approcciati per via numerica possono presentare delle criticità.<br />

È pertanto utile, in generale, e in particolare per i nostri scopi, introdurre dei<br />

meto<strong>di</strong> che permettano <strong>di</strong> maggiorare la probabilità d’errore:<br />

5.8 - L’Union Bound.<br />

L’union bound è una maggiorazione della che si basa sul fatto che la<br />

probabilità dell’unione <strong>di</strong> due eventi è minore o uguale della somma delle probabilità <strong>di</strong><br />

ciascuno <strong>di</strong> essi.<br />

In particolare si osservi che se il decisore dovesse scegliere soltanto tra due<br />

alternative, ad esempio tra il messaggio e il messaggio , vi sarebbero solo due<br />

regioni <strong>di</strong> decisione quella R associata a e la sua complementare rispetto a S K ,<br />

R .<br />

Ovviamente R R , risulta inoltre:<br />

⋂ ⋃ (5.8.1)<br />

avremo pertanto:<br />

( ∪ ) ∑ ( )<br />

(5.8.2)<br />

Nel caso in esame:<br />

la ( ) è data da:<br />

{ } (5.8.3)<br />

( )<br />

∫ ( ) ∫ ( ) ∏<br />

( )<br />

(5.8.4)<br />

Al fine <strong>di</strong> calcolare la (5.8.4) è utile riformulare la <strong>di</strong>suguaglianza che definisce<br />

la<br />

nel modo seguente:


Cenni <strong>di</strong> Trasmissione Numerica 51<br />

( )<br />

∑( )<br />

(5.8.5)<br />

Osserviamo che ∑ ( ) può interpretarsi come il valore assunto<br />

da una variabile aleatoria ottenuta combinando linearmente le componenti <strong>di</strong><br />

(<br />

che, se è stato trasmesso ) , costituiscono una -upla <strong>di</strong> variabili aleatorie Gaussiane<br />

statisticamente in<strong>di</strong>pendenti. è quin<strong>di</strong> una variabile aleatoria Gaussiana con valor<br />

me<strong>di</strong>o:<br />

e varianza:<br />

∑( ) (5.8.6)<br />

∑( ) (5.8.7)<br />

Ricordando che ( )<br />

√<br />

∫ potremo scrivere:<br />

( ) ( )<br />

( )<br />

( )<br />

∫<br />

√<br />

√<br />

∫<br />

( )<br />

(5.8.8)<br />

(<br />

√<br />

( ) ( )<br />

)<br />

(<br />

) (<br />

)<br />

√<br />

√<br />

L’ultimo membro della precedente può essere sostituito nella (5.8.2) che tenuto conto<br />

della (5.7.6) e dell’ipotesi <strong>di</strong> equiprobabilità dei simboli trasmissibili, ci permette <strong>di</strong><br />

scrivere:<br />

∑ ( ) ( )<br />

∑ ( ) ∑ (<br />

√<br />

)<br />

( )<br />

∑ (<br />

√<br />

)<br />

(5.8.9)


52 Capitolo - 5 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

5.9 - Bound <strong>di</strong> Bhattacharrya.<br />

L’union bound può essere applicato anche al caso in cui lo spazio <strong>di</strong> osservazione<br />

sia <strong>di</strong>screto. Consideriamo ad esempio il caso <strong>di</strong> una sorgente binaria priva <strong>di</strong> memoria<br />

che emetta una parola <strong>di</strong> bit, vogliamo trasmettere la parola in questione utilizzando<br />

un BSC volte con . Il compito del co<strong>di</strong>ficatore <strong>di</strong> canale consiste quin<strong>di</strong><br />

nell’associare a ciascuno dei possibili messaggi <strong>di</strong> sorgente una tra le possibili<br />

parole da affidare al canale. Chiameremo co<strong>di</strong>ce il sottoinsieme delle parole scelte.<br />

Osserviamo che per effetto del canale la parola ricevuta potrebbe non appartenere<br />

al co<strong>di</strong>ce, ma in ogni caso sarebbe una tra le . In sostanza lo spazio d’osservazione<br />

è in questo caso finito.<br />

La probabilità ( ) che venga rivelata la parola quando è stata trasmessa la<br />

parola <strong>di</strong> co<strong>di</strong>ce è data da<br />

( ) ( ) ( ) ( ) (5.9.1)<br />

in cui rappresenta il numero <strong>di</strong> simboli in cui <strong>di</strong>fferisce da e la probabilità <strong>di</strong><br />

crossover del BSC. Osserviamo che, se , , ( ) è quin<strong>di</strong> una funzione<br />

decrescente <strong>di</strong> che, come vedremo in seguito, è detta <strong>di</strong>stanza <strong>di</strong> Hamming. Ciò ci<br />

permette <strong>di</strong> associare a ogni parola <strong>di</strong> co<strong>di</strong>ce una regione <strong>di</strong> decisione, che conterrà i<br />

punti dello spazio d’osservazione, cioè le parole <strong>di</strong> bit aventi da essa una <strong>di</strong>stanza<br />

minore rispetto a quella che hanno dalle altre parole <strong>di</strong> co<strong>di</strong>ce, convenendo <strong>di</strong> assegnare<br />

in modo puramente casuale a una sola delle regioni interessate i punti dello spazio<br />

d’osservazione che dovessero trovarsi a uguale <strong>di</strong>stanza da due o più parole <strong>di</strong> co<strong>di</strong>ce.<br />

Ciò premesso, il calcolo della probabilità d’errore con<strong>di</strong>zionata all’emissione <strong>di</strong><br />

una data parola <strong>di</strong> co<strong>di</strong>ce vale:<br />

∑ ( )<br />

(5.9.2)<br />

e la probabilità d’errore me<strong>di</strong>a:<br />

∑ ( ) ∑ ( ) (5.9.3)<br />

dove ( ) rappresenta la probabilità <strong>di</strong> emissione della parola da parte del<br />

co<strong>di</strong>ficatore <strong>di</strong> canale, che equivale, essendo il co<strong>di</strong>ficatore deterministico, a quella <strong>di</strong><br />

emissione della corrispondente parola <strong>di</strong> bit dalla sorgente.<br />

Anche in questo contesto è possibile applicare lo union bound. In<strong>di</strong>viduando le<br />

associate alle coppie <strong>di</strong> parole <strong>di</strong> co<strong>di</strong>ce possiamo infatti scrivere:


Cenni <strong>di</strong> Trasmissione Numerica 53<br />

( ) ∑ ( )<br />

(5.9.4)<br />

tramite la funzione ausiliaria<br />

possiamo riformulare la (5.9.4) come segue<br />

( ) { (5.9.5)<br />

Osserviamo che<br />

( ) ∑ ( ) ( )<br />

S risulta:<br />

S<br />

(5.9.6)<br />

possiamo pertanto maggiorare la (5.9.6) ottenendo:<br />

( ) ( ( )<br />

( ) ) (5.9.7)<br />

( ) ∑ ( ( )<br />

( ) ) ( )<br />

S<br />

∑( ( )) ( ))<br />

S<br />

(5.9.8)<br />

∑ [∏( ( ) ( ))]<br />

S<br />

∏ ∑ ( ( ) ( ))<br />

in cui abbiamo anche tenuto conto del fatto che il canale è privo <strong>di</strong> memoria.<br />

La sommatoria a ultimo membro della precedente può assumere solo due valori a<br />

seconda che risulti o meno uguale a nel primo caso la somma varrà nell’altro<br />

√ (<br />

). Potremo finalmente scrivere:<br />

( ) ∏ ∑ ( ( ) ( ))<br />

(5.9.9)<br />

( √ ( ))<br />

essendo la <strong>di</strong>stanza <strong>di</strong> Hamming tra e .<br />

Quella appena ottenuta è la maggiorazione <strong>di</strong> Bhattacharyya. Che tramite l’union<br />

bound ci permette <strong>di</strong> scrivere:<br />

∑ ( ) ∑ ( √ ( )) (5.9.10)<br />

Il bound <strong>di</strong> Bhattacharyya sulla probabilità d’errore può essere applicato anche<br />

nel caso <strong>di</strong> spazio d’osservazione continuo.


54 Capitolo - 5 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

Per mostrarlo pren<strong>di</strong>amo nuovamente in considerazione la (5.8.4), possiamo scrivere:<br />

( | ) ∫ ( | ) ∫ √ ( )<br />

( )<br />

∫ √ ( ) ( )<br />

S<br />

S<br />

( | )<br />

(5.9.11)<br />

la quale sostituendo alle ddp con<strong>di</strong>zionate che vi compaiono le loro espressioni<br />

fornisce:<br />

( | )<br />

∫ √ ( ) ( )<br />

S<br />

( ) ∫<br />

S<br />

∑ ( ) ( )<br />

( ) ∫<br />

S<br />

∑ ( )<br />

∏ ∫<br />

√<br />

( )<br />

)<br />

(5.9.12)<br />

∏ ∫<br />

√<br />

( ) ( )<br />

( )<br />

∏<br />

∏<br />

∑ ( )<br />

La precedente può essere utilizzata nell’union bound<br />

∑ ( ) ( ) ∑ (<br />

√<br />

) ∑<br />

‖<br />

‖<br />

(5.9.13)<br />

La (5.9.13), a ben vedere, si poteva ottenere <strong>di</strong>rettamente utilizzando una ben<br />

nota catena <strong>di</strong> <strong>di</strong>suguaglianze relative alla ( ), risulta infatti (ve<strong>di</strong> Fig.E 5.1):<br />

√<br />

( ) ( )<br />

( )<br />

√<br />

(5.9.14)


Cenni <strong>di</strong> Trasmissione Numerica 55<br />

Fig.E 5.1 - Q(x), 1 2 ex2 2 ,<br />

1<br />

e x2<br />

√2πx 2 2<br />

Constatiamo che, nel caso <strong>di</strong><br />

spazio <strong>di</strong> osservazione continuo, la<br />

maggiorazione <strong>di</strong> Bhattacharyya seppur<br />

asintoticamente stretta è comunque<br />

più “lasca” <strong>di</strong> quelle che si possono<br />

ottenere maggiorando la ( )<br />

tramite una delle precedenti. Utilizzando<br />

ad esempio la seconda si introdurrebbe<br />

un fattore vale cioè la seguente<br />

<strong>di</strong>suguaglianza:<br />

∑<br />

‖<br />

‖<br />

(5.9.15)<br />

L’utilizzo della prima delle (5.9.14) fornirebbe come risulta evidente dalla Fig.E<br />

5.1Fig.E 5.1 una maggiorazione certamente più stretta solo qualora i valori degli<br />

argomenti delle ( ) nella (5.9.13) fossero tutti maggiori <strong>di</strong> √ .<br />

5.10 - Bound <strong>di</strong> Gallager.<br />

Lo Union Bound può rivelarsi in molti casi una maggiorazione piuttosto lasca,<br />

talvolta ad<strong>di</strong>rittura palesemente inutile se dovesse risultare maggiore <strong>di</strong> uno.<br />

Un <strong>di</strong>verso approccio per maggiorare è quello <strong>di</strong> considerare una regione<br />

̃ ̅ e valutare la probabilità ( ̃ ) . Quest’ultima, sarà<br />

necessariamente non minore <strong>di</strong><br />

. A tale scopo consideriamo il seguente sottoinsieme<br />

dello spazio d’osservazione S K :<br />

̃ { ∑ ( ( )<br />

( ) ) } (5.10.1)<br />

dove è un reale positivo scelto ad arbitrio. ̃ ̅ , infatti, si osservi che la<br />

sommatoria nella (5.10.1) è a termini positivi, inoltre se ̅ allora per definizione<br />

esiste almeno un tale che ( ) ( ), ciò, essendo , comporta<br />

che almeno un addendo, e quin<strong>di</strong> tutta la sommatoria, assuma un valore maggiore <strong>di</strong><br />

in ogni punto <strong>di</strong> ̅<br />

. Introducendo la funzione ausiliaria:<br />

( ) {<br />

̃<br />

(5.10.2)<br />

possiamo scrivere:


56 Capitolo - 5 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

( ) ∫ ( ) ∫ ( ) ( )<br />

̃<br />

S<br />

È inoltre facile verificare che per ogni reale positivo risulta:<br />

(5.10.3)<br />

( ) [∑ ( ( )<br />

( ) ) ] (5.10.4)<br />

la (5.10.3) può quin<strong>di</strong> essere ulteriormente maggiorata ottenendo:<br />

( ) ∫ [∑ ( ( )<br />

( ) ) ] ( )<br />

S<br />

(5.10.5)<br />

S<br />

∫ [∑( ( )) ] ( )<br />

La precedente può essere semplificata se si pone<br />

otteniamo infatti:<br />

( ) ∫ [∑( ( )) ] ( )<br />

(5.10.6)<br />

S<br />

La maggiorazione della probabilità d’errore che si ottiene dalla (5.10.6), me<strong>di</strong>ando<br />

sui messaggi , è applicabile anche a spazi d’osservazione <strong>di</strong>screti, a patto <strong>di</strong><br />

sostituire l’integrale con una sommatoria estesa all’intero spazio d’osservazione e <strong>di</strong><br />

interpretare le densità <strong>di</strong> probabilità che vi compaiono come <strong>di</strong>stribuzioni <strong>di</strong> massa <strong>di</strong><br />

probabilità:<br />

( ) ∑ [∑ ( ( )) ] ( )<br />

(5.10.7)<br />

S<br />

L’utilizzo del bound <strong>di</strong> Gallager in pratica rimane ristretto ad un limitato insieme<br />

<strong>di</strong> sistemi <strong>di</strong> trasmissione in quanto esso comporta comunque il calcolo <strong>di</strong> integrali o<br />

sommatorie multi<strong>di</strong>mensionali che rapidamente <strong>di</strong>ventano impraticabili. Va anche<br />

sottolineato il fatto che il valore <strong>di</strong> al secondo membro delle (5.10.6) e (5.10.7) deve<br />

essere ottimizzato se si vuole rendere la maggiorazione più stretta possibile. In questo<br />

contesto il bound appena introdotto è propedeutico alla <strong>di</strong>mostrazione del teorema <strong>di</strong><br />

Shannon sulla co<strong>di</strong>fica <strong>di</strong> canale che verrà <strong>di</strong>mostrato nel prossimo capitolo.


Capitolo - 6<br />

IL TEOREMA DI SHANNON SULLA CODIFICA DI CANALE<br />

6.1 - Premessa.<br />

Shannon, nel suo pionieristico lavoro del 1948, in<strong>di</strong>viduò una maggiorazione<br />

della probabilità d’errore che, anziché cercare <strong>di</strong> maggiorare la probabilità d’errore<br />

associata alla scelta <strong>di</strong> uno specifico insieme <strong>di</strong> segnali si propone <strong>di</strong> maggiorare la<br />

probabilità <strong>di</strong> errore me<strong>di</strong>a tra tutti i possibili set costituiti da un numero fissato <strong>di</strong><br />

segnali contenuti in un sottospazio <strong>di</strong> <strong>di</strong>mensione assegnata , nell’ipotesi in cui tutte<br />

le componenti <strong>di</strong> oguno <strong>di</strong> essi possano assumere valori appartenenti al medesimo<br />

alfabeto <strong>di</strong> car<strong>di</strong>nalità finita . Sotto queste ipotesi si possono effettuare un numero<br />

finito <strong>di</strong> scelte per la -upla <strong>di</strong> segnali da impiegare, esistono infatti solo ( )<br />

possibili -uple <strong>di</strong> segnali, alcune delle quali in realtà non “felici” in quanto utilizzano<br />

più volte uno stesso segnale.<br />

Shannon sfruttò il fatto che una qualsiasi funzione <strong>di</strong> variabile aleatoria può<br />

certamente assumere un valore non maggiore del suo valor me<strong>di</strong>o. Applicato al caso in<br />

esame ciò comporta l’esistenza <strong>di</strong> almeno una -upla <strong>di</strong> segnali che da luogo ad una<br />

probabilità d’errore non maggiore della me<strong>di</strong>a tra le probabilità <strong>di</strong> errore <strong>di</strong> tutte le -<br />

uple.<br />

È interessante osservare che quest’affermazione resta valida quale che sia la<br />

<strong>di</strong>stribuzione <strong>di</strong> massa <strong>di</strong> probabilità che si sceglie per calcolare la me<strong>di</strong>a citata, nel<br />

caso particolare potremmo ad esempio scegliere la me<strong>di</strong>a aritmetica, daremmo in<br />

questo caso uguale peso a ogni possibile -upla, ovvero potremmo attribuire pesi<br />

<strong>di</strong>versi ad esempio associando peso nullo a tutte le -uple in cui uno stesso segnale è<br />

utilizzato più <strong>di</strong> una volta, in questo caso evidentemente il valor me<strong>di</strong>o tra le probabilità<br />

<strong>di</strong> errore sarebbe verosimilmente una maggiorazione più stretta, altre scelte potrebbero<br />

rivelarsi infelici, ma costituirebbero comunque una maggiorazione per la probabilità<br />

d’errore <strong>di</strong> almeno una - upla.<br />

6.2 - La Disuguaglianza <strong>di</strong> Jensen<br />

Nel precedente paragrafo è stata utilizzata una <strong>di</strong>suguaglianza che risulta utile<br />

anche nella trattazione <strong>di</strong> altri argomenti legati alla <strong>Teoria</strong> dell’Informazione.<br />

Cominciamo con il definire un sottoinsieme convesso <strong>di</strong> uno spazio vettoriale:


58 Capitolo - 6 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

Definizione 6.1<br />

Un sottoinsieme <strong>di</strong> uno spazio vettoriale su o su è convesso se comunque presi<br />

due suoi elementi e un reale non negativo non maggiore <strong>di</strong> risulta:<br />

( ) A (6.2.1)<br />

***********<br />

La precedente in sostanza ci <strong>di</strong>ce che insieme è convesso se contiene tutte le<br />

corde che uniscono coppie <strong>di</strong> suoi elementi. Un esempio <strong>di</strong> regione convessa in<br />

l’insieme <strong>di</strong> tutte le possibili <strong>di</strong>stribuzioni <strong>di</strong> massa <strong>di</strong> probabilità <strong>di</strong> una variabile<br />

aleatoria <strong>di</strong>screta che assume valori appartenenti ad un<br />

insieme <strong>di</strong> car<strong>di</strong>nalità . Ad esempio in tale<br />

regione è costituita dal segmento della retta<br />

appartenente al primo quadrante. Nel caso <strong>di</strong><br />

Fig.E 6.1) da tutti i punti del piano<br />

coor<strong>di</strong>nate non negative.<br />

È facile convincersi del fatto che:<br />

è<br />

(ve<strong>di</strong><br />

- l’intersezione (anche infinita) d’insiemi convessi<br />

e convessa<br />

- l’insieme ottenuto moltiplicando tutti gli elementi <strong>di</strong> un convesso per uno scalare è<br />

convesso.<br />

- è convesso l’insieme che ha per elementi tutte le possibili somme tra elementi<br />

appartenenti a due insiemi convessi.<br />

Definizione 6.2<br />

Una funzione ( ) a valori in si <strong>di</strong>ce concava su un sottoinsieme convesso A del<br />

suo dominio se comunque presi due elementi x , x appartenenti ad e un reale non<br />

negativo<br />

Fig.E 6.1<br />

risulta:<br />

1 2<br />

<strong>di</strong><br />

Se risulta<br />

( ) ( ) ( ) ( ( ) ) (6.2.2)<br />

( ) ( ) ( ) ( ( ) ) (6.2.3)<br />

la funzione si <strong>di</strong>ce strettamente concava<br />

***********<br />

La definizione <strong>di</strong> funzione convessa è uguale alla precedente salvo il fatto che le<br />

<strong>di</strong>seguaglianze cambiano <strong>di</strong> verso.


Il Teorema <strong>di</strong> Shannon sulla Co<strong>di</strong>fica <strong>di</strong> Canale 59<br />

Nel caso <strong>di</strong> funzioni definite su sottoinsiemi <strong>di</strong> la precedente caratterizza le<br />

funzioni con concavità rivolta verso il basso in tutti i punti <strong>di</strong> un intervallo che è un<br />

sottoinsieme convesso <strong>di</strong> , è noto che laddove esiste la derivata seconda <strong>di</strong> una<br />

funzione concava è non positiva.<br />

Osserviamo che la combinazione lineare <strong>di</strong> funzioni concave è concava lo è<br />

strettamente se anche una sola delle funzioni lo è. Per verificarlo è sufficiente sommare<br />

termine a termine le (6.2.2) scritte per ciascuno degli adden<strong>di</strong> della combinazione<br />

lineare.<br />

Osservando la (6.2.2) notiamo che se si interpretano ed come i valori che<br />

può assumere una V.A. generalmente multi<strong>di</strong>mensionali e con ed<br />

rispettivamente le probabilità che essa li assuma, potremo affermare che per una<br />

funzione concava su un convesso che contenga tutti i valori che la V.A. può assumere<br />

ed una V.A. del tipo citato vale la proprietà:<br />

( ) ( ) (6.2.4)<br />

Vogliamo mostrare che la precedente è valida in generale cioè per variabili aleatorie<br />

<strong>di</strong>screte generalmente multi<strong>di</strong>mensionali che possano assumere valori.<br />

Abbiamo mostrato che la (6.2.4) è vera per , per lo è banalmente<br />

supponiamo quin<strong>di</strong> che lo sia per e mostriamo che allora lo è anche per .<br />

Se la (6.2.4) è vera per n 1 quale che sia la dmp <strong>di</strong> X si ha:<br />

∑ ( ) (∑( )) (6.2.5)<br />

dove rappresenta la probabilità che la variabile aleatoria assuma il valore .<br />

Risulta:<br />

∑ ( ) ∑ (∑<br />

∑<br />

( )) ( ) (6.2.6)<br />

Osserviamo che ∑<br />

∑<br />

sod<strong>di</strong>sfa tutte le proprietà <strong>di</strong> una dmp quin<strong>di</strong> in virtù<br />

della (6.2.5) possiamo scrivere:<br />

∑ ( ) ∑ ( (∑<br />

∑<br />

)) ( )<br />

(6.2.7)<br />

∑ ( ( )) ( )<br />

dove<br />

è certamente un punto appartenente al convesso su cui è definita la funzione.


60 Capitolo - 6 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

All’ultimo membro della precedente potremo applicare la (6.2.2) ottenendo:<br />

∑ ( ) ∑ ( ( )) ( ) (∑ )<br />

(∑ ∑<br />

∑<br />

) (∑ ) ( )<br />

(6.2.8)<br />

ovviamente la (6.2.5) <strong>di</strong>venta<br />

∑ ( ) (∑( )) (6.2.9)<br />

se la ( ) anziché essere concava è convessa.<br />

6.3 - Il Teorema <strong>di</strong> Shannon sulla Co<strong>di</strong>fica <strong>di</strong> Canale.<br />

Consideriamo la probabilità d’errore con<strong>di</strong>zionata all’emissione dell’ -esimo<br />

segnale <strong>di</strong> una data -upla, essa è in realtà una funzione della -upla nel suo complesso,<br />

in quanto il cambiamento anche <strong>di</strong> un solo segnale nella -upla può comportare la<br />

mo<strong>di</strong>fica della regione <strong>di</strong> decisione associata ad , per sottolineare ciò, porremo in<br />

quel che segue ( ).<br />

Dovendo calcolare la me<strong>di</strong>a sopra citata, e tenuto conto delle considerazioni fatte<br />

in merito, possiamo scegliere ad arbitrio una <strong>di</strong>stribuzione <strong>di</strong> massa <strong>di</strong> probabilità<br />

( ) per le -uple <strong>di</strong> possibili segnali. Per semplicità supponiamo<br />

che<br />

( ) ∏ ( ) (6.3.1)<br />

e che tutte le d.m.p. marginali che compaiono nella produttoria siano identiche.<br />

Avremo quin<strong>di</strong>:<br />

∑ ∑ ∑ ∏ ( ) ( ) (6.3.2)<br />

utilizzando il bound <strong>di</strong> Gallager otteniamo:<br />

∑ ∑ ∑ ∏ ( ) ∫ [ ∑ ( ( )) ] ( ) (6.3.3)<br />

S<br />

che può essere riscritta sfruttando il teorema della me<strong>di</strong>a (portando cioè la me<strong>di</strong>a<br />

all’interno dell’integrale) come segue:<br />

S<br />

∫ ∑ ( ) ( ) {∑ ∑ ∑ ∑ ∏ ( ) [ ∑ ( ( [ ] )) ] }<br />

(6.3.4)


Il Teorema <strong>di</strong> Shannon sulla Co<strong>di</strong>fica <strong>di</strong> Canale 61<br />

Osserviamo che ∑ ( ( )) , può intendersi come il valore<br />

assunto da una variabile aleatoria reale . Nel derivare il bound <strong>di</strong> Gallager avevamo<br />

supposto se adesso lo limitiamo all’intervallo , è una funzione concava<br />

<strong>di</strong> (concavità rivolta verso il basso), quin<strong>di</strong> possiamo applicare la <strong>di</strong>suguaglianza <strong>di</strong><br />

Jensen (ve<strong>di</strong> § precedente) che garantisce che il valor me<strong>di</strong>o <strong>di</strong> una funzione concava <strong>di</strong><br />

una V.A. è non maggiore del valore che detta funzione assume in corrispondenza al<br />

valor me<strong>di</strong>o della V.A..<br />

Sulla base <strong>di</strong> quanto appena detto possiamo maggiorare il contenuto delle parentesi<br />

graffe della precedente come segue:<br />

∑ ∑ ∑ ∑ ∏ ( ) [ ∑ ( ( )) ] ( )<br />

[ ∑ ∑ ∑ ∑ ∏ ( ) ∑ ( ( )) ]<br />

[ ∑ ∑ ∑ ∑ ∑ ∏ ( ) ( ( )) ]<br />

(6.3.5)<br />

[ ∑ ∑ ( ) ( ( )) ]<br />

[( ) ∑ ( ) ( ( )) ]<br />

L’ultimo membro della precedente ci consente <strong>di</strong> maggiorare ulteriormente la<br />

ottenendo:<br />

S<br />

∫ ∑ ( ) ( ( )) [( ) ∑ ( )( ( )) ]<br />

( ) ∫ [∑ ( )( ( )) ]<br />

S<br />

(6.3.6)<br />

S<br />

∫ [∑ ( )( ( )) ]<br />

Ulteriori elaborazioni della precedente si possono ottenere osservando che il<br />

contenuto delle parentesi quadre all’ultimo membro <strong>di</strong> essa può intendersi come il valor<br />

me<strong>di</strong>o della ( ( )) pensata come funzione della V.A. multi<strong>di</strong>mensionale . Ciò<br />

premesso, se introduciamo l’ipotesi ( ) ∏ ( ), cioè che il canale, se<br />

utilizzato in tempi <strong>di</strong>versi per inviare le componenti del segnale , sia privo <strong>di</strong><br />

memoria, ovvero che per inviarle si utilizzino contemporaneamente canali identici


62 Capitolo - 6 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

in<strong>di</strong>pendenti tra loro, sostituendo nella (6.3.6) e ricordando che la me<strong>di</strong>a <strong>di</strong> un prodotto<br />

è uguale al prodotto delle me<strong>di</strong>e otteniamo:<br />

S<br />

∫ [ ∑ ∑ ∑ ( ) ∏ ( ( | )) ]<br />

(6.3.7)<br />

S<br />

∫ [∏ ∑ ( ) ( ( | )) ]<br />

la quale limitandoci a considerare delle ( ) ∏ ( ) fornisce ancora:<br />

S<br />

∫ [∏ ∑ ( ) ( ( )) ]<br />

S<br />

∫ ∏ [∑ ( )( ( )) ]<br />

(6.3.8)<br />

{∫ [∑ ( )( ( )) ] }<br />

È opportuno riba<strong>di</strong>re che la maggiorazione ricavata è del tutto generale, essendo<br />

basata sul bound <strong>di</strong> Gallager, quin<strong>di</strong> si applica anche a canali <strong>di</strong>screti.<br />

Pertanto, prima <strong>di</strong> procedere oltre, provve<strong>di</strong>amo a riscrivere la (6.3.8) per spazi<br />

d’uscita <strong>di</strong>screti. Per farlo dobbiamo sostituire l’integrale con una sommatoria estesa a<br />

tutti i possibili simboli dell’alfabeto d’uscita che supporremo <strong>di</strong> car<strong>di</strong>nalità , e la<br />

densità <strong>di</strong> probabilità con<strong>di</strong>zionata che caratterizza il canale con uscita nel continuo con<br />

le dmp con<strong>di</strong>zionate del DMC ottenendo:<br />

[∑ (∑ ( )( ( )) ) ] (6.3.9)<br />

è utile riscrivere la precedente nella forma:<br />

{ [∑ (∑ ( )( ( )) ) ] }<br />

{ [∑ (∑ ( )( ( )) ) ]}<br />

(6.3.10)<br />

{ [∑ (∑ ( )( ( )) ) ]}<br />

che ne rende esplicita la <strong>di</strong>pendenza dal rapporto .<br />

Ricor<strong>di</strong>amo che è il numero <strong>di</strong> segnali utilizzati e la <strong>di</strong>mensione del sottospazio<br />

in cui detti segnali sono contenuti, si può interpretate come la massima<br />

quantità d’informazione, espressa in nat, che i parametri fissati per il sistema consentirebbero<br />

<strong>di</strong> affidare a ogni <strong>di</strong>mensione del sottospazio. rappresenta quin<strong>di</strong> il data rate.


Il Teorema <strong>di</strong> Shannon sulla Co<strong>di</strong>fica <strong>di</strong> Canale 63<br />

La (6.3.10) si può esprimere in forma più compatta ponendo:<br />

( ( )) [∑ (∑ ( )( ( ) )) ] (6.3.11)<br />

Sostituendo la precedente nella (6.3.10) otteniamo:<br />

( ( ( )) ) (6.3.12)<br />

Il minimo al variare <strong>di</strong> e ( ) del secondo membro della precedente fornisce la<br />

maggiorazione più stretta. La minimizzazione citata equivale alla ricerca <strong>di</strong>:<br />

( )<br />

( ( )) ( ) (6.3.13)<br />

Ovviamente tale ricerca deve tener conto delle limitazioni poste su , che deve<br />

appartenere all’intervallo e del fatto che la ( ) deve sod<strong>di</strong>sfare le proprietà <strong>di</strong><br />

una dmp che assume valori in un insieme <strong>di</strong> car<strong>di</strong>nalità .<br />

Osserviamo infine che la maggiorazione appena ricavata non <strong>di</strong>pende da<br />

quin<strong>di</strong> essa è anche una maggiorazione per la probabilità d’errore me<strong>di</strong>a del sistema.<br />

Tutto ciò considerato possiamo scrivere:<br />

( ) (6.3.14)<br />

Appare chiaro quanto siano importanti le proprietà della ( ( )).<br />

In quel che segue per semplificare la notazione porremo ( ) , ( ) ,<br />

in<strong>di</strong>cheremo la <strong>di</strong>stribuzione <strong>di</strong> massa ( ) con<br />

Possiamo osservare che, in<strong>di</strong>pendentemente dalla ( ), risulta:<br />

( ) [∑ (∑ ( ) ) ] [∑ ∑ ] (6.3.15)<br />

si ha inoltre:


64 Capitolo - 6 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

{ [∑ (∑ ( ) ) ]}<br />

( ) |<br />

|<br />

|<br />

∑ (∑ ( ) )<br />

| ∑<br />

[∑ ( ) ]<br />

|<br />

∑<br />

{( ) [∑ ( ) ]}<br />

|<br />

|<br />

∑ (∑ ))<br />

{<br />

{<br />

[∑ ( ) ]<br />

∑ ( ) ( ) ( )<br />

( )<br />

|<br />

∑ ( )<br />

} }<br />

∑<br />

( )<br />

∑ ( )<br />

(<br />

)<br />

∑ ( ) ∑ ∑ ( ) ∑ ∑ ( ) I( )<br />

(6.3.16)<br />

La precedente in sostanza <strong>di</strong>ce che la pendenza della ( ), valutata per<br />

e pensata come funzione della sola , è pari all’informazione mutua del canale<br />

connesso ad una sorgente che emette simboli <strong>di</strong>stribuiti secondo la . Per questo<br />

motivo abbiamo in<strong>di</strong>cato la suddetta informazione mutua come una ( ) che evidenzia<br />

la <strong>di</strong>pendenza dalla <strong>di</strong>stribuzione sotto il nostro controllo.<br />

Abbiamo già visto che ( ) . Se risulta ( ) allora la ( ) che,<br />

come abbiamo visto attraversa l’asse delle nell’origine, assume certamente valori<br />

positivi in un intorno destro <strong>di</strong> quest’ultima.<br />

Si può anche verificare che la ( ), se ( ) , è una funzione strettamente<br />

crescente e che la sua derivata seconda è non positiva per . Essa ha quin<strong>di</strong> la<br />

concavità rivolta verso il basso, salvo alcune eccezioni in cui la derivata seconda è<br />

nulla, ma tali casi non hanno interesse pratico.<br />

Il nostro scopo è quello <strong>di</strong> massimizzare la ( ) , consideriamo per il<br />

momento solo la <strong>di</strong>pendenza da , la derivata parziale rispetto a della funzione in<br />

parola vale:<br />

( )<br />

(6.3.17)


Il Teorema <strong>di</strong> Shannon sulla Co<strong>di</strong>fica <strong>di</strong> Canale 65<br />

affinché si annulli deve risultare<br />

( )<br />

. Sappiamo che<br />

( )<br />

non è crescente<br />

poiché sua derivata è non positiva, pertanto la (6.3.17) non può annullarsi per<br />

se:<br />

( ) | (6.3.18)<br />

Ovvero se<br />

( ) | ( ) (6.3.19)<br />

per i valori <strong>di</strong><br />

che sod<strong>di</strong>sfano la (6.3.18) risulta,<br />

( )<br />

quin<strong>di</strong> ( )<br />

è strettamente crescente nell’intervallo<br />

nell’estremo destro dell’intervallo; avremo cioè:<br />

ed assume il suo massimo valore<br />

( ) ( )<br />

( ) | (6.3.20)<br />

per<br />

( ) | ( ) (6.3.21)<br />

la (6.3.17) si annulla certamente per un valore <strong>di</strong> appartenente all’intervallo che<br />

risolve l’equazione<br />

( )<br />

. Tale zero corrisponde certamente a un massimo come<br />

si constata facilmente analizzando il segno della (6.3.17). La (<br />

<strong>di</strong><br />

dato dalla (6.3.21) è implicitamente definita dalle:<br />

) nel range <strong>di</strong> valori<br />

( ) ( )<br />

( )<br />

( )<br />

(6.3.22)<br />

dalle quali si ottiene:<br />

{<br />

( )<br />

( ( )<br />

( ) ) ( ) ( ) ( )<br />

( )<br />

(6.3.23)<br />

che comporta:<br />

( )<br />

(<br />

( ) )<br />

( )<br />

(6.3.24)


66 Capitolo - 6 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

Nelle ultime due equazioni il secondo membro è una funzione <strong>di</strong> essendo la<br />

soluzione della seconda delle (6.3.22) che è unica in quanto nell’intervallo <strong>di</strong> interesse<br />

abbiamo visto che la<br />

( )<br />

è una funzione strettamente crescente <strong>di</strong> .<br />

Per i valori <strong>di</strong> ( ) la (6.3.17) assumerebbe valori negativi quin<strong>di</strong> la<br />

( ) sarebbe una funzione decrescente <strong>di</strong> quin<strong>di</strong> il suo massimo lo<br />

raggiungerebbe per , ma ( ) in<strong>di</strong>pendentemente da ne seguirebbe<br />

( ) e la (6.3.14) si rivelerebbe del tutto inutile.<br />

In conclusione la ( ) per valori <strong>di</strong> appartenenti all’intervallo<br />

[<br />

( )<br />

| ] è un tratto <strong>di</strong> retta parallela alla seconda bisettrice che tocca l’asse<br />

delle or<strong>di</strong>nate in ( ( )) alla quale si raccorda un tratto <strong>di</strong> curva con<br />

concavità rivolta verso l’alto che tocca l’asse delle ascisse in I( ), come si verifica<br />

facilmente valutando le (6.3.22) per . A questo punto non resta che massimizzare<br />

la ( ( )) rispetto alla ( ).<br />

La che massimizza la ( ) <strong>di</strong>pende dal canale che si sta utilizzando, e, per<br />

fissato canale può <strong>di</strong>pendere dal rate , in particolare esistono canali per cui la ( )<br />

è massimizzata da un'unica , canali per i quali esistono delle <strong>di</strong>stinte che<br />

massimizzano la funzione in parola in intervalli <strong>di</strong> <strong>di</strong>sgiunti e canali per cui la ( )<br />

che massimizza la ( ) varia con continuità con . In ogni caso il fatto che la<br />

( ) sia una funzione limitata convessa per I( ) , assicura che la<br />

massimizzazione desiderata è in pratica l’inviluppo superiore <strong>di</strong> tutte le ( ), si può<br />

<strong>di</strong>mostrare che detta funzione è anch’essa convessa, decrescente e non negativa per<br />

, dove I( ) è la capacità <strong>di</strong> canale e che in questo contesto assume<br />

un ruolo fondamentale.<br />

In sostanza abbiamo appena <strong>di</strong>mostrato il Teorema <strong>di</strong> Shannon sulla co<strong>di</strong>fica <strong>di</strong><br />

canale, che possiamo recitare come segue:<br />

Teorema 6.1<br />

Dato un qualsiasi canale <strong>di</strong>screto privo <strong>di</strong> memoria, esiste sempre un co<strong>di</strong>ce con un<br />

rate [ ], le cui parole sono costituite da simboli per il quale risulta:<br />

( ) (6.3.25)<br />

dove è la probabilità d’errore ottenuta tramite un ricevitore a massima<br />

verosimiglianza ed ( ) una funzione decrescente, convessa e maggiore <strong>di</strong> zero<br />

nell’intervallo .


Il Teorema <strong>di</strong> Shannon sulla Co<strong>di</strong>fica <strong>di</strong> Canale 67<br />

***********<br />

Il precedente teorema in pratica mostra che se aumentiamo mantenendo<br />

costante possiamo in<strong>di</strong>viduare co<strong>di</strong>ci con probabilità d’errore piccola a piacere purché<br />

risulti . È opportuno tuttavia osservare che al crescere <strong>di</strong> il numero <strong>di</strong> parole <strong>di</strong><br />

co<strong>di</strong>ce necessario per mantenere costante il rate cresce anch’esso, “purtroppo” con<br />

legge esponenziale, aumentando così, spesso a livelli improponibili, la complessità <strong>di</strong><br />

deco<strong>di</strong>fica. Da qui la necessità <strong>di</strong> in<strong>di</strong>viduare co<strong>di</strong>ci su spazi dotati <strong>di</strong> strutture<br />

algebriche molto ricche che permettano operazioni <strong>di</strong> co<strong>di</strong>fica e deco<strong>di</strong>fica semplici,<br />

malgrado l’elevato numero <strong>di</strong> parole che li costituiscono.<br />

Potrebbe sorgere una perplessità circa il risultato appena ottenuto, si potrebbe<br />

infatti sospettare che il bound ottenuto per la probabilità d’errore me<strong>di</strong>a del co<strong>di</strong>ce<br />

nasconda delle probabilità d’errore con<strong>di</strong>zionate all’emissione <strong>di</strong> una specifica parola<br />

del co<strong>di</strong>ce molto maggiore del bound relativo alla probabilità d’errore me<strong>di</strong>a.<br />

Per fugare questa legittima perplessità consideriamo uno spazio <strong>di</strong> <strong>di</strong>mensione ,<br />

o che è lo stesso un co<strong>di</strong>ce costituito da parole <strong>di</strong> simboli emessi consecutivamente<br />

da un co<strong>di</strong>ficatore <strong>di</strong> canale. Il teorema <strong>di</strong> Shannon ci garantisce che esiste almeno un<br />

set <strong>di</strong> parole tra le possibili scelte, che esibisce una probabilità d’errore<br />

me<strong>di</strong>a non maggiore <strong>di</strong>:<br />

( ( ) ) (6.3.26)<br />

Se assumiamo che le parole che costituiscono il co<strong>di</strong>ce abbiano uguale probabilità <strong>di</strong><br />

essere emesse, allora avremo:<br />

∑<br />

(6.3.27)<br />

Scartando gli M segnali cui corrispondono le probabilità d’errore più gran<strong>di</strong>, ci<br />

ren<strong>di</strong>amo conto che la probabilità d’errore associata ad uno qualsiasi dei segnali<br />

sopravvissuti non può essere maggiore <strong>di</strong><br />

( ( )) . Se così non fosse, almeno ad<br />

un termine dei sopravvissuti corrisponderebbe una<br />

( ( )) vi sarebbero<br />

quin<strong>di</strong> almeno<br />

segnali, quelli scartati più quello appena citato, con<br />

( ( )) e potremmo scrivere:<br />

( )<br />

( ( ) )<br />

( ( ) ) ( ( ) ) (6.3.28)<br />

contro l’ipotesi che il co<strong>di</strong>ce sod<strong>di</strong>sfa la (6.3.26).<br />

Per ogni<br />

del gruppo dei sopravvissuti potremo allora scrivere:


68 Capitolo - 6 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

( ( ) )<br />

(<br />

( ( ( )<br />

( ( )<br />

( ) )<br />

) (<br />

( ) ( ( ) )<br />

)<br />

( ) ))<br />

( ( ) )<br />

(6.3.29)<br />

Abbiamo appena mostrato che esiste certamente un co<strong>di</strong>ce per il quale la peggiore delle<br />

probabilità d’errore con<strong>di</strong>zionata supera il bound sulla probabilità d’errore me<strong>di</strong>a per al<br />

più un fattore .


Capitolo - 7<br />

STRUTTURE ALGEBRICHE<br />

Al fine <strong>di</strong> introdurre il concetto <strong>di</strong> co<strong>di</strong>ce è opportuno ricordare alcune<br />

definizioni:<br />

7.1 - Gruppo<br />

Un insieme<br />

in<strong>di</strong>cheremo con<br />

non vuoto in cui si è definita una legge <strong>di</strong> composizione interna che<br />

è un gruppo rispetto a tale legge se valgono le seguenti proprietà:<br />

( ) ( )<br />

(7.1.1)<br />

Se la legge <strong>di</strong> composizione interna è anche commutativa<br />

commutativo o abeliano.<br />

è un gruppo<br />

7.2 - Anello<br />

Un insieme nel quale siano state in<strong>di</strong>viduate due leggi <strong>di</strong> composizione interna<br />

che chiameremo ad<strong>di</strong>zione e moltiplicazione è un anello se:<br />

- è un gruppo commutativo rispetto all’ad<strong>di</strong>zione;<br />

- la moltiplicazione gode della proprietà associativa;<br />

- vale la legge <strong>di</strong>stributiva della moltiplicazione rispetto all’ad<strong>di</strong>zione sia a destra che<br />

a sinistra.<br />

Se la moltiplicazione gode anche della proprietà commutativa <strong>di</strong>remo che è un<br />

anello commutativo, se esiste in l’elemento neutro per la moltiplicazione <strong>di</strong>remo che<br />

è un anello con identità.<br />

7.3 - Campo<br />

Un insieme che sia un anello commutativo con identità è anche un campo se<br />

privato dell’elemento neutro rispetto all’ad<strong>di</strong>zione è un gruppo commutativo rispetto<br />

alla moltiplicazione.<br />

L’insieme dei numeri razionali, l’insieme dei reali e l’insieme dei<br />

complessi sono campi. Si verifica facilmente che anche l’insieme , effettuando<br />

l’ad<strong>di</strong>zione senza riporto, cioè ponendo e con la usuale moltiplicazione in<br />

è un campo che in<strong>di</strong>cheremo con .<br />

7.4 - Spazio vettoriale<br />

Dato un gruppo abeliano ed un campo si <strong>di</strong>ce che è uno spazio vettoriale<br />

sul campo se si è in<strong>di</strong>viduata una legge <strong>di</strong> composizione esterna, detta prodotto per


70 Capitolo - 7 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

scalari, che associa ad ogni elemento <strong>di</strong> un elemento <strong>di</strong> e che comunque scelti<br />

e<br />

goda delle proprietà:<br />

( )<br />

( ) (7.4.1)<br />

dove e in<strong>di</strong>cano rispettivamente gli elementi neutri dell’ad<strong>di</strong>zione e della<br />

moltiplicazione del campo, quello del gruppo, che chiameremo anche origine dello<br />

spazio.


Capitolo - 8<br />

8.1 - Lo Spazio<br />

Fissato un naturale consideriamo l’insieme <strong>di</strong> tutte le -uple or<strong>di</strong>nate<br />

d’elementi <strong>di</strong> . Ci si rende conto facilmente che è un gruppo rispetto alla legge <strong>di</strong><br />

composizione interna che associa ad ogni coppia <strong>di</strong> elementi <strong>di</strong> quello ottenuto<br />

componendo termine a termine tramite l’ad<strong>di</strong>zione in gli elementi omologhi delle<br />

due -uple. Si constata che ogni -upla è l’opposta <strong>di</strong> se stessa e che l’elemento<br />

neutro del gruppo è la -upla identicamente nulla.<br />

è anche uno spazio vettoriale <strong>di</strong> <strong>di</strong>mensione sopra il campo , potremo<br />

quin<strong>di</strong> pensare gli elementi <strong>di</strong> come vettori riga con componenti che assumono<br />

valori in . In quel che segue in<strong>di</strong>cheremo gli elementi <strong>di</strong> con lettere corsive<br />

minuscole in grassetto e li chiameremo parole <strong>di</strong> , o semplicemente parole, le<br />

componenti della generica parola saranno chiamate bit (nel senso <strong>di</strong> Binary <strong>di</strong>gIT, non<br />

<strong>di</strong> Binary Informationn uniT).<br />

È opportuno tenere presente che:<br />

- è uno spazio metrico, possiamo infatti assumere come <strong>di</strong>stanza tra due parole <strong>di</strong><br />

la somma in delle somme in delle componenti omologhe;<br />

- è uno spazio normato potendosi assumere come norma del generico elemento <strong>di</strong><br />

la <strong>di</strong>stanza <strong>di</strong> detto elemento dall’origine <strong>di</strong> , cioè dalla parola identicamente<br />

nulla.<br />

In quel che segue in<strong>di</strong>cheremo l’ad<strong>di</strong>zione nel campo con .<br />

La <strong>di</strong>stanza sopra introdotta è detta <strong>di</strong>stanza <strong>di</strong> Hamming. Essa in pratica è<br />

espressa dal numero <strong>di</strong> bit corrispondenti <strong>di</strong>versi delle due parole; in formule:<br />

( ) ∑ (8.1.1)<br />

Che la <strong>di</strong>stanza <strong>di</strong> Hamming sia effettivamente una metrica si verifica facilmente,<br />

essa è non negativa ed è nulla se e solo se le parole sono uguali, inoltre si può<br />

facilmente verificare che vale la <strong>di</strong>suguaglianza triangolare, cioè che date tre parole<br />

<strong>di</strong><br />

risulta:<br />

( ) ( ) ( ) (8.1.2)<br />

per sincerarsene basta esplicitare la precedente:<br />

∑ ∑ ∑ (8.1.3)


72 Capitolo - 8 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

ed osservare che tutti gli adden<strong>di</strong> delle sommatorie che compaiono nella precedente<br />

sono non negativi, pertanto è sufficiente verificare che la (8.1.3) sia sod<strong>di</strong>sfatta<br />

addendo per addendo, fatto questo facilmente verificabile effettuando delle prove<br />

esaustive.<br />

La massima <strong>di</strong>stanza possibile tra due parole <strong>di</strong> vale e si ottiene in<br />

corrispondenza a coppie <strong>di</strong> parole che siano una la negata dell’altra, cioè ottenute<br />

mutando tutti i bit uno in zero e viceversa.<br />

La norma <strong>di</strong> un elemento <strong>di</strong> viene denominato peso della parola e coincide<br />

con il numero <strong>di</strong> bit uno presenti nella parola.<br />

La norma e la metrica appena introdotte sono tra loro coerenti, infatti la <strong>di</strong>stanza<br />

tra due elementi coincide con la norma della <strong>di</strong>fferenza tra <strong>di</strong> essi. Ricor<strong>di</strong>amo che in<br />

ad<strong>di</strong>zione e sottrazione coincidono, in quanto ogni elemento è l’opposto <strong>di</strong> se<br />

stesso.<br />

8.2 - Generalizzazione della <strong>di</strong>stanza <strong>di</strong> Hamming<br />

Dato un insieme <strong>di</strong> car<strong>di</strong>nalità consideriamo l’insieme A . Anche su detto<br />

insieme si può introdurre la <strong>di</strong>stanza <strong>di</strong> Hamming tra due suoi elementi, che anche in<br />

questo caso è espressa dal numero <strong>di</strong> simboli corrispondenti <strong>di</strong>versi tra loro. La<br />

<strong>di</strong>stanza tra due elementi <strong>di</strong> A è quin<strong>di</strong> al più .<br />

Si può verificare che la <strong>di</strong>stanza <strong>di</strong> Hamming è una metrica su A . Essa è non<br />

negativa, nulla se e solo se i due elementi sono lo stesso elemento, la verifica della<br />

vali<strong>di</strong>tà della <strong>di</strong>suguaglianza triangolare può essere effettuata analizzando tutti i casi<br />

possibili.<br />

Fissato un elemento <strong>di</strong> A ed un naturale esistono ( )( ) elementi<br />

<strong>di</strong> A a <strong>di</strong>stanza da . Potremmo <strong>di</strong>re che detti elementi giacciono sulla superficie <strong>di</strong><br />

una sfera <strong>di</strong> raggio centrata in . La sfera appena citata contiene esattamente<br />

∑ ( )( ) elementi. Il numero <strong>di</strong> tali elementi, per analogia, costituisce il “volume”<br />

<strong>di</strong> detta sfera.<br />

Qualora A fosse anche uno spazio vettoriale, tramite la <strong>di</strong>stanza <strong>di</strong> Hamming si<br />

potrebbe in<strong>di</strong>viduare un “peso” per ogni elemento <strong>di</strong> A espresso dalla <strong>di</strong>stanza<br />

dell’elemento dall’origine dello spazio, tale peso costituirebbe una possibile norma per<br />

A .


Capitolo - 9<br />

CODICI BINARI A BLOCCHI<br />

9.1 - Co<strong>di</strong>ficatore, Co<strong>di</strong>ce, Deco<strong>di</strong>ficatore<br />

Cominciamo con alcune definizioni:<br />

Definizione 9.1 - co<strong>di</strong>ficatore a blocchi<br />

Un co<strong>di</strong>ficatore binario a blocchi è un’applicazione da a , se è iniettiva il<br />

co<strong>di</strong>ficatore è non ambiguo.<br />

***********<br />

Definizione 9.2 - co<strong>di</strong>ce binario a blocchi<br />

Dato un co<strong>di</strong>ficatore da a chiameremo co<strong>di</strong>ce binario a blocchi l’insieme<br />

( ) . Gli elementi <strong>di</strong> sono denominati parole <strong>di</strong> co<strong>di</strong>ce.<br />

***********<br />

In altri termini per co<strong>di</strong>ce binario a blocchi intenderemo l’insieme delle parole <strong>di</strong><br />

che sono immagine secondo il co<strong>di</strong>ficatore <strong>di</strong> almeno un elemento <strong>di</strong> , uno<br />

solo se il co<strong>di</strong>ficatore è non ambiguo.<br />

In questo contesto la finalità <strong>di</strong> un co<strong>di</strong>ce è quella <strong>di</strong> combattere l’effetto dei<br />

<strong>di</strong>sturbi introdotti dal canale nel segnale ricevuto, tali <strong>di</strong>sturbi potrebbero infatti dar<br />

luogo ad errori nella ricezione. Compito del sistema <strong>di</strong> co<strong>di</strong>fica è ridurre la frequenza <strong>di</strong><br />

tali errori seguendo una delle seguenti strategie:<br />

- in<strong>di</strong>viduare e segnalare gli errori che si verificano con maggiore probabilità; ciò è<br />

utile qualora sia <strong>di</strong>sponibile un canale <strong>di</strong> ritorno, non sia necessario trasmettere in<br />

tempo reale e sia quin<strong>di</strong> possibile la ritrasmissione del messaggio senza<br />

pregiu<strong>di</strong>care la qualità del servizio, In questo caso si parla <strong>di</strong> tecniche <strong>di</strong> tipo ARQ<br />

(Automatic Repeat-reQuest);<br />

- tentare , qualora la ritrasmissione non sia possibile, <strong>di</strong> correggere gli errori che più<br />

verosimilmente sono presenti nella parola ricevuta in questo caso si fa riferimento a<br />

strategie <strong>di</strong> tipo FEC (Forward Error Correction).<br />

In alcuni casi sono previste entrambe le strategie, cioè alcuni errori vengono rivelati e<br />

corretti, altri semplicemente segnalati.<br />

In quel che segue ci occuperemo principalmente <strong>di</strong> sistemi <strong>di</strong> co<strong>di</strong>fica finalizzati alla<br />

FEC. La funzione <strong>di</strong> correzione sopra citata è affidata a un’applicazione D che<br />

chiameremo deco<strong>di</strong>ficatore.


74 Capitolo - 9 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

Definizione 9.3 - deco<strong>di</strong>ficatore<br />

Dato un co<strong>di</strong>ce binario a blocchi , il deco<strong>di</strong>ficatore è un’applicazione<br />

che sulla base <strong>di</strong> un criterio prefissato, ha il compito <strong>di</strong> associare ad ogni elemento <strong>di</strong><br />

che si presenti all’uscita del canale l’elemento <strong>di</strong> che verosimilmente era stato<br />

immesso nel co<strong>di</strong>ficatore posto all’ingresso del canale stesso.<br />

***********<br />

Quanto appena detto rende chiaro che più che <strong>di</strong> co<strong>di</strong>ci bisognerebbe parlare <strong>di</strong><br />

sistemi <strong>di</strong> co<strong>di</strong>fica-deco<strong>di</strong>fica, sia perché uno stesso co<strong>di</strong>ce (in quanto sottoinsieme<br />

<strong>di</strong> ) potrebbe essere ottenuto con co<strong>di</strong>ficatori <strong>di</strong>versi, sia perché potrebbe essere<br />

deco<strong>di</strong>ficato con deco<strong>di</strong>ficatori basati su criteri <strong>di</strong>versi.<br />

Nella pratica in effetti quando si parla <strong>di</strong> co<strong>di</strong>ce ci si riferisce in<strong>di</strong>fferentemente,<br />

capiterà anche noi, sia a che a , lasciando al contesto l’onere <strong>di</strong> rendere chiaro al<br />

lettore a cosa si stia effettivamente facendo riferimento.<br />

Appare in conclusione chiaro che un sistema <strong>di</strong> co<strong>di</strong>fica è in realtà completamente<br />

definito solo dalla terna .<br />

La capacità <strong>di</strong> correzione <strong>di</strong> un co<strong>di</strong>ce è in pratica affidata alla ridondanza più o<br />

meno oculatamente introdotta dal co<strong>di</strong>ficatore, ne <strong>di</strong>scende che <strong>di</strong> regola e che il<br />

co<strong>di</strong>ficatore è un’applicazione iniettiva.<br />

Altrettanto evidente è che, se il co<strong>di</strong>ce è non ambiguo, il criterio adottato per la<br />

scelta del deco<strong>di</strong>ficatore deve necessariamente essere tale che la restrizione <strong>di</strong> a<br />

coincida con l’applicazione inversa della restrizione <strong>di</strong> a .<br />

9.2 - Utilità della co<strong>di</strong>fica <strong>di</strong> canale<br />

La scelta del co<strong>di</strong>ce, e quella del deco<strong>di</strong>ficatore possono avere un considerevole<br />

impatto sulle prestazioni del sistema <strong>di</strong> trasmissione in termini <strong>di</strong> probabilità d’errore e<br />

<strong>di</strong> complessità del sistema.<br />

Va anche sottolineato che, per fissato co<strong>di</strong>ce, possono essere in<strong>di</strong>viduati <strong>di</strong>versi<br />

deco<strong>di</strong>ficatori. Per taluni sistemi può essere più qualificante ottimizzare la probabilità<br />

d’errore sul singolo bit informativo, per altri quella sul simbolo trasmesso, nella scelta<br />

del deco<strong>di</strong>ficatore se ne dovrebbe tener conto. Un altro elemento da considerare nella<br />

scelta del sistema <strong>di</strong> co<strong>di</strong>fica è il tipo <strong>di</strong> canale, che può essere il classico AWGN, un<br />

canale dotato <strong>di</strong> memoria, con conseguente presenza d’interferenza intersimbolica, o un<br />

canale che introduce <strong>di</strong>sturbi <strong>di</strong> tipo burst, cioè <strong>di</strong>sturbi che seppur <strong>di</strong> breve durata<br />

tendono a coinvolgere più simboli consecutivi.


Co<strong>di</strong>ci Binari a Blocchi 75<br />

Non si può nemmeno trascurare tra i parametri da tenere in considerazione la<br />

complessità della deco<strong>di</strong>fica. Scegliere ad esempio un algoritmo <strong>di</strong> deco<strong>di</strong>fica subottimo,<br />

comporta in genere un degrado delle prestazioni, detto degrado, però, potrebbe<br />

essere ampiamente ripagato da una significativa riduzione della complessità e quin<strong>di</strong><br />

dei costi, ovvero potrebbe essere una scelta obbligata da limiti tecnologici contingenti.<br />

In particolare per il momento faremo riferimento a un sistema che trasmette su un<br />

BSC (Binary Symmetric Channel) privo <strong>di</strong> memoria. I simboli che costituiscono la<br />

generica parola <strong>di</strong> co<strong>di</strong>ce vengono quin<strong>di</strong> inviati in<strong>di</strong>pendentemente sul canale e<br />

ciascuno <strong>di</strong> essi avrà una probabilità<br />

<strong>di</strong> essere rivelato in modo errato, pertanto in<br />

uscita al canale avremo un elemento <strong>di</strong> che non è certo corrisponda all’elemento<br />

inviato.<br />

La probabilità <strong>di</strong> ricevere una parola <strong>di</strong> correttamente sarà data da (<br />

) ad esempio con e avremo conseguentemente la<br />

probabilità <strong>di</strong> ricevere una parola non corretta vale<br />

, tale probabilità è in<br />

realtà scomponibile nella somma <strong>di</strong> tante probabilità d’eventi <strong>di</strong>sgiunti, precisamente<br />

eventi del tipo: “nella parola ricevuta sono presenti esattamente errori”.<br />

La probabilità che la parola ricevuta non sia corretta si può quin<strong>di</strong> anche scrivere nella<br />

forma:<br />

∑ ( ) ( ) (9.2.1)<br />

dove il - esimo addendo esprime la probabilità che nella parola ricevuta siano presenti<br />

esattamente t errori. La probabilità che la parola contenga almeno due errori si può<br />

pertanto scrivere anche nella forma:<br />

∑ ( ) ( ) (9.2.2)<br />

nel nostro esempio tale probabilità si ridurrebbe a .<br />

Quanto detto mostra come il contributo alla probabilità dell’errore singolo sia <strong>di</strong><br />

fatto dominante essendo gli adden<strong>di</strong> della (9.2.1) rapidamente decrescenti al crescere <strong>di</strong><br />

1 .<br />

Disporre <strong>di</strong> un co<strong>di</strong>ce in grado <strong>di</strong> correggere anche un numero limitato <strong>di</strong> errori<br />

in una parola ricevuta sembrerebbe pertanto essere una scelta quasi obbligata, in realtà<br />

bisogna anche tener presente che le capacità correttive <strong>di</strong> un co<strong>di</strong>ce comportano<br />

1 Per verificarlo è sufficiente esprimere ( ) nella forma ( ⁄ ) ( ) ed osservare che se<br />

risulta ( ) , pertanto ( ) è una funzione decrescente <strong>di</strong> t .


76 Capitolo - 9 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

l’introduzione <strong>di</strong> una ridondanza cioè l’introduzione <strong>di</strong> bit non destinati a trasportare<br />

informazione, ciò, a parità <strong>di</strong> tempo destinato all’invio <strong>di</strong> una parola, comporta un<br />

aumento della banda, a meno <strong>di</strong> non voler rallentare il flusso informativo.<br />

Bisogna anche considerare che il confronto tra assenza e presenza <strong>di</strong> co<strong>di</strong>ce<br />

andrebbe fatto a parità d’energia associata al bit informativo, cioè tenendo conto che<br />

parte dell’energia dei bit <strong>di</strong> informazione non co<strong>di</strong>ficati, in presenza <strong>di</strong> un co<strong>di</strong>ce, deve<br />

essere de<strong>di</strong>cata ai bit <strong>di</strong> ridondanza, in quanto, a parità <strong>di</strong> densità spettrale <strong>di</strong> potenza<br />

del rumore, la sul bit cresce al <strong>di</strong>minuire della energia ad esso associata, il calcolo<br />

della (9.2.2) andrebbe quin<strong>di</strong> effettuato introducendo un valore <strong>di</strong> che tiene conto <strong>di</strong><br />

ciò.<br />

Malgrado le considerazioni appena fatte, fin quando è accettabile l’aumento della<br />

banda, l’introduzione <strong>di</strong> un co<strong>di</strong>ce a correzione d’errore è comunque vantaggiosa<br />

rispetto alla trasmissione non co<strong>di</strong>ficata.<br />

9.3 - La deco<strong>di</strong>fica a massima verosimiglianza<br />

In quel che segue ci riferiremo a canali BSC ed adotteremo la tecnica <strong>di</strong><br />

deco<strong>di</strong>fica a massima verosimiglianza (MV), che, com’è noto, equivale alla maximum<br />

a posteriori probability (MAP) nel caso in cui i bit informativi trasmessi siano<br />

equiprobabili. Osserviamo che in questo caso lo sono anche tutte le parole <strong>di</strong> e<br />

conseguentemente, in virtù dell’iniettività del co<strong>di</strong>ficatore , lo saranno anche tutte le<br />

parole del co<strong>di</strong>ce . Sotto quest’ipotesi, in<strong>di</strong>cando con la generica parola <strong>di</strong> co<strong>di</strong>ce,<br />

con la parola ricevuta e con ̂ la parola <strong>di</strong> co<strong>di</strong>ce a scelta dal deco<strong>di</strong>ficatore, la<br />

regola <strong>di</strong> decisione sarà:<br />

Regola <strong>di</strong> decisione a Massima Verosimiglianza<br />

Scegli la parola <strong>di</strong> co<strong>di</strong>ce ̂ per la quale è massima la probabilità <strong>di</strong> ricevere , atteso<br />

che ̂ sia la parola trasmessa, in simboli:<br />

̂ ( ( )) (9.3.1)<br />

Qualora il massimo non dovesse essere unico, scegli a caso, tra le parole <strong>di</strong> co<strong>di</strong>ce che<br />

lo raggiungono.<br />

***********<br />

Nella precedente e rappresentano VV.AA. multi<strong>di</strong>mensionali che assumono<br />

rispettivamente valori in ed in .<br />

Considerato che nel nostro caso risulta:<br />

( ) ( ) ( ) ( ) ( ) (9.3.2)


Co<strong>di</strong>ci Binari a Blocchi 77<br />

dove rappresenta il numero <strong>di</strong> bit in cui <strong>di</strong>fferisce da Se il massimo della<br />

(9.3.2) si raggiunge per tutti i valori <strong>di</strong> che rendono minimo. qualora ciò avvenisse<br />

in corrispondenza ad un'unica parola <strong>di</strong> co<strong>di</strong>ce, si sceglierebbe quella, se dovessero<br />

esservi più parole per le quali ciò avviene il deco<strong>di</strong>ficatore o in armonia con la regola<br />

MV sceglie a caso, o può limitarsi a segnalare la presenza d’errori nella parola ricevuta.<br />

Va da se che l’ultima opzione è praticabile solo se si <strong>di</strong>spone <strong>di</strong> un canale <strong>di</strong> ritorno e<br />

se la trasmissione non deve avvenire necessariamente in tempo reale.<br />

Osserviamo che , è la <strong>di</strong>stanza <strong>di</strong> Hamming tra e , quin<strong>di</strong> il criterio <strong>di</strong><br />

decisione a massima verosimiglianza su canale BSC consiste in pratica nello scegliere a<br />

caso, tra le parole <strong>di</strong> co<strong>di</strong>ce a minima <strong>di</strong>stanza <strong>di</strong> Hamming dalla parola ricevuta.<br />

9.4 - Definizioni e teoremi sui co<strong>di</strong>ci rivelatori e correttori<br />

Supponiamo che il trasmettitore invii una parola e che per effetto dei <strong>di</strong>sturbi<br />

venga ricevuta una parola <strong>di</strong>versa da . È imme<strong>di</strong>ato constatare che esiste certamente<br />

che ci permette <strong>di</strong> scrivere . Chiameremo evento o pattern d’errore.<br />

Definizione 9.4<br />

Un pattern <strong>di</strong> errore<br />

è rilevabile se risulta:<br />

essendo il complementare <strong>di</strong> rispetto a .<br />

Viceversa <strong>di</strong>remo che non è rilevabile se:<br />

***********<br />

(9.4.1)<br />

(9.4.2)<br />

Ad ogni pattern d’errore corrisponde un peso. Esistono ( ) eventi d’errore <strong>di</strong><br />

peso Osserviamo che le posizioni dei bit uno nel pattern d’errore identificano i bit<br />

errati nella parola ricevuta.<br />

Si <strong>di</strong>ce che un co<strong>di</strong>ce è in grado <strong>di</strong> rivelare errori se rivela tutti i pattern <strong>di</strong><br />

errore <strong>di</strong> peso in<strong>di</strong>pendentemente dalla parola <strong>di</strong> co<strong>di</strong>ce trasmessa.<br />

Definizione 9.5<br />

Siano e due parole <strong>di</strong> . Si definisce <strong>di</strong>stanza minima ( ) <strong>di</strong> un co<strong>di</strong>ce:<br />

( ( ) ( )) (9.4.3)<br />

***********


78 Capitolo - 9 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

Teorema 9.1<br />

Con<strong>di</strong>zione necessaria e sufficiente affinché un co<strong>di</strong>ce sia in grado <strong>di</strong> rivelare tutti i<br />

pattern d’errore <strong>di</strong> peso non superiore a è che risulti .<br />

Dimostrazione:<br />

Necessarietà:<br />

Se il co<strong>di</strong>ce è in grado <strong>di</strong> rivelare tutti gli errori <strong>di</strong> peso non superiore a , allora,<br />

comunque scelta una parola <strong>di</strong> co<strong>di</strong>ce c ed un pattern d’errore e <strong>di</strong> peso<br />

, la<br />

parola<br />

non può essere una parola <strong>di</strong> co<strong>di</strong>ce. Ammettiamo per assurdo che<br />

( ) .<br />

esisterebbero allora almeno due parole <strong>di</strong> co<strong>di</strong>ce, siano e , tali che<br />

Consideriamo il pattern d’errore<br />

esisterebbe quin<strong>di</strong> un evento d’errore <strong>di</strong> peso<br />

, risulta:<br />

(9.4.4)<br />

che non può essere rivelato in quanto<br />

composto con una parola <strong>di</strong> co<strong>di</strong>ce genera un’altra parola <strong>di</strong> co<strong>di</strong>ce.<br />

Sufficienza:<br />

Se e viene ricevuta la parola , con risulta:<br />

( ) ( ) (9.4.5)<br />

la (9.4.5) implica che non può essere una parola del co<strong>di</strong>ce poiché ,<br />

l’errore viene pertanto rilevato.<br />

***********<br />

Definizione 9.6<br />

Diciamo che un deco<strong>di</strong>ficatore<br />

è in grado <strong>di</strong> correggere un pattern d’errore e se,<br />

quale che sia la parola <strong>di</strong> co<strong>di</strong>ce c , risulta:<br />

( ) ( ) (9.4.6)<br />

Diciamo che un deco<strong>di</strong>ficatore è in grado <strong>di</strong> correggere errori <strong>di</strong> peso se la<br />

precedente è vera per ogni pattern d’errore <strong>di</strong> peso .<br />

Teorema 9.2<br />

***********<br />

Con<strong>di</strong>zione necessaria affinché un deco<strong>di</strong>ficatore MV sia in grado <strong>di</strong> correggere tutti i<br />

pattern d’errore <strong>di</strong> peso non superiore a , è che il co<strong>di</strong>ce abbia una .<br />

Dimostrazione:<br />

Supponiamo, per assurdo, che esista un co<strong>di</strong>ce in grado <strong>di</strong> correggere tutti gli<br />

errori <strong>di</strong> peso non superiore a con<br />

. Per detto co<strong>di</strong>ce esisterà quin<strong>di</strong>


Co<strong>di</strong>ci Binari a Blocchi 79<br />

almeno una coppia <strong>di</strong> parole <strong>di</strong> co<strong>di</strong>ce, c e<br />

c ' , la cui <strong>di</strong>stanza è<br />

. Esistono<br />

certamente due pattern d’errore, siano ed , entrambi <strong>di</strong> peso non maggiore <strong>di</strong> , tali<br />

che<br />

(9.4.7)<br />

Nel caso in cui potremo scegliere un pattern d’errore tale che ed<br />

un tale che che sod<strong>di</strong>sfino la precedente.<br />

Supponiamo adesso che venga ricevuta la parola<br />

, la sua <strong>di</strong>stanza da<br />

vale<br />

quella da vale:<br />

( ) ( ) (9.4.8)<br />

pertanto il deco<strong>di</strong>ficatore a massima verosimiglianza decide per , o per una qualsiasi<br />

altra parola <strong>di</strong> co<strong>di</strong>ce che <strong>di</strong>sti non più <strong>di</strong> da .<br />

Se potremo scegliere due pattern d’errore ed entrambi <strong>di</strong> peso che<br />

sod<strong>di</strong>sfano la (9.4.7). Supponiamo ancora una volta che venga ricevuta la parola ,<br />

la sua <strong>di</strong>stanza da<br />

sceglie a caso tra<br />

vale come pure la sua <strong>di</strong>stanza da c pertanto, o il deco<strong>di</strong>ficatore<br />

e , ovvero decide a favore <strong>di</strong> un’altra parola <strong>di</strong> co<strong>di</strong>ce che <strong>di</strong>sti da<br />

, meno <strong>di</strong> .<br />

***********<br />

Teorema 9.3<br />

Un deco<strong>di</strong>ficatore MV è in grado <strong>di</strong> correggere tutti i pattern d’errore <strong>di</strong> peso non<br />

superiore a .<br />

Dimostrazione:<br />

Supponiamo che il canale mo<strong>di</strong>fichi una parola <strong>di</strong> co<strong>di</strong>ce c aggiungendovi un<br />

pattern d’errore <strong>di</strong> peso non superiore a . All’ingresso del deco<strong>di</strong>ficatore si presenta<br />

quin<strong>di</strong> la parola . Quale che sia risulta , in quanto , poiché<br />

<strong>di</strong>sta da meno <strong>di</strong><br />

, inoltre:<br />

( ) (9.4.9)<br />

osserviamo che il peso <strong>di</strong><br />

e quello del pattern d’errore è non superiore a<br />

, pertanto, , ( ) , mentre ( ) , quin<strong>di</strong> il deco<strong>di</strong>ficatore MV<br />

in corrispondenza a restituirà ( ) ( ), l’errore verrà quin<strong>di</strong> corretto.<br />

***********


Capitolo - 10<br />

CODICI LINEARI A BLOCCHI<br />

10.1 - Premessa<br />

Abbiamo visto che un co<strong>di</strong>ce a blocco è sostanzialmente un’applicazione<br />

iniettiva tra e con gli bit aggiunti consentono in pratica <strong>di</strong><br />

migliorare le prestazioni del sistema introducendo un’opportuna ridondanza ai bit<br />

informativi.<br />

Osserviamo che al crescere <strong>di</strong> cresce, con legge esponenziale, il numero delle<br />

parole <strong>di</strong> co<strong>di</strong>ce. Ci si rende conto che in queste con<strong>di</strong>zioni la tecnica <strong>di</strong> deco<strong>di</strong>fica,<br />

consistente in una ricerca esaustiva su una tabella (in pratica un banco <strong>di</strong> memoria) che<br />

associa ad ogni possibile elemento <strong>di</strong> l’elemento <strong>di</strong> che più “verosimilmente” è<br />

stato trasmesso <strong>di</strong>venta in breve impraticabile a causa delle eccessive <strong>di</strong>mensioni della<br />

succitata tabella, ovvero perché si preferisce utilizzare la memoria del sistema per altri<br />

scopi.<br />

Queste considerazioni inducono alla progettazione <strong>di</strong> co<strong>di</strong>ci che permettano <strong>di</strong><br />

adottare delle tecniche <strong>di</strong> deco<strong>di</strong>fica <strong>di</strong> tipo algoritmico, o che quantomeno limitino la<br />

quantità <strong>di</strong> memoria necessaria per effettuare la ricerca sopra citata.<br />

Tale risultato può essere ottenuto ad esempio se si progetta un co<strong>di</strong>ce in modo da<br />

in<strong>di</strong>viduare nel sottoinsieme una qualche struttura algebrica. Tanto più ricca sarà tale<br />

struttura, tanto maggiore sarà la possibilità <strong>di</strong> in<strong>di</strong>viduare algoritmi <strong>di</strong> deco<strong>di</strong>fica<br />

efficienti.<br />

10.2 - Morfismi<br />

È utile introdurre alcune definizioni<br />

Definizione 10.1 - omomorfismo<br />

Un omomorfismo è un’applicazione avente come dominio un gruppo e come<br />

codominio un gruppo tale che<br />

( ) ( ) ( ) (10.2.1)<br />

***********<br />

Nella precedente il segno<br />

gruppo in cui si opera.<br />

in<strong>di</strong>ca la legge <strong>di</strong> composizione interna relativa al


82 Capitolo - 10 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

Definizione 10.2 - monomorfismo<br />

Un monomorfismo è un omomorfismo iniettivo.<br />

***********<br />

Definizione 10.3 - isomorfismo<br />

Un monomorfismo suriettivo è un isomorfismo.<br />

***********<br />

Si può <strong>di</strong>mostrare che l’insieme immagine del dominio <strong>di</strong> un omomorfismo<br />

( ) è un sottogruppo del gruppo d’arrivo. Per sottogruppo s’intende un<br />

sottoinsieme <strong>di</strong> un gruppo che ha la struttura <strong>di</strong> gruppo rispetto alla stessa legge <strong>di</strong><br />

composizione interna del gruppo in cui è contenuto.<br />

10.3 - Schema <strong>di</strong> principio <strong>di</strong> un co<strong>di</strong>ce lineare a blocco<br />

Un’importante classe <strong>di</strong> co<strong>di</strong>ci a blocco è quella dei co<strong>di</strong>ci lineari. Un<br />

Fig.E 10.1 Schema <strong>di</strong> principio <strong>di</strong> un co<strong>di</strong>ce <strong>di</strong> Hamming 15,11<br />

co<strong>di</strong>ficatore lineare è concettualmente costituito da (ve<strong>di</strong> Fig.E 10.1) un registro<br />

d’ingresso dotato <strong>di</strong> celle, da un banco <strong>di</strong> sommatori ciascuno dei quali con un<br />

numero <strong>di</strong> ingressi compreso tra e e da un registro <strong>di</strong> uscita costituito da celle<br />

connesse alle uscite dei sommatori corrispondenti. Questi ultimi, nel caso dei co<strong>di</strong>ci<br />

binari, effettuano le somme in . Conveniamo che un sommatore con un solo ingresso<br />

equivale ad una connessione <strong>di</strong>retta tra la cella d’ingresso e quella <strong>di</strong> uscita<br />

corrispondente al sommatore.<br />

I registri sopra citati possono essere in pratica registri a scorrimento (shift<br />

register), in questo caso la sorgente emette una sequenza <strong>di</strong> bit, non appena il registro<br />

d’ingresso è carico, cioè dopo perio<strong>di</strong> del suo clock, l’uscita dei sommatori, che<br />

potrebbero essere realizzati con delle porte logiche <strong>di</strong> tipo XOR, viene utilizzata per<br />

settare le celle del registro <strong>di</strong> uscita che verrà quin<strong>di</strong> completamente scaricato nel<br />

tempo necessario a ricaricare con i successivi bit il registro <strong>di</strong> ingresso.


Co<strong>di</strong>ci Lineari a Blocchi 83<br />

In sostanza, se e in<strong>di</strong>cano rispettivamente i perio<strong>di</strong> <strong>di</strong> clock del<br />

registro d’ingresso e <strong>di</strong> quello d’uscita, deve risultare .<br />

10.4 - Matrice generatrice del co<strong>di</strong>ce<br />

I co<strong>di</strong>ci lineari a blocco sono anche chiamati co<strong>di</strong>ci a controllo <strong>di</strong> parità (parity<br />

check code) in quanto il generico elemento del registro d’uscita, vale uno ogniqualvolta<br />

la somma in senso or<strong>di</strong>nario dei valori delle celle <strong>di</strong> ingresso a cui è connesso è un<br />

numero <strong>di</strong>spari e vale zero altrimenti.<br />

Se in<strong>di</strong>chiamo con una parola <strong>di</strong> e con ( ) la corrispondente parola <strong>di</strong><br />

forma:<br />

in uscita dal co<strong>di</strong>ficatore, l’<br />

esimo bit della parola d’uscita può esprimersi nella<br />

(10.4.1)<br />

dove il generico è un coefficiente che vale se un ingresso del -esimo sommatore<br />

è connesso alla -esima cella del registro <strong>di</strong> ingresso e vale<br />

altrimenti.<br />

Ricor<strong>di</strong>amoci che tutte le operazioni delle (10.4.1) sono effettuate secondo le<br />

regole del campo .<br />

Un co<strong>di</strong>ce definito tramite le (10.4.1) si <strong>di</strong>ce lineare in quanto, come si verifica<br />

facilmente, la parola <strong>di</strong> co<strong>di</strong>ce ottenuta in corrispondenza alla somma <strong>di</strong> due qualsiasi<br />

parole <strong>di</strong> è la somma in delle rispettive parole <strong>di</strong> co<strong>di</strong>ce.<br />

e sono gruppi, ed un co<strong>di</strong>ficatore lineare è un omomorfismo, ovviamente,<br />

è auspicabile che sia anche un monomorfismo, onde evitare che a due parole <strong>di</strong>stinte <strong>di</strong><br />

corrisponda la stessa parola <strong>di</strong> co<strong>di</strong>ce in .<br />

Il co<strong>di</strong>ce è pertanto un sottogruppo <strong>di</strong> .<br />

Se pensiamo e come vettori riga le (10.4.1) si possono rappresentare sotto<br />

forma matriciale:<br />

(10.4.2)<br />

dove è una matrice il cui generico elemento è . è detta matrice<br />

generatrice del co<strong>di</strong>ce.<br />

Si osservi che le righe della matrice , sono le parole <strong>di</strong> co<strong>di</strong>ce che vengono<br />

generate in corrispondenza agli elementi che costituiscono la base canonica <strong>di</strong><br />

. Ci si<br />

convince anche abbastanza facilmente del fatto che le righe <strong>di</strong> generano me<strong>di</strong>ante<br />

tutte le loro possibili combinazioni lineari , che oltre ad essere un sottogruppo <strong>di</strong><br />

ne è anche un sottospazio. Ovviamente affinché il co<strong>di</strong>ce non sia ambiguo<br />

essere un monomorfismo.<br />

deve


84 Capitolo - 10 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

Una con<strong>di</strong>zione necessaria e sufficiente affinché<br />

righe della sua matrice generatrice siano linearmente in<strong>di</strong>pendenti.<br />

10.5 - Distribuzione dei pesi <strong>di</strong> un co<strong>di</strong>ce lineare a blocco<br />

sia un monomorfismo è che le<br />

Abbiamo detto che la somma <strong>di</strong> due parole <strong>di</strong> un co<strong>di</strong>ce lineare è una parola <strong>di</strong><br />

co<strong>di</strong>ce, ciò comporta che la parola identicamente nulla in un co<strong>di</strong>ce lineare è sempre<br />

una parola <strong>di</strong> co<strong>di</strong>ce, in quanto ottenibile sommando ad una qualunque parola del<br />

co<strong>di</strong>ce se stessa, in<strong>di</strong>cando con<br />

avremo:<br />

la parola identicamente nulla per un co<strong>di</strong>ce lineare<br />

( ) ( ) (10.5.1)<br />

ma, per fissato , al variare <strong>di</strong> in si ottengono tutte le parole <strong>di</strong> co<strong>di</strong>ce, in sostanza<br />

fissata una <strong>di</strong>stanza <strong>di</strong> Hamming ogni parola <strong>di</strong> un co<strong>di</strong>ce lineare vedrà lo stesso<br />

numero <strong>di</strong> parole <strong>di</strong> co<strong>di</strong>ce a quella <strong>di</strong>stanza. Tale proprietà si rivela utile ad esempio<br />

nel calcolo della probabilità d’errore in quanto la probabilità d’errore con<strong>di</strong>zionata<br />

all’invio <strong>di</strong> una parola <strong>di</strong> co<strong>di</strong>ce non <strong>di</strong>pende dalla particolare parola inviata, ed è<br />

quin<strong>di</strong> uguale alla probabilità d’errore non con<strong>di</strong>zionata.<br />

Dalla (10.5.1) si deduce inoltre facilmente che per calcolare la <strong>di</strong>stanza minima<br />

del co<strong>di</strong>ce è sufficiente in<strong>di</strong>viduare la parola non nulla <strong>di</strong> peso minimo, che è<br />

evidentemente la parola a minima <strong>di</strong>stanza <strong>di</strong> Hamming dalla parola nulla, ovviamente<br />

non è detto che tale parola sia unica.<br />

co<strong>di</strong>ce.<br />

La (10.5.1) ci suggerisce <strong>di</strong> introdurre la cosiddetta <strong>di</strong>stribuzione dei pesi del<br />

Definizione 10.4<br />

Dato un co<strong>di</strong>ce lineare<br />

per <strong>di</strong>stribuzione dei pesi s’intende una applicazione<br />

( ), definita sull’insieme dei naturali non maggiori <strong>di</strong> , a valori in ; che associa<br />

ad ogni elemento del suo dominio il numero <strong>di</strong> parole <strong>di</strong> co<strong>di</strong>ce che hanno peso pari ad<br />

esso.<br />

***********<br />

È facile intuire che le prestazioni <strong>di</strong> un co<strong>di</strong>ce sono in prima istanza influenzate<br />

dalla sua <strong>di</strong>stanza minima, che coincide con il più piccolo elemento non nullo del<br />

dominio <strong>di</strong><br />

dalla<br />

( ) cui corrisponde un’immagine <strong>di</strong>versa da zero, ma <strong>di</strong>pendono anche<br />

( ) nel suo insieme.


Co<strong>di</strong>ci Lineari a Blocchi 85<br />

10.6 - Capacità <strong>di</strong> rivelazione <strong>di</strong> un co<strong>di</strong>ce lineare a blocco<br />

Per la capacità <strong>di</strong> rivelazione <strong>di</strong> un co<strong>di</strong>ce lineare a blocco vale il seguente<br />

teorema:<br />

Teorema 10.1<br />

Un deco<strong>di</strong>ficatore a massima verosimiglianza per un co<strong>di</strong>ce lineare non è in grado <strong>di</strong><br />

rivelare tutti e soli gli eventi d’errore che coincidono con una parola <strong>di</strong> co<strong>di</strong>ce.<br />

Dimostrazione:<br />

Se il canale fa sì che ad una parola <strong>di</strong> co<strong>di</strong>ce venga aggiunto un pattern d’errore<br />

che coincide con una parola <strong>di</strong> co<strong>di</strong>ce in ingresso al deco<strong>di</strong>ficatore si presenterà la<br />

parola , ma il co<strong>di</strong>ce è lineare quin<strong>di</strong> è una parola <strong>di</strong> co<strong>di</strong>ce pertanto<br />

l’errore non sarà rivelato.<br />

Viceversa se un pattern d’errore non viene rivelato, allora deve esistere una<br />

parola <strong>di</strong> co<strong>di</strong>ce tale che essendo è la parola trasmessa. L’eguaglianza<br />

appena scritta comporta:<br />

pertanto<br />

è una parola <strong>di</strong> co<strong>di</strong>ce.<br />

(10.6.1)<br />

***********<br />

10.7 - Probabilità <strong>di</strong> non rivelazione d’errore <strong>di</strong> un co<strong>di</strong>ce lineare<br />

Ci proponiamo <strong>di</strong> calcolare la probabilità che un co<strong>di</strong>ce lineare, impiegato per la<br />

sola rivelazione d’errore, non ne riveli la presenza nella parola ricevuta, sotto l’ipotesi<br />

che il co<strong>di</strong>ce venga utilizzato su un canale BSC e che il deco<strong>di</strong>ficatore sia del tipo MV.<br />

Sappiamo che (ve<strong>di</strong> Teorema 10.1) gli unici pattern d’errore non rivelati sono<br />

quelli che coincidono con una parola <strong>di</strong> co<strong>di</strong>ce. Osserviamo che la probabilità che si<br />

presenti un dato pattern d’errore ̂ <strong>di</strong>pende esclusivamente dal suo peso e vale in<br />

particolare:<br />

̂ ( ) (10.7.1)<br />

Tra tutti gli ( ) possibili pattern d’errore <strong>di</strong> peso non verranno rivelati soltanto quelli<br />

che coincidono con una parola <strong>di</strong> co<strong>di</strong>ce, cioè tanti quante sono le parole <strong>di</strong> co<strong>di</strong>ce <strong>di</strong><br />

quel peso. Poiché i pattern d’errore sono tra loro in<strong>di</strong>pendenti, la probabilità ( )<br />

che un errore non venga rivelato dal co<strong>di</strong>ce vale:<br />

( ) ∑ ( ) ( ) (10.7.2)


86 Capitolo - 10 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

La precedente presuppone la conoscenza della <strong>di</strong>stribuzione dei pesi, purtroppo<br />

detta funzione non è nota per molti dei co<strong>di</strong>ci d’uso comune, in questo caso può essere<br />

utile una maggiorazione della (10.7.2) che si basa sulla considerazione che in ogni caso<br />

deve essere:<br />

( ) ( ) (10.7.3)<br />

non possono cioè esservi più pattern d’errore <strong>di</strong> peso <strong>di</strong> quante non siano le parole <strong>di</strong><br />

aventi quel peso. Potremo quin<strong>di</strong> certamente scrivere:<br />

( ) ∑ ( ) ( ) (10.7.4)<br />

10.8 - Laterali <strong>di</strong> un sottogruppo<br />

Premesso che in questo paragrafo per como<strong>di</strong>tà utilizzeremo la notazione<br />

moltiplicativa per in<strong>di</strong>care la legge <strong>di</strong> composizione <strong>di</strong> un gruppo, in<strong>di</strong>cheremo quin<strong>di</strong><br />

con l’elemento neutro del gruppo, consideriamo un gruppo abeliano ed un suo<br />

sottogruppo . Ricor<strong>di</strong>amoci che, per definizione <strong>di</strong> sottogruppo, è chiuso rispetto<br />

alla legge <strong>di</strong> composizione <strong>di</strong> .<br />

Consideriamo adesso un generico elemento non appartenente a , se<br />

componiamo questo elemento con gli elementi <strong>di</strong> otteniamo un sottoinsieme <strong>di</strong><br />

<strong>di</strong>sgiunto da . Se infatti risultasse che, per un qualche elemento <strong>di</strong> ,<br />

, ciò implicherebbe che e quin<strong>di</strong> , ma se<br />

allora essendo gruppo vi appartiene anche , contro l’ipotesi. viene denominato<br />

laterale, coinsieme o coset <strong>di</strong> .<br />

Consideriamo adesso, se esiste, un elemento che non appartiene né a né a ,<br />

sia . Anche , composto con gli elementi <strong>di</strong> , genera un sottoinsieme <strong>di</strong> ovviamente<br />

<strong>di</strong>sgiunto da , ma anche da ; se infatti esistesse tale che ˜<br />

, ciò implicherebbe ˜ che implicherebbe contro l’ipotesi.<br />

Possiamo quin<strong>di</strong> concludere che i laterali <strong>di</strong> un sottogruppo se non sono <strong>di</strong>sgiunti sono<br />

coincidenti.<br />

Appare chiaro che ogni sottogruppo <strong>di</strong> un gruppo induce una partizione in laterali<br />

del sottogruppo. Si può facilmente verificare che tutti i laterali hanno la stessa<br />

car<strong>di</strong>nalità del sottogruppo cui sono associati e che ogni elemento <strong>di</strong> un laterale,<br />

composto con gli elementi del sottogruppo, è in grado <strong>di</strong> generare il laterale cui<br />

appartiene. È quin<strong>di</strong> legittimo scegliere in corrispondenza ad ogni laterale un suo


Co<strong>di</strong>ci Lineari a Blocchi 87<br />

elemento, che viene denominato rappresentante <strong>di</strong> laterale o <strong>di</strong> coinsieme, o ancora<br />

coset leader. Il criterio <strong>di</strong> scelta può essere qualsiasi.<br />

Ricor<strong>di</strong>amoci che stiamo considerando gruppi abeliani, se rimuovessimo questa<br />

ipotesi ad ogni sottogruppo potrebbero essere associati dei laterali destri e sinistri,<br />

generalmente <strong>di</strong>stinti, qualora tali laterali dovessero coincidere si <strong>di</strong>rebbe che il<br />

sottogruppo considerato è un sottogruppo normale.<br />

Il fatto che tutti i laterali <strong>di</strong> un sottogruppo hanno la stessa car<strong>di</strong>nalità consente <strong>di</strong><br />

affermare, nel caso <strong>di</strong> gruppi finiti, che ogni sottogruppo ha un numero d’elementi<br />

sottomultiplo <strong>di</strong> quello del gruppo in cui è contenuto.<br />

10.9 - Deco<strong>di</strong>fica tramite i rappresentanti <strong>di</strong> laterale<br />

Tornando ai co<strong>di</strong>ci lineari a blocco ( ), ricor<strong>di</strong>amo che l’insieme delle parole<br />

<strong>di</strong> un tale co<strong>di</strong>ce costituisce un sottogruppo . Abbiamo anche mostrato che un<br />

co<strong>di</strong>ce lineare a blocco è in grado <strong>di</strong> rivelare tutti i pattern d’errore che non coincidono<br />

con parole <strong>di</strong> co<strong>di</strong>ce.<br />

Occupiamoci adesso delle sue capacità correttive. A tal proposito osserviamo che<br />

ogni parola ricevuta appartiene ad un solo laterale <strong>di</strong> rispetto a , intendendo<br />

ovviamente stesso come un laterale. Risulta inoltre , il pattern d’errore<br />

introdotto dal canale appartiene quin<strong>di</strong> certamente allo stesso laterale cui appartiene .<br />

Visto che la probabilità che il canale introduca un pattern d’errore <strong>di</strong> un dato peso<br />

decresce al crescere <strong>di</strong> quest’ultimo, l’ipotesi più verosimile è che il pattern d’errore<br />

introdotto coincida con una parola <strong>di</strong> peso minimo appartenente allo stesso laterale<br />

della parola ricevuta.<br />

Le considerazioni appena fatte portano alla seguente tecnica <strong>di</strong> deco<strong>di</strong>fica: dato<br />

un co<strong>di</strong>ce scegliamo come rappresentante <strong>di</strong> ogni suo laterale la parola <strong>di</strong> peso<br />

minimo appartenente ad esso. Nel caso in cui nel laterale vi siano più parole <strong>di</strong> peso<br />

minimo ne sceglieremo una a caso. Osserviamo che, quale che sia la parola ricevuta,<br />

essa si potrà scrivere in modo univoco nella forma essendo il coset leader<br />

del laterale a cui essa appartiene. Comunque scelta una parola <strong>di</strong> co<strong>di</strong>ce risulta:<br />

( ) ( ) (10.9.1)<br />

in quanto è una parola <strong>di</strong> che appartiene allo stesso laterale <strong>di</strong> , visto che<br />

è una parola <strong>di</strong> co<strong>di</strong>ce, ed è per ipotesi una parola <strong>di</strong> peso minimo <strong>di</strong> quel<br />

laterale, pertanto se adottiamo la deco<strong>di</strong>fica ML dobbiamo necessariamente scegliere la<br />

parola .


88 Capitolo - 10 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

Se nello stesso laterale più <strong>di</strong> una parola ha peso minimo, ciò significa che la<br />

parola ricevuta si trova alla stessa <strong>di</strong>stanza da due o più parole <strong>di</strong> co<strong>di</strong>ce, in questo<br />

caso, quale che sia la scelta effettuata tra le parole can<strong>di</strong>date, le prestazioni del<br />

deco<strong>di</strong>ficatore non cambiano.<br />

Si osservi che qualora la parola ricevuta appartenga al co<strong>di</strong>ce tale operazione non<br />

la altera in quanto il rappresentante <strong>di</strong> laterale relativo a è unico ed è ovviamente la<br />

parola identicamente nulla.<br />

Quanto sopra detto ci porta ad enunciare il seguente<br />

Teorema 10.2<br />

Un deco<strong>di</strong>ficatore che adotta la tecnica dei coset leader corregge tutti e soli i pattern<br />

d’errore coincidenti con un coset leader.<br />

***********<br />

Un vantaggio della deco<strong>di</strong>fica basata sui coset leader è quello <strong>di</strong> restituire sempre<br />

una parola <strong>di</strong> co<strong>di</strong>ce, ovviamente non sempre quella corretta. Il suo principale<br />

svantaggio consiste nel fatto che per metterla in pratica occorre comunque effettuare<br />

una ricerca in tutto per in<strong>di</strong>viduare il laterale cui appartiene la parola, se è grande<br />

tale ricerca può <strong>di</strong>ventare troppo onerosa.<br />

10.10 - Probabilità d’errore <strong>di</strong> un co<strong>di</strong>ce lineare a blocchi<br />

Il Teorema 10.2 ci suggerisce come calcolare la probabilità <strong>di</strong> corretta decisione<br />

( ) <strong>di</strong> un co<strong>di</strong>ce, impiegato su un canale BSC.<br />

Osserviamo innanzitutto che all’uscita del deco<strong>di</strong>ficatore sarà presente la parola<br />

effettivamente inviata tutte e sole le volte che il pattern d’errore introdotto dal canale<br />

coincide con un coset leader, considerando anche tra i pattern d’errore quello<br />

identicamente nullo che è il coset leader del co<strong>di</strong>ce.<br />

La ( ) coinciderà quin<strong>di</strong> con la probabilità che il pattern d’errore sia un<br />

qualsiasi coset leader. Possiamo quin<strong>di</strong> scrivere:<br />

( ) ∑ ( ) ( ) (10.10.1)<br />

dove rappresenta il massimo peso raggiunto dai coset leader ed ( ) un’applicazione<br />

che associa ad ogni intero compreso tra ed il numero <strong>di</strong> coset leader <strong>di</strong> peso .<br />

Dalla (10.10.1) <strong>di</strong>scende facilmente:<br />

( ) ( ) ∑ ( ) ( ) (10.10.2)


Co<strong>di</strong>ci Lineari a Blocchi 89<br />

10.11 - Co<strong>di</strong>ci perfetti, bound <strong>di</strong> Hamming<br />

Una maggiorazione della probabilità d’errore può essere ottenuta ricordando il<br />

Teorema 9.3, che afferma che la capacità correttiva <strong>di</strong> un co<strong>di</strong>ce è non minore <strong>di</strong><br />

. In altri termini il teorema afferma che la regione <strong>di</strong> decisione <strong>di</strong> ciascuna<br />

parola <strong>di</strong> co<strong>di</strong>ce contiene una “ipersfera” <strong>di</strong> raggio pari a . In<br />

che contiene<br />

esattamente ∑<br />

( ) punti.<br />

Osserviamo che in un co<strong>di</strong>ce lineare tutte le regioni <strong>di</strong> decisione hanno la stessa<br />

forma e che l’insieme dei coset leader costituisce la regione <strong>di</strong> decisione associata alla<br />

parola nulla. Vi sono laterali, quin<strong>di</strong> coset leader. Il Teorema 9.3 nel caso <strong>di</strong><br />

co<strong>di</strong>ci lineari implica quin<strong>di</strong> che deve valere la <strong>di</strong>suguaglianza:<br />

∑ ( ) ∑ ( ) (10.11.1)<br />

la precedente va sotto il nome <strong>di</strong> Bound <strong>di</strong> Hamming i co<strong>di</strong>ci che lo sod<strong>di</strong>sfano come<br />

uguaglianza sono detti co<strong>di</strong>ci perfetti.<br />

Quale che sia il co<strong>di</strong>ce lineare che stiamo considerando, i primi t 1 adden<strong>di</strong><br />

dell’ultimo membro della (10.11.1) devono necessariamente essere uguali ai<br />

corrispondenti adden<strong>di</strong> della sommatoria a primo membro, possiamo pertanto scrivere:<br />

( ) ∑ ( ) ( ) ∑ ( ) ( )<br />

( ) ∑ ( ) ( ) ∑ ( ) ( )<br />

(10.11.2)<br />

la precedente è ovviamente sod<strong>di</strong>sfatta come uguaglianza solo dai co<strong>di</strong>ci perfetti, quali<br />

sono ad esempio i co<strong>di</strong>ci <strong>di</strong> Hamming cui accenneremo più avanti.


Capitolo - 11<br />

CODICI SISTEMATICI<br />

11.1 - Co<strong>di</strong>ci Sistematici<br />

Quanto detto nei precedenti paragrafi ci fa comprendere che le prestazioni <strong>di</strong> un<br />

co<strong>di</strong>ce lineare sono da attribuirsi sostanzialmente al sottospazio <strong>di</strong> generato dalle<br />

righe della matrice che supporremo linearmente in<strong>di</strong>pendenti e che quin<strong>di</strong><br />

costituiranno una base per il sottospazio da esse generato. In sostanza quin<strong>di</strong> co<strong>di</strong>ci generati<br />

da matrici <strong>di</strong>stinte, delle stesse <strong>di</strong>mensioni, che generano però lo stesso<br />

sottospazio <strong>di</strong> sono del tutto equivalenti.<br />

Lo spazio generato dalle righe <strong>di</strong> non cambia se si permutano le sue righe, o se<br />

si somma ad una qualunque riga <strong>di</strong> una combinazione lineare delle restanti.<br />

Dato un co<strong>di</strong>ce lineare a blocchi, consideriamo la sua matrice e selezioniamone<br />

una sua colonna non identicamente nulla. Supponiamo sia la -esima. Consideriamo<br />

quin<strong>di</strong> una riga <strong>di</strong> che abbia un nella -esima colonna, supponiamo sia la -esima,<br />

sommiamo tale riga a tutte le altre righe <strong>di</strong> che si trovano nelle stesse con<strong>di</strong>zioni.<br />

(<br />

Otterremo così una matrice, sia ) , equivalente a la cui -esima colonna ha un solo<br />

( )<br />

valore in posizione -esima. Operiamo adesso sulla matrice come avevamo<br />

operato sulla con la sola accortezza <strong>di</strong> scegliere una colonna che abbia un in una<br />

( )<br />

riga <strong>di</strong>versa dalla -esima, otterremo così una con due colonne che presentano un<br />

solo valore su righe <strong>di</strong>verse. All’ -esimo passo sceglieremo una colonna che abbia un<br />

in una riga <strong>di</strong>versa da quelle selezionate ai passi precedenti.<br />

Tale procedura potrà essere ripetuta al più volte, a meno che non sia più<br />

possibile selezionare una colonna, ma ciò accade solo nel caso in cui tutte le righe non<br />

ancora selezionate sono identicamente nulle, in questo caso le righe della matrice da<br />

cui eravamo partiti non erano linearmente in<strong>di</strong>pendenti, quin<strong>di</strong> non erano in grado <strong>di</strong><br />

generare un sottospazio <strong>di</strong> <strong>di</strong>mensione , o, che è lo stesso, il co<strong>di</strong>ficatore non era un<br />

monomorfismo <strong>di</strong> in cioè avevamo preso in considerazione un co<strong>di</strong>ce ambiguo.<br />

( )<br />

Al termine della procedura sopra descritta avremo quin<strong>di</strong> una matrice che ha<br />

almeno colonne in cui compare un solo , tra le colonne con un solo ne esisterà<br />

almeno una che lo ha in corrispondenza alla prima riga, una in corrispondenza alla<br />

seconda e cosi via fino alla -esima.<br />

A questo punto è opportuno osservare che se s’intende utilizzare il co<strong>di</strong>ce su un<br />

canale simmetrico binario, ovvero mappando coppie <strong>di</strong> bit della parola d’uscita in punti


92 Capitolo - 11 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

<strong>di</strong> una costellazione QAM, è anche legittimo permutare le colonne della matrice ,<br />

questa operazione equivale in sostanza ad etichettare <strong>di</strong>versamente le <strong>di</strong>mensioni dello<br />

spazio .<br />

( )<br />

È ovvio che permutando opportunamente le colonne della si può ottenere<br />

una matrice del tipo:<br />

(11.1.1)<br />

un co<strong>di</strong>ce lineare a blocchi la cui matrice generatrice assume la forma (11.1.1) si <strong>di</strong>ce<br />

sistematico tale denominazione è dovuta al fatto che i primi bit della parola <strong>di</strong> co<strong>di</strong>ce<br />

coincidono con i bit informativi, i restanti sono utilizzati per effettuare i controlli<br />

<strong>di</strong> parità definiti dalle colonne della matrice .<br />

In pratica in corrispondenza ad ogni co<strong>di</strong>ce lineare a blocco non ambiguo esiste<br />

sempre un co<strong>di</strong>ce sistematico ad esso equivalente. L’utilizzo dei co<strong>di</strong>ci sistematici è<br />

quin<strong>di</strong> auspicabile, in quanto, solo per fare un esempio, consente <strong>di</strong> non effettuare<br />

nessuna deco<strong>di</strong>fica sulla parola ricevuta, limitandosi ad osservarne i primi bit,<br />

accettando in questo caso un degrado delle prestazioni a fronte <strong>di</strong> una <strong>di</strong>minuzione<br />

della complessità del sistema.<br />

11.2 - Matrice <strong>di</strong> controllo <strong>di</strong> parità<br />

Dato un co<strong>di</strong>ce lineare a blocco sistematico, in<strong>di</strong>chiamo con la generica<br />

parola d’ingresso e con la generica parola <strong>di</strong> co<strong>di</strong>ce. Se pren<strong>di</strong>amo in considerazione<br />

soltanto le ultime componenti della parola <strong>di</strong> co<strong>di</strong>ce, ponendo<br />

possiamo scrivere:<br />

[ ] (11.2.1)<br />

sostituendo a la sua espressione in termini della matrice<br />

otteniamo:<br />

[ ] [ ] ( )<br />

(11.2.2)<br />

Sempre in virtù del fatto che il co<strong>di</strong>ce è sistematico possiamo scrivere anche:<br />

che ci suggerisce <strong>di</strong> riscrivere l’ultima eguaglianza nella (11.2.2) nella forma:<br />

(11.2.3)<br />

[ ] (11.2.4)<br />

La matrice che compare nella precedente prende il nome <strong>di</strong> matrice <strong>di</strong><br />

controllo <strong>di</strong> parità (parity check matrix), in quanto la (11.2.4) è sod<strong>di</strong>sfatta da tutte e<br />

sole le parole <strong>di</strong> co<strong>di</strong>ce.


Co<strong>di</strong>ci Sistematici 93<br />

11.3 - Co<strong>di</strong>ci duali<br />

Osserviamo che la (11.2.4) implica l’ortogonalità tra la generica parola <strong>di</strong> co<strong>di</strong>ce<br />

e ogni riga della matrice , le cui righe essendo linearmente in<strong>di</strong>pendenti sono in<br />

grado <strong>di</strong> generare un sottospazio <strong>di</strong> ortogonale a , nel senso che<br />

combinando linearmente le righe <strong>di</strong> si ottengono sempre parole <strong>di</strong> ortogonali a<br />

qualsiasi parola <strong>di</strong> .<br />

Ci si rende facilmente conto del fatto che si può pensare a come ad un<br />

co<strong>di</strong>ce ( ).<br />

Permutando opportunamente le colonne della matrice si può sempre rendere<br />

sistematico, in un certo senso lo è anche senza permutarle, solo che in questo<br />

caso i bit informativi coincidono con gli ultimi bit della parola <strong>di</strong> co<strong>di</strong>ce.<br />

11.4 - Deco<strong>di</strong>fica basata sulla sindrome<br />

Supponiamo <strong>di</strong> ricevere una parola , affetta da un pattern d’errore . Se sostituiamo<br />

a primo membro della (11.2.4) otteniamo:<br />

(11.4.1)<br />

è una parola <strong>di</strong> bit che prende il nome <strong>di</strong> sindrome della parola ricevuta. Vi<br />

sono possibili sindromi.<br />

È interessante osservare che il calcolo della sindrome può essere effettuato in<br />

ricezione con uno schema analogo a quello utilizzato per il co<strong>di</strong>ficatore, <strong>di</strong>mensionando<br />

correttamente i due registri a scorrimento. Il calcolo della sindrome nei co<strong>di</strong>ci a<br />

rivelazione d’errore consente verificare facilmente se la parola ricevuta appartiene al<br />

co<strong>di</strong>ce solo le parole <strong>di</strong> co<strong>di</strong>ce hanno infatti sindrome nulla.<br />

Nel caso dei co<strong>di</strong>ci a correzione d’errore, osservando la (11.4.1) si rileva che tutti<br />

gli elementi <strong>di</strong> uno stesso laterale del co<strong>di</strong>ce hanno la stessa sindrome. Tutti gli<br />

elementi <strong>di</strong> un laterale si ottengono infatti sommando ad un qualsiasi elemento del<br />

coset stesso una parola <strong>di</strong> co<strong>di</strong>ce. È altresì chiaro che elementi appartenenti a laterali<br />

<strong>di</strong>stinti avranno sindromi <strong>di</strong>stinte. In sostanza esiste una corrispondenza biunivoca tra il<br />

gruppo delle sindromi e l’insieme dei laterali che è esso stesso un gruppo, detto gruppo<br />

quoziente in<strong>di</strong>cato con ⁄ . La composizione tra due laterali del gruppo quoziente<br />

si effettua in<strong>di</strong>viduando il coset <strong>di</strong> appartenenza dell’elemento <strong>di</strong> ottenuto<br />

componendo due elementi arbitrariamente scelti nei due laterali componen<strong>di</strong>.<br />

Si constata che il gruppo delle sindromi è isomorfo al gruppo quoziente <strong>di</strong><br />

in<strong>di</strong>viduato dal suo sottogruppo normale .


94 Capitolo - 11 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

La deco<strong>di</strong>fica a massima verosimiglianza può quin<strong>di</strong> essere effettuata associando<br />

preliminarmente ad ogni sindrome il coset leader nel laterale ad essa associato, da<br />

sommare alla parola ricevuta per effettuare la deco<strong>di</strong>fica. Tale tecnica comporta la<br />

presenza <strong>di</strong> un banco <strong>di</strong> memoria in grado <strong>di</strong> contenere parole <strong>di</strong> bit.<br />

In effetti essendo interessati solo ai bit informativi è sufficiente memorizzare<br />

soltanto i primi bit del coset leader, questo accorgimento riduce un po’ il fabbisogno<br />

<strong>di</strong> memoria.<br />

La deco<strong>di</strong>fica basata sulla sindrome è più efficiente <strong>di</strong> quella basata sui coset<br />

leader, anche se, al crescere delle <strong>di</strong>mensioni della parola <strong>di</strong> co<strong>di</strong>ce, <strong>di</strong>venta ben presto<br />

<strong>di</strong>fficilmente praticabile, a causa della quantità <strong>di</strong> memoria <strong>di</strong> cui necessita.


12.1 - Co<strong>di</strong>ci <strong>di</strong> Hamming<br />

Capitolo - 12<br />

Co<strong>di</strong>ci <strong>di</strong> Hamming e loro duali<br />

Abbiamo visto come si calcola la sindrome <strong>di</strong> un co<strong>di</strong>ce ed abbiamo osservato<br />

che più pattern d’errore possono con<strong>di</strong>videre la stessa sindrome. Immaginiamo adesso<br />

<strong>di</strong> voler costruire un co<strong>di</strong>ce che abbia la capacità <strong>di</strong> correggere tutti i pattern d’errore <strong>di</strong><br />

peso . Affinché ciò sia possibile ciascun pattern d’errore <strong>di</strong> peso<br />

coset leader.<br />

deve essere un<br />

Abbiamo visto che un co<strong>di</strong>ce ( ) consta <strong>di</strong> parole <strong>di</strong> bit. Esistono quin<strong>di</strong><br />

<strong>di</strong>stinti pattern d’errore <strong>di</strong> peso , ciascuno dei quali, moltiplicato per<br />

rispettiva sindrome. Detta sindrome coincide con la colonna della matrice<br />

corrisponde alla posizione dell’unico bit<br />

fornisce la<br />

che<br />

nel pattern d’errore. Quin<strong>di</strong>, se vogliamo che<br />

il co<strong>di</strong>ce sia in grado <strong>di</strong> correggere tutti i pattern d’errore <strong>di</strong> peso , è necessario che le<br />

colonne della matrice<br />

della matrice in questione ha<br />

siano tutte non nulle e <strong>di</strong>verse tra loro. Poiché ogni colonna<br />

elementi, deve necessariamente essere:<br />

(12.1.1)<br />

La precedente scritta come uguaglianza definisce implicitamente una famiglia <strong>di</strong><br />

co<strong>di</strong>ci, i co<strong>di</strong>ci <strong>di</strong> Hamming, che sono in grado <strong>di</strong><br />

correggere tutti gli errori <strong>di</strong> peso<br />

e <strong>di</strong> rivelare<br />

quelli <strong>di</strong> peso non superiore a due in quanto si<br />

può mostrare che la loro vale . Alcune<br />

soluzioni della (12.1.1) sono riportate nella in<br />

Tabella 12.1.<br />

Il primo co<strong>di</strong>ce della tabella è in effetti un<br />

co<strong>di</strong>ce a ripetizione, in sostanza ogni bit informativo viene inviato consecutivamente<br />

tre volte, vi sono due sole parole <strong>di</strong> co<strong>di</strong>ce, la <strong>di</strong>stanza <strong>di</strong> Hamming tra esse, quin<strong>di</strong><br />

anche la<br />

del co<strong>di</strong>ce, è , il co<strong>di</strong>ce è in grado <strong>di</strong> correggere errori singoli, la regola<br />

<strong>di</strong> decisione a massima verosimiglianza per questo co<strong>di</strong>ce consiste nello scegliere il bit<br />

che compare almeno due volte nella parola ricevuta. Se il canale introduce un errore<br />

doppio il co<strong>di</strong>ce rileva l’errore, ma non è in grado <strong>di</strong> correggerlo, nel senso che<br />

restituisce una parola <strong>di</strong> co<strong>di</strong>ce <strong>di</strong>versa da quella inviata nel caso <strong>di</strong> deco<strong>di</strong>fica MV. Vi<br />

sono tre laterali del co<strong>di</strong>ce a ciascuno <strong>di</strong> essi appartiene un pattern d’errore singolo e il<br />

suo negato.<br />

n<br />

k<br />

3 1<br />

7 4<br />

15 11<br />

31 26<br />

63 57<br />

127 120<br />

Tabella 12.1 Alcuni valori <strong>di</strong> n e k per<br />

i co<strong>di</strong>ci <strong>di</strong> Hamming


96 Capitolo - 12 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

Per concludere si può facilmente verificare che la (10.11.1) è verificata come<br />

uguaglianza per tutti i co<strong>di</strong>ci <strong>di</strong> Hamming risulta infatti:<br />

da cui<br />

⌊ ⌋ (12.1.2)<br />

∑ ( ) (12.1.3)<br />

ma per i co<strong>di</strong>ci <strong>di</strong> Hamming<br />

all’insieme dei co<strong>di</strong>ci perfetti.<br />

, i co<strong>di</strong>ci <strong>di</strong> Hamming appartengono pertanto<br />

Esempio 12.1<br />

Una possibile matrice<br />

del secondo co<strong>di</strong>ce della Tabella 12.1, il 7,4,è data da:<br />

Fig.E 12.1 - Schema a blocchi del Co<strong>di</strong>ce 7,4 <strong>di</strong> Hamming<br />

Co<strong>di</strong>ce <strong>di</strong> Hamming 7,4<br />

0000 000<br />

0001 111<br />

0010 011<br />

0011 100<br />

0100 101<br />

0101 001<br />

0110 110<br />

0111 001<br />

1000 110<br />

1001 001<br />

1010 101<br />

1011 010<br />

1100 011<br />

1101 100<br />

1110 000<br />

1111 111<br />

Tabella 12.2 - Parole del<br />

co<strong>di</strong>ce Hamming 7.4<br />

matrice<br />

[ ]<br />

Osserviamo che la matrice in<br />

esame ha per colonne tutte le parole <strong>di</strong><br />

tre bit ad esclusione <strong>di</strong> quella costituita<br />

da soli zero, or<strong>di</strong>nate in modo da<br />

rispettare la (11.2.4).<br />

Ricor<strong>di</strong>amoci che le prime quattro<br />

colonne <strong>di</strong> possono essere permutate<br />

tra loro senza che le caratteristiche<br />

del co<strong>di</strong>ce cambino.<br />

Basandoci sulla (11.2.4) e sulla<br />

(11.1.1) potremo facilmente scrivere la<br />

generatrice del co<strong>di</strong>ce:<br />

[ ]<br />

il relativo schema a blocchi è mostrato in Fig.E 12.1, la lista delle<br />

parole del co<strong>di</strong>ce è elencata nella Tabella 12.2 dove ogni parola è stata<br />

sud<strong>di</strong>visa tra contenuto informativo (i primi 4 bit) e controlli <strong>di</strong> parità<br />

(gli ultimi 3).<br />

Uno schema a blocchi del co<strong>di</strong>ce <strong>di</strong> Hamming 15,11 è mostrato in<br />

Fig.E 10.1.<br />

12.2 - Duali dei co<strong>di</strong>ci <strong>di</strong> Hamming<br />

Nel caso dei duali dei co<strong>di</strong>ci <strong>di</strong> Hamming, le colonne<br />

della loro matrice generatrice<br />

sono tutte e sole le parole binarie<br />

non nulle che si possono scrivere con<br />

quin<strong>di</strong> esattamente<br />

bit vi saranno<br />

colonne nella matrice generatrice.<br />

La matrice definisce quin<strong>di</strong> un co<strong>di</strong>ce ( ), le cui parole non nulle<br />

hanno tutte peso .<br />

zero e<br />

Infatti ogni riga della matrice generatrice contiene per costruzione<br />

bit uno. Le restanti parole del co<strong>di</strong>ce si ottengono combinando linearmente<br />

bit


Co<strong>di</strong>ci <strong>di</strong> Hamming e loro Duali 97<br />

le righe della matrice generatrice, tale combinazione lineare, a ben vedere, consiste nel<br />

cancellare un sottoinsieme <strong>di</strong> righe dalla matrice generatrice e sommare le restanti.<br />

Per semplificare il ragionamento immaginiamo <strong>di</strong> aggiungere alla matrice una<br />

colonna nulla, sia ˜ la matrice estesa così ottenuta. Osserviamo che le parole del co<strong>di</strong>ce<br />

( ) generato da ˜ <strong>di</strong>fferiscono da quelle generate da solo per il fatto <strong>di</strong> avere un<br />

bit in più, che essendo generato dalla colonna identicamente nulla, vale<br />

sistematicamente . Possiamo quin<strong>di</strong> affermare che le parole corrispondenti dei due<br />

co<strong>di</strong>ci, cioè generate dalla stessa parola <strong>di</strong> hanno lo stesso peso.<br />

Osserviamo adesso che la cancellazione <strong>di</strong> una riga in ˜ da luogo ad una<br />

sottomatrice ˜ ( ) che ha le colonne uguali a due a due; se cancellassimo due righe<br />

avremmo una sottomatrice ˜ ( ) con colonne uguali a quattro a quattro e così via.<br />

In generale quin<strong>di</strong> cancellando righe <strong>di</strong> ˜ , con 0 j k , avremo una<br />

sottomatrice ˜ ( ) <strong>di</strong> righe con solo colonne <strong>di</strong>stinte che non potranno essere<br />

altro se non tutte le parole binarie <strong>di</strong> bit.<br />

Il peso della parola <strong>di</strong> co<strong>di</strong>ce ottenuta componendo le righe <strong>di</strong> ˜ ( ) , è<br />

uguale al numero <strong>di</strong> colonne che hanno un numero <strong>di</strong>spari <strong>di</strong> al loro interno. Ci si<br />

convince facilmente che esattamente la metà delle colonne <strong>di</strong>verse tra loro hanno<br />

peso <strong>di</strong>spari. Il peso della parola <strong>di</strong> co<strong>di</strong>ce ottenuta componendo le righe vale<br />

, in<strong>di</strong>pendente dal numero <strong>di</strong> righe cancellato, pur <strong>di</strong> non cancellarle<br />

tutte, in questo caso otterremo la parola <strong>di</strong> co<strong>di</strong>ce nulla che ha peso .<br />

Possiamo quin<strong>di</strong> concludere che la <strong>di</strong>stanza minima per co<strong>di</strong>ci generati da matrici<br />

<strong>di</strong> tipo ˜ , o da matrici <strong>di</strong> tipo vale , che è anche, la <strong>di</strong>stanza tra due parole <strong>di</strong><br />

co<strong>di</strong>ce qualsiasi.<br />

12.3 - Co<strong>di</strong>ci ortogonali e transortogonali<br />

Immaginiamo <strong>di</strong> utilizzare un co<strong>di</strong>ce generato da una matrice del tipo ˜ ,<br />

introdotta nel paragrafo 12.1 - , con una segnalazione <strong>di</strong> tipo antipodale, associando<br />

cioè ai bit un impulso <strong>di</strong> segnalazione in banda base ( ) (la cui durata, per<br />

semplicità possiamo pensare sia non maggiore dell’intervallo <strong>di</strong> segnalazione ), e ai<br />

bit il suo opposto. Alla generica parola <strong>di</strong> co<strong>di</strong>ce verrà quin<strong>di</strong> associato il segnale in<br />

banda base:<br />

( ) ∑( ) ( ( ) ) (12.3.1)


98 Capitolo - 12 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

Se effettuiamo il prodotto scalare tra i segnali associati a due <strong>di</strong>stinte parole <strong>di</strong> co<strong>di</strong>ce<br />

otteniamo:<br />

∫ ∑( ) ( ( ) ) ∑( ) ( ( ) )<br />

∑ ∑( ) ( ) ∫ ( ( ) ) ( ( ) )<br />

(12.3.2)<br />

∑( ) ( ) ∫ ( ) ( ) ∑( ) ( )<br />

∑( ) ( )<br />

nella precedente<br />

in<strong>di</strong>ca l’energia del bit informativo, conseguentemente l’energia<br />

specifica dell’impulso <strong>di</strong> segnalazione, che tiene conto del Rate<br />

del co<strong>di</strong>ce, vale<br />

. La sommatoria a ultimo membro vale in quanto la <strong>di</strong>stanza <strong>di</strong> Hamming tra due<br />

parole <strong>di</strong> co<strong>di</strong>ce <strong>di</strong>stinte vale .<br />

Sotto le ipotesi appena fatte i segnali associati alle parole del co<strong>di</strong>ce generato<br />

dalla matrice <strong>di</strong> parità estesa <strong>di</strong> un co<strong>di</strong>ce <strong>di</strong> Hamming ˜ sono a due a due ortogonali.<br />

Per quanto riguarda i co<strong>di</strong>ci duali dei co<strong>di</strong>ci <strong>di</strong> Hamming, nelle stesse con<strong>di</strong>zioni<br />

generano un set <strong>di</strong> segnali isoenergetici in uno spazio a <strong>di</strong>mensioni. Detti<br />

segnali non sono più mutuamente ortogonali, anche se la <strong>di</strong>stanza tra una qualunque<br />

coppia <strong>di</strong> segnali è la stessa. I co<strong>di</strong>ci duali dei co<strong>di</strong>ci <strong>di</strong> Hamming si chiamano<br />

transortogonali. Rispetto ai co<strong>di</strong>ci generati da matrici <strong>di</strong> tipo ˜ i co<strong>di</strong>ci transortogonali<br />

hanno il vantaggio a parità d’energia <strong>di</strong> consentire un aumento dell’energia<br />

associata al bit della parola <strong>di</strong> co<strong>di</strong>ce, in virtù del rate più basso, per questo le loro<br />

prestazioni sono leggermente migliori.


13.1 - Premessa<br />

Capitolo - 13<br />

CODICI CONVOLUZIONALI<br />

I co<strong>di</strong>ci convoluzionali furono proposti per la prima volta da P. Elias nel 1955, e<br />

hanno trovato ampia applicazione dopo che A. J. Viterbi propose nel 1967 un efficiente<br />

algoritmo <strong>di</strong> deco<strong>di</strong>fica. Nei co<strong>di</strong>ficatori convoluzionali la parola prodotta non <strong>di</strong>pende<br />

soltanto dalla parola emessa dalla sorgente al tempo presente, ma anche da quelle<br />

emesse precedentemente. Si tratta quin<strong>di</strong> <strong>di</strong> un co<strong>di</strong>ficatore dotato <strong>di</strong> memoria.<br />

13.2 - Struttura del co<strong>di</strong>ficatore<br />

Lo schema <strong>di</strong> principio <strong>di</strong> un co<strong>di</strong>ficatore convoluzionale è mostrato in Fig.E<br />

Fig.E 13.1 - Schema <strong>di</strong> principio <strong>di</strong> un co<strong>di</strong>ficatore<br />

convoluzionale<br />

13.1. Dove i simboli emessi dalla<br />

sorgente appartengono ad un alfabeto <strong>di</strong><br />

car<strong>di</strong>nalità assegnata ed i sommatori<br />

operano modulo la car<strong>di</strong>nalità dell’alfabeto.<br />

Lo schema <strong>di</strong> Fig.E 13.1, a prima<br />

vista, non <strong>di</strong>fferisce da quello <strong>di</strong> un<br />

co<strong>di</strong>ficatore per co<strong>di</strong>ci a blocchi, se non<br />

fosse per la <strong>di</strong>mensione dello shift<br />

register d’ingresso che è maggiore <strong>di</strong><br />

quello d’uscita. La <strong>di</strong>fferenza sostanziale<br />

tra il co<strong>di</strong>ficatore <strong>di</strong> figura e quello <strong>di</strong> uno a blocchi, consiste nel fatto che il registro<br />

d’uscita, nel co<strong>di</strong>ficatore <strong>di</strong> figura, viene letto ogni due simboli emessi dalla sorgente.<br />

In generale in un co<strong>di</strong>ficatore convoluzionale il numero <strong>di</strong> simboli che costituiscono<br />

la parola informativa è un sottomultiplo della lunghezza dello shift register<br />

d’ingresso. Il rapporto tra il numero <strong>di</strong> celle dello shift register e il numero <strong>di</strong> simboli <strong>di</strong><br />

sorgente che costituiscono la parola informativa viene denominato lunghezza <strong>di</strong><br />

vincolo (costraint lenght) ( in quel che segue).<br />

Da quanto appena detto segue che la parola <strong>di</strong> co<strong>di</strong>ce non <strong>di</strong>pende soltanto dalla<br />

parola d’ingresso attuale ma anche dalle<br />

sorgente.<br />

Nello schema <strong>di</strong> Fig.E 13.1 la lunghezza <strong>di</strong> vincolo<br />

parole emesse precedentemente dalla<br />

, la parola <strong>di</strong> co<strong>di</strong>ce<br />

<strong>di</strong>penderà pertanto dalla parola corrente e dalle 2 parole informative che la precedono.


100 Capitolo - 13 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

Anche nei co<strong>di</strong>ficatori convoluzionali si può definire un rate espresso dal rapporto tra la<br />

lunghezza della parola informativa (2 in Fig.E 13.1) e quella della parola <strong>di</strong> co<strong>di</strong>ce<br />

generata (3 in Fig.E 13.1). A <strong>di</strong>fferenza dei co<strong>di</strong>ci a blocchi le lunghezze, sia delle<br />

parole d’ingresso, sia <strong>di</strong> quelle <strong>di</strong> co<strong>di</strong>ce, sono piccole (dell’or<strong>di</strong>ne delle unità), i<br />

simboli emessi appartengono tipicamente a .<br />

13.3 - Matrice generatrice e generatori.<br />

I co<strong>di</strong>ficatori convoluzionali come si evince dalla Fig.E 13.1 figura del paragrafo<br />

Sequenze <strong>di</strong><br />

ingresso<br />

precedente sono lineari.<br />

Essi se la lunghezza <strong>di</strong><br />

vincolo fosse unitaria<br />

degenererebbero in un<br />

co<strong>di</strong>ficatore a blocco. Se<br />

la lunghezza <strong>di</strong> vincolo è<br />

maggiore <strong>di</strong> uno la sequenza<br />

d’uscita <strong>di</strong>pende<br />

dall’intera<br />

sequenza<br />

d’ingresso. In ogni caso<br />

possiamo affermare che<br />

la sequenza co<strong>di</strong>ficata<br />

associata a una generica<br />

sequenza<br />

informativa<br />

può sempre essere ottenuta<br />

come combinazione lineare delle risposte che il co<strong>di</strong>ficatore genererebbe in<br />

corrispondenza a sequenze “canoniche”, cioè a sequenze seminfinite contenenti un<br />

unico bit .<br />

Sequenze co<strong>di</strong>ficate<br />

10 00 00 00 0… 001,100,001,000…<br />

01 00 00 00 0… 010,010,100 000…<br />

00 10 00 00 0… 000,001,100,001 000…<br />

00 01 00 00 0… 000,010,010,100 000…<br />

00 00 10 00 0… 000,000,001,100,001,000<br />

00 00 01 00 0… 000,000,010,010,100 000…<br />

00 00 00 10 00 0… 000,000,000,001,100,001,000<br />

00 00 00 01 00 0… 000,000,000,010,010,100 000…<br />

Tabella 13.1 - sequenze <strong>di</strong> uscita del co<strong>di</strong>ficatore <strong>di</strong> Fig.E 13.1 in<br />

corrispondenza alle sequenze canoniche<br />

In Tabella 13.1 sono mostrate le sequenze d’uscita che si otterrebbero dall’analisi<br />

del co<strong>di</strong>ficatore Fig.E 13.1 in corrispondenza alle citate sequenze, assumendo che in<br />

assenza <strong>di</strong> una sequenza in ingresso tutte le celle dello shift register contengano il bit 0.<br />

Le sequenze co<strong>di</strong>ficate della tabella si possono pensare come le righe <strong>di</strong> una matrice<br />

generatrice del co<strong>di</strong>ce. Detta matrice ha <strong>di</strong>mensioni semi infinite, motivo questo <strong>di</strong> per<br />

sé sufficiente per cercare un approccio più efficiente allo stu<strong>di</strong>o dei co<strong>di</strong>ci in parola.<br />

È interessante osservare che la matrice generatrice ha una struttura ben precisa,<br />

come si desume dalla Tabella 13.1 essa ha una struttura a blocchi del tipo:


Co<strong>di</strong>ci Convoluzionali 101<br />

[ ] (13.3.1)<br />

dove le rappresentano matrici e gli zeri in<strong>di</strong>cano matrici nulle delle stesse<br />

<strong>di</strong>mensioni. Osservando la struttura della generica ci si rende conto che essa è in<br />

realtà la matrice generatrice <strong>di</strong> un co<strong>di</strong>ce a blocchi , il suo generico elemento<br />

vale cioè solo se l’ -esima cella dell’ -esimo blocco dello shift register <strong>di</strong> ingresso è<br />

connessa al sommatore - esimo.<br />

La (13.3.1) è <strong>di</strong> scarsa utilità pratica. Le matrici potrebbero essere si usate<br />

per descrivere la struttura del co<strong>di</strong>ficatore, ma, anche a questo scopo, esse si rivelano in<br />

genere meno efficienti dei cosiddetti generatori. I generatori sono vettori binari<br />

ciascuno con componenti. Dove la -esima componente dell’ -esimo generatore<br />

vale solo se l’ -esimo sommatore è connesso all’ -esima cella del registro<br />

d’ingresso.<br />

Per il co<strong>di</strong>ficatore <strong>di</strong> Fig.E 13.1 i generatori sono:<br />

(13.3.2)<br />

Noto il rate del co<strong>di</strong>ficatore i generatori permettono <strong>di</strong> tracciare facilmente lo schema<br />

del co<strong>di</strong>ficatore.<br />

Il vantaggio che si ha nell’utilizzo dei generatori rispetto all’uso delle matrici<br />

costituenti la matrice generatrice è legato al fatto che i generatori sono in numero pari<br />

al numero <strong>di</strong> bit della parola d’uscita dell’or<strong>di</strong>ne delle unità, mentre le matrici in parola<br />

sono in numero pari alla lunghezza <strong>di</strong> vincolo che può essere dell’or<strong>di</strong>ne delle decine.<br />

Inoltre i generatori si prestano a essere rappresentati in notazione <strong>di</strong>versa da quella<br />

binaria, tipicamente quella ottale, rappresentando cioè gruppi <strong>di</strong> tre bit con la<br />

corrispondente cifra ottale per il nostro co<strong>di</strong>ficatore ciascun generatore si può<br />

rappresentare me<strong>di</strong>ante due cifre ottali in particolare si ha:<br />

(13.3.3)<br />

13.4 - Diagramma <strong>di</strong> stato del co<strong>di</strong>ficatore.<br />

La matrice generatrice, non è certamente uno strumento <strong>di</strong> semplice impiego per<br />

analizzare un co<strong>di</strong>ficatore convoluzionale. I generatori sono uno strumento efficace per<br />

descriverne la struttura del co<strong>di</strong>ficatore, ma mal si prestano al calcolo della sequenza<br />

d’uscita che esso genera in uscita. Un modo alternativo, certamente più efficace, per


102 Capitolo - 13 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

descrivere il comportamento del co<strong>di</strong>ficatore è quello <strong>di</strong> tener conto del fatto che<br />

l’uscita prodotta in un certo istante <strong>di</strong>pende oltre che dalla parola d’ingresso corrente<br />

anche dalla storia della sequenza d’ingresso, in particolare essa <strong>di</strong>pende dai ( )<br />

bit d’ingresso che hanno preceduto la parola corrente.<br />

In altri termini, noti tali bit e i bit della parola corrente possono essere<br />

determinati univocamente, sia l’uscita corrente, sia i ( ) bit che contribuiranno<br />

unitamente alla parola d’ingresso successiva a determinare la parola d’uscita seguente.<br />

( )<br />

Osserviamo che esistono esattamente contenuti <strong>di</strong>stinti per le celle del registro<br />

che costituiscono la memoria del sistema. Possiamo <strong>di</strong>re pertanto che il co<strong>di</strong>ficatore<br />

( )<br />

può assumere stati <strong>di</strong>versi (16 nel nostro esempio). L’arrivo <strong>di</strong> una parola<br />

d’ingresso comporta tipicamente una variazione del contenuto della memoria, quin<strong>di</strong><br />

una variazione dello stato del sistema. In sostanza un co<strong>di</strong>ficatore convoluzionale è<br />

altro che una macchina a stati finiti.<br />

Gli stati del co<strong>di</strong>ficatore possono essere associati ai vertici <strong>di</strong> un grafo (ve<strong>di</strong><br />

Esempio 3.1) due vertici vengono connessi tramite un lato se esiste una parola <strong>di</strong><br />

ingresso che induce la transizione tra i due stati. Ad ogni lato potremo associare<br />

un’etichetta che contiene la parola d’ingresso ad esso relativa, ma anche la<br />

corrispondente parola <strong>di</strong> uscita che <strong>di</strong>pende dal vertice da cui il suddetto lato fuoriesce.<br />

Osserviamo che da ogni vertice origineranno e si <strong>di</strong>partiranno esattamente<br />

lati, tanti quante sono le possibili parole d’ingresso (nel nostro esempio 4). Quin<strong>di</strong> ogni<br />

(<br />

vertice è <strong>di</strong> grado ) . Il grafo è anche connesso in quanto, comunque scelti due<br />

vertici <strong>di</strong>stinti, esiste sempre un<br />

percorso che li congiunge,<br />

osserviamo che tale percorso è<br />

costituito al più da ( ) lati.<br />

Il grafo relativo al<br />

co<strong>di</strong>ficatore <strong>di</strong> Fig.E 13.1 è<br />

mostrato in Fig.E 13.2 dove si<br />

sono utilizzati colori <strong>di</strong>versi per<br />

<strong>di</strong>stinguere le parole d’ingresso<br />

associate ai lati. Nella stessa figura<br />

si sono in<strong>di</strong>cate solo alcune<br />

Fig.E 13.2 - Grafo del co<strong>di</strong>ficatore mostrato in Fig.E 13.1<br />

parole d’uscita per non pregiu<strong>di</strong>carne<br />

la leggibilità.


Co<strong>di</strong>ci Convoluzionali 103<br />

Tracciato che sia il grafo del co<strong>di</strong>ficatore, per dato stato iniziale, si può valutare<br />

la sequenza co<strong>di</strong>ficata associata a una qualsiasi sequenza d’ingresso seguendo il<br />

percorso a essa in<strong>di</strong>viduato ed annotando le corrispondenti parole d’uscita. Ovviamente<br />

per sequenze molto lunghe, anche questa rappresentazione manifesta i suoi limiti, si<br />

pensi al caso in cui uno stesso lato compaia più volte nell’ambito <strong>di</strong> una stessa<br />

sequenza.<br />

13.5 - Co<strong>di</strong>ci catastrofici<br />

Osserviamo che ogni co<strong>di</strong>ficatore convoluzionale associa alla sequenza d’ingresso<br />

nulla la sequenza nulla, ciò è un’imme<strong>di</strong>ata conseguenza della sua linearità.<br />

Il percorso associato alla sequenza <strong>di</strong> ingresso identicamente nulla nel grafo <strong>di</strong> Fig.E<br />

13.2 consisterebbe nel percorrere infinite volte il ramo che emerge e termina nello stato<br />

zero. I rami che originano e terminano nello stesso stato vengono denominati self loop.<br />

Notiamo che lo stesso co<strong>di</strong>ficatore, partendo dallo stato zero, associa alla sequenza<br />

costituita solo da bit , la sequenza<br />

come possiamo<br />

notare tale sequenza seppur semi-infinita ha peso ; cioè, nonostante la sequenza <strong>di</strong><br />

ingresso considerata sia quella a massima <strong>di</strong>stanza dalla sequenza nulla, le rispettive<br />

sequenze co<strong>di</strong>ficate <strong>di</strong>stano tra loro non più <strong>di</strong> in<strong>di</strong>pendentemente dalla loro<br />

lunghezza. Il co<strong>di</strong>ficatore <strong>di</strong> Fig.E 13.1 è un in realtà un esempio <strong>di</strong> Co<strong>di</strong>ce<br />

catastrofico. Tale denominazione <strong>di</strong>scende dal fatto che da un co<strong>di</strong>ficatore ci si aspetta,<br />

quantomeno, che al crescere della <strong>di</strong>stanza <strong>di</strong> Hamming tra le sequenze d’ingresso<br />

(parliamo si sequenze semi-infinite) cresca anche quella tra le corrispondenti sequenze<br />

co<strong>di</strong>ficate. Il motivo per il quale il “nostro” co<strong>di</strong>ficatore è catastrofico risiede nella<br />

presenza <strong>di</strong> un selfloop che associa a una parola <strong>di</strong> peso non nullo la parola d’uscita<br />

nulla, sicché "ciclando" su questo ramo il peso della sequenza d’uscita non varia. Il<br />

co<strong>di</strong>ficatore fin qui utilizzato, malgrado sia catastrofico non perde la sua valenza che è<br />

puramente <strong>di</strong>dattica.<br />

13.6 - Trellis degli stati<br />

I limiti all’utilizzo del grafo per lo stu<strong>di</strong>o <strong>di</strong> un co<strong>di</strong>ce convoluzionale, sono<br />

essenzialmente legati al fatto che in questa rappresentazione non compare il tempo.


104 Capitolo - 13 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

Premesso che in quel che segue per brevità enumereremo talvolta gli stati con il<br />

numero decimale corrispondente al contenuto della memoria, supponiamo che<br />

Fig.E 13.3 – Trellis degli stati del co<strong>di</strong>ficatore <strong>di</strong> Fig.E 13.1<br />

all’istante iniziale il co<strong>di</strong>ficatore si trovi nello stato , da esso all’istante , potranno<br />

essere raggiunti nuovi stati figli e da ciascuno <strong>di</strong> questi ultimi all’istante ne<br />

potranno essere raggiunti per un totale <strong>di</strong> stati figli raggiungili all’istante a<br />

partire dallo stato iniziale dopo due parole <strong>di</strong> ingresso.<br />

Ci ren<strong>di</strong>amo conto del fatto che all’istante ( ) tutti i possibili stati del<br />

co<strong>di</strong>ficatore saranno raggiungibili. Ciò è vero anche in virtù del fatto che, per la<br />

struttura del co<strong>di</strong>ficatore, a prescindere dallo stato in cui si trova, a parole d’ingresso<br />

<strong>di</strong>stinte corrispondono stati <strong>di</strong> arrivo <strong>di</strong>stinti.<br />

Quanto appena detto può essere rappresentato graficamente me<strong>di</strong>ante il trellis<br />

(letteralmente, ma è “infelice”, graticcio) degli stati del co<strong>di</strong>ce. Il trellis associato al<br />

co<strong>di</strong>ficatore <strong>di</strong> Fig.E 13.1 è rappresentato in Fig.E 13.3 Come possiamo notare il trellis<br />

è un albero, che ha origine nello stato in cui si trova il co<strong>di</strong>ficatore all’istante iniziale,<br />

che generalmente, ma non necessariamente, è lo stato . Esso costituisce la ra<strong>di</strong>ce


Co<strong>di</strong>ci Convoluzionali 105<br />

dell’albero, da cui si <strong>di</strong>partono i lati associati a tutte le possibili parole <strong>di</strong> ingresso che<br />

terminano sui vertici raggiungibili all’istante da ciascuno <strong>di</strong> detti vertici si<br />

<strong>di</strong>partiranno ulteriori lati che termineranno su vertici figli al tempo 2kT s<br />

.<br />

Al tempo ( ) tutti gli stati vengono raggiunti da un lato ed al passo<br />

successivo la sezione <strong>di</strong> trellis, cioè l’insieme dei lati compresi tra i vertici relativi a<br />

due istanti <strong>di</strong> tempo consecutivi, è completa, nel senso che contiene tutti i possibili lati,<br />

tutte le sezioni successive saranno complete, uguali tra loro ed, idealmente, in numero<br />

infinito. Ogni sezione si può etichettare con un numero che esprime la “profon<strong>di</strong>tà”<br />

della sezione cioè la collocazione temporale <strong>di</strong> una data sezione nel trellis.<br />

Seguire l’evoluzione dell’uscita sul trellis<br />

è semplice in quanto nel percorso associato alla<br />

sequenza d’ingresso non vi sono sovrapposizioni.<br />

Esempio 13.1<br />

Si Calcoli l’uscita del co<strong>di</strong>ce <strong>di</strong> rate in<strong>di</strong>viduato<br />

dai generatori . In corrispondenza alla<br />

sequenza d’ingresso .<br />

I due generatori rappresentati in binario sono:<br />

Fig.E 13.4 - schema del co<strong>di</strong>ficatore convoluzionale<br />

rate<br />

e corrispondono allo schema mostrato in Fig.E 13.4.<br />

Il co<strong>di</strong>ficatore ha 8 stati, il suo trellis è mostrato in<br />

Fig.E 13.5 – Trellis del co<strong>di</strong>ce convoluzionale<br />

rate<br />

Fig.E 13.5, nella stessa figura è evidenziato il percorso associato alla sequenza <strong>di</strong> ingresso ,<br />

la corrispondente sequenza d’uscita è quin<strong>di</strong>: .<br />

È interessante osservare che un ulteriore zero nella sequenza d’ingresso riporterebbe il<br />

co<strong>di</strong>ficatore allo stato zero.


Capitolo - 14<br />

L’ALGORITMO DI VITERBI<br />

14.1 - Deco<strong>di</strong>fica hard e soft <strong>di</strong> un co<strong>di</strong>ce convoluzionale.<br />

Occupiamoci adesso della deco<strong>di</strong>fica utilizzando il criterio della massima<br />

verosimiglianza.<br />

Facciamo riferimento per chiarirci le idee allo schema <strong>di</strong> principio mostrato in<br />

Fig.E 14.1. Esso rappresenta una sorgente binaria che emette una sequenza binaria <strong>di</strong><br />

bit,<br />

, cui è connesso un co<strong>di</strong>ficatore convoluzionale con rate che produce<br />

una sequenza co<strong>di</strong>ficata <strong>di</strong> bit, , che modula antipodalmente un impulso <strong>di</strong><br />

segnalazione ( ) in banda base <strong>di</strong> durata non maggiore dell’intervallo<br />

assegnato ad ogni bit co<strong>di</strong>ficato ottenendo il segnale ( ) ∑ ( ) ( (<br />

) ).<br />

( ) viene quin<strong>di</strong> inviato su un canale AWGN che introduce cioè un rumore<br />

gaussiano n t con densità spettrale <strong>di</strong> potenza bilatera .<br />

Il segnale ( ), in uscita al canale, che perviene al ricevitore, trascurando ritardo<br />

ed attenuazione, sarà quin<strong>di</strong> ( ) ( ) ( ).<br />

Fig.E 14.1 - schema <strong>di</strong> principio <strong>di</strong> un sistema <strong>di</strong> trasmissione, con co<strong>di</strong>ficatore convoluzionale e<br />

modulazione antipodale in banda base - deco<strong>di</strong>ficatore hard, ramo superiore, deco<strong>di</strong>ficatore soft,<br />

ramo inferiore.<br />

Il ricevitore <strong>di</strong> figura è costituito da un filtro adattato all’impulso <strong>di</strong> segnalazione<br />

la cui uscita viene campionata a cadenza , producendo la sequenza , che per le<br />

ipotesi fatte non sarà affetta da interferenza intersimbolica. Avremo cioè<br />

in cui<br />

è una variabile aleatoria Gaussiana a me<strong>di</strong>a nulla e varianza . Ne


̂<br />

108 Capitolo - 14 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

segue che la generica , con<strong>di</strong>zionata all’invio <strong>di</strong> è la realizzazione <strong>di</strong> una variabile<br />

aleatoria gaussiana a me<strong>di</strong>a e varianza . Inoltre Le con<strong>di</strong>zionate<br />

all’invio <strong>di</strong> una data saranno mutualmente statisticamente in<strong>di</strong>pendenti.<br />

In Fig.E 14.1 Abbiamo a questo punto in<strong>di</strong>cato due alternative:<br />

la prima (ramo superiore) consiste nell’utilizzare un rivelatore a soglia che fornirebbe<br />

in uscita una sequenza binaria stimata , da dare in “pasto” ad un deco<strong>di</strong>ficatore<br />

che in questo caso sarebbe <strong>di</strong> tipo hard;<br />

la seconda (ramo inferiore in Fig.E 14.1) utilizzare un deco<strong>di</strong>ficatore in grado <strong>di</strong><br />

utilizzare <strong>di</strong>rettamente la in questo caso il nostro deco<strong>di</strong>ficatore sarebbe <strong>di</strong> tipo<br />

soft.<br />

In<strong>di</strong>pendentemente dal tipo <strong>di</strong> deco<strong>di</strong>ficatore viene prodotta una sequenza<br />

informativa stimata ̂ ottenuta in corrispondenza a una sequenza co<strong>di</strong>ficata<br />

, cioè una sequenza che corrisponde ad un percorso sul trellis del co<strong>di</strong>ficatore.<br />

̂<br />

Ovviamente non è detto che i due deco<strong>di</strong>ficatori producano la stessa ̂ .<br />

In quel che segue supporremo <strong>di</strong> voler deco<strong>di</strong>ficare una sequenza <strong>di</strong> lunghezza<br />

finita. Supporremo anche che il deco<strong>di</strong>ficatore hard o soft che sia:<br />

- conosca la struttura del co<strong>di</strong>ficatore convoluzionale;<br />

- conosca lo stato iniziale in del co<strong>di</strong>ficatore;<br />

- conosca lo stato finale fin del co<strong>di</strong>ficatore,<br />

Osserviamo che la conoscenza dello stato finale da parte del deco<strong>di</strong>ficatore,<br />

implica che il co<strong>di</strong>ficatore abbia provveduto ad aggiungere alla sequenza informativa<br />

un suffisso in grado <strong>di</strong> condurre il co<strong>di</strong>ficatore in uno stato assegnato. Va da se che i<br />

simboli del suffisso non conterranno informazione e comporteranno quin<strong>di</strong> un<br />

peggioramento dell’effettivo rate del co<strong>di</strong>ce. Tale peggioramento sarà tanto meno<br />

rilevante quanto più lunghe saranno le sequenze da trasmettere.<br />

In linea <strong>di</strong> principio la deco<strong>di</strong>fica MV hard della sequenza costituita da<br />

-uple <strong>di</strong> bit in uscita al rivelatore a soglia è semplice, è, infatti, sufficiente scegliere la<br />

sequenza ammissibile 2 che ha la minima <strong>di</strong>stanza <strong>di</strong> Hamming dalla generata<br />

dal rivelatore, scegliendo eventualmente a caso qualora dovesse esservi più d’una<br />

sequenza ammissibile con lo stesso requisito.<br />

Analogamente la deco<strong>di</strong>fica MV soft consisterebbe nello scegliere, tra le<br />

sequenze ammissibili, quella cui è associata una sequenza che, pensata<br />

come un punto <strong>di</strong> , ha la minima <strong>di</strong>stanza Euclidea dalla sequenza<br />

2 per sequenza ammissibile inten<strong>di</strong>amo una sequenza associabile ad un percorso sul trellis che abbia<br />

inizio in e termini in .


L’Algoritmo <strong>di</strong> Viterbi 109<br />

corrispondente al s egnale ricevuto, rappresentata nello stesso spazio. Va da se che, in<br />

questo caso, la probabilità che due sequenze ammissibili abbiano la stessa <strong>di</strong>stanza da<br />

quella ricevuta è nulla.<br />

Già questa sola considerazione ci fa intuire che l’impiego della deco<strong>di</strong>fica soft<br />

migliora le prestazioni del sistema in termini <strong>di</strong> probabilità d’errore.<br />

Al crescere della lunghezza dei messaggi da deco<strong>di</strong>ficare, appare chiaro che<br />

l’approccio sopra descritto seppur formalmente corretto <strong>di</strong>venta improponibile in pratica,<br />

sia per la crescita esponenziale del numero <strong>di</strong> sequenze ammissibili, sia per il<br />

ritardo che un deco<strong>di</strong>ficatore siffatto comporterebbe. Sarebbe infatti in<strong>di</strong>spensabile<br />

attendere la ricezione dell’intera sequenza prima che il processo <strong>di</strong> deco<strong>di</strong>fica abbia<br />

inizio.<br />

14.2 - L’algoritmo <strong>di</strong> Viterbi<br />

In questo paragrafo descriveremo un algoritmo <strong>di</strong> deco<strong>di</strong>fica che, con mo<strong>di</strong>fiche<br />

non concettuali, può essere impiegato sia per deco<strong>di</strong>ficatori hard che soft dei co<strong>di</strong>ci<br />

convoluzionali.<br />

In quel che segue chiameremo:<br />

metrica <strong>di</strong> ramo la <strong>di</strong>stanza <strong>di</strong> Hamming, o il quadrato della <strong>di</strong>stanza Euclidea, tra gli<br />

bit<br />

co<strong>di</strong>ficati che etichettano il ramo e la porzione <strong>di</strong> sequenza<br />

ricevuta corrispondente precisamente<br />

∑ ̆( )<br />

( )<br />

(14.2.1)<br />

∑ ( ) ( )<br />

{<br />

(ad apice abbiamo in<strong>di</strong>cato la sezione <strong>di</strong> trellis cui il ramo appartiene ed i pe<strong>di</strong>ci,<br />

in<strong>di</strong>viduano lo stato <strong>di</strong> partenza e quello <strong>di</strong> arrivo del ramo in esame);<br />

percorso una sequenza ininterrotta <strong>di</strong> rami che origina in in<br />

lunghezza del percorso il numero <strong>di</strong> rami compongono il percorso<br />

metrica <strong>di</strong> percorso la somma delle metriche <strong>di</strong> ramo che compongono il percorso;<br />

cammino una sequenza ininterrotta <strong>di</strong> rami del tipo<br />

lunghezza del cammino il numero <strong>di</strong> rami compongono il cammino<br />

metrica <strong>di</strong> cammino la somma delle metriche dei rami che lo compongono;<br />

Abbiamo detto che il deco<strong>di</strong>ficatore conosce lo stato iniziale in cui si trova il<br />

co<strong>di</strong>ficatore all’arrivo <strong>di</strong> una sequenza informativa, supponiamo sia lo stato zero. Al<br />

primo passo, osservando la sequenza ricevuta, il deco<strong>di</strong>ficatore può etichettare ciascuno


110 Capitolo - 14 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

dei rami del trellis che emergono dallo stato iniziale, con la metrica ad essi<br />

associata, calcolata me<strong>di</strong>ante la prima o la seconda delle (14.2.1), a seconda che la<br />

deco<strong>di</strong>fica sia <strong>di</strong> tipo hard o soft rispettivamente. Il deco<strong>di</strong>ficatore provvederà anche ad<br />

etichettare gli stati raggiunti con le metriche dei percorsi che vi pervengono. Le<br />

metriche <strong>di</strong> percorso in questo caso coincidono banalmente con quelle del singolo ramo<br />

che compone i percorsi cui si riferiscono. Agli stati raggiunti verrà associata anche la<br />

sequenza informativa associata al relativo percorso.<br />

Al secondo passo da ciascuno dei stati raggiunti emergeranno rami, a<br />

ciascuno <strong>di</strong> essi si può associare una metrica <strong>di</strong> ramo come al passo precedente. Ad<br />

ogni stato in cui termina un ramo assoceremo:<br />

- una metrica <strong>di</strong> percorso ottenuta sommando alla metrica del ramo che termina<br />

nello stato in parola quella <strong>di</strong> percorso associata allo stato da cui il ramo emergeva;<br />

- una sequenza informativa <strong>di</strong> percorso ottenuta giustapponendo a quella associata<br />

allo stato <strong>di</strong> partenza quella del ramo.<br />

Potremo continuare ad addentrarci nel trellis seguendo questa logica fino al passo<br />

, in quanto fino a tale passo ogni stato viene raggiunto al più da un percorso.<br />

Al - esimo passo potremo ancora associare ad ogni ramo la sua metrica, ma per<br />

associare le metriche <strong>di</strong> percorso agli stati sorgerà un problema. Esistono infatti<br />

percorsi <strong>di</strong>stinti che terminano in ciascuno stato.<br />

Se consideriamo un cammino nel trellis <strong>di</strong> lunghezza che abbia origine in<br />

uno stato in cui confluiscano percorsi <strong>di</strong> lunghezza , giustapponendo il cammino a<br />

ciascun percorso <strong>di</strong> lunghezza otterremmo percorsi ammissibili <strong>di</strong> lunghezza<br />

. La metrica <strong>di</strong> ciasuno <strong>di</strong> essi sarà data dalla somma della metrica <strong>di</strong> uno dei<br />

percorsi <strong>di</strong> lunghezza più la metrica del cammino. Tra i percorsi così ottenuti quello<br />

che avrà la metrica minore sarà evidentemente ottenuto a partire dal percorso <strong>di</strong><br />

lunghezza che aveva la metrica minore. Ne segue che se più percorsi confluiscono in<br />

uno stesso stato ha senso memorizzare solo quello che ha la metrica minore.<br />

Osserviamo che nel caso in cui la metrica fosse quella <strong>di</strong> Hamming (deco<strong>di</strong>fica<br />

hard) potrebbe darsi che più <strong>di</strong> un percorso abbia minima metrica, il deco<strong>di</strong>ficatore in<br />

questa eventualità dovrebbe scegliere a caso.<br />

Dal - esimo passo in poi il deco<strong>di</strong>ficatore memorizzerà per ogni stato solo la<br />

metrica e la sequenza informativa associata al “miglior” percorso che vi confluisce.<br />

Fa eccezione solo l’ultimo passo, in questo caso il deco<strong>di</strong>ficatore conoscendo lo<br />

stato <strong>di</strong> arrivo si limiterà a considerare solo i percorsi che vi confluiscono scegliendo<br />

il migliore tra essi (quello che ha accumulato la metrica minore).


L’Algoritmo <strong>di</strong> Viterbi 111<br />

Abbiamo appena descritto l’algoritmo <strong>di</strong> Viterbi.<br />

14.3 - Efficienza dell’algoritmo <strong>di</strong> Viterbi<br />

Appare evidente la riduzione <strong>di</strong> complessità <strong>di</strong> questo algoritmo rispetto alla<br />

ricerca esaustiva teorizzata nel paragrafo precedente. Ad ogni passo <strong>di</strong> deco<strong>di</strong>fica, a<br />

parte il transitorio iniziale, dovremo infatti calcolare metriche <strong>di</strong> ramo per ciascuno<br />

( )<br />

dei stati iniziali della sezione <strong>di</strong> trellis ed utilizzarle per calcolare le metriche <strong>di</strong><br />

( )<br />

percorsi. Di questi ultimi solo verranno memorizzati per utilizzarli al passo<br />

successivo. Ne segue che la complessità dell’algoritmo cresce solo linearmente con la<br />

lunghezza della sequenza informativa, a <strong>di</strong>fferenza della ricerca esaustiva che invece<br />

crescerebbe esponenzialmente. Va comunque sottolineato che la complessità<br />

dell’algoritmo <strong>di</strong> Viterbi cresce esponenzialmente con la lunghezza <strong>di</strong> vincolo del<br />

co<strong>di</strong>ficatore.<br />

Un altro vantaggio nell’utilizzo dell’algoritmo <strong>di</strong> Viterbi consiste nel fatto che<br />

dopo un certo numero <strong>di</strong> passi <strong>di</strong> deco<strong>di</strong>fica che <strong>di</strong>pende dalla lunghezza <strong>di</strong> vincolo<br />

(tipicamente una decina <strong>di</strong> lunghezze <strong>di</strong> vincolo) tutti i percorsi “sopravvissuti” finiscono<br />

con l’avere una parte iniziale in comune. Ciò limita sia la latenza sia il<br />

fabbisogno <strong>di</strong> memoria del deco<strong>di</strong>ficatore.


Capitolo - 15<br />

PRESTAZIONI DEI CODICI CONVOLUZIONALI<br />

15.1 - Funzione <strong>di</strong> trasferimento <strong>di</strong> un co<strong>di</strong>ficatore convoluzionale.<br />

I co<strong>di</strong>ci convoluzionali sono come abbiamo già detto lineari, nel senso che la<br />

somma <strong>di</strong> due sequenze co<strong>di</strong>ficate è ancora una sequenza co<strong>di</strong>ficata, esattamente quella<br />

che si otterrebbe co<strong>di</strong>ficando la somma delle due sequenze informative.<br />

Ciò significa che possiamo valutare le prestazioni del co<strong>di</strong>ce in termini <strong>di</strong><br />

probabilità d’errore ammettendo che venga inviata la sequenza nulla e valutare la<br />

probabilità che per effetto del canale venga rivelata dal deco<strong>di</strong>ficatore una sequenza<br />

ammissibile <strong>di</strong>versa.<br />

Per i nostri scopi è utile definire alcune grandezze associate al co<strong>di</strong>ficatore. La<br />

prima è la cosiddetta <strong>di</strong>stanza colonna ( ) essa è un’applicazione che associa ad<br />

ogni livello <strong>di</strong> profon<strong>di</strong>tà del trellis del co<strong>di</strong>ce la minima <strong>di</strong>stanza <strong>di</strong> Hamming<br />

ottenibile dalla sequenza nulla prendendo in considerazione tutte le possibili sequenze<br />

d’ingresso cui corrispondono percorsi sul trellis che si <strong>di</strong>scostano da quello relativo alla<br />

sequenza nulla a partire dall’istante iniziale. Il limite <strong>di</strong> ( ) per si chiama<br />

<strong>di</strong>stanza libera, , del co<strong>di</strong>ce. Il percorso cui corrisponde la <strong>di</strong>stanza libera non è<br />

necessariamente unico, ma certamente salvo il caso in cui il co<strong>di</strong>ce sia catastrofico è un<br />

percorso che si <strong>di</strong>scosta dalla sequenza nulla per poi ricongiungersi ad essa.<br />

Sia la <strong>di</strong>stanza colonna che la <strong>di</strong>stanza libera possono in teoria essere calcolate<br />

per ispezione <strong>di</strong>retta sul trellis del co<strong>di</strong>ce, ma è anche possibile ottenere la <strong>di</strong>stanza<br />

libera e molte altre informazioni sul co<strong>di</strong>ce procedendo in modo <strong>di</strong>verso.<br />

Ci proponiamo in particolare <strong>di</strong> raccogliere informazioni sul numero <strong>di</strong> percorsi che<br />

hanno origine e termine nello stato zero <strong>di</strong>versi da quello che da esso non si <strong>di</strong>scosta<br />

mai.<br />

Per farlo consideriamo il<br />

<strong>di</strong>agramma degli stati del<br />

co<strong>di</strong>ficatore e sopprimiamo il<br />

self loop associato allo stato<br />

Fig.E 15.1 – Grafo mo<strong>di</strong>ficato del Co<strong>di</strong>ce rate<br />

zero sdoppiamo quin<strong>di</strong> lo stato<br />

zero in due stati uno, sorgente, da cui fuoriescono i rami ed uno, pozzo con solo rami<br />

entranti come in Fig.E 15.1. Nella stessa figura si può notare anche che i rami del grafo<br />

sono stati etichettati con dei trinomi l’indeterminata vi compare sempre con grado ,


114 Capitolo - 15<br />

la sua funzione è in realtà solo quella <strong>di</strong> tener conto del passaggio attraverso il ramo, il<br />

grado <strong>di</strong> esprime il peso della parola informativa associata al ramo esso è quin<strong>di</strong><br />

compreso tra e , il grado <strong>di</strong> esprime il peso della parola <strong>di</strong> co<strong>di</strong>ce associata al<br />

ramo, e non può quin<strong>di</strong> essere maggiore <strong>di</strong> .<br />

Basandoci sulla teoria dei grafi orientati e pesati possiamo ricavare la funzione <strong>di</strong><br />

trasferimento tra il nodo sorgente ed il nodo pozzo.<br />

Per farlo si può procedere in due mo<strong>di</strong>, il più semplice consiste nello scrivere il<br />

sistema lineare <strong>di</strong> equazioni che il grafo rappresenta. Ciò si ottiene associando ad ogni<br />

nodo un’incognita del sistema.<br />

In corrispondenza a ciascun nodo possiamo scrivere un’equazione che, detta<br />

l’incognita associata al nodo -esimo e la trasferenza associata al ramo che emerge<br />

dal nodo -esimo e converge in quello -esimo, sarà del tipo:<br />

( )<br />

∑<br />

(15.1.1)<br />

Osserviamo che l’equazione associata al ramo sorgente si riduce ad un’identità<br />

essendo quest’ultimo privo <strong>di</strong> rami entranti. A titolo d’esempio, denominando rispettivamente<br />

V<br />

in<br />

e V<br />

out<br />

le variabili associate al nodo sorgente ed al nodo pozzo in cui<br />

abbiamo sdoppiato lo stato 0 , scriviamo le equazioni associate al grafo <strong>di</strong> Fig.E 15.1:<br />

(15.1.2)<br />

{<br />

Possiamo quin<strong>di</strong> procedere all’eliminazione <strong>di</strong> tutte le variabili ad eccezione<br />

delle e . Utilizzando ad esempio le prime tre equazioni otteniamo:<br />

(15.1.3)<br />

{<br />

quin<strong>di</strong>, procedendo in modo analogo, dopo qualche passaggio otteniamo:


Prestazioni dei Co<strong>di</strong>ci Convoluzionali 115<br />

la (<br />

( )<br />

) prende il nome <strong>di</strong> funzione <strong>di</strong> trasferimento del co<strong>di</strong>ce.<br />

(15.1.4)<br />

Se con la tecnica della <strong>di</strong>visione lunga espan<strong>di</strong>amo la (15.1.4), pensando il<br />

numeratore e il denominatore come polinomi nell’indeterminata<br />

scrivere:<br />

( ) ( ) (<br />

) ( )<br />

(<br />

)<br />

dal coefficiente della potenza più piccola <strong>di</strong><br />

, possiamo ancora<br />

(15.1.5)<br />

a secondo membro della precedente,<br />

desumiamo che vi è un cammino con peso d’ingresso che si <strong>di</strong>scosta dallo stato e<br />

che torna ad esso dopo<br />

rami accumulando un peso d’uscita pari a . Ne segue che la<br />

<strong>di</strong>stanza libera del co<strong>di</strong>ce in parola sarà esattamente<br />

della potenza <strong>di</strong><br />

. Osservando il coefficiente<br />

imme<strong>di</strong>atamente superiore scopriamo che esistono anche tre percorsi<br />

con peso d’uscita , <strong>di</strong> cui: uno <strong>di</strong> lunghezza<br />

e peso d’ingresso ; il secondo <strong>di</strong><br />

lunghezza e peso d’ingresso ; il terzo <strong>di</strong> lunghezza con peso d’ingresso .<br />

Qualora fossimo interessati solo al peso delle sequenze co<strong>di</strong>ficate che si<br />

<strong>di</strong>scostano dalla sequenza nulla per poi ricongiungersi con essa, potremmo porre nella<br />

(15.1.4) o nella (15.1.5) e , ottenendo<br />

( ) (15.1.6)<br />

In generale la funzione <strong>di</strong> trasferimento <strong>di</strong> un co<strong>di</strong>ce convoluzionale può essere<br />

espressa nella forma:<br />

( ) ∑ ∑ ∑ ( ) (15.1.7)<br />

dove ( , , ) esprime il numero <strong>di</strong> cammini <strong>di</strong> peso , con peso della sequenza<br />

d’ingresso che emergono dallo stato zero per poi farvi ritorno dopo rami.<br />

Dalla precedente, eguagliando ad le variabili che non ci interessano e<br />

sommando rispetto ai rispettivi in<strong>di</strong>ci, otteniamo delle funzioni <strong>di</strong> trasferimento<br />

semplificate, ad esempio ponendo e nella (15.1.7) otteniamo<br />

( ) ( ) ∑ ∑ ∑ ( ) ∑ ( ) (15.1.8)<br />

dove ( ) ∑ ∑ ( ).


116 Capitolo - 15<br />

15.2 - Bound sulla probabilità <strong>di</strong> primo evento d’errore.<br />

Per analizzare le prestazioni <strong>di</strong> un co<strong>di</strong>ce convoluzionale si fa riferimento, oltre<br />

che alla probabilità d’errore sul bit informativo anche alla cosiddetta probabilità <strong>di</strong><br />

primo evento d’errore, o anche probabilità d’errore <strong>di</strong> nodo. Essa esprime la probabilità<br />

che in un certo istante la sequenza stimata si <strong>di</strong>scosti da quella effettivamente trasmessa<br />

per poi ricongiungersi con essa.<br />

Possiamo assumere ai fini del calcolo che la sequenza trasmessa<br />

quella identicamente nulla, in<strong>di</strong>cheremo con<br />

sia<br />

. tale sequenza che corrisponde al<br />

percorso semiinfinito sul trellis che non si <strong>di</strong>scosta mai dallo stato . Possiamo fare tale<br />

ipotesi in virtù della linearità del co<strong>di</strong>ficatore e del fatto che la deco<strong>di</strong>fica è a massima<br />

verosimiglianza.<br />

binaria<br />

Sappiamo che il deco<strong>di</strong>ficatore opera le sue scelte basandosi sulla sequenza<br />

sequenza reale<br />

prodotta dal rivelatore a soglia nel caso <strong>di</strong> deco<strong>di</strong>fica hard, ovvero sulla<br />

dei campioni in uscita al filtro adattato per deco<strong>di</strong>fica soft.<br />

Ammettiamo che fino alla profon<strong>di</strong>tà<br />

attribuito al percorso<br />

( ) ( )<br />

cammino ˜<br />

<strong>di</strong> trellis. Alla profon<strong>di</strong>tà<br />

nel trellis il deco<strong>di</strong>ficatore abbia<br />

la metrica minore e che al passo successivo abbia inizio un<br />

che si <strong>di</strong>scosta dallo stato per ritornarvi dopo sezioni<br />

il deco<strong>di</strong>ficatore lascerà sopravvivere un solo percorso<br />

tra quelli che pervengono allo stato se il percorso , coincidente con fino alla<br />

profon<strong>di</strong>tà nel trellis e con da fino alla sezione , avrà accumulato la<br />

metrica minore <strong>di</strong> , quest’ultimo verrà scartato. è un possibile primo evento<br />

d’errore. Va da sé che vi è un’infinità numerabile <strong>di</strong> possibili primi eventi d’errore, cioè<br />

tutti i cammini che si <strong>di</strong>scostano dallo stato zero per poi ricongiungersi ad esso.<br />

Purtroppo il calcolo esatto della probabilità <strong>di</strong> primo evento d’errore è impraticabile,<br />

possiamo tuttavia maggiorare la probabilità cercata, basandoci sull’union bound.<br />

Detto il cammino coincidente con tra le sezioni e<br />

Osserviamo che la scelta del deco<strong>di</strong>ficatore sarà determinata soltanto dalle metrica<br />

accumulata dai cammini e , in quanto fino al passo i due percorsi coincidevano<br />

quin<strong>di</strong> con<strong>di</strong>videvano la stessa metrica.<br />

Per applicare l’union bound dobbiamo valutare in corrispondenza a ciascun<br />

primo evento d’errore la probabilità che esso si manifesti nell’ipotesi che il<br />

deco<strong>di</strong>ficatore possa scegliere solo tra il percorso corretto e quello relativo all’evento<br />

d’errore in parola.


Prestazioni dei Co<strong>di</strong>ci Convoluzionali 117<br />

Ciò, detto in altri termini, equivale a calcolare la probabilità che, a causa del<br />

rumore introdotto dal canale BSC, la porzione <strong>di</strong> sequenza<br />

rivelatore a soglia, per il deco<strong>di</strong>ficatore hard (la porzione<br />

( ) in uscita al<br />

( ) <strong>di</strong> campioni in<br />

uscita al filtro adattato per quello soft) corrispondente alle sezioni del trellis che<br />

contengono i due cammini e , , appartenga alla regione <strong>di</strong> decisione <strong>di</strong><br />

malgrado sia stata inviata la sequenza identicamente nulla, corrispondente a<br />

Ci si convince facilmente che la somma <strong>di</strong> tutte le probabilità appena descritte<br />

maggiora la probabilità d’errore <strong>di</strong> nodo, in quanto quest’ultima rappresenta la<br />

probabilità dell’evento unione tra tutti quelli associati ai possibili primi eventi d’errore<br />

sopra descritti.<br />

Detto ̅ il complementare della regione <strong>di</strong> decisione del cammino corretto<br />

nell’ipotesi che il decisore sia chiamato a scegliere tra e , possiamo scrivere:<br />

∑ (<br />

( )<br />

̅<br />

( )<br />

) (15.2.1)<br />

Nel caso <strong>di</strong> deco<strong>di</strong>fica hard, è opportuno osservare che ai fini del calcolo della<br />

probabilità che compare ad argomento della sommatoria nella (15.2.1), non<br />

contribuiscono i bit co<strong>di</strong>ficati <strong>di</strong> uguali a quelli <strong>di</strong> (cioè i bit nulli <strong>di</strong> ), in<br />

quanto quale che sia il corrispondente bit della sequenza ricevuta esso apporterebbe un<br />

eguale contributo alle <strong>di</strong>stanze <strong>di</strong><br />

( ) da entrambi i cammini e .<br />

In<strong>di</strong>chiamo adesso con ( ) il peso del cammino . Osserviamo che se ( ) è<br />

<strong>di</strong>spari, posto ⌊ ( ) ⌋ , il deco<strong>di</strong>ficatore sceglierà il cammino ogniqualvolta<br />

risulti:<br />

(<br />

( )<br />

) (15.2.2)<br />

La probabilità che ciò accada, con<strong>di</strong>zionata all’invio della sequenza nulla è data da:<br />

( ̂ ( ) ( ) )<br />

( )<br />

( )<br />

( (<br />

)<br />

)<br />

( ) (15.2.3)<br />

∑ ( ( ) ) ( ) ( )<br />

dove ̂ ( ) in<strong>di</strong>ca il cammino stimato e in<strong>di</strong>ca la probabilità <strong>di</strong> crossover del<br />

BSC con cui può essere schematizzata la parte inclusa nel poligono tratteggiato in rosso<br />

del sistema <strong>di</strong> trasmissione mostrato in Fig.E 14.1.


118 Capitolo - 15<br />

Se il peso <strong>di</strong> è pari esisteranno ( ( )<br />

( ) ) possibili sequenze ricevute<br />

( )<br />

che hanno eguale <strong>di</strong>stanza da e . In tale eventualità il deco<strong>di</strong>ficatore sceglierebbe<br />

in modo puramente casuale tra e . La probabilità che venga scelto il cammino<br />

sarà in questo caso espressa dalla:<br />

(<br />

( ) ( )<br />

)<br />

( (<br />

( )<br />

)<br />

( ) ( )<br />

)<br />

(( (<br />

( )<br />

))<br />

( )<br />

( )<br />

( ( )) ( ) ( )<br />

(15.2.4)<br />

(15.2.5)<br />

( ) ⌋<br />

( )<br />

∑ ( ( ) ) ( ) ( )<br />

⌊<br />

Esempio 15.1<br />

La probabilità <strong>di</strong> crossover del BSC con cui può essere schematizzata la parte inclusa nel<br />

poligono tratteggiato in rosso del sistema <strong>di</strong> trasmissione mostrato in Fig.E 14.1, assumendo che al<br />

bit co<strong>di</strong>ficato competa un’energia<br />

e che il rumore gaussiano abbia una densità<br />

spettrale <strong>di</strong> potenza monolatera , sarà espressa dalla probabilità che il campione in uscita al<br />

filtro adattato per effetto del rumore sia minore <strong>di</strong> zero, malgrado il bit co<strong>di</strong>ficato fosse un uno, o<br />

in<strong>di</strong>fferentemente, dalla probabilità che il succitato campione, per lo stesso motivo, sia maggiore <strong>di</strong><br />

zero malgrado il bit co<strong>di</strong>ficato inviato fosse uno zero. Nel caso in cui il bit trasmesso sia un uno<br />

avremo<br />

( ) ∫<br />

√<br />

( ) √<br />

√ ∫<br />

√<br />

)<br />

(<br />

√ ) ( √ )<br />

Tenuto conto delle ipotesi fatte sull’energia del bit co<strong>di</strong>ficato, se vogliamo fare comparire nella<br />

precedente il rapporto tra l’energia associata al bit informativo e la densità spettrale monolatera <strong>di</strong><br />

rumore possiamo scrivere:<br />

Da cui:<br />

√<br />

(√ )<br />

√<br />

Osserviamo che la (15.2.3) e la (15.2.4), <strong>di</strong>pendono solo dal peso <strong>di</strong> non dal<br />

numero <strong>di</strong> rami da cui esso è costituito. In altri termini, tutti gli eventi d’errore <strong>di</strong><br />

uguale peso avranno la stessa probabilità <strong>di</strong> essere erroneamente scelti dal<br />

deco<strong>di</strong>ficatore in<strong>di</strong>pendentemente numero <strong>di</strong> rami in essi contenuti. Sulla base <strong>di</strong><br />

quest’ultima osservazione possiamo compattare in un'unica espressione la (15.2.3) e la<br />

(15.2.4), in<strong>di</strong>cando semplicemente con un evento d’errore <strong>di</strong> peso , ottenendo:


Prestazioni dei Co<strong>di</strong>ci Convoluzionali 119<br />

( )<br />

( )<br />

( ⌊ ⌋<br />

) ( ) ∑ ( ) ( ) (15.2.6)<br />

Osserviamo adesso che la probabilità <strong>di</strong> primo evento <strong>di</strong> errore <strong>di</strong> peso<br />

con<strong>di</strong>zionata all’invio <strong>di</strong> una qualunque sequenza è uguale a quella con<strong>di</strong>zionata<br />

all’invio della sequenza nulla. Ne segue che, se tutti i percorsi sul trellis sono<br />

equiprobabili, la probabilità <strong>di</strong> errore <strong>di</strong> nodo <strong>di</strong> peso è uguale alla probabilità <strong>di</strong><br />

errore <strong>di</strong> nodo con<strong>di</strong>zionata all’invio della sequenza nulla:<br />

( ) ( ) (15.2.7)<br />

La (15.2.6) ci suggerisce <strong>di</strong> rior<strong>di</strong>nare la (15.2.1) accorpando tutti gli eventi d’errore <strong>di</strong><br />

ugual peso. Il numero <strong>di</strong> tali eventi può essere dedotto dalla ( ) del co<strong>di</strong>ce. Tenendo<br />

conto della (15.1.8) e della (15.2.7) possiamo quin<strong>di</strong> scrivere:<br />

∑ (<br />

( )<br />

̅<br />

( )<br />

) ∑ ( ) ( ) (15.2.8)<br />

Nel caso <strong>di</strong> deco<strong>di</strong>fica soft, basandoci sullo schema <strong>di</strong> Fig.E 14.1 e assumendo che<br />

l’impulso <strong>di</strong> segnalazione abbia energia<br />

E<br />

s<br />

, potremo scrivere:<br />

∑ ( (<br />

( ) ( )<br />

{√ ( ˜<br />

)} ( ) )<br />

∑<br />

(<br />

( ) { √ } ( ) )<br />

√∑<br />

( )<br />

(<br />

( √ ˜<br />

) )<br />

√<br />

( )<br />

∑ (√<br />

)<br />

( ) )<br />

(15.2.9)<br />

(<br />

)<br />

che può essere anche riformulata in termini dell’energia per bit informativo, ponendo<br />

cioè , dove è il rate del co<strong>di</strong>ce e della densità spettrale <strong>di</strong> potenza<br />

monolatera ottenendo:<br />

∑ (√ ( ) ) (15.2.10)<br />

Osserviamo che anche gli argomenti delle ( ) a secondo membro della<br />

precedente non <strong>di</strong>pendono dalla lunghezza <strong>di</strong> , ma solo dal suo peso. La<br />

sommatoria a secondo membro della precedente può quin<strong>di</strong>, anche in questo caso,<br />

essere rior<strong>di</strong>nata accorpando tutti gli eventi <strong>di</strong> errore <strong>di</strong> egual peso, ottenendo:


120 Capitolo - 15<br />

∑ ( ) (√ ) (15.2.11)<br />

La precedente, a fronte <strong>di</strong> un’ulteriore maggiorazione può assumere una forma più<br />

semplice da calcolare. Ricordando infatti che ve<strong>di</strong> , per argomento non negativo, vale la<br />

<strong>di</strong>suguaglianza ( )<br />

(ve<strong>di</strong> (5.9.14), possiamo ancora scrivere:<br />

( ) (√ ) ( ) (15.2.12)<br />

per mezzo della quale otteniamo:<br />

∑ ( ) (√ ) ∑ ( ) ( )| (15.2.13)<br />

Anche nel caso della deco<strong>di</strong>fica Hard possiamo maggiorare ulteriormente la<br />

ricordando la maggiorazione <strong>di</strong> Bhattacharyya (5.9.10) che ci permette <strong>di</strong><br />

scrivere:<br />

( ) ( ) (15.2.14)<br />

Quest’ultima ci permette, partendo dalla (15.2.8) <strong>di</strong> scrivere:<br />

∑ ( ) ( ) ∑ ( ) ( ) ( ) (15.2.15)<br />

La (15.2.13) e la (15.2.15) possono essere calcolate facilmente, <strong>di</strong>sponendo della<br />

( ) del co<strong>di</strong>ce, la (15.2.8) e la (15.2.11) sono dei bound più stretti, ma possono essere<br />

calcolati solo in modo approssimato, entrambe tuttavia sono in genere dominate dal<br />

primo addendo della sommatoria che corrisponde alla <strong>di</strong>stanza libera del co<strong>di</strong>ce. Il<br />

primo addendo <strong>di</strong> ciascuna <strong>di</strong> esse rappresenta in genere già da solo una maggiorazione<br />

della probabilità d’errore <strong>di</strong> nodo.<br />

15.3 - Bound sulla probabilità d’errore sul bit informativo.<br />

Al fine <strong>di</strong> calcolare la probabilità d’errore sul bit d’informazione consideriamo<br />

una porzione <strong>di</strong> sequenza deco<strong>di</strong>ficata ̂ costituita da bit co<strong>di</strong>ficati con<br />

(l’apice ha la sola funzione <strong>di</strong> etichetta). Nella corrispondente porzione <strong>di</strong><br />

sequenza deco<strong>di</strong>ficata ̂ costituita da bit saranno presenti un certo numero <strong>di</strong><br />

bit errati. Osserviamo che la presenza <strong>di</strong> un bit errato è possibile solo se nella ̂ si<br />

è manifestato un errore <strong>di</strong> nodo. Sappiamo anche che ad ogni evento d’errore <strong>di</strong> nodo<br />

corrisponde un ben preciso numero <strong>di</strong> bit d’informazione errati.


Prestazioni dei Co<strong>di</strong>ci Convoluzionali 121<br />

Il numero totale <strong>di</strong> bit informativi errati potrà anche essere espresso accorpando<br />

tutti gli eventi d’errore <strong>di</strong> nodo caratterizzati da uno stesso numero <strong>di</strong> bit informativi<br />

errati. La frequenza relativa d’errore sul bit ( ), associata alla sequenza -esima,<br />

sarà quin<strong>di</strong> espressa dal rapporto tra il numero <strong>di</strong> bit informativi errati e il numero<br />

totale dei bit informativi inviati nella sequenza in esame. Detto quin<strong>di</strong> ( ) il<br />

numero <strong>di</strong> eventi d’errore, manifestatisi nella -esima realizzazione dell’esperimento,<br />

che contengono esattamente bit informativi errati, possiamo scrivere:<br />

( ) ∑<br />

( )<br />

(15.3.1)<br />

La probabilità d’errore sul bit informativo si può ottenere me<strong>di</strong>ando su un<br />

numero idealmente infinito <strong>di</strong> repliche dello stesso esperimento come segue:<br />

( )<br />

∑ ( )<br />

sostituendo la (15.3.2) nella precedente abbiamo:<br />

(15.3.2)<br />

( )<br />

∑ ∑<br />

( )<br />

∑<br />

∑<br />

( )<br />

(15.3.3)<br />

nella quale, prima <strong>di</strong> invertire l’or<strong>di</strong>ne delle sommatorie, si è tenuto conto del fatto che<br />

al crescere della lunghezza della sequenza si possono manifestare eventi d’errore con<br />

un numero arbitrariamente grande <strong>di</strong> bit informativi errati. Si constata facilmente che il<br />

limite ad ultimo membro della (15.3.3) esprime la probabilità che si manifesti un<br />

qualsiasi evento d’errore <strong>di</strong> nodo che contenga esattamente bit informativi errati.<br />

In<strong>di</strong>cando con l’insieme <strong>di</strong> tutti gli eventi d’errore con bit informativi errati<br />

possiamo scrivere:<br />

∑<br />

( )<br />

( )<br />

(15.3.4)<br />

la precedente può essere maggiorata applicando, come nel paragrafo precedente,<br />

l’union bound:<br />

( ) ∑ ( )<br />

(15.3.5)<br />

A partire dalla (15.3.3) possiamo ancora scrivere:<br />

( ) ∑ ( ) ∑ ∑ ( ) (15.3.6)<br />

Ricordando la (15.1.7) che per como<strong>di</strong>tà riscriviamo:


122 Capitolo - 15<br />

( ) ∑ ∑ ∑ ( ) (15.3.7)<br />

e tenuto conto che, in<strong>di</strong>pendentemente dal tipo <strong>di</strong> deco<strong>di</strong>ficatore, la probabilità che si<br />

presenti un dato errore <strong>di</strong> nodo <strong>di</strong>pende solo dal suo peso possiamo ancora scrivere:<br />

( ) ∑ ∑ ( ) ∑ ∑ ∑ ( ) ( )<br />

∑ ∑ ( ) ( )<br />

(15.3.8)<br />

La precedente può essere ulteriormente maggiorata applicando la (15.2.15) nel caso <strong>di</strong><br />

deco<strong>di</strong>fica hard o la (15.2.13) in quella soft ottenendo rispettivamente:<br />

( ) ∑ ∑ ( ) ( ) ∑ ∑ ( ) (15.3.9)<br />

Osserviamo adesso che risulta:<br />

( ) ∑ ∑ ( )( ) (15.3.10)<br />

( ) | ∑ ∑ ∑ ( ) |<br />

(15.3.11)<br />

∑ ∑ ∑ ( ) ∑ ∑ ( )<br />

la quale ci permette <strong>di</strong> riscrivere la (15.3.9) e la (15.3.10) rispettivamente nella forma<br />

più compatta:<br />

( )<br />

( ) | (15.3.12)<br />

e<br />

( )<br />

( ) | (15.3.13)


Capitolo - 16<br />

ANELLI DI POLINOMI<br />

16.1 - Premessa<br />

Abbiamo già fornito la definizione <strong>di</strong> campo e abbiamo anche operato nel campo<br />

costituito da due soli elementi. Si possono costruire anche campi finiti (Campi <strong>di</strong><br />

Galois Galois Field) con un numero d’elementi che sia un primo o una potenza <strong>di</strong><br />

un primo.<br />

GF 7<br />

0 1 2 3 4 5 6 ⊗ 0 1 2 3 4 5 6<br />

0 0 1 2 3 4 5 6 0 0 0 0 0 0 0 0<br />

1 1 2 3 4 5 6 0 1 0 1 2 3 4 5 6<br />

2 2 3 4 5 6 0 1 2 0 2 4 6 1 3 5<br />

3 3 4 5 6 0 1 2 3 0 3 6 2 5 1 4<br />

4 4 5 6 0 1 2 3 4 0 4 1 5 2 6 3<br />

5 5 6 0 1 2 3 4 5 0 5 3 1 6 4 2<br />

6 6 0 1 2 3 4 5 6 0 6 5 4 3 2 1<br />

Tabella 16.1 - Campo <strong>di</strong> Galois <strong>di</strong> 7 elementi<br />

Nel caso in cui il<br />

campo abbia un numero primo<br />

d’elementi, l’ad<strong>di</strong>zione<br />

e la moltiplicazione tra elementi<br />

del campo si possono<br />

effettuare in modo tra<strong>di</strong>zionale<br />

avendo cura <strong>di</strong> ridurre il<br />

risultato modulo .<br />

Nella Tabella 16.1 a titolo d’esempio sono riportati i risultati <strong>di</strong> tutte le possibili<br />

somme e prodotti tra coppie d’elementi <strong>di</strong> 7, il campo <strong>di</strong> Galois con sette elementi.<br />

16.2 - L’anello polinomi a coefficienti in<br />

Consideriamo un campo e un’indeterminata , in<strong>di</strong>chiamo con l’insieme<br />

<strong>di</strong> tutti i possibili polinomi (cioè <strong>di</strong> qualunque grado) nella variabile con coefficienti<br />

appartenenti ad , il generico elemento <strong>di</strong> sarà cioè del tipo:<br />

( ) ( ) (16.2.1)<br />

dove è un intero non negativo qualsiasi ed , essendo l’elemento neutro<br />

rispetto all’ad<strong>di</strong>zione in . Conveniamo inoltre:<br />

a) <strong>di</strong> utilizzare per le leggi <strong>di</strong> composizione del campo i simboli utilizzati per il campo<br />

reale<br />

(<br />

b) <strong>di</strong> in<strong>di</strong>care con ) ( ) il polinomio identicamente nullo, cioè coincidente con<br />

c) <strong>di</strong> omettere l’apice tra parentesi per in<strong>di</strong>care un polinomio <strong>di</strong> grado generico;<br />

(<br />

d) che dato ) ( ), per .<br />

Siano<br />

( ) ( )<br />

( ) ( ) due elementi <strong>di</strong> e un elemento <strong>di</strong> , poniamo:<br />

( )<br />

( ) ( ) ( ) ( )<br />

(16.2.2)


124 Capitolo - 16 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

( ) ( )<br />

( ) ( )<br />

( ) ( )<br />

(16.2.3)<br />

e<br />

( ) ( )<br />

( ) ( )<br />

( ) ( )<br />

∑<br />

(16.2.4)<br />

Nella precedente la sommatoria va ovviamente calcolata secondo le regole <strong>di</strong> , come<br />

pure il prodotto al suo interno.<br />

In sostanza abbiamo appena introdotto in l’ad<strong>di</strong>zione e la moltiplicazione.<br />

Rispetto all’ad<strong>di</strong>zione è facile verificare che è un gruppo commutativo, inoltre la<br />

moltiplicazione tra polinomi in è commutativa e <strong>di</strong>stributiva rispetto all’ad<strong>di</strong>zione.<br />

è pertanto un anello commutativo, con identità, che, ovviamente, coincide con<br />

l’identità del campo , che in<strong>di</strong>cheremo con .<br />

Osserviamo che il prodotto tra polinomi non nulli è un polinomio non nullo. Si<br />

ottiene il polinomio nullo se e solo se uno almeno dei due moltiplican<strong>di</strong> è il polinomio<br />

nullo. Vale cioè anche la legge <strong>di</strong> annullamento del prodotto.<br />

Quanto detto comporta tra l'altro che i polinomi<br />

sono<br />

linearmente in<strong>di</strong>pendenti su .<br />

16.3 - Spazi <strong>di</strong> polinomi<br />

Consideriamo adesso il sottoinsieme<br />

( )<br />

<strong>di</strong><br />

costituito da tutti i<br />

polinomi <strong>di</strong> grado minore <strong>di</strong> . La somma <strong>di</strong> due elementi <strong>di</strong><br />

( )<br />

è ancora un<br />

elemento <strong>di</strong><br />

( )<br />

. Inoltre moltiplicando un qualunque elemento <strong>di</strong><br />

( )<br />

per<br />

un elemento <strong>di</strong><br />

, che coincide con<br />

( )<br />

, otteniamo ancora un elemento <strong>di</strong><br />

( )<br />

.<br />

( )<br />

è quin<strong>di</strong> uno spazio vettoriale su e che la sua <strong>di</strong>mensione è in<br />

quanto generabile tramite i suoi elementi linearmente in<strong>di</strong>pendenti .<br />

Ci si convince facilmente che detto spazio vettoriale è isomorfo allo spazio<br />

costituito da tutte le -uple or<strong>di</strong>nate <strong>di</strong> elementi <strong>di</strong> , basta infatti associare al<br />

(<br />

polinomio ) ( ) ( ) , l’elemento a se ,<br />

ovvero l’elemento<br />

se


Capitolo - 17<br />

CODICI POLINOMIALI<br />

(<br />

Dati due interi e , scegliamo un polinomio ) ( ) che<br />

(<br />

chiameremo polinomio generatore, tramite ) ( ) possiamo in<strong>di</strong>viduare il sottoinsieme<br />

( )<br />

che contiene i polinomi che si ottengono da tutti i possibili<br />

(<br />

prodotti tra ) ( ) e i polinomi ( ) ( ) .<br />

Consideriamo adesso due elementi ( ) e ( ) appartenenti a , quin<strong>di</strong><br />

esprimibili rispettivamente nella forma:<br />

Comunque scelti<br />

( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) (17.1.1)<br />

risulta:<br />

( ) ( ) ( ( ) ( )) ( ) ( ) (17.1.2)<br />

La precedente ci mostra che ( ) è un sottospazio <strong>di</strong><br />

sottogruppo.<br />

( )<br />

, quin<strong>di</strong> ne è anche un<br />

Il corrispondente sottoinsieme <strong>di</strong> è quin<strong>di</strong> un co<strong>di</strong>ce <strong>di</strong> gruppo.<br />

Abbiamo già detto (ve<strong>di</strong> § 8.2 - ) che la <strong>di</strong>stanza <strong>di</strong> Hamming tra parole <strong>di</strong> è<br />

una metrica, la <strong>di</strong>stanza minima <strong>di</strong> è data dalla sua parola <strong>di</strong> peso minimo cioè dalla<br />

parola che ha il minor numero <strong>di</strong> lettere <strong>di</strong>verse da , che non è necessariamente unica.<br />

Ci si convince anche facilmente del fatto che se s’intende impiegare un co<strong>di</strong>ce<br />

polinomiale per la rilevazione d’errore è sufficiente <strong>di</strong>videre il polinomio<br />

corrispondente alla parola ricevuta per il polinomio generatore, e verificare che il resto<br />

<strong>di</strong> tale <strong>di</strong>visione sia il polinomio nullo, per essere certi che la parola ricevuta appartiene<br />

al co<strong>di</strong>ce.<br />

Consideriamo adesso il caso dei co<strong>di</strong>ci polinomiali sul campo essi sono<br />

certamente co<strong>di</strong>ci binari a blocchi, nel senso che ammettono una matrice generatrice<br />

(<br />

che si può facilmente costruire a partire da ) ( ). Come righe <strong>di</strong> tale matrice si<br />

possono scegliere infatti le stringhe dei coefficienti dei polinomi <strong>di</strong> co<strong>di</strong>ce ottenuti<br />

moltiplicando il polinomio generatore per i polinomi<br />

. Viceversa non<br />

è vero in generale che i co<strong>di</strong>ci lineari a blocchi siano polinomiali, al fine <strong>di</strong> verificare se<br />

un co<strong>di</strong>ce lineare a blocchi è polinomiale è sufficiente verificare che tutti i polinomi<br />

associati alle righe della matrice generatrice ammettano un fattore comune <strong>di</strong> grado<br />

.


Capitolo - 18<br />

IDEALI DI UN ANELLO DI POLINOMI<br />

18.1 - Premessa<br />

Torniamo adesso a parlare <strong>di</strong> campi finiti, abbiamo visto come si possono<br />

costruire campi finiti con un numero primo d’elementi; è anche possibile, come<br />

mostreremo più avanti, definire campi che hanno un numero <strong>di</strong> elementi che è una<br />

potenza (ad esponente intero) <strong>di</strong> un numero primo. Il generico elemento <strong>di</strong> un tale<br />

campo si può quin<strong>di</strong> mettere in corrispondenza biunivoca con l’insieme<br />

ha la stessa car<strong>di</strong>nalità.<br />

( )<br />

, che<br />

Sorge quin<strong>di</strong> spontaneo indagare sulla possibilità <strong>di</strong> in<strong>di</strong>viduare in<br />

( )<br />

due<br />

opportune leggi <strong>di</strong> composizione tra suoi elementi che consentano <strong>di</strong> pensare a<br />

( )<br />

come ad un campo <strong>di</strong><br />

elementi. Sarebbe a questo punto possibile definire<br />

degli isomorfismi tra<br />

( )<br />

e<br />

. Parliamo <strong>di</strong> isomorfismi perché potrebbero<br />

esistere più leggi <strong>di</strong> composizione interna che sod<strong>di</strong>sfano le con<strong>di</strong>zioni necessarie per<br />

interpretare<br />

( )<br />

come campo.<br />

Abbiamo già visto che<br />

( )<br />

è un gruppo commutativo rispetto all’ad<strong>di</strong>zione<br />

tra polinomi, purtroppo non possiamo <strong>di</strong>re lo stesso della moltiplicazione tra polinomi<br />

non foss’altro perché<br />

( )<br />

non è chiuso rispetto ad essa.<br />

È quin<strong>di</strong> necessario definire una legge <strong>di</strong> composizione interna per<br />

( )<br />

abbia tutte le proprietà <strong>di</strong> cui deve godere la moltiplicazione tra elementi <strong>di</strong> un campo.<br />

A tal fine è necessaria una piccola <strong>di</strong>gressione <strong>di</strong> carattere generale.<br />

che<br />

18.2 - Ideali <strong>di</strong> un anello con identità.<br />

Consideriamo un anello commutativo con identità<br />

sottogruppo è un ideale se:<br />

<strong>di</strong>ciamo che un suo<br />

⊗ (18.2.1)<br />

Qualora l’anello non fosse commutativo dovremmo <strong>di</strong>stinguere tra ideale sinistro e<br />

ideale destro, che potrebbero anche coincidere, nel qual caso si tratterebbe <strong>di</strong> un ideale<br />

bilaterale.


128 Capitolo - 18 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

Abbiamo detto che un ideale è un sottogruppo <strong>di</strong><br />

, quin<strong>di</strong> definisce un gruppo<br />

quoziente ⁄ , i cui elementi sono l’ideale stesso, che ne costituisce l’elemento neutro,<br />

e tutti i suoi laterali in , che in<strong>di</strong>cheremo con . Con questa notazione risulta:<br />

( )<br />

⊗ ( ⊗ )<br />

(18.2.2)<br />

Osserviamo che le precedenti sono in<strong>di</strong>pendenti dalla scelta dei rappresentanti <strong>di</strong><br />

laterale. Si può anche verificare che ⁄ è come<br />

un anello commutativo con identità.<br />

Detto anello quoziente <strong>di</strong> rispetto a . Dalla seconda delle (18.2.2) si deduce<br />

facilmente che l’identità moltiplicativa è il laterale che si può in<strong>di</strong>care con , cioè<br />

quello che contiene l’identità moltiplicativa <strong>di</strong><br />

Osserviamo che comunque scelto un elemento <strong>di</strong> , l’insieme ⊗<br />

è un ideale, infatti ( ⊗ ) ( ⊗ ) ⊗ ( ) , inoltre in<strong>di</strong>cando con<br />

, l’opposto <strong>di</strong> , ⊗ ( ) e risulta ( ⊗ ) ⊗ ( ) ⊗ ( ( )) ,<br />

pertanto è un sottogruppo <strong>di</strong> . Ogni ideale generato da un elemento <strong>di</strong> è detto<br />

ideale principale.<br />

Vale il seguente teorema:<br />

Teorema 18.1<br />

Tutti gli ideali dell’anello dei polinomi su un campo sono principali.<br />

Dimostrazione:<br />

Osserviamo innanzitutto che<br />

( ) ( ) è un ideale principale per l’anello<br />

commutativo con identità . Consideriamo adesso un ideale <strong>di</strong> <strong>di</strong>verso da<br />

( ) (<br />

( ) , in esso scegliamo un elemento ) ( ) <strong>di</strong> grado minimo. Comunque<br />

(<br />

scelto un polinomio ) ( ) potremo scrivere:<br />

( ) ( )<br />

( ) ( ) ( ) ( )<br />

( ) ( ) (18.2.3)<br />

dove se<br />

(<br />

(cioè ) (<br />

( ) non è un <strong>di</strong>visore <strong>di</strong> ) ( )) risulterà ,<br />

ma in questo caso potremmo scrivere:<br />

( ) ( )<br />

( ) ( )<br />

( ) ( ) ( ) ( ) (18.2.4)<br />

(<br />

che è un assurdo in quanto ) ( ) deve appartenere ad , come mostra la precedente,<br />

pur avendo grado che per ipotesi è il grado minimo dei polinomi non nulli<br />

contenuti in . Deve pertanto essere<br />

(<br />

, o, che è lo stesso, ) ( )<br />

( ) ( )<br />

, pertanto ogni ideale <strong>di</strong> è principale.<br />

***********


Ideali <strong>di</strong> un Anello <strong>di</strong> Polinomi 129<br />

Ci si convince facilmente che comunque scelto<br />

, anche il polinomio<br />

⊗ ( ) ( ) genera lo stesso ideale. Ovviamente sarà sempre possibile in<strong>di</strong>viduare tra i<br />

generatori <strong>di</strong> un ideale un solo polinomio monico cioè con il coefficiente del termine<br />

<strong>di</strong> massimo grado pari ad .<br />

Vale il seguente teorema:<br />

Teorema 18.2<br />

Dati due ideali <strong>di</strong> , siano ( ) ed ( ) , risulta se e solo se<br />

( ) ha ( ) tra i suoi fattori.<br />

***********<br />

Dato un ideale<br />

( ) ( ) ed un polinomio<br />

( ) ( ) , sappiamo che esistono<br />

( ) (<br />

( ) e ) ( ) tali che si può scrivere:<br />

∪<br />

( ) ( )<br />

( ) ( ) ( ) ( )<br />

( ) ( )<br />

(18.2.5)<br />

che ci permette <strong>di</strong> affermare che<br />

( ) ( )ed<br />

( ) ( ) appartengono allo stesso laterale <strong>di</strong><br />

( ) ( )<br />

( ) (<br />

( ) ) (<br />

( ) ) (<br />

( ) ) ( ) (18.2.6)<br />

Ciascun laterale <strong>di</strong> un ideale contiene un unico polinomio <strong>di</strong> grado minimo,<br />

grado che, in virtù della (18.2.5), deve essere minore <strong>di</strong> . Per convincersene è<br />

sufficiente ricordare che due elementi <strong>di</strong> un gruppo appartengono allo stesso laterale se<br />

e solo se la loro <strong>di</strong>fferenza appartiene al sottogruppo, ma la <strong>di</strong>fferenza tra due polinomi<br />

<strong>di</strong>stinti <strong>di</strong> grado minore non potrà appartenere all’ideale che essendo principale<br />

contiene solo polinomi <strong>di</strong> grado maggiore od uguale ad , fatta eccezione per il<br />

polinomio nullo, che peraltro è l’unico polinomio <strong>di</strong> grado minimo contenuto<br />

nell’ideale pensato come laterale <strong>di</strong> se stesso.<br />

(<br />

Esiste quin<strong>di</strong> un isomorfismo “naturale” tra l’anello<br />

) ( ) e l’insieme<br />

( )<br />

dei polinomi a coefficienti in <strong>di</strong> grado minore <strong>di</strong> . si può quin<strong>di</strong> pensare a<br />

( )<br />

come ad un anello commutativo con identità assumendo come risultato della<br />

moltiplicazione tra due polinomi <strong>di</strong><br />

prodotto dei due polinomi e<br />

( ) ( ).<br />

( )<br />

il resto della <strong>di</strong>visione tra l’usuale


Capitolo - 19<br />

CODICI CICLICI<br />

19.1 - Rappresentazione polinomiale <strong>di</strong> un co<strong>di</strong>ce ciclico.<br />

Definizione 19.1<br />

Un co<strong>di</strong>ce lineare a blocchi si <strong>di</strong>ce ciclico se e solo se comunque scelta una<br />

sua parola <strong>di</strong> co<strong>di</strong>ce<br />

(19.1.1)<br />

***********<br />

In quel che segue mostreremo che i co<strong>di</strong>ci ciclici sono polinomiali. Dovremo in<br />

altri termini mostrare che se un co<strong>di</strong>ce è ciclico allora la sua rappresentazione<br />

polinomiale ammette un polinomio generatore.<br />

Ad ogni parola <strong>di</strong> co<strong>di</strong>ce possiamo associare un polinomio appartenente a<br />

( )<br />

come segue:<br />

denoteremo con<br />

Risulta:<br />

( ) (19.1.2)<br />

( ) l’insieme dei polinomi associati alle parole <strong>di</strong> co<strong>di</strong>ce.<br />

( ) (19.1.3)<br />

Notiamo che per trasformare ( ) in ( ) occorrerebbe sottrarre a ( ) il<br />

polinomio<br />

. Risulta:<br />

( ) ( ) ( ) (19.1.4)<br />

ma è il quoto della <strong>di</strong>visione tra ( ) e , dalla (19.1.4) si deduce quin<strong>di</strong><br />

che ( ) altro non è se non il resto della <strong>di</strong>visione appena citata.<br />

In altri termini, l’operazione corrispondente alla rotazione ciclica <strong>di</strong> una parola in<br />

equivale, nel linguaggio dei polinomi, a considerare il resto della <strong>di</strong>visione per<br />

del prodotto tra il polinomio corrispondente alla parola ed . In simboli:<br />

( ) ( ) ( ) (19.1.5)<br />

19.2 - L’anello<br />

Notiamo che l’insieme dei polinomi <strong>di</strong> co<strong>di</strong>ce<br />

( ) essendo costituito da<br />

polinomi appartenenti a<br />

( )<br />

costituisce anche un sottoinsieme dei coset leader<br />

(intesi come i polinomi <strong>di</strong> grado minimo) dei laterali <strong>di</strong> .<br />

Osserviamo inoltre che:


132 Capitolo - 19 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

a) avendo supposto che il co<strong>di</strong>ce sia lineare, esso deve avere la struttura <strong>di</strong><br />

spazio vettoriale sul campo , quin<strong>di</strong> la sua rappresentazione in forma polino–miale<br />

( ) deve essere anche un sottospazio <strong>di</strong> ;<br />

b) l’anello ha la struttura <strong>di</strong> spazio vettoriale sul campo ;<br />

c) esiste un isomorfismo naturale tra<br />

ad ogni polinomio <strong>di</strong><br />

( )<br />

( )<br />

ed<br />

, quello che associa<br />

l’unico laterale che lo contiene in .<br />

Dalle considerazioni appena fatte <strong>di</strong>scende facilmente che l’immagine secondo<br />

l’isomorfismo sopra citato <strong>di</strong> ( ) in è a sua volta un sottospazio<br />

vettoriale, quin<strong>di</strong> anche un sottogruppo, ( ) <strong>di</strong> , i cui elementi<br />

sono i laterali <strong>di</strong> che contengono i polinomi <strong>di</strong> co<strong>di</strong>ce.<br />

Osserviamo che la ciclicità e la linearità del co<strong>di</strong>ce implicano:<br />

( ) ( ) ( ) ( ) ( ) (19.2.1)<br />

dalla quale sempre in virtù della linearità <strong>di</strong><br />

( ) <strong>di</strong>scende anche facilmente:<br />

( ) ( ) ( ) ( ) ( ) ( ) ( ) (19.2.2)<br />

Quest’ultima, sulla base dell’osservazione c), può essere rivisitata in termini <strong>di</strong> laterali<br />

<strong>di</strong> , infatti ( ) possiamo scrivere:<br />

( ) ( ) { ( ) ( ) ( ) }<br />

( ) ( ) ( )<br />

( ) ⊗ ( ) ( )<br />

( ) ⁄<br />

(19.2.3)<br />

La precedente ci permette <strong>di</strong> affermare che se il co<strong>di</strong>ce è ciclico allora ( ) è un<br />

ideale dell’anello .<br />

Viceversa consideriamo un ideale <strong>di</strong> comunque preso un suo<br />

elemento, sia ( ) , il fatto che sia un ideale implica che:<br />

( ) ⊗ ( ) ( ) ( )<br />

( ) ( ) ( )<br />

( ) ( ) ⁄<br />

(19.2.4)<br />

Ne <strong>di</strong>scende che la controimmagine dell’isomorfismo <strong>di</strong> cui all’osservazione c) è un<br />

co<strong>di</strong>ce ciclico.<br />

Quanto finora esposto costituisce in pratica la <strong>di</strong>mostrazione del seguente<br />

teorema:


Co<strong>di</strong>ci Ciclici 133<br />

Teorema 19.1<br />

Con<strong>di</strong>zione necessaria e sufficiente affinché un co<strong>di</strong>ce sia ciclico è che<br />

ideale <strong>di</strong> .<br />

***********<br />

( ) sia un<br />

19.3 - Polinomio generatore <strong>di</strong> un co<strong>di</strong>ce ciclico<br />

Ci convinciamo facilmente del fatto che il sottoinsieme <strong>di</strong> costituito<br />

dall’unione <strong>di</strong> tutti i laterali <strong>di</strong> che appartengono ( ) , in virtù della<br />

(19.2.2), è un ideale, ma tutti gli ideali <strong>di</strong> sono principali (ve<strong>di</strong> Teorema 18.1),<br />

esiste cioè un polinomio <strong>di</strong> grado minimo che li genera, tale polinomio apparterrà<br />

evidentemente a ( )<br />

( )<br />

in particolare potremmo scegliere in quest'ultimo<br />

l’unico polinomio monico <strong>di</strong> grado minimo, sia ( ). Rileviamo che il grado <strong>di</strong> ( )<br />

dovrà necessariamente essere per un co<strong>di</strong>ce .<br />

Abbiamo visto che ( ) , quin<strong>di</strong>, in virtù del Teorema 18.2, ( )<br />

deve essere un <strong>di</strong>visore <strong>di</strong> , ne <strong>di</strong>scende che un co<strong>di</strong>ce ciclico esiste se e<br />

solo se pensato come polinomio a coefficienti nel campo si può scomporre<br />

nel prodotto tra due polinomi uno dei quali <strong>di</strong> grado .<br />

19.4 - Polinomio <strong>di</strong> parità <strong>di</strong> un co<strong>di</strong>ce ciclico<br />

Nel paragrafo precedente abbiamo visto che se<br />

( ) ( ) genera un co<strong>di</strong>ce<br />

ciclico ( ), allora deve esistere<br />

( ) ( )<br />

( ) ( ) ( ) ( ) (19.4.1)<br />

D’altro canto nel precedente capitolo abbiamo visto che ogni parola <strong>di</strong> un co<strong>di</strong>ce<br />

polinomiale può essere scritta nella forma:<br />

( ) ( ) ( ) ( ) (19.4.2)<br />

dove a x è un qualsiasi polinomio appartenente a<br />

( )<br />

. Risulta:<br />

( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )( )<br />

(19.4.3)<br />

( )( ) ( )<br />

Poiché la precedente è vera per tutti e soli i polinomi <strong>di</strong> co<strong>di</strong>ce, ne <strong>di</strong>scende che<br />

( ) ( ), o un qualunque altro polinomio <strong>di</strong> che lo contenga come fattore senza<br />

contenere , può essere utilizzato per effettuare il controllo <strong>di</strong> parità nel caso in<br />

cui si intenda utilizzare il co<strong>di</strong>ce esclusivamente per la rivelazione dell’errore.<br />

(<br />

Il polinomio ( )( ) ) ( ) ( ) ha tutti i coefficienti <strong>di</strong> grado<br />

maggiore <strong>di</strong> e minore <strong>di</strong> nulli. Questa osservazione ci permette <strong>di</strong> scrivere le


134 Capitolo - 19 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

seguenti<br />

( ) ( ) ( ):<br />

equazioni che devono essere sod<strong>di</strong>sfatte dai coefficienti del polinomio<br />

∑ (19.4.4)<br />

ciascuna delle equazioni appena scritte coinvolge simboli consecutivi della<br />

parola <strong>di</strong> co<strong>di</strong>ce e può quin<strong>di</strong> essere utilizzata come controllo <strong>di</strong> parità qualora si<br />

intenda utilizzare il co<strong>di</strong>ce per la correzione <strong>di</strong> errore. Le (19.4.4) potrebbero anche<br />

essere utilizzate per implementare un co<strong>di</strong>ficatore sistematico utilizzando un filtro FIR.<br />

Infatti nella prima delle (19.4.4) possiamo scegliere arbitrariamente ,<br />

(in sostanza la parola informativa) e calcolare , quin<strong>di</strong> utilizzare nella seconda<br />

per calcolare e così via fino ad ottenere una parola <strong>di</strong> co<strong>di</strong>ce. In<br />

sostanza si risolvono ricorsivamente equazioni del tipo<br />

Nell’incognita<br />

∑ (19.4.5)<br />

tali equazioni ammettono certamente soluzione dal momento che<br />

deve essere <strong>di</strong>verso da 0. Se così non fosse, tra le ra<strong>di</strong>ci <strong>di</strong> ( ) vi sarebbe lo zero del<br />

campo che non è una ra<strong>di</strong>ce <strong>di</strong><br />

fattori.<br />

, quin<strong>di</strong> non può esserlo per nessuno dei suoi<br />

Esempio 19.1<br />

Vogliamo implementare un co<strong>di</strong>ficatore basato sulle (19.4.5) che emetta gli simboli della<br />

parola <strong>di</strong> co<strong>di</strong>ce in sequenza. Osserviamo che il co<strong>di</strong>ficatore è sistematico, i simboli informativi<br />

emessi dalla sorgente potranno quin<strong>di</strong> essere resi <strong>di</strong>sponibili <strong>di</strong>rettamente all’uscita del co<strong>di</strong>ficatore.<br />

Nello stesso tempo, al fine <strong>di</strong> calcolare i simboli <strong>di</strong> parità essi dovranno essere temporaneamente<br />

memorizzati in uno stack <strong>di</strong> memoria che nel caso <strong>di</strong> co<strong>di</strong>ci binari si identifica <strong>di</strong> fatto con uno shift<br />

register. Osserviamo lo schema <strong>di</strong> Fig.E 19.1, nel quale sono in<strong>di</strong>cati in rosso i simboli presenti nelle<br />

celle <strong>di</strong> memoria, schematizzate come elementi <strong>di</strong> ritardo. Ci ren<strong>di</strong>amo conto che, non appena la<br />

sorgente emette il -esimo simbolo informativo ( ), all’uscita del moltiplicatore posto in serie al<br />

sommatore sarà presente . Il passo successivo consisterà nel chiudere l’anello <strong>di</strong> reazione,<br />

spostando sulla posizione b il commutatore e mantenerlo in questa posizione per perio<strong>di</strong> <strong>di</strong><br />

clock per calcolare i restanti<br />

simboli <strong>di</strong> parità.<br />

Osserviamo che ( ) può<br />

essere scelto in modo che<br />

risulti , nel qual caso<br />

sarebbe possibile eliminare il<br />

moltiplicatore in uscita al<br />

sommatore; d’altra parte tale<br />

scelta comporta in genere la<br />

rinuncia ad un polinomio<br />

Fig.E 19.1 Co<strong>di</strong>ficatore sistematico basato sul polinomio <strong>di</strong> parità generatore monico. Nel caso<br />

in cui il co<strong>di</strong>ce sia binario, la<br />

sua struttura si semplifica ulteriormente in quanto si potrebbero abolire tutti i moltiplicatori<br />

limitandosi a connettere al sommatore solo le celle <strong>di</strong> memoria cui corrisponde un coefficiente non<br />

nullo del polinomio <strong>di</strong> parità. Notiamo anche che in questo caso le celle <strong>di</strong> memoria si ridurrebbero a


Co<strong>di</strong>ci Ciclici 135<br />

dei Flip Flop. Per concludere osserviamo che il “cuore” <strong>di</strong> questo co<strong>di</strong>ficatore è sostanzialmente un<br />

filtro FIR.<br />

19.5 - Matrice generatrice <strong>di</strong> un co<strong>di</strong>ce ciclico<br />

Consideriamo un co<strong>di</strong>ce ciclico sul campo<br />

sia l’insieme<br />

<strong>di</strong> grado<br />

, sia:<br />

la cui rappresentazione polinomiale<br />

( ), abbiamo visto che esso deve ammettere un polinomio generatore<br />

( ) ( ) (19.5.1)<br />

Sappiamo che, in virtù della ciclicità, anche i polinomi<br />

( ) ( ) ( ) devono<br />

appartenere a ( ). Osserviamo che per i polinomi ottenuti al variare <strong>di</strong> tra e<br />

risulta<br />

( ) ( ) ( )<br />

( ) ( ) (19.5.2)<br />

Inoltre essi sono linearmente in<strong>di</strong>pendenti, giacché tutti <strong>di</strong> grado <strong>di</strong>verso. Essi sono<br />

anche in numero pari alla <strong>di</strong>mensione <strong>di</strong><br />

( )<br />

, ne costituiscono quin<strong>di</strong> una base.<br />

( ) pensato come sottospazio <strong>di</strong><br />

Quanto appena detto ci consente <strong>di</strong> scrivere una matrice generatrice del co<strong>di</strong>ce<br />

appena in<strong>di</strong>viduati<br />

che avrà evidentemente come righe le parole corrispondenti ai polinomi<br />

[ ] (19.5.3)<br />

19.6 - Co<strong>di</strong>ci ciclici Sistematici<br />

La matrice generatrice in<strong>di</strong>viduata nel paragrafo precedente non è in forma<br />

sistematica, vogliamo mostrare che è possibile in<strong>di</strong>viduarne una che lo è.<br />

A tal fine dato un co<strong>di</strong>ce ciclico<br />

(<br />

( ) generato da ) ( ) consideriamo polinomi<br />

del tipo:<br />

(19.6.1)<br />

Essi non sono certamente polinomi <strong>di</strong> co<strong>di</strong>ce in quanto tra le loro ra<strong>di</strong>ci non compaiono<br />

(<br />

certamente quelle <strong>di</strong> ) ( ) , tuttavia sottraendo da ciascuno <strong>di</strong> essi il resto della<br />

<strong>di</strong>visione per ( ) otteniamo un polinomio <strong>di</strong> co<strong>di</strong>ce possiamo cioè affermare che:<br />

( ( )) ( ) (19.6.2)<br />

Ci ren<strong>di</strong>amo conto del fatto che se scriviamo i polinomi ottenuti tramite la<br />

(19.6.2) in corrispondenza a otteniamo polinomi <strong>di</strong> co<strong>di</strong>ce che<br />

hanno il solo coefficiente -esimo pari a uno e tutti i restanti nulli nel range <strong>di</strong> valori <strong>di</strong><br />

in parola, ciò in quanto il resto <strong>di</strong> una <strong>di</strong>visione per ( ) è un polinomio che al più


136 Capitolo - 19 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

può avere grado<br />

. Si costata anche imme<strong>di</strong>atamente che i polinomi appena<br />

ottenuti sono linearmente in<strong>di</strong>pendenti, si possono quin<strong>di</strong> utilizzare le parole <strong>di</strong> co<strong>di</strong>ce<br />

ad essi associate per costruire una matrice generatrice del co<strong>di</strong>ce che sarà del tipo:<br />

(19.6.3)<br />

in grado quin<strong>di</strong> <strong>di</strong> generare un co<strong>di</strong>ce sistematico con la parte informativa “in coda”<br />

anziché “in testa”.<br />

Da quanto detto <strong>di</strong>scende che il polinomio <strong>di</strong> co<strong>di</strong>ce associato al polinomio<br />

informativo ( ) ( ) è dato da:<br />

( ) ( ) ( )<br />

( ( ) ( )) (19.6.4)<br />

Pren<strong>di</strong>amo adesso in considerazione la matrice<br />

(19.6.5)<br />

che si ottiene effettuando rotazioni cicliche su ciascuna riga della . Essa ha per<br />

righe parole <strong>di</strong> linearmente in<strong>di</strong>pendenti ed è quin<strong>di</strong> anch’essa una matrice<br />

generatrice.<br />

Esempio 19.2<br />

Per costruire un co<strong>di</strong>ficatore basato sulla (19.6.4) dobbiamo <strong>di</strong>sporre <strong>di</strong> un sistema in grado <strong>di</strong><br />

calcolare il resto della <strong>di</strong>visione tra due polinomi.<br />

Supponiamo <strong>di</strong> <strong>di</strong>sporre all’istante - esimo del polinomio ( ), e che tale polinomio all’istante<br />

- esimo venga aggiornato, per effetto dell’emissione da parte <strong>di</strong> una sorgente <strong>di</strong> un simbolo<br />

secondo la regola:<br />

( ) ( )<br />

In<strong>di</strong>chiamo rispettivamente con ( ) e ( ) il resto e il quoto della <strong>di</strong>visione tra ( )e<br />

( ) che supponiamo monico. Vogliamo calcolare ( ). Risulta:<br />

( ) ( ) ( ( )) ( ) ( ) ( ) ( ( ))<br />

( ) ( ( ))<br />

Ma ( ) ha al più grado possiamo quin<strong>di</strong> ulteriormente scrivere:<br />

( ) ( ) ( ) ( )<br />

( ) ( ( ) ) (<br />

( ) )<br />

Possiamo quin<strong>di</strong> facilmente tracciare lo schema <strong>di</strong> principio mostrato in Fig.E 19.2.<br />

Non appena tutti i<br />

coefficienti del <strong>di</strong>videndo,<br />

a partire da<br />

quello <strong>di</strong> grado maggiore,<br />

saranno immessi<br />

nel sistema, sarà<br />

Fig.E 19.2 Schema <strong>di</strong> principio <strong>di</strong> un sistema che calcola il resto della <strong>di</strong>visione tra due<br />

polinomi<br />

successivi<br />

passi si presenteranno in uscita i coefficienti del resto.<br />

19.7 - Duale <strong>di</strong> un co<strong>di</strong>ce ciclico<br />

Abbiamo mostrato che un co<strong>di</strong>ce ciclico<br />

( ) ( ) del polinomio . Esiste quin<strong>di</strong> un<br />

( ) ( ) tale che:<br />

sufficiente aprire l’anello<br />

<strong>di</strong> reazione tramite il<br />

deviatore in uscita e nei<br />

( ), ha come generatore un fattore


Co<strong>di</strong>ci Ciclici 137<br />

( ) ( ) ( ) ( ) (19.7.1)<br />

(<br />

Abbiamo già visto come ) ( ) possa essere utilizzato come polinomio <strong>di</strong> parità, ma<br />

esso, in quanto fattore <strong>di</strong> è in grado <strong>di</strong> generare a sua volta un co<strong>di</strong>ce ciclico<br />

( ) anch’esso contenuto in<br />

( )<br />

che viene chiamato (seppur<br />

impropriamente) duale <strong>di</strong> ( ), in quanto le parole <strong>di</strong> non sono in genere<br />

ortogonali a quelle <strong>di</strong> .<br />

Consideriamo due polinomi ( ) ( ) e ( ) ( ). Risulta:<br />

( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )( ) (19.7.2)<br />

Osserviamo che il polinomio ( ) ( ) ha grado al più ( ) ( )<br />

, ne consegue che il coefficiente del termine <strong>di</strong> grado <strong>di</strong> ( ) ( ) deve essere<br />

nullo. Possiamo quin<strong>di</strong> scrivere:<br />

∑ (19.7.3)<br />

la precedente vale per ogni scelta <strong>di</strong> ( ) ( ) e ( ) ( ). Essa ci<br />

suggerisce come costruire il co<strong>di</strong>ce duale propriamente detto che si ottiene ribaltando le<br />

parole <strong>di</strong> .<br />

Anche il co<strong>di</strong>ce duale propriamente detto è polinomiale il suo polinomio<br />

generatore risulta essere:<br />

( ) (19.7.4)<br />

una sua matrice generatrice potrebbe essere:<br />

[ ] (19.7.5)


Capitolo - 20<br />

CAMPI FINITI<br />

20.1 - Polinomi irriducibili e campi ad essi associati<br />

Definizione 20.1<br />

(<br />

Diciamo che un polinomio ) ( ) <strong>di</strong> grado non inferiore a 1 è irriducibile se:<br />

( ) (<br />

( ) ) (<br />

( ) ) ( ) (20.1.1)<br />

Ovviamente tutti i polinomi <strong>di</strong> primo grado sono irriducibili. In 2 . Anche il<br />

polinomio è irriducibile esso infatti non è <strong>di</strong>visibile né per né per ,<br />

che sono tutti e soli i polinomi <strong>di</strong> primo grado appartenenti a 2 . Non sono<br />

necessarie altre verifiche in quanto le eventuali fattorizzazioni devono comunque<br />

contenere un polinomio <strong>di</strong> primo grado. Il polinomio è irriducibile in ,<br />

ma pensato come elemento <strong>di</strong> non lo è<br />

Vale il seguente teorema:<br />

Teorema 20.1<br />

(<br />

Se ) ( ) è un polinomio irriducibile <strong>di</strong><br />

(<br />

dall’ideale<br />

) ( ) è un campo.<br />

allora il gruppo quoziente in<strong>di</strong>viduato<br />

Dimostrazione:<br />

Sappiamo già che<br />

( ) ( ) è un anello commutativo con identità, quin<strong>di</strong><br />

dobbiamo solo verificare che per ogni suo elemento, fatta eccezione per<br />

( ) ( ) ,<br />

esiste un inverso.<br />

Osserviamo che<br />

( ) ( ) non coincide con . Se così non fosse, esisterebbe<br />

( )<br />

( ) ( ) ( ) , ma la precedente può essere sod<strong>di</strong>sfatta solo se<br />

(<br />

, contro l’ipotesi che ) ( ) è irriducibile, quin<strong>di</strong> il suo grado non può essere<br />

inferiore ad . Possiamo pertanto affermare che<br />

( ) ( ) contiene almeno un<br />

polinomio ( ) ( ) ( ) .<br />

Consideriamo adesso l’insieme<br />

{ ( ) ( ) ( ) ( ) ( ) | ( ) ( ) (20.1.2)<br />

si constata facilmente che è un ideale <strong>di</strong> , ma (ve<strong>di</strong> Teorema 18.1) tutti gli ideali<br />

<strong>di</strong> sono principali, deve pertanto esistere in un polinomio ( ) ( ) tale che<br />

risulti<br />

( ) ( ) .


140 Capitolo - 20 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

(<br />

Dalla (20.1.2) deduciamo che ) ( ) , quin<strong>di</strong> deve esistere un polinomio per<br />

(<br />

il quale risulti ) (<br />

( ) ) ( ) ( ) (<br />

( ) , ma ) ( ) è irriducibile, quin<strong>di</strong>,<br />

(<br />

necessariamente, o , o . nel primo caso ) ( ) , ma ciò è assurdo<br />

(<br />

perché contiene anche ) ( ) ( ) ( ) , deve quin<strong>di</strong> essere . Ciò implica<br />

da cui <strong>di</strong>scende che esistono ( ) ( ) che sod<strong>di</strong>sfano l’uguaglianza<br />

La precedente implica:<br />

( ) ( ) ( ) ( ) ( ) ( ) (20.1.3)<br />

( ) ( ) ( ( ) ( ) ( ) ( )<br />

( ) ( ) ( ) ( ))<br />

( ) ( )<br />

( ) ( ) ( ) ( )<br />

( ) ( )<br />

( ) ( )<br />

( ) ( ) ⊗ ( ) ( )<br />

( ) ( )<br />

(20.1.4)<br />

osservando primo ed ultimo membro della precedente si deduce che il laterale<br />

( ) ( )<br />

( ) ( ) è l’inverso <strong>di</strong><br />

( ) ( )<br />

( ) ( ) .<br />

***********<br />

20.2 - Or<strong>di</strong>ne degli elementi <strong>di</strong> un gruppo<br />

Consideriamo un gruppo finito , abbiamo già visto che ogni suo sottogruppo<br />

in<strong>di</strong>vidua una partizione del gruppo in laterali, che hanno tutti la stessa car<strong>di</strong>nalità del<br />

sottogruppo. Ciò comporta il fatto che il numero <strong>di</strong> elementi <strong>di</strong> un sottogruppo, il suo<br />

or<strong>di</strong>ne ( ), è un sottomultiplo dell’or<strong>di</strong>ne del gruppo in cui esso è contenuto.<br />

Sia un elemento <strong>di</strong> un gruppo finito . Consideriamo l’insieme:<br />

(20.2.1)<br />

è un sottoinsieme <strong>di</strong> , in quanto è chiuso rispetto alla legge , quin<strong>di</strong> deve<br />

avere un numero finito <strong>di</strong> elementi, da cui facilmente <strong>di</strong>scende che deve esistere un<br />

intero ( ), tale che risulti , o, che è lo stesso, tale che<br />

(20.2.2)<br />

Abbiamo appena mostrato che contiene . Considerando adesso il più piccolo<br />

valore <strong>di</strong> che sod<strong>di</strong>sfa la (20.2.2), risulta:<br />

(20.2.3)<br />

è quin<strong>di</strong> un sottogruppo <strong>di</strong> . L’or<strong>di</strong>ne del sottogruppo generato da un elemento<br />

<strong>di</strong> un gruppo è detto or<strong>di</strong>ne <strong>di</strong> , ( ).<br />

20.3 - Or<strong>di</strong>ne degli elementi <strong>di</strong> un campo finito<br />

Consideriamo un campo finito . Sia l’or<strong>di</strong>ne <strong>di</strong> rispetto alla legge ,<br />

possiamo affermare che è un numero primo. Infatti, se così non fosse, esisterebbero<br />

due interi, ed , entrambi per i quali varrebbe l’uguaglianza:<br />

( ) ⊗ (20.3.1)


Campi Finiti 141<br />

ma è un campo vale quin<strong>di</strong> la legge <strong>di</strong> annullamento del prodotto, quin<strong>di</strong> o o<br />

. ( ) sarebbe quin<strong>di</strong> il minimo tra ed e non . Ne segue che ( ) deve<br />

essere un primo.<br />

Osserviamo che per ogni elemento <strong>di</strong> si può scrivere ⊗ , da cui:<br />

2<br />

( ⊗ ) ( ⊗ ) ⊗( ) ⊗ 2 (20.3.2)<br />

più in generale ⊗ , ma ⊗ solo se , ovvero se ,<br />

possiamo quin<strong>di</strong> concludere che tutti gli elementi <strong>di</strong>versi da <strong>di</strong> un campo finito hanno<br />

lo stesso or<strong>di</strong>ne rispetto alla somma, e che tale or<strong>di</strong>ne è un primo risulta cioè:<br />

(20.3.3)<br />

20.4 - Or<strong>di</strong>ne <strong>di</strong> un campo finito<br />

Consideriamo un campo , ed un suo sottocampo , in questo caso <strong>di</strong>remo che<br />

è un’estensione <strong>di</strong> . Si constata che ha la struttura <strong>di</strong> spazio vettoriale sul campo ,<br />

se la <strong>di</strong>mensione <strong>di</strong> questo spazio è finita è detta grado <strong>di</strong> su .<br />

Vale il seguente teorema:<br />

Teorema 20.2 - Or<strong>di</strong>ne <strong>di</strong> un campo finito<br />

L’or<strong>di</strong>ne <strong>di</strong> un campo finito o è un primo, o è una potenza (intera) <strong>di</strong> un primo.<br />

Dimostrazione:<br />

Abbiamo visto che l’or<strong>di</strong>ne dell’elemento e <strong>di</strong> un qualsiasi campo<br />

è un primo p , si<br />

verifica facilmente che l’insieme<br />

2 3<br />

(20.4.1)<br />

é un campo (isomorfo a ) quin<strong>di</strong> è un sottocampo non necessariamente proprio (in<br />

quanto potrebbe coincidere con ) <strong>di</strong> .<br />

D’altro canto, ha la struttura <strong>di</strong> spazio vettoriale sul campo e la sua<br />

<strong>di</strong>mensione deve necessariamente essere finita, essendo finito per ipotesi.<br />

Un qualsiasi elemento <strong>di</strong> potrà essere quin<strong>di</strong> espresso in modo univoco come<br />

combinazione lineare, con coefficienti appartenenti a , <strong>di</strong> elementi che costituiscano<br />

una base per , cioè che siano linearmente in<strong>di</strong>pendenti su . Osservando che<br />

esistono esattamente combinazioni lineari <strong>di</strong>stinte si conclude che l’or<strong>di</strong>ne <strong>di</strong> se<br />

non è primo è una potenza <strong>di</strong> un primo.<br />

***********<br />

Quale che sia il campo finito , il campo generato dalla sua unità<br />

moltiplicativa è detto sottocampo primo o fondamentale. Esso è contenuto in tutti i


142 Capitolo - 20 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

sottocampi <strong>di</strong> , o, che è lo stesso, è l’intersezione <strong>di</strong> tutti i sottocampi <strong>di</strong><br />

quin<strong>di</strong> è anche il più piccolo sottocampo <strong>di</strong> che contiene (si <strong>di</strong>ce che è la<br />

caratteristica del campo).<br />

Osserviamo che se un Campo non è finito, allora anche l’insieme definito nella<br />

(20.4.1) non lo è, e non è neppure un sottocampo <strong>di</strong> (non è nemmeno un gruppo) in<br />

questo caso si può <strong>di</strong>mostrare che il sottocampo minimo contenuto in è isomorfo al<br />

campo dei razionali e che l’insieme definito nella (20.4.1) è isomorfo all’insieme<br />

dei naturali. In questo caso <strong>di</strong>remo che il campo ha caratteristica<br />

20.5 - Elementi primitivi <strong>di</strong> un campo<br />

Sappiamo che un campo privato dell’elemento neutro rispetto alla somma è<br />

un gruppo rispetto alla moltiplicazione, in<strong>di</strong>chiamolo con . L’or<strong>di</strong>ne <strong>di</strong> è<br />

.<br />

Sia l’or<strong>di</strong>ne <strong>di</strong> un generico elemento<br />

<strong>di</strong><br />

⊗ , risulta<br />

l<br />

⏟<br />

fattori<br />

(20.5.1)<br />

deve necessariamente essere un <strong>di</strong>visore <strong>di</strong> esiste cioè un naturale tale che<br />

. Ne segue:<br />

( ) (20.5.2)<br />

Dalla precedente <strong>di</strong>scende che per ogni elemento <strong>di</strong> potremo scrivere:<br />

⊗<br />

(20.5.3)<br />

Constatiamo imme<strong>di</strong>atamente che la precedente vale anche per , possiamo quin<strong>di</strong><br />

anche scrivere:<br />

(20.5.4)<br />

Si può <strong>di</strong>mostrare che il gruppo è un gruppo ciclico, cioè che in vi<br />

sono elementi il cui or<strong>di</strong>ne è uguale all’or<strong>di</strong>ne del gruppo. Un tale elemento si chiama<br />

generatore del gruppo.<br />

Un generatore <strong>di</strong><br />

si <strong>di</strong>ce elemento primitivo del campo, in particolare si<br />

può <strong>di</strong>mostrare che vi sono elementi primitivi in numero uguale a quello dei naturali<br />

e con esso relativamente primi, ad esempio in<br />

ve ne saranno , in<br />

. Inoltre in ogni campo per cui è un primo, quale ad esempio tutti gli<br />

elementi <strong>di</strong>versi da<br />

20.6 - Campi <strong>di</strong> polinomi<br />

sono primitivi.<br />

Cerchiamo adesso <strong>di</strong> mettere un po’ d’or<strong>di</strong>ne, sappiamo che:


Campi Finiti 143<br />

-<br />

(<br />

se ) ( ) è un polinomio irriducibile appartenente a , allora<br />

( ) ( ) è<br />

un campo.<br />

- ogni campo finito ha un numero <strong>di</strong> elementi che se non è un numero primo è<br />

una potenza <strong>di</strong> un primo;<br />

-<br />

( )<br />

, è isomorfo ad uno spazio vettoriale <strong>di</strong> <strong>di</strong>mensione ,<br />

costituito esattamente da ( ) elementi (una potenza <strong>di</strong> un primo).<br />

(<br />

Fissato un polinomio irriducibile ) ( ), a coefficienti in e comunque<br />

scelto un polinomio<br />

( ) ( ) <strong>di</strong><br />

possiamo scrivere:<br />

( ) (<br />

( ) ) ( ) ( ) (<br />

( ) ) ( ) (20.6.1)<br />

(<br />

La precedente ci mostra che ) (<br />

( ) ed ) ( ), appartengono allo stesso laterale<br />

(<br />

dell’ideale generato da ) (<br />

( ). Notiamo anche che il grado <strong>di</strong> ) ( ) è, inferiore al<br />

(<br />

grado <strong>di</strong> ) ( ).<br />

(<br />

Osserviamo che ) ( ) può essere un qualunque polinomio appartenente a<br />

( )<br />

affermare che<br />

in definitiva quin<strong>di</strong>, in<strong>di</strong>viduato un polinomio irriducibile<br />

( ) ( ), possiamo<br />

( )<br />

, con l’usuale somma tra polinomi in e definendo come<br />

prodotto tra due suoi elementi il resto della <strong>di</strong>visione tra il loro prodotto in e<br />

( ) ( ), è un campo isomorfo a<br />

( ) ( ) , in quanto ogni elemento <strong>di</strong><br />

( )<br />

in<strong>di</strong>vidua uno e un solo laterale <strong>di</strong><br />

( ) ( ) , e viceversa.<br />

Esempio 20.1<br />

Consideriamo l’anello dei<br />

α x x x 010 polinomi sul Campo .<br />

α x x x 100 Il polinomio<br />

è irriducibile.<br />

α x x x 011<br />

Pertanto<br />

α x x x x α α 110 è un campo, <strong>di</strong> or<strong>di</strong>ne , in quanto<br />

sono i polinomi <strong>di</strong> grado minore <strong>di</strong> a<br />

α x x x x α α 111<br />

coefficienti in . Osserviamo che tutti<br />

α x x x α α 101<br />

i suoi elementi non nulli sono<br />

α x x 001<br />

primitivi in quanto il gruppo<br />

ha<br />

α 000 elementi, e sette è un primo. In<br />

Tabella 20.1<br />

particolare anche l’elemento<br />

sarà primitivo.<br />

Assumendo come rappresentanti <strong>di</strong> laterale i polinomi <strong>di</strong> grado inferiore a otterremo la Tabella<br />

20.1, nella quale abbiamo convenzionalmente in<strong>di</strong>cato l’elemento neutro rispetto alla somma con<br />

e, nella quarta colonna, abbiamo associato ai rappresentanti <strong>di</strong> laterale le corrispondenti parole<br />

binarie <strong>di</strong> bit.<br />

20.7 - Polinomi irriducibili primitivi<br />

Consideriamo adesso un campo e una sua estensione .


144 Capitolo - 20 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

Definizione 20.2<br />

Diciamo che un elemento è algebrico su<br />

(<br />

se esiste un polinomio ) ( ) <strong>di</strong><br />

che ha come ra<strong>di</strong>ce, cioè tale che effettuando le operazioni in risulti<br />

( ) ( ) .<br />

Consideriamo ad esempio il campo dei razionali e la sua estensione (il<br />

campo Reale) l’elemento √ è algebrico su in quanto il polinomio ha<br />

√ tra le sue ra<strong>di</strong>ci se lo si pensa come un polinomio appartenente a .<br />

Osserviamo che l’insieme contenente i polinomi che hanno tra<br />

le ra<strong>di</strong>ci è un ideale <strong>di</strong> . Infatti, comunque scelto un polinomio in<br />

moltiplicandolo per un qualunque polinomio <strong>di</strong> si ottiene ancora un polinomio che<br />

ha tra le sue ra<strong>di</strong>ci.<br />

L’ideale deve ammettere quin<strong>di</strong> un polinomio generatore sia<br />

( ) ( ) ,<br />

osserviamo che esiste sempre un polinomio generatore che ha come coefficiente del<br />

termine <strong>di</strong> grado massimo. Un tale polinomio sarà detto monico, da ora in poi quando<br />

parleremo <strong>di</strong> polinomio generatore sottintenderemo che sia quello monico.<br />

(<br />

Il polinomio ) ( ) è irriducibile in , (non è detto che lo sia in ) in<br />

quanto se così non fosse almeno uno dei fattori in cui potrebbe essere scomposto ammetterebbe<br />

come ra<strong>di</strong>ce. Tale fattore apparterrebbe quin<strong>di</strong> ad , ed avrebbe grado<br />

(<br />

inferiore a ) (<br />

( ), ) ( ) non sarebbe quin<strong>di</strong> in grado <strong>di</strong> generarlo e perverremmo ad<br />

un assurdo.<br />

Da quanto sopra segue che esiste un unico polinomio generatore monico <strong>di</strong> che<br />

è chiamato polinomio minimale <strong>di</strong> su .<br />

Osserviamo che ogni elemento <strong>di</strong> è algebrico su . Inoltre è facile constatare<br />

che se è finito ogni elemento <strong>di</strong> è algebrico sul suo sottocampo primo, in quanto<br />

si annulla in virtù della (20.5.2) ⊗ .<br />

Definizione 20.3<br />

Diciamo che un polinomio irriducibile<br />

( ) ( )<br />

è primitivo se esso è fattore<br />

<strong>di</strong> e non <strong>di</strong> con .<br />

Vale il seguente teorema:<br />

Teorema 20.3<br />

Se<br />

( ) ( ) è un polinomio irriducibile <strong>di</strong> l’elemento<br />

( ) ( )<br />

( ) ( ) è primitivo per<br />

( ) ( ) se e solo se<br />

( ) ( ) è un<br />

polinomio primitivo.


Campi Finiti 145<br />

20.8 - Alcune proprietà dei campi finiti<br />

Consideriamo due elementi e <strong>di</strong> ci convinciamo facilmente che vale<br />

l’uguaglianza:<br />

( ) ∑( ) [( )] ∑( ) [( )] (20.8.1)<br />

Osserviamo adesso che i coefficienti binomiali nella sommatoria a ultimo membro sono<br />

multipli <strong>di</strong> , essendo primo, ciò premesso ci basta ricordare la (20.3.3) per<br />

concludere che tutti gli adden<strong>di</strong> della sommatoria all’ultimo membro della precedente<br />

sono uguali ad ne <strong>di</strong>scende che<br />

Risulta anche:<br />

( ) (20.8.2)<br />

( ) ( ) ( ) (20.8.3)<br />

Dalle precedenti sfruttando la proprietà associativa della somma e tenuto conto<br />

che la precedente può essere applicata iterativamente otteniamo l’equazione:<br />

( ) (20.8.4)<br />

Un interessante caso particolare si ha quando si eleva a una combinazione<br />

lineare <strong>di</strong> elementi <strong>di</strong> pensato come spazio vettoriale sul suo sottocampo primo:<br />

(∑ ) ∑ (20.8.5)<br />

La precedente consente <strong>di</strong> affermare che per un qualsiasi polinomio<br />

( ) ( )<br />

risulta:<br />

( ( ) ( )) (∑ ) ∑ ( )<br />

( ) ( ) (20.8.6)<br />

dalla quale <strong>di</strong>scende imme<strong>di</strong>atamente che, se il polinomio ammette<br />

come ra<strong>di</strong>ce,<br />

ammette anche con . Tali ra<strong>di</strong>ci non saranno ovviamente tutte <strong>di</strong>stinte.<br />

Esempio 20.2


146 Capitolo - 20 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

Vogliamo costruire un campo con elementi . Per farlo abbiamo bisogno <strong>di</strong> in<strong>di</strong>viduare<br />

un polinomio irriducibile a coefficienti in<br />

GF<br />

<strong>di</strong> quarto grado.<br />

Pren<strong>di</strong>amo quin<strong>di</strong> in considerazione il polinomio<br />

. Detto polinomio non è <strong>di</strong>visibile<br />

x x x x α 0010 per poiché non è omogeneo né per poiché<br />

x x x x α 0100 ha un numero <strong>di</strong>spari <strong>di</strong> coefficienti non nulli.<br />

x x x x quin<strong>di</strong> non è <strong>di</strong>visibile neppure per polinomi <strong>di</strong><br />

α 1000<br />

terzo grado. Esso non è <strong>di</strong>visibile neppure per i<br />

x x x x α 1001 polinomi <strong>di</strong> secondo grado , ,<br />

x x x x x α 1011 , pertanto è irriducibile.<br />

x x x x x x α 1111 Dovremmo a questo punto verificare che si<br />

tratta <strong>di</strong> un polinomio primitivo, accertandoci che<br />

x x x x x α 0111<br />

non è un fattore <strong>di</strong> con . Tale<br />

x x x x x x α 1110 verifica è piuttosto noiosa, d’altro canto, qualora il<br />

x x x x α 0101 polinomio in parola non fosse primitivo lo scopriremmo<br />

facilmente in quanto il polinomio non sarebbe<br />

un elemento primitivo per il campo, esso a-<br />

x x x x x α 1010<br />

x x x x x α 1101<br />

vrebbe cioè un or<strong>di</strong>ne inferiore a .<br />

x x x x α 0011 A partire dal polinomio che associamo all’elemento<br />

x x x x x α 0110<br />

del campo cominciamo a riempire la<br />

Tabella 20.2 con il resto della <strong>di</strong>visione tra le<br />

x x x x x α 1100<br />

successive potenze <strong>di</strong> e il polinomio<br />

x x x α 0001<br />

. Come si può notare dalla Tabella 20.2 il<br />

x x α 0000 polinomio è primitivo in quanto l’or<strong>di</strong>ne <strong>di</strong> .<br />

Tabella 20.2 - possibile rappresentazione <strong>di</strong> Nella terza colonna della Tabella abbiamo in<strong>di</strong>cato<br />

GF<br />

la rappresentazione binaria dei polinomi.<br />

Abbiamo a questo punto generato gli elementi<br />

del campo.<br />

Per operare più rapidamente su <strong>di</strong> esso possiamo costruire la Tabella 20.3 che riassume tutti i<br />

possibili risultati <strong>di</strong> somme e prodotti tra gli elementi del campo. È opportuno sottolineare che tale<br />

tabella <strong>di</strong>pende dal polinomio irriducibile scelto nel senso che se avessimo utilizzato un polinomio<br />

irriducibile <strong>di</strong>verso avremmo ottenuto una <strong>di</strong>versa rappresentazione <strong>di</strong> e conseguentemente<br />

o α α α α α α α α α α α α α α e<br />

o o o o o o o o o o o o o o o o o o o<br />

α α o α α α α α α α α α α α α α e α α<br />

α α α o α α α α α α α α α α α e α α α<br />

α α α α o α α α α α α α α α e α α α α<br />

α α α α e o α α α α α α α e α α α α α<br />

α α α α α α o α α α α α e α α α α α α<br />

α α α α α α α o α α α e α α α α α α α<br />

α α α α α α α α o α e α α α α α α α α<br />

α α α α α α α e α o α α α α α α α α α<br />

α α α e α α α α α α o α α α α α α α α<br />

α α α α α α e α α α α o α α α α α α α<br />

α α α α α α α α α α α α o α α α α α α<br />

α α e α α α α α α α α α α o α α α α α<br />

α α α α α α α α e α α α α α o α α α α<br />

α α α α α α α α α α α α e α α o α α α<br />

e e α α α α α α α α α α α α α α o e e<br />

o α α α α α α α α α α α α α α e<br />

Tabella 20.3 Ad<strong>di</strong>zioni e moltiplicazioni in GF<br />

una Tabella 20.3 <strong>di</strong>versa. Un modo alternativo per fare le somme in un campo finito è quello <strong>di</strong> fare<br />

riferimento ai logaritmi <strong>di</strong> Zech. Supponiamo <strong>di</strong> voler calcolare la somma <strong>di</strong> due elementi siano<br />

ed entrambi <strong>di</strong>versi da possiamo scrivere:


Campi Finiti 147<br />

( ) (20.8.7)<br />

Osserviamo che il termine in parentesi appartiene ovviamente al campo e si può quin<strong>di</strong> esprimere<br />

k mod<br />

z(k)<br />

sotto forma esponenziale e notiamo<br />

inoltre che <strong>di</strong>pende esclusivamente dalla<br />

<strong>di</strong>fferenza tra gli esponenti , che va<br />

valutata modulo la car<strong>di</strong>nalità <strong>di</strong> ,<br />

ovvero .<br />

Possiamo quin<strong>di</strong> scrivere<br />

( ) , convenendo che ( )<br />

qualora dovesse risultare ,<br />

(in tutte le estensioni <strong>di</strong> ogni elemento<br />

ha se stesso come opposto, ma<br />

non è vero in generale!).<br />

I possibili valori assunti dalla quantità<br />

in parentesi si possono leggere nella<br />

Tabella 20.3. e possiamo scrivere<br />

( )<br />

(20.8.8)<br />

Tabella 20.4 logaritmo <strong>di</strong> Zech per la rappresentazione <strong>di</strong><br />

GF dell’Esempio 20.2<br />

GF<br />

x x x x α 0010<br />

x x x x α 0100<br />

x x x x α 1000<br />

x x x x α 0011<br />

x x x x x α 0110<br />

x x x x x α 1100<br />

x x x x x α 1011<br />

x x x x α 0101<br />

x x x x x α 1010<br />

x x x x x α 0111<br />

x x x x x x α 1110<br />

x x x x x x α 1111<br />

x x x x x α 1101<br />

x x x x α 1001<br />

x x x α 0001<br />

x x α 0000<br />

Tabella 20.5 – altra possibile rappresentazione <strong>di</strong> GF<br />

( )<br />

La funzione ( ) è detta<br />

logaritmo <strong>di</strong> Zech. Essa, ovviamente,<br />

<strong>di</strong>pende sia dalla scelta del polinomio<br />

irriducibile, sia da quella dell’elemento<br />

primitivo. Il vantaggio nell’utilizzazione<br />

del logaritmo <strong>di</strong> Zech, anziché della<br />

Tabella 20.3, consiste nel fatto che la<br />

tabella che si ottiene è più compatta<br />

essendo costituita solo da valori<br />

contro i ( ) della parte<br />

ad<strong>di</strong>tiva della Tabella 20.3 che <strong>di</strong>venta<br />

ben presto ingestibile al crescere della<br />

car<strong>di</strong>nalità del campo.<br />

Si osservi che qualora avessimo<br />

utilizzato il polinomio<br />

, anch’esso<br />

irriducibile e primitivo, per generare<br />

avremmo ottenuto la rappresentazione<br />

<strong>di</strong> Tabella 20.5 per la quale la<br />

Tabella 20.3 e la Tabella 20.4 dovrebbero<br />

essere riscritte. Il logaritmo <strong>di</strong><br />

Zech si presta inoltre meglio ad essere<br />

implementato in un programma <strong>di</strong><br />

calcolo.


Capitolo - 21<br />

CODICI BCH<br />

21.1 - Co<strong>di</strong>ci BCH<br />

Supponiamo <strong>di</strong> voler generare un co<strong>di</strong>ce polinomiale con parole <strong>di</strong> lunghezza<br />

i<br />

cui simboli appartengano ad un campo finito<br />

che abbia una <strong>di</strong>stanza minima non<br />

inferiore a .<br />

Un modo per farlo è quello <strong>di</strong> scegliere un’estensione <strong>di</strong> <strong>di</strong> grado con un<br />

numero <strong>di</strong> elementi pari a , sia . In detto campo sceglieremo un elemento<br />

primitivo e costruiremo il polinomio ( ) <strong>di</strong> grado minimo che ha come<br />

ra<strong>di</strong>ci gli elementi dell’insieme con . Detto<br />

polinomio sarà evidentemente il minimo comune multiplo tra i polinomi minimali<br />

associati agli .<br />

Affermiamo che un polinomio ( ) così costruito è in grado <strong>di</strong> generare un<br />

co<strong>di</strong>ce con <strong>di</strong>stanza minima non inferiore a . Per provarlo osserviamo che l’insieme<br />

delle ra<strong>di</strong>ci <strong>di</strong> ogni polinomio associato ad una parola <strong>di</strong> co<strong>di</strong>ce conterrà l’insieme<br />

. Affinché un co<strong>di</strong>ce abbia <strong>di</strong>stanza minima pari almeno a<br />

non devono esistere parole <strong>di</strong> co<strong>di</strong>ce, ad eccezione <strong>di</strong> quella nulla, che abbiano meno <strong>di</strong><br />

simboli <strong>di</strong>versi da .<br />

Supponiamo per assurdo che un co<strong>di</strong>ce generato nel modo anzidetto non rispetti<br />

questa con<strong>di</strong>zione, in questo caso esisterà almeno una parola <strong>di</strong> co<strong>di</strong>ce in<strong>di</strong>viduata da<br />

un polinomio del tipo:<br />

( ) (21.1.1)<br />

Essendo ( ) un polinomio <strong>di</strong> co<strong>di</strong>ce l’insieme delle sue ra<strong>di</strong>ci conterrà l’insieme<br />

devono quin<strong>di</strong> essere contemporaneamente sod<strong>di</strong>sfatte le equazioni:<br />

{<br />

( ) ( ) ( )<br />

( ) ( ) ( )<br />

Abbiamo così ottenuto un sistema lineare ed omogeneo <strong>di</strong><br />

incognite.<br />

La matrice dei coefficienti del sistema <strong>di</strong> cui sopra è:<br />

equazioni in<br />

(21.1.2)


150 Capitolo - 21 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

[<br />

( ) ( ) ( )<br />

( ) ( ) ( )<br />

] (21.1.3)<br />

che si può scrivere come segue:<br />

[<br />

( ) ( ) ( )<br />

] [ ] (21.1.4)<br />

osserviamo che la prima matrice a secondo membro è una matrice <strong>di</strong> Vandermonde il<br />

suo determinante vale pertanto:<br />

∏( ) (21.1.5)<br />

è quin<strong>di</strong> non singolare, poiché, per ipotesi, è un elemento primitivo <strong>di</strong> quin<strong>di</strong><br />

il suo or<strong>di</strong>ne è maggiore <strong>di</strong> , ne <strong>di</strong>scende che tutti i binomi della produttoria<br />

(21.1.5) sono <strong>di</strong>versi da , inoltre il determinante della seconda matrice è certamente<br />

<strong>di</strong>verso da zero in quanto essa è <strong>di</strong>agonale e gli elementi della <strong>di</strong>agonale sono tutti<br />

<strong>di</strong>versi da .<br />

Possiamo quin<strong>di</strong> concludere che il sistema (21.1.2) è <strong>di</strong> Cramer ed essendo anche<br />

omogeneo esso ammette solo la soluzione banale. Non esistono pertanto parole <strong>di</strong><br />

co<strong>di</strong>ce, ad eccezione <strong>di</strong> quella con simboli tutti nulli, che abbiano meno <strong>di</strong> simboli<br />

<strong>di</strong>versi da .<br />

Quanto appena mostrato permette <strong>di</strong> costruire un’importante classe <strong>di</strong> co<strong>di</strong>ci detti<br />

BCH, dalle iniziali dei loro scopritori: Bose (1959), Chaundhuri e Hocquenghem<br />

(1960). Alla classe dei co<strong>di</strong>ci BCH appartengono anche i co<strong>di</strong>ci <strong>di</strong> Hamming che<br />

abbiamo già visto, nonché i co<strong>di</strong>ci <strong>di</strong> Reed Solomon (RS).<br />

Osserviamo che i co<strong>di</strong>ci BCH sono ciclici in quanto il loro polinomio generatore<br />

ha tra le sue ra<strong>di</strong>ci un sottoinsieme <strong>di</strong> quelle <strong>di</strong> pensato come polinomio a<br />

coefficienti in , esso ne è pertanto un fattore.<br />

Osserviamo anche che il grado del polinomio generatore non è assegnato a priori,<br />

ma <strong>di</strong>pende dalla scelta dell’elemento primitivo <strong>di</strong> . ne segue che anche il numero<br />

<strong>di</strong> simboli che costituiscono la parola informativa non può essere prefissato. Inoltre la<br />

<strong>di</strong>stanza minima del co<strong>di</strong>ce potrebbe anche risultare maggiore <strong>di</strong> quella <strong>di</strong> progetto.<br />

Tipicamente i simboli che costituiscono la parola <strong>di</strong> co<strong>di</strong>ce appartengono ad un campo<br />

, cioè ad un campo con un numero <strong>di</strong> elementi che sia una potenza <strong>di</strong> .<br />

Esempio 21.1


Co<strong>di</strong>ci BCH 151<br />

Vogliamo realizzare un co<strong>di</strong>ce BCH con una parola <strong>di</strong> co<strong>di</strong>ce <strong>di</strong> bit in grado <strong>di</strong> correggere<br />

almeno errori quin<strong>di</strong> con una <strong>di</strong>stanza minima pari almeno a . Per farlo abbiamo bisogno <strong>di</strong> <strong>di</strong><br />

generare .<br />

Possiamo verificare che<br />

é un polinomio irriducibile primitivo. A partire da<br />

quest’ultimo ricaviamo la Tabella 21.1, da essa possiamo facilmente calcolare i logaritmi <strong>di</strong> Zech<br />

riportati in Tabella 21.2.<br />

Possiamo quin<strong>di</strong> procedere alla costruzione del polinomio generatore a coefficienti in , che<br />

deve avere come ra<strong>di</strong>ci 6 potenze consecutive <strong>di</strong> un elemento primitivo . Possiamo scegliere:<br />

Tale scelta ha il vantaggio <strong>di</strong> semplificare la ricerca del polinomio generatore, in quanto il<br />

polinomio minimale associato ad tenendo conto della (20.8.6) è anche minimale per ed<br />

quello <strong>di</strong> lo è anche per . Il polimomio generatore cercato sarà quin<strong>di</strong> il prodotto <strong>di</strong> tre<br />

polinomi minimali, quello associato ad , quello associato ad e quello associato ad .<br />

Osserviamo che se avessimo scelto il polinomio generatore avente come ra<strong>di</strong>ci:<br />

Esso avrebbe avuto certamente un grado non minore <strong>di</strong> quello associato alla scelta precedente in<br />

GF<br />

o x x o 00000<br />

x x x x α 00010<br />

x x x x α 00100<br />

x x x x α 01000<br />

x x x x α 10000<br />

x x x x α 00101<br />

x x x x x α 01010<br />

x x x x x α 10100<br />

x x x x x α 01101<br />

x x x x x x α 11010<br />

x x x x α 10001<br />

x x x x x α 00111<br />

x x x x x x α 01110<br />

x x x x x x α 11100<br />

x x x x x x α 11101<br />

x x x x x x x α 11111<br />

x x x x x x α 11011<br />

x x x x x α 10011<br />

x x x x α 00011<br />

x x x x x α 00110<br />

x x x x x α 01100<br />

x x x x x α 11000<br />

x x x x x α 10101<br />

x x x x x x α 01111<br />

x x x x x x x α 11110<br />

x x x x x α 11001<br />

x x x x x x α 10111<br />

x x x x x α 01011<br />

x x x x x x α 10110<br />

x x x x α 01010<br />

x x x x x α 10010<br />

x x x e 00001<br />

Tabella 21.1 - Possibile rappresentazione <strong>di</strong> GF<br />

k mod<br />

Tabella 21.2<br />

z(k)


152 Capitolo - 21 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

quanto oltre ai tre fattori citati avrebbe dovuto avere tra i suoi fattori il polinomio minimale associato<br />

ad . L’aumento del grado del polinomio generatore comporta inevitabilmente una riduzione del<br />

grado del polinomio informativo, in questo caso specifico poi la <strong>di</strong>stanza minima <strong>di</strong> progetto sarebbe<br />

anche aumentata perché il polinomio generatore avrebbe avuto almeno 7 potenze consecutive <strong>di</strong><br />

tra le sue ra<strong>di</strong>ci.<br />

La ricerca dei polinomi minimali può essere fatta per tentativi possiamo solo ridurne il numero.<br />

Nel caso ad esempio del polinomio minimale associato ad sappiamo che esso avrà anche le ra<strong>di</strong>ci<br />

quin<strong>di</strong> dovrà essere almeno <strong>di</strong> quinto grado, possiamo quin<strong>di</strong> cominciare a prendere<br />

in considerazione i polinomi non omogenei <strong>di</strong> 5 grado con un numero <strong>di</strong>spari <strong>di</strong> coefficienti, in<br />

quanto quelli con un numero pari <strong>di</strong> coefficienti, essendo <strong>di</strong>visibili per , non sarebbero<br />

irriducibili. Restano quin<strong>di</strong> 8 possibili polinomi <strong>di</strong> quinto grado da prendere in considerazione.<br />

Il polinomio minimale associato ad è che sia una sua ra<strong>di</strong>ce si constata<br />

imme<strong>di</strong>atamente osservando che e , appartengono allo stesso laterale (ve<strong>di</strong> Tabella 21.1),<br />

esso è anche irriducibile in quanto è proprio il polinomio che abbiamo utilizzato per generare il<br />

campo.<br />

Il polinomio irriducibile associato ad deve avere tra le sue ra<strong>di</strong>ci anche ,<br />

anch’esso avrà quin<strong>di</strong> un grado non inferiore al quinto il polinomio che cerchiamo è<br />

. Proviamo a verificare che è una sua ra<strong>di</strong>ce. Utilizzando i logaritmi <strong>di</strong> Zech (ve<strong>di</strong> Tabella<br />

21.2) otteniamo:<br />

=<br />

Dobbiamo anche verificare che è irriducibile non avendo tra i suoi fattori nessun polinomio <strong>di</strong><br />

primo grado, verifichiamo che non ne abbia <strong>di</strong> secondo grado. Ovviamente esso non è <strong>di</strong>visibile per<br />

, non lo è neppure per ne per , quin<strong>di</strong> è irriducibile in quanto non possono<br />

esistere fattori <strong>di</strong> terzo grado, se non ve ne sono <strong>di</strong> secondo, in un polinomio <strong>di</strong> quinto grado.<br />

Il polinomio minimale associato ad è , come si può analogamente<br />

verificare.<br />

Possiamo a questo punto calcolare il polinomio generatore del co<strong>di</strong>ce che sarà il prodotto dei tre<br />

polinomi minimali sopra in<strong>di</strong>cati che sarà <strong>di</strong> quin<strong>di</strong>cesimo grado:<br />

( ) ( )( )( )<br />

( )( )<br />

=<br />

Poiché il polinomio <strong>di</strong> co<strong>di</strong>ce è <strong>di</strong> trentesimo grado e il polinomio generatore <strong>di</strong> quin<strong>di</strong>cesimo il<br />

polinomio informativo sarà anch’esso <strong>di</strong> 15 grado la parola informativa sarà quin<strong>di</strong> costituita da 16<br />

bit, avremo quin<strong>di</strong> 65536 parole <strong>di</strong> co<strong>di</strong>ce immerse in uno spazio <strong>di</strong><br />

parole (tutte le<br />

possibili parole costituite da 31 bit.<br />

Le parole <strong>di</strong> co<strong>di</strong>ce si possono a questo punto generare moltiplicando il polinomio associato alla<br />

parola informativa per il polinomio generatore, ma in questo caso il co<strong>di</strong>ce non sarebbe sistematico,<br />

ovvero possiamo ricordare che i co<strong>di</strong>ci BCH sono ciclici e basandoci sul § 19.6 - possiamo generare<br />

le parole <strong>di</strong> co<strong>di</strong>ce a partire da un polinomio informativo ( ) effettuando rotazioni cicliche sulla<br />

parola <strong>di</strong> co<strong>di</strong>ce<br />

( ) ( ) ( ) ( ( ))<br />

In particolare i co<strong>di</strong>ci <strong>di</strong> Reed Solomon, che sono certamente i più importanti tra<br />

i co<strong>di</strong>ci BCH, hanno simboli appartenenti a<br />

, lunghezza della parola <strong>di</strong> co<strong>di</strong>ce<br />

, lunghezza della parola informativa qualsiasi, purché (ovviamente)<br />

minore <strong>di</strong> , e <strong>di</strong>stanza minima .<br />

Un co<strong>di</strong>ce <strong>di</strong> RS che ha trovato <strong>di</strong>verse applicazioni pratiche è il (255,239, 17)<br />

che presenta una <strong>di</strong>stanza minima <strong>di</strong> 17 con simboli appartenenti a<br />

, cioè costituite<br />

da un byte, il che significa che pensato come co<strong>di</strong>ce binario la parola <strong>di</strong> co<strong>di</strong>ce è <strong>di</strong><br />

in grado <strong>di</strong> correggere fino ad<br />

nel byte.<br />

bit e la corrispondente parola informativa <strong>di</strong><br />

bit. Questo co<strong>di</strong>ce è<br />

byte errati in<strong>di</strong>pendentemente dal numero <strong>di</strong> bit errati


Co<strong>di</strong>ci BCH 153


Capitolo - 22<br />

LA TRASFORMATA DI FOURIER DISCRETA<br />

22.1 - La Trasformata <strong>di</strong> Fourier Discreta<br />

Ricor<strong>di</strong>amo che la trasformata (DFT) e l’antitrasformata (IDFT) <strong>di</strong> Fourier<br />

<strong>di</strong>screta <strong>di</strong> una sequenza a valori nel campo complesso <strong>di</strong> durata , o perio<strong>di</strong>ca<br />

<strong>di</strong> periodo è data da:<br />

∑<br />

∑<br />

∑<br />

∑<br />

(22.1.1)<br />

dove rappresenta una ra<strong>di</strong>ce -esima dell’unità, in altri termini nelle (22.1.1)<br />

compaiono le ra<strong>di</strong>ci appartenenti al campo complesso del polinomio, a coefficienti in<br />

, . Si noti che il campo complesso è un’estensione del campo reale.<br />

Volendo generalizzare le (22.1.1) ai campi finiti, occorre innanzitutto soffermarsi<br />

sull’esistenza della ra<strong>di</strong>ce -esima dell’unità del campo. Ricordando la (20.5.1) e la<br />

(20.5.3) conclu<strong>di</strong>amo che se operiamo in la lunghezza della sequenza deve<br />

essere un <strong>di</strong>visore <strong>di</strong> .<br />

Ciò premesso consideriamo una sequenza ed una ra<strong>di</strong>ce -esima<br />

dell’unità in , cioè un elemento <strong>di</strong> or<strong>di</strong>ne per il gruppo , sia .<br />

Prendendo spunto dalle (22.1.1) possiamo scrivere la coppia <strong>di</strong> trasformate<br />

˜<br />

∑<br />

∑<br />

(22.1.2)<br />

Vogliamo verificare se esiste un elemento in corrispondenza al quale risulti<br />

˜<br />

. A tal fine sostituiamo la prima delle (22.1.2) nella seconda:


156 Capitolo - 22 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

˜ ∑ ∑ ∑ ∑ ( )<br />

∑ ∑ ∑ ( ) )<br />

(<br />

(22.1.3)<br />

∑ ∑ ∑ ( ) )<br />

(<br />

∑{<br />

( )<br />

( )<br />

( )<br />

( ) }<br />

{<br />

}<br />

Affinché le (22.1.1) siano una coppia <strong>di</strong> trasformate è quin<strong>di</strong> sufficiente che<br />

l’inverso <strong>di</strong> in , in realtà è anche l’inverso <strong>di</strong> in .<br />

Possiamo quin<strong>di</strong> scrivere la coppia <strong>di</strong> trasformate:<br />

sia<br />

∑<br />

( ) ∑<br />

(22.1.4)<br />

Per la DFT su un campo finito valgono quasi tutte le proprietà già note per quella<br />

nel campo complesso, ad esempio la linearità, la cui verifica è banale, o quella <strong>di</strong><br />

traslazione ciclica.<br />

Sia data una sequenza , la cui DFT sia , fissato un intero<br />

consideriamo la sequenza il cui generico elemento ˜ , dove sta ad<br />

in<strong>di</strong>care che la <strong>di</strong>fferenza va effettuata modulo . Vogliamo calcolare la DFT <strong>di</strong><br />

˜ otteniamo:<br />

˜ ∑ ˜ ∑ ∑<br />

∑<br />

( )<br />

(22.1.5)<br />

DFT vale:<br />

Dualmente fissato un intero j consideriamo la sequenza<br />

ij<br />

N i<br />

N<br />

i<br />

0<br />

1<br />

c la sua<br />

˜ ∑ ∑<br />

( )<br />

(22.1.6)


La Trasformata <strong>di</strong> Fourier Discreta 157<br />

Alla sequenza<br />

possiamo associare il polinomio:<br />

( ) (22.1.7)<br />

lo stesso possiamo fare per la sua DFT , ammesso che esista, definendo in<br />

modo analogo un polinomio ( ) <strong>di</strong> grado al più . Osservando le (22.1.4) ci<br />

ren<strong>di</strong>amo conto che risulta:<br />

( )<br />

( ) ( )<br />

(22.1.8)<br />

Dalle precedenti <strong>di</strong>scende che se allora ( ) ha come ra<strong>di</strong>ce, o, che è lo<br />

stesso, ha il polinomio<br />

su ( ) se qualche .<br />

tra i suoi fattori. Analoghe considerazioni possono farsi<br />

Consideriamo una sequenza non banale cui corrisponda un ( )<strong>di</strong> grado<br />

non maggiore <strong>di</strong> . Detto polinomio può avere al più ra<strong>di</strong>ci che<br />

qualora coincidessero tutte con le , comporterebbero l’annullamento <strong>di</strong> non più <strong>di</strong><br />

elementi della che conseguentemente avrebbe almeno elementi<br />

non nulli. Applicando la (22.1.5) possiamo facilmente concludere che è in realtà<br />

sufficiente che in una sequenza non banale siano nulli elementi consecutivi<br />

(modulo ), affinché la sequenza trasformata, o antitrasformata abbia almeno<br />

elementi non nulli.<br />

22.2 - DFT e co<strong>di</strong>ci ciclici<br />

Le considerazioni fatte dopo la (22.1.8) ci permettono <strong>di</strong> introdurre una<br />

definizione alternativa per i co<strong>di</strong>ci ciclici. Possiamo infatti affermare che<br />

Definizione 22.1<br />

Un co<strong>di</strong>ce ciclico ( ) è costituito dal sottoinsieme <strong>di</strong> la cui DFT si annulla in<br />

posizioni prefissate.<br />

La definizione appena data comporta ovviamente l’esistenza della DFT, deve<br />

esistere cioè un elemento <strong>di</strong> or<strong>di</strong>ne<br />

per<br />

⊗ , che consenta <strong>di</strong> calcolarla, ne <strong>di</strong>scende<br />

che deve essere un sottomultiplo <strong>di</strong> , cioè una ra<strong>di</strong>ce -esima dell’unità <strong>di</strong><br />

. Se vogliamo che le parole <strong>di</strong> co<strong>di</strong>ce abbiano la massima lunghezza l’elemento<br />

scelto per il calcolo della DFT dovrà essere primitivo. In questo caso avremmo<br />

. Il fatto che la Definizione 22.1 sia equivalente alla Definizione 19.1<br />

risulta evidente tenendo conto della (22.1.8) che ci permette <strong>di</strong> affermare che ogni<br />

polinomio <strong>di</strong> un co<strong>di</strong>ce costruito sulla base della Definizione 22.1 è multiplo <strong>di</strong> uno


158 Capitolo - 22 - <strong>Appunti</strong> <strong>di</strong> <strong>Teoria</strong> dell’Informazione e Co<strong>di</strong>ci<br />

stesso polinomio che è a sua volta un fattore <strong>di</strong><br />

coefficienti in .<br />

inteso come polinomio a

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!