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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

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!