APPUNTI DI TEORIA DEI CODICI

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "APPUNTI DI TEORIA DEI CODICI"

Transcript

1 UNIVERSITÀ DI CATANIA FACOLTÀ DI INGEGNERIA APPUNTI DI TEORIA DEI CODICI Autori: L. Cauchi V. La Terra R. Grasso Coperto da diritti di c copyright

2 Ho letto questi appunti scritti da Lucia Cauchi, Rosario Grasso e Valeria La Terra, studenti che hanno seguito il mio corso di Teoria dei Codici negli anni accademici e Ho deciso di inserirli nella mia pagina web perchè rispecchiano pienamente le mie lezioni e sono sicuro che essi riusciranno ad essere un ulteriore aiuto didattico agli studenti che hanno seguito e seguiranno il corso di Teoria dei Codici. Ringrazio Lucia Cauchi, Rosario Grasso e Valeria La Terra, per la loro disponibilità a condividere liberamente il loro spontaneo lavoro, coperto da diritti di copyright legali e informatici, con tutti i loro colleghi e con il docente. Mi corre l obbligo di ringraziare il Professore Dean Hoffman che mi ha permesso, nel 1997, di seguire presso l Università di Auburn (USA) il suo corso di Coding Theory. Faccio inoltre presente che tali appunti nella parte riguardante la Teoria dei Codici trovano principale fonte bibliografica nel testo Coding Theory and Cryptography scritto da D. Hankerson, D. Hoffman, D.Leonard, C. Lindner, C. Rodger, K. Phelps, J. Wall. Lorenzo Milazzo Aggiornamento del 03/12/2007.

3 Indice 1 Cenni di Teoria dell Informazione I primi concetti Schema di codifica Codici univocamente decifrabile e istantanei Codici ottimi Algoritmo di Huffman La funzione entropia Proprietà della funzione entropia Teoria dei Codici I Primi concetti Introduzione Probabilità e distanza Peso ed errore Prime tecniche di codifica Individuazione di errore Correzione di errore Codici lineari Introduzione i

4 INDICE 3.2 Prodotto scalare in K n Matrice generatrice Matrice di parità Algoritmo di generazione di H Coset Sindrome Codici perfetti Cardinalità di un codice C Codici MDS Codici estesi Codici perfetti Codice di Hamming Codice di Golay esteso Codici ciclici Polinomi su K Parole di C e polinomi Codici ciclici Codice ciclico e polinomi di K n Matrice generatrice Sindrome e matrice di parità Campi finiti e codici 2 - BCH Polinomio primitivo Campi finiti di Galois Polinomio minimo Codici di Hamming ii

5 INDICE 6.5 Codici 2-BCH Schema di codifica per codici 2-BCH iii

6 Capitolo 1 Cenni di Teoria dell Informazione 1.1 I primi concetti Si definisce S 0 sorgente di un codice una coppia S 0 = (S, P ) dove S = {s 1, s 2,, s n } è un insieme finito di eventi che, come vedremo in seguito, si associano alle parole di un codice, e P = {p(s 1 ), p(s 2 ),..., p(s n )} è una distribuzione di probabilità sugli eventi di S, dove p(s i ) = p i, con 0 p i 1 e i p i = 1. Si definisce alfabeto di un codice l insieme finito di caratteri A = {a 1, a 2,, a r }, nel caso in cui il numero di simboli in A è r (cioè A = r) si dice che l alfabeto genera un codice r-ario, in questi appunti (soprattutto dal capitolo 2) saranno per lo più trattati casi in cui alfabeto è costituito da solo due caratteri e in particolare l alfabeto A = {0, 1}, tali codici sono detti binari. Una sequenza di caratteri u = a i1, a i2,..., a in è detta stringa e in essa possono esistere caratteri ripetuti. Il numero di caratteri presenti in una stringa u è detto lunghezza della stringa ed essa è rappresentata dalla simbologia l(u). Indichiamo con A l insieme di tutte le possibili stringhe che si possono formare con i caratteri dell alfabeto (indipendentemente dalla lunghezza). Se una stringa non ha caratteri si dice che essa è la stringa nulla. 1

7 1.2 Schema di codifica Si definisce codice C = {c 1, c 2,, c n } un particolare sottoinsieme finito di A, cioè C A, gli elementi c i di C sono detti parole del codice. È possibile avere codici con parole che hanno lunghezza differente oppure codici le cui parole hanno tutte la stessa lunghezza, in tal caso il codice è detto a blocchi. 1.2 Schema di codifica Se S 0 = (S, P ) è una sorgente di un codice, si definisce schema di codifica per S 0 la coppia ordinata (C, f), dove f : S C è un applicazione iniettiva detta funzione di assegnazione. Tale funzione definisce una corrispondenza uno a uno tra gli elementi di S con le parole del codice C. Si definisce lunghezza media l c di un codice C la quantità: n l c = p i l(f(s i )), (1.1) i=1 dove l(f(s i )) è la lunghezza della parola del codice f(s i ) che corrisponde all evento s i di probabilità p i, tale probabilità assume il valore della probabilità legata alla parola f(s i ). Un codice C 1 si dice più efficiente del codice C 2 se l C1 < l C2. Vediamo adesso di capire quando si usano codici a blocchi o codici a lunghezza variabile e in tal caso cerchiamo di stabilire un criterio di assegnazione che permetta di definire una funzione di assegnazione più conveniente. Esempio 1 Dato l insieme S = {a, b, c, d} con P definita nel seguente modo: p(a) = 2 17, p(b) = 2 17, p(c) = 9 17 e p(d) = Sia C 1 = {0, 11, 10, 100} il codice a lunghezza variabile e l applicazione f 1 : S C 1 così definita: f 1 (a) = 11, f 1 (b) = 0, f 1 (c) = 100 e f 1 (d) = 10. La lunghezza media di tale codice è: 2

8 1.2 Schema di codifica l1 = n 2 p i l(f(s i )) = = (1.2) i=1 Si consideri adesso un secondo codice C 2 = {00, 10, 11, 01010} e l applicazione f 2 : S C 2 così definita: f 2 (a) = 01010, f 2 (b) = 00, f 2 (c) = 10 e f 2 (d) = 11. Analogamente a quanto fatto per C 1 calcoliamo la sua lunghezza media: l2 = n 2 p i l(f(s i )) = = (1.3) i=1 Si vede facilmente che il codice C 2 è più efficiente del codice C 1. L esempio 1 mostra la particolarità che il codice C 2 che contiene la parola più lunga ha una lunghezza media minore, ciò è dovuto al fatto che in tale codice la funzione di assegnazione associa la parola più lunga del codice alla probabilità minore. Dall esempio precedente si evince inoltre che quando si ha una conoscenza più dettagliata del sistema mediante la distribuzione di probabilità P, allora è conveniente usare un codice a lunghezza variabile. L esempio che segue mostra maggiormente quando detto e in modo più generale. Esempio 2 Sia un codice non a blocchi definito dalla sorgente S = {s 1, s 2, s 3, s 4, s 5 } e p(s 1 ) = 1 ɛ e p({s 2, s 3, s 4, s 5 }) = ɛ. Se si utilizza un codice a blocchi binario con due caratteri non si riescono a rappresentare tutti gli eventi di S perchè esso può contenere al massimo 4 parole (2 2 = 4), quindi è necessario utilizzare un codice a blocchi di 3 caratteri che permette di rappresentare fino a 8 parole (2 3 = 8). È evidente che un codice a blocchi di lunghezza tre ha sempre lunghezza media tre e ciò è indipendente dalla distribuzione P. Se invece è utilizzato un codice a lunghezza variabile definito dalla seguente funzione di codifica: f(s 1 ) = 0 e f(s 2 ) = 111, f(s 3 ) = 101, f(s 4 ) = 001, f(s 5 ) = 110 si ha che la lunghezza media di tale codice è: 3

9 1.3 Codici univocamente decifrabile e istantanei l c = n i=1 p il(f(s i )) = 1 p(s 1 ) + 3 p(s 2 ) + 3 p(s 3 ) + 3 p(s 4 ) + 3 p(s 5 ) = 1 p(s 1 ) + 3 (p(s 2 ) + p(s 3 ) + p(s 4 ) + p(s 5 )) essendo ɛ < 1. l c = (1 ɛ) + 3 ɛ = ɛ < 3, (1.4) L esempio 2 mostra chiaramente che quando non si ha una distribuzione P uniforme è più conveniente usare un codice a lunghezza variabile perchè permette di realizzare un codice più efficiente, se invece P definisce una distribuzione uniforme allora in questo caso conviene utilizzare un codice a blocchi e sfruttare la teoria dei codici che verrà presentata nei capitoli seguenti che permette migliori possibilità di individuazione e correzione di errore. 1.3 Codici univocamente decifrabile e istantanei Prima di affrontare le problematiche inerenti alla correzione degli errori che possono accadere in una trasmissione di un codice in questa sessione si affronterà il problema della lettura di una stringa costituita dalle parole di un codice C. Consideriamo ad esempio il codice C = {0, 01, 001}, ci si accorge subito che la stringa 001 letta da sinistra verso destra può essere interpretata in due modi differenti: essa può contenere l unica parola del codice 001 oppure la sequenza delle due parole 0 e 01. L esempio precedente mostra un ambiguità che può essere risolta definendo dei codici particolari che permettono la lettura delle stringhe in maniera unica. È evidente che un codice a blocchi di lunghezza n non presenta tali problematiche in quanto la lettura di ogni singola parola viene effettuata con intervalli di n caratteri. Se un codice C è a lunghezza variabile si dice che esso è univocamente decifrabile se, date le due parole c 1, c 2,..., c k e d 1, d 2,..., d f, allora si ha che c 1, c 2,..., c k = 4

10 1.3 Codici univocamente decifrabile e istantanei d 1, d 2,..., d f se e solo se k = f e c l = d l per 1 l k, tale proprietà esprime il fatto che una stringa che rappresenta una parola di C non può rappresentare una stringa di più parole di C. Da tale proprietà segue che un codice univocamente decifrabile è un codice che consente una lettura di una sua stringa da sinistra a destra senza generare ambiguità. Esempio 3 Il C = {1, 10, 100} è un codice decifrabile perchè qualunque stringa formata dalle sue parole è sempre leggibile in quanto il carattere 1 individua l inizio di ogni singola parola. Nella seguente stringa u = 1/10/100/1/1/1/1 si è posto il simbolo / per evidenziare meglio l inizio di ogni parola contenuta in essa. Un altra proprietà legata alla lettura delle stringhe di un codice C è quella legata alla necessità di riconoscere le parole del codice appena esse sono state ricevute, se un codice C ha questa proprietà esso è detto codice istantaneo. Esempio 4 Il codice C = {1, 01, 001} è un codice decifrabile e istantaneo, perchè al termine di ogni parola viene posto il carattere 1 che garantisce il termine di ogni singola parola, tale codice viene chiamato comma code. Il codice decifrabile descritto nell esempio 3 invece non ha le caratteristiche di essere istantaneo, infatti se ad esempio si è ricevuta la parola 10, non possiamo dire subito se siamo in presenza della parola 10 o se quello che abbiamo ricevuto è solo una parte della parola 100 ciò si può affermare solo alla ricezione del carattere successivo. Tutti i codici che sono istantanei sono chiaramente decifrabili, ma non è detto che un codice decifrabile sia istantaneo, ciò si deduce dalle considerazioni fatte nell esempio 4. NB: Tutti i codici a blocchi sono decifrabili e istantanei. 5

11 1.3 Codici univocamente decifrabile e istantanei I codici istantanei godono della proprietà del prefisso. Proprietà 1 (del prefisso) In un codice istantaneo C nessuna parola è prefisso (è posta all inizio) di un altra parola del codice, vale anche il viceversa. La dimostrazione della proprietà 1 è immediata ed essa è importante in quanto caratterizza i codici istantanei. Per i codici istantanei si ha il seguente teorema. Teorema 1 (di Kraft) Se C è un codice r-ario istantaneo costituito da n parole di lunghezza l i, con 1 i n, allora deve essere verificata la disuguaglianza di Kraft: n 1 r l i i=1 1. (1.5) Se esistono n interi positivi l 1, l 2,..., l n e r che verificano la disuguaglianza di Kraft, allora esiste un codice istantaneo con n parole di lunghezza l 1, l 2,..., l n. Dim. Dimostriamo la prima parte del teorema. Sia C un codice costituito dalle parole {c 1, c 2,..., c n } aventi rispettivamente lunghezza l 1, l 2,..., l n. Sia L = max {l 1, l 2,..., l n }, consideriamo la parola c i di lunghezza l i dove c i = x 1 x 2...x li, costruiamo una stringa di lunghezza L, u i = x 1 x 2...x li y li +1y li +2...y L, dove i primi l i caratteri sono la parola c i mentre gli ultimi L l i caratteri y j con l i + 1 j L sono caratteri scelti tra gli r caratteri dell alfabeto del codice C senza restrizioni e con la possibilità di essere ripetuti. Il numero totale di differenti 6

12 1.3 Codici univocamente decifrabile e istantanei stringhe di tipo u i è r L l i (ciò perchè i primi l i caratteri in u i rimangono sempre invariati), inoltre si ha che tutte le stringhe u i formate non possono essere parole del codice C in quanto esso è istantaneo e gode della proprietà del prefisso. Ripetiamo tale procedura su ogni singola parola c i del codice per 1 i n, per ognuna di esse si formano r L l i stringhe differenti tutte di lunghezza L. Sommando su i si ottiene: n r L l i = i=1 n i=1 r L r l i (1.6) La quantità espressa dalla (1.6) esprime il numero totale di stringhe u i che si ottiene da ogni singola parola del codice c i con 1 i n ed esse sono tutte distinte e di lunghezza L. Il valore r L esprime il numero totale di stringhe differenti di lunghezza L che si possono formare con un alfabeto r-ario, ne segue che valgono le seguenti disuguaglianze. n i=1 r L r l i = r L n i=1 1 r l i r L n i=1 1 r l i 1. (1.7) La (1.7) verifica la disuguaglianza di Kraft e la prima parte del teorema è provata. Dimostriamo la seconda parte del teorema. Determiniamo un algoritmo che permette di determinare un codice istantaneo che abbia n parole rispettivamente di lunghezza l 1, l 2,..., l n. Se α 1 è il numero delle parole del nostro codice istantaneo C di lunghezza 1, allora è necessario che α 1 r, è importante notare che in caso di uguaglianza il codice avrebbe solo parole di lunghezza uno; se α 2 è il numero di parole di lunghezza 2 di C, allora tale valore deve essere minore o uguale del numero totale di parole distinte di lunghezza 2 che si possono formare con un alfabeto di r simboli, inoltre poichè C è un codice istantaneo per esso vale la proprietà del prefisso ed è quindi necessario eliminare tutte le parole 7

13 1.3 Codici univocamente decifrabile e istantanei di lunghezza 2 che hanno come prefisso le parole del codice di lunghezza 1, cioè deve valere la seguente diseguaglianza: α 2 r 2 α 1 r. Analogamente se α 3 è il numero di parole del codice C con lunghezza 3 allora deve valere la seguente disuguaglianza: α 3 r 3 α 2 r α 1 r 2. (1.8) Dove il primo termine del secondo membro della (1.8) rappresenta il numero totale di parole distinte di lunghezza 3 che si possono formare con un alfabeto di r simboli a cui bisogna sottrarre le parole di lunghezza 3 che hanno come prefisso le parole del codice di lunghezza 2 (secondo termine del secondo membro nella disuguaglianza (1.8)) e le parole di lunghezza 3 che hanno come prefisso le parole del codice di lunghezza 1 (terzo termine del secondo membro nella disuguaglianza (1.8)). Se m è la massima lunghezza del codice C ( N.B. possono esistere lunghezze uguali cioè l i = l j ) e consideriamo tutti i possibili α i per 1 i m, il codice istantaneo esiste se ognuna delle seguenti disuguaglianze è vera. α 1 r α 1 r + α 2 r 2 α 1 r 2 + α 2 r + α 3 r 3. (1.9). α 1 r m 1 + α 2 r m α m r m Vediamo cosa accade, ad esempio, se la terza disuguaglianza α 1 r 2 + α 2 r + α 3 r 3 è vera. Tutti i suoi termini sono positivi, quindi si ha che vale anche la seguente 8

14 1.3 Codici univocamente decifrabile e istantanei disuguaglianza α 1 r 2 + α 2 r r 3 ; è possibile dividere ambo i membri di quest ultima disuguaglianza per r, si ottiene α 1 r + α 2 r 2, cioè anche la seconda disuguaglianza delle (1.9) è vera, seguendo un analogo procedimento è facile verificare che anche la prima disuguaglianza delle (1.9) è vera. Sfruttando la metodologia usata nel precedente caso particolare si può affermare che se una delle disuguaglianze della (1.9) è vera allora sono vere tutte le disuguaglianze che la precedono. Osserviamo l ultima disuguaglianza delle (1.9), se dividiamo ambo i membri per r m si ha: α 1 r + α 2 r α m r m 1, cioè m i=1 α i r i = n 1 r l i i=1 1. Tale disuguaglianza è la disuguaglianza di Kraft ed è vera per le ipotesi del teorema, quindi sono vere tutte le disuguaglianze che la precedono nella (1.9) e il teorema è provato. È importante notare che la seconda parte della dimostrazione del teorema precedente afferma che se un codice verifica la disuguaglianza di Kraft non è detto che esso sia istantaneo (vedi dall esempio 6), ma afferma che se è verificata la disuguaglianza di Kraft per i parametri l 1, l 2,..., l n e r, allora è possibile costruire un codice istantaneo r-ario con parole di lunghezza l 1, l 2,..., l n mediante l algoritmo presentato dalla dimostrazione del teorema di Kraft. 9

15 1.3 Codici univocamente decifrabile e istantanei Esempio 5 Consideriamo un codice 3-ario definito dall alfabeto A = {0, 1, 2} si vuole vedere se esiste un codice istantaneo con le seguenti lunghezze di parola: l 1 = l 2 = 1, l 3 = 2, l 4 = l 5 = 4, l 6 = 5. Come prima cosa verifichiamo se vale la disuguaglianza di Kraft: = (1.10) La disuguaglianza è verificata, cerchiamo un codice istantaneo che verifica le lunghezze l 1 = l 2 = 1, l 3 = 2, l 4 = l 5 = 4, l 6 = 5 seguendo l algoritmo definito nella seconda parte della dimostrazione del teorema di Kraft, le parole di lunghezza 1 sono c 1 = 0, c 2 = 1, la parola di lunghezza 2 è c 3 = 20, le parole di lunghezza 4 sono c 4 = 2100, c 5 = 2101, la parola di lunghezza 5 è c 6 = Il codice C = {0, 1, 20, 2100, 2101, 21100} è istantaneo perchè verifica la proprietà del prefisso. Esempio 6 Il codice C = {0, 11, 100, 110} verifica la diseguaglianza di Kraft infatti si ha che: = 1, ma tale codice non è istantaneo perchè non verifica la proprietà del prefisso. Un codice istantaneo è anche decifrabile e dal teorema di Kraft è immediato ottenere il seguente teorema. Teorema 2 Se esistono n interi positivi l 1, l 2,..., l n e r che verificano la disuguaglianza di Kraft, allora esiste un codice decifrabile con n parole di lunghezza l 1, l 2,..., l n. Resta da capire se per ogni codice decifrabile vale la disuguaglianza di Kraft, cioè se la prima parte del teorema di Kraft vale anche per i codici decifrabili. La risposta a tale quesito viene data dal seguente teorema di McMillan. 10

16 1.3 Codici univocamente decifrabile e istantanei Teorema 3 (di McMillan) Se C = {c 1, c 2,..., c n } è un codice decifrabile, allora vale la disuguaglianza di Kraft: n 1 r l i i=1 1. (1.11) Dim. Consideriamo α 1, α 2,..., α m il numero di parole del codice rispettivamente di lunghezza 1, 2,..., m. È facile verificare che il primo membro della disuguaglianza di Kraft può scriversi anche nel seguente modo: Eleviamo le due sommatorie ad un valore u, intero positivo: ( n i=1 ) u ( 1 m = r l i j=1 n i=1 α j r j 1 r l i = ) u = m j=1 α j r j. (1.12) ( α1 r + α 2 r α m r m ) u. (1.13) Per maggiore chiarezza l ultimo membro della (1.13) può essere scritto come il prodotto di u sommatorie che rappresentano lo stesso termine: ( α1 r + α 2 r + + α ) ( m α1 2 r m r + α 2 r + + α ) ( m α1 2 r m r + α 2 r + + α ) m. (1.14) 2 r m Lo svolgimento di tale prodotto può essere svolto ed espresso come la somma dei seguenti prodotti α i1α i2 α iu r i 1+i 2 + +i u. (1.15) i 1,i 2,,i u La sommatoria della (1.15) è estesa su tutti gli i 1, i 2,, i u con la limitazione 1 i j m con 1 j u. Posto k = i 1 + i i u la (1.15) può anche essere scritta nel seguente modo 11

17 1.3 Codici univocamente decifrabile e istantanei u m k=u i 1 +i i u=k α i1 α i2 α iu r k, (1.16) Nella (1.16) il valore minimo che può assumere k è u e il massimo è um e tale valore all interno della seconda sommatoria rimane sempre costante, quindi u m k=u 1 r k Consideriamo adesso la quantità: i 1 +i 2 + +i u=k α i1 α i2 α iu. (1.17) N k = α i1 α i2 α iu. (1.18) i 1 +i 2 + +i u =k Le quantità α i1, α i2,..., α iu rappresentano tutte le possibili parole di lunghezza k formate nel seguente modo: i primi i 1 caratteri individuano una parola del codice di lunghezza i 1, i successivi i 2 caratteri individuano una parola del codice di lunghezza i 2 fino ad arrivare agli ultimi i u che a loro volta sono una parola del codice di lunghezza i u. Figura 1.1: Stringhe della stessa lunghezza k, ma con sequenze di parole differenti e di differente lunghezza. Tutte queste stringhe essendo il codice decifrabile, quindi univocamente leggibile, sono tutte distinte tra di loro come si evince dalla (fig1.1), ricordiamo che se si ha un alfabeto r-ario il numero di tutte le possibili parole distinte di lunghezza k è r k, da cui segue che 12

18 1.4 Codici ottimi N k = α i1 α i2 α iu r k. (1.19) i 1 +i 2 + +i u=k Quindi la (1.17) può essere scritta nel seguente modo: u m k=u 1 r k In definitiva: i 1 +i i u =k α i1 α i1...α iu u m k=u 1 r k rk = u m k=u 1 = u m u u m. (1.20) ( n ) u 1 u m (1.21) r l i i=1 Elevando primo e secondo membro per 1 u si ha: n i=1 1 r l i (u) 1 u (m) 1 u (1.22) Per la scelta arbitraria di u si vede facilmente che per u vale la disuguaglianza di Kraft e il teorema è dimostrato. 1.4 Codici ottimi Data una sorgente S 0 consideriamo la famiglia C costituita da tutti i codici istantanei che si possono associare a S 0, chiaramente ad ogni codice di C è associata una sua lunghezza media, consideriamo la lunghezza media minima l min tra tutti i codici istantanei C ist associati a S 0, cioè lmin = min { lcist C ist C }. (1.23) Si definisce codice ottimo C un codice C ist istantaneo che ha lunghezza media l Cist uguale a l min. I codici ottimi godono delle seguenti tre proprietà. 13

19 1.4 Codici ottimi Proprietà 2 Se C è un codice ottimo associato alla sorgente S 0 = (S, P ) e c 1, c 2,..., c n sono le sue parole rispettivamente di lunghezza l 1, l 2,..., l n allora si ha che se p i > p j deve essere l i l j ( cioè alla probabilità maggiore si associa la parola di lunghezza minore) Dim. Supponiamo per assurdo che esiste un codice ottimo C per cui si ha che p i > p j e l i > l j. Costruiamo un codice C ottenuto da C in cui alla parola c i è associata la probabilità p j e alla parola c j è associata la probabilità p i mentre le altre parole c k sono legate alla stessa probabilità p k del codice C. Calcoliamo le lunghezze medie rispettivamente dei codici C e C e consideriamo la loro differenza. l C = n k=1 i j p k l k + p i l i + p j l j ; (1.24) l C = n k=1 i j p k l k + p i l j + p j l i ; (1.25) Dopo facili calcoli si ottiene. l C l C = p i l j + p j l i p i l i p j l j. (1.26) l C l C = p i (l j l i ) p j (l j l i ) = (p i p j ) (l j l i ) (1.27) Ricordando che l i > l j, (l j l i < 0) e p i > p j (p i p j > 0) ne segue che l C l C < 0 cioè l C < l C. Si è quindi determinato un codice C che è istantaneo, ma ha lunghezza media minore della lunghezza media del codice ottimo C e ciò è assurdo. Proprietà 3 Sia C un codice ottimo e sia l m la maggiore lunghezza tra le lunghezze delle parole del codice, allora esistono almeno due parole di lunghezza l m. 14

20 1.4 Codici ottimi Dim. Supponiamo per assurdo che esiste un codice ottimo C con una sola parola di lunghezza l m. Calcoliamo la sua lunghezza media m 1 l C = P k l k + P m l m (1.28) k=1 Consideriamo l unica parola c m C di lunghezza l m e consideriamo il codice C ottenuto da C modificando soltanto c m mediante l eliminazione dell ultimo carattere. Il codice C è un codice istantaneo perchè gode della proprietà del prefisso e la sua lunghezza media è: m 1 l C = p k l k + p m (l m 1). (1.29) k=1 È evidente che l C < l C. Si è determinato ancora una volta un codice istantaneo con lunghezza media minore della lunghezza media del codice ottimo C e ciò è assurdo. Proprietà 4 Sia C un codice ottimo e c m una parola di lunghezza massima l m, allora esiste un altra parola c k di eguale lunghezza l m tale che i primi l m 1 caratteri di c m e c k sono uguali. Dim. Per la proprietà precedente in un codice ottimo C esistano almeno due parole di lunghezza massima l m. Supponiamo per assurdo che non esistono due parole di lunghezza l m i cui primi l m 1 caratteri sono uguali. Se consideriamo una di tali parole e cancelliamo il suo ultimo carattere otteniamo un nuovo codice istantaneo C che gode della proprietà del prefisso (nessuna sua parola è prefisso di un altra) e la sua lunghezza media è minore della lunghezza media del codice ottimo C. 15

21 1.4 Codici ottimi Algoritmo di Huffman In questa sessione è presentato l Algoritmo di Huffman che consente di individuare un codice ottimo data una distribuzione di probabilità P. Tale algoritmo è valido per codici r-ari, ma qui sarà presentata la procedura che riguarda solo i codici binari. Algoritmo di Huffman 1. Si ordina la distribuzione di probabilità P 0 = {P 0 1, P 0 2,, P 0 n} in modo tale che le probabiltà hanno un ordine decrescente secondo gli indici, cioè P 0 i con i > j. P 0 j 2. Le due probabilità di valore inferiore, cioè P 0 n e P 0 n 1 si sommano, si ottiene il valore P 0 n 1 = P 0 n + P 0 n 1. Si considera la distribuzione di probabilità P 1 = { P 1 1, P 1 2,, P 1 n 1} in cui sono presenti tutte le probabilità di P 0 con esclusione dei valori P 0 n e P 0 n 1 al posto dei quali si è inserito il valore P 0 n 1. La distribuzione di probabilità P 1 è anch essa ordinata in ordine decrescente secondo gli indici e si ha che P 1 i = P 0 n 1 per qualche i con 1 i n Si ripete il passo precedente per altri n 2 passi. In ogni singolo passo j si determina una probabilità P j 1 n j valore minore. data dalla somma delle due probabilità di 4. Si ottiene la distribuzione di probabilità P n 2 costituita da soli due valori. 5. Si associano alle probabilità di P n 2 le parole 1 e 0 (la scelta è arbitraria), quindi alla distribuzione di probabilità P n 2 è associato il codice C n Una delle probabilità di P n 2 è del tipo P n 2 i i = 1, 2 (cioè del tipo P j 1 n j = P n 3 2 = P n P n 3 3 con con j = n 2), se ad essa nel passo precedente è stato associato il carattere k {0, 1}, allora nella distribuzione P n 3 alle 16

22 1.4 Codici ottimi probabilità P n 3 2 e P n 3 3 si associano le parole k1 e k0 (la scelta è arbitraria) e per essa si ottiene il codice C n Si ripete il procedimento precedente sino ad arrivare ad una assegnazione di parole alla distribuzione P 0. Tali parole associate alle probabilità di P 0 definiscono un codice ottimo binario C 0 e l algoritmo è concluso. Per maggiore chiarezza segue l esempio 7 che permette di esplicitare tutti i passi definiti nell algoritmo precedente. Esempio 7 Sia data la distribuzione di probabilità P 0 = {0.35, 0.20, 0.20, 0.15, 0.10}, le due probabilità di valore minore sono 0.10 e 0.15, la loro somma è 0.25, si ottiene nuova distribuzione di probabilità P 1 = {0.35, 0.25, 0.20, 0.20}. Seguendo lo stesso procedimento si sommano 0.20 e 0.20 si ottiene la distribuzione di probabilità P 2 = {0.40, 0.35, 0.25} e in seguito si sommano i valori0.35 e 0.25 si ottiene P 3 = {0.60, 0.40}. Definiamo adesso una codifica binaria seguendo i passi 5, 6 e 7 partendo dalla distribuzione P 3 fino ad arrivare alla distribuzione P 0. I passi dell algoritmo sono ben riassunti dalla tabella seguente * * * Tab.1 Il codice ottimo legato alla distribuzione di probabilità P 0 è C = {01, 11, 10, 001, 000} È necessario adesso provare che il codice ottenuto dall algoritmo di Huffmann è un codice ottimo, ciò è ottenuto dal teorema seguente. 17

23 1.4 Codici ottimi Teorema 4 Se C i è un codice ottimo ottenuto dall algoritmo di Huffman, allora anche C i 1 è un codice ottimo. L algoritmo di Huffmann genera un codice ottimo. Dim. Nell ultima distribuzione di probabilità, che si ottiene eseguendo l algoritmo di Huffman, è associato il codice ottimo C n 2 = {0, 1}, quindi se in generale si prova che l algoritmo di Huffmann genera dal codice C i ottimo il codice C i 1 anch esso ottimo, allora si è provato il teorema. Consideriamo il codice ottimo C i = { c 1, c 2,..., cm 1} e applichiamo l algoritmo di Huffman al codice C i, tenendo presente che L è la lunghezza della parola a cui si legano la somma di due probabilià, si ottiene il codice C i 1 = {c 1, c 2,..., c m 1 0, c m 1 1}, calcoliamo le lunghezze medie dei codici C i e C i 1 : li = m 2 k=1 p k l k + (p m 1 + p m ) L; (1.30) li 1 = m 2 k=1 p k l k + p m 1 (L + 1) + p m (L + 1). (1.31) Ricordiamo che nel codice C i 1 le parole c m 1 0 c m 1 0 e parole hanno lunghezza L + 1. Sottraendo membro a membro la (1.30) dalla (1.31) si ha: li 1 l i = p m 1 + p m l i 1 = l i + p m 1 + p m. (1.32) Supponiamo per assurdo che C i 1 non sia un codice ottimo e quindi esiste un codice ottimo C i 1, associato alla distribuzione di probabilità di C i 1, tale che l i 1 < l i 1. Se C i 1 è ottimo, per le proprietà 2, 3 e 4, esisteranno due parole di lunghezza massima e aventi i primi L 1 caratteri uguali con associate le probabilità p m e p m 1, cioè C i 1 = { c 1, c 2,..., c m 10, c m 11 }. Applicando l algoritmo di Huffman in senso opposto si determina un nuovo codice C i = { } c 1, c 2,..., c m 1. Anche per i due codici C i e C i 1 vale la relazione: 18

24 1.5 La funzione entropia l i 1 = l i + p m 1 + p m. (1.33) Poichè si è supposto che C i 1 è ottimo mentre per assurdo C i 1 non lo è allora deve valere la seguente disuguaglianza: l i 1 < l i 1 (1.34) Se ciò è vero confrontando le equazioni (1.32) e (1.33) si ha che vale la seguente disuguaglianza. l i < l i (1.35) Ciò implica che C i non è ottimo, questo è assurdo e il teorema è provato. 1.5 La funzione entropia Nell esempio 1 si è vista l importanza della conoscenza della distribuzione delle probabilità, da qui nasce l esigenza di determinare una funzione che permetta di misurare la conoscenza del sistema mediante la conoscenza della sua distribuzione di probabilità. Tale funzione H è la funzione entropia che è differente dalla grandezza fisica usata in termodinamica. Essa nasce dagli studi relativi alla conoscenza di informazioni di un sistema fatti da Shannon nel Consideriamo la variabile random X a cui associamo gli eventi X = {x 1, x 2,..., x q }. A ciascuno degli eventi x i è possibile associare una distribuzione di probabilità P = {p 1, p 2,..., p q }. La funzione entropia deve soddisfare le seguenti tre proprietà: 1. Se tutte le probabilità di P sono uguali cioè p i = 1 q allora H è una funzione crescente, cioè se q < q allora si ha: 19

25 1.5 La funzione entropia. H ( 1 q, 1 q,..., 1 ) ( 1 < H q q, 1 q,..., 1 ) q Nella realtà questa proprietà esprime che maggiore è il numero di eventi q maggiore è l incertezza legata agli eventi. 2. H è una funzione continua cioè a piccole variazioni di probabilità corrispondono piccole variazioni di H. 3. Vale il principio che un esperimento può essere scomposto in una successione di esperimenti successivi. Esempio 7 Diamo per quest ultima proprietà un esempio di un esperimento che è rappresentato graficamente nella seguente figura. Esso ha una distribuzione di probabilità P = { 1 2, 1 3, 1 6 } e può essere scomposto nella successione dei due esperimenti di probabilità P = { 1 2, 1 2 } e P = { 2 3, 1 3 }. Tale scomposizione può essere rappresentata mediante la funzione entropia nel seguente modo: H ( 1 2, 1 3, 1 ) ( 1 = H 6 2, 1 ) + 1 ( H 3, 1 ). 3 20

26 1.5 La funzione entropia Teorema 5 La sola funzione che verifica le tre proprietà 1, 2 e 3 è: H(p 1, p 2,, p q ) = c con c costante positiva. q p i log b p i (b > 1) (1.36) i=1 Dim. Poniamo H ( 1 q,, 1 ) = f(q). (1.37) q Supponiamo di avere s m eventi legati ad una determinata variabile random. Poichè deve valere la terza proprietà, s m può essere scomposto in m sequenze di s eventi, cioè: f(s m ) = mf(s). (1.38) Fissati t e n interi positivi è sempre possibile determinare un m tale che: 2 m t n < 2 m+1. (1.39) Passando ai logaritmi in base b e sfruttando le loro proprietà si ha: log b 2 m log b t n < log b 2 m+1, (1.40) m log b 2 n log b t < (m + 1) log b 2. (1.41) Dividendo per n log b 2 m n log b t }{{} log b {}}{ < m + 1 n. (1.42) 21

27 1.5 La funzione entropia Poichè f(q), per le proprietà 1 e 2, è una funzione continua e crescente si ha che applicandola alle disuguaglianze della (1.39) esse continuano a sussistere, cioè: dividendo per nf(2): f(2 m ) f(t n ) < f(2 m+1 ), (1.43) m n f(t) }{{} f(2) 1 2 {}}{ < m + 1 n Moltiplicando la 1 disuguaglianza della (1.44) per 1 si ottiene:. (1.44) f(t) f(2) m n. (1.45) Sommando la (1.45) con la 2 disuguaglianza della (1.42) si ha: log b t log b 2 f(t) f(2) < 1 n. (1.46) Allo stesso modo, moltiplicando la 2 disuguaglianza della (1.44) per 1 si ottiene: f(t) f(2) > m n 1 n. (1.47) Sommando la (1.47) con la 1 disuguaglianza della (1.42) si ha: log b t log b 2 f(t) f(2) > 1 n, (1.48) da cui si ricava: 1 n < log b t log b 2 f(t) f(2) < 1 n log b t log b 2 f(t) f(2) < 1 n (1.49) e per n si ha: lim log b t n log b 2 f(t) f(2) = 0 log b t log b 2 = f(t) f(2) f(t) = f(2) log b t log b 2 = c log b t. (1.50) Consideriamo adesso una distribuzione di probabilità con probabilità razionali: p i = k i j k j con k i intero i e i k i j k j = 1 (1.51) 22

28 1.5 La funzione entropia Scomponiamo l esperimento in una successione di due eventi mediante le distribuzioni di probabilità rappresentate nella figura seguente. È possibile allora scrivere: H ( 1 ki, 1 ki,, 1 ki ) = H (p 1, p 2,..., p m ) + p 1 c log b k 1 + p 2 c log b k p m c log b k m = H (p 1, p 2,..., p m ) + c p i log b k i. Dopo semplici calcoli si ha: H (p 1, p 2,..., p m ) = H ( 1 i k, i 1 i k,..., i c log b i k i c i p i log b k i = c log b j k j i c i p i log b k j c j i p i log b k i = c i ) 1 i k c i p i log b k i = i k i j k j p i log b La condizione necessaria del teorema è provata. k i i k j c i = c i p i log b k i = p i log p i. Il viceversa se H b (p 1, p 2,, p m ) = c m i=1 p i log b p i allora si ha che le proprietà sono tutte verificate e il teorema è provato. Dal teorema precedente si ha che per un sistema che ha una distribuzione di probabilità P = {p 1, p 2,, p m } la funzione entropia è definita come la quantità: m H b (p 1, p 2,, p m ) = p i log b p i. i=1 23

29 1.5 La funzione entropia Dove la costante c è stata normalizzata a 1. Se il valore di b in H è 2 allora l entropia prende il nome di entropia binaria Proprietà della funzione entropia Siano X e Y due variabili random e sia p(x i, y j ) la probabilità congiunta delle due variabili, allora l entropia congiunta a X e Y è definita come: H(X, Y ) = i,j p(x i, y j ) log 1 p(x i, y j ). (1.52) Enunciamo il seguente lemma omettendo la dimostrazione. Lemma 1 Sia {p 1, p 2,, p m } una distribuzione di probabilità e sia {q 1, q 2,..., q m } una sequenza di numeri reali con 0 q i 1 e q i 1, allora si ha che: pi log 1 p i p i log 1 q i (1.53) Consideriamo adesso una sequenza di teoremi che permettono di evidenziare alcune proprietà della funzione entropia. Teorema 6 Se X è una variabile aleatoria si ha che: 0 H(X) log q (1.54) Dim. Chiaramente H(X) 0. Per definizione di entropia si può scrivere: da cui: H(X) = q p i log 1 p i i=1 q i=1 p i log 1 1 q = q p i log q (1.55) i=1 H(X) log q (1.56) 24

30 1.5 La funzione entropia Teorema 7 Siano X e Y due variabili random, allora si ha: H(X, Y ) H(X) + H(Y ) (1.57) Dim. Se consideriamo la distribuzione di probabilità congiunta ad X e Y e sommo solo secondo l indice legato a una variabile random (cioè si varia i lasciando fissato j e viceversa) si ha: quindi: H(X) + H(Y ) = 1 p(x i ) log p(x i i ) + p(y j ) log j = i,j p(x 1 i, y j ) log p(x i ) + 1 p(x i, y j ) log p(y i,j j ) = = i,j p(x 1 i, y j ) log p(x i )p(y j ) p(x i, y j ) log i,j p(x i, y j ) = p(x i ), (1.58) j p(x i, y j ) = p(y j ). (1.59) i 1 p(y j ) = 1 p(x i, y j ) = H(X, Y ). Il teorema è provato. Siano X e Y due variabili random e p(y j x i ) la distribuzione di probabilità dell evento Y condizionato dall evento X, definiamo l entropia condizionata nel seguente modo: H(X Y ) = i,j 1 p(y j )p(x i y j ) log p(x i y j ) = j p(y j )H(X y j ) (1.60) Teorema 8 Se X e Y sono due variabili random, allora: H(X Y ) = H(X, Y ) H(Y ). (1.61) 25

31 1.5 La funzione entropia Dim. Dalla precedente definizione abbiamo: H(X Y ) = i,j p(y j )p(x i y j ) log 1 p(x i y j ). (1.62) Ricordando che: p(x i y j ) = p(x i, y j ) p(y j ). (1.63) possiamo scrivere: H(X Y ) = p(x i, y j ) log p(y j) p(x i,j i, y j ) = 1 p(x i, y j ) log p(x i,j i, y j ) 1 p(x i, y j ) log p(y i,j j ) = H(X, Y ) 1 p(y j ) log = H(X, Y ) H(Y ). p(y j j ) Il teorema è provato. Consideriamo l insieme dei possibili segnali che si presentano in ingresso ad un ricevitore E = {a 1,..., a m }, supponiamo di avere associata ad esso una distribuzione di probabilità p(a i ) con 1 i m. Possiamo allora scrivere l entropia in ingresso come: H(E) = i p(a i ) log p(a i ) = i p(a i ) log 1 p(a i ) (1.64) Siano U = {u 1,..., u m } l insieme dei segnali prodotti dalla sorgente in trasmissione, possiamo definire informazione la quantità: I(E, U) = H(E) H(E U). (1.65) Da essa è possibile definire capacità del canale come la quantità C = max E I(E, U). (1.66) Essa è legata alla determinazione di una distribuzione di probabilità E tale che rende massima I(E, U). 26

32 Capitolo 2 Teoria dei Codici I Primi concetti 2.1 Introduzione In questo capitolo vengono presentati i primi concetti legati alla teoria dei codici. Le prime domande che si pongono sono legate alle motivazioni dell origine della teoria dei codici e alla sua utilità. Quando un sistema trasmissivo invia delle informazioni ad un sistema ricevente, possiamo pensare ad una comunicazione telefonica o trasmissioni via etere o anche trasmissioni che provengono dall esterno del nostro pianeta inviate da sonde, astronavi o shuttle, nella realtà fisica del nostro universo può accadere che tali trasmissioni vengano distorte e il segnale trasmesso ne risulti alterato nella sua ricezione. Il sistema su cui vengono inviate le informazioni viene chiamato canale. Esso può essere individuato dal mezzo trasmissivo su cui vengono inviate informazioni in una normale comunicazione telefonica o un in invio dati tra due sistemi informatici collegati, il canale può anche essere costituito dallo spazio in cui si propagano onde 27

33 2.1 Introduzione elettromagnetiche che trasportano informazioni. In ogni canale esiste sempre la presenza di rumore che compromette la trasmissione. Tale rumore si può legare a interferenze elettromagnetiche (disturbi radio, attività solare, ecc.), competizioni di trasmissione, fattori di disturbo random, e tanti altri fattori, ognuno legato al tipo di trasmissione che si sta effettuando. Un altro tipo di applicazione della teoria dei codici si ha quando si leggono informazioni su un supporto, in questo caso il rumore può essere legato alla non perfetta condizione del supporto (ad esmpio sporcizia, presenza di graffi in CD o DVD o invecchiamento del supporto) o a difficoltà del sistema di lettura. Per motivazioni legate al sistema hardware l informazione viaggia in sequenza di informazioni binarie e quindi essa viaggia mediante codici binari. In questi appunti a partire da questo capitolo saranno trattati codici a blocchi. La motivazione per cui nella maggior parte dei casi si usano codici a blocchi sta nel fatto che l esperienza fisica e quindi la rigorosa osservazione sperimentale, associa ai sistemi trasmissivi una distribuzione di probabilià costante. In particolare come detto precedentemente l alfabeto usato è del tipo A = {0, 1} e ogni suo carattere è chiamato bit. Ad ogni singolo bit, come rappresentato nella figura 2.1, può essere associata una probabilità p che esprime la probabilità che esso venga ricevuto correttamente, chiaramente la probabilità che un bit non sia trasmesso correttamente è 1 p. La probabilità p è chiaramente legata al sistema trasmissivo ed essa prende il nome di efficienza del canale, negli attuali sistemi trasmissivi essa supera il valore 0.97 cioè può assumere valori molto alti, ma è evidente che in un numero di bits molto alto la probabilità che l informazione venga inficiata da errore non è trascurabile. Un canale C h1, con efficienza p 1, si dice più efficiente del canale C h2, di efficienza p 2, se si ha che p 1 > p 2. Varie sono state nel tempo le tecniche di controllo e/o correzione di errore, alcune 28

34 2.1 Introduzione 0 P 0 1 P - 1 P P Figura 2.1: delle quali molto semplici come, ad esempio, l aggiunta di un bit ad ogni parola di un codice in modo tale che tutte le sue parole contengano un numero pari di bits di valore 1. Il codice C = {111, 011, 001, 100, 110, 010} con l aggiunta del bit di parità diventa C = {1111, 0110, 0011, 1001, 1100, 0101}, si vede facilmente che se si riceve la parola 0010 avendo un numero di bits di valore 1 dispari non è una parola del codice. Un altra tecnica di controllo e correzione di errore, detta di ridondanza, è quella di trasmettere più volte la stessa parola e, in ricezione, di controllare se anche la sequenza di ricezione ha sempre la stessa ripetizione, se ciò non avviene allora si effettua la correzione scegliendo nella sequenza la parola del codice che è stata ripetuta più volte. Questa tecnica contrariamente alla precedente oltre ad individuare l errore permette anche di correggerlo, inoltre maggiore è il numero di ripetizioni di una stessa parola in una sequenza, maggiore è la probabilità che la correzione sia esatta. Esiste però un importante inconveniente in tale tecnica, essa infatti non permette un numero elevato di ripetizioni dato che maggiore è il loro numero, minore è la velocità di trasmissione di informazione. 29

35 2.2 Probabilità e distanza 2.2 Probabilità e distanza Il problema della correzione delle parole del codice è essenzialmente legato al concetto di probabilità. La probabilità che la parola v, avente lunghezza n e appartenente al codice a blocchi C di efficienza p, sia trasmessa correttamente è p n. Supponiamo adesso di trasmettere la parola v C, ma di ricevere la parola w / C, come risolvere il problema della correzione di w? È necessario definire una funzione che determini la probabilità che la parola v C sia trasmessa e la parola w / C sia ricevuta. In generale tale funzione può essere definita, indipendentemente dal concetto di parola inviata e ricevuta, nel seguente modo: φ : K n K n [0, 1], dove K n esprime l insieme di tutte le possibili parole di lunghezza n i cui caratteri appartengono all insieme K = {0, 1}, K rappresenta quindi l alfabeto del codice. Se Φ (v, w) è la probabilità che la parola v C è stata inviata e w ricevuta, allora si ha: Φ (v, w) = p n d (1 p) d, (2.1) dove d è il numero di bits differenti tra le parole v e w, n è la lunghezza delle parole del codice C, n d rappresenta il numero di bits trasmessi correttamente, d i bits trasmessi in maniera errata e 1 p è la probabilità che un singolo bit giunga in maniera errata. La quantità d è chiamata distanza tra le parole v e w e si indica con la simbologia d (v, w). Chiaramente non è difficile provare che tra due parole di lunghezza n vale la seguente uguaglianza d (v, w) = d (w, v). 30

36 2.2 Probabilità e distanza Esempio 1 Sia C un codice a blocchi di lunghezza 5. Per ogni parola v C la probabilità che v sia ricevuta correttamente (cioè w = v) è: Φ(v, v) = p 5 Se invece la parola inviata è v = e quella ricevuta è w = 11001, allora la distanza tra v e w è 2 e si ha che: Φ(v, w) = p 3 (1 p) 2 Individuiamo adesso una tecnica che permette di determinare la correzione di un errore in ricezione. Supponiamo di aver ricevuto la parola w e che essa non appartiene al codice C. Tale tecnica di correzione di errore è basata sull individuazione della parola v C tale che ad essa è associata la probabilità massima rispetto alla parola ricevuta w mediante la funzione Φ cioè: Φ (v, w) max = max {Φ (v, w) : v C}. (2.2) Quindi se si riceve una parola w non appartenente al codice a blocchi C si individua la parola del codice v tale che la funzione Φ è massima al variare di v in C, fissata w. Tale parola v si sostituisce a w. È possibile che in tale tecnica si abbia un insieme di parole del codice che hanno tutte la stessa probabilità massima, in tal caso si genera un ambiguità, in seguito vedremo come affrontare tale evenienza. Consideriamo adesso un risultato che permette di associare il concetto di probabilità definito dalla funzione Φ al concetto di distanza tra due parole. 31

37 2.2 Probabilità e distanza Teorema 9 Sia C un codice a blocchi di lunghezza n, con 1 2 < p < 1 e siano v 1 e v 2 due parole del codice C. Se d 1 è la distanza tra v 1 e la parola ricevuta w e d 2 è la distanza tra v 2 e w, allora si ha che: se e solo se d 1 > d 2, vale anche il viceversa. Φ(v 1, w) < Φ(v 2, w) (2.3) Dim. La disuguaglianza Φ(v 1, w) < Φ(v 2, w) vale se e solo se: p n d 1 (1 p) d 1 < p n d 2 (1 p) d 2 ; p n d 1 (1 p) d 1 p n d 2 (1 p) d 2 < 1; p n d 1 n+d 2 (1 p) d 1 d 2 < 1; p d 2 d 1 (1 p) (d 2 d 1 ) < 1; ( ) d2 d p 1 < 1. (2.4) 1 p Poichè per le ipotesi 1 2 < p < 1 si ha che p > 1 p ovvero: p 1 p > 1, 32

38 2.2 Probabilità e distanza allora la (2.4) è vera se e solo se l esponente è negativo cioè se: d 2 d 1 < 0 d 2 < d 1, (2.5) e il teorema è provato. Il teorema precedente assume una rilevanza fondamentale in quanto permette di abbandonare il concetto di probabilità e di sostituirlo con il concetto di distanza tra due parole. La tecnica di correzione di errore esposta precedentemente adesso cambia nel seguente modo: se si riceve una parola w non appartenente al codice C si individua la parola v C che ha distanza minima da w e si sostituisce a w, ciò equivale al fatto che la funzione Φ(v, w), fissata w, assume valore massimo per v C. L esempio seguente chiarisce meglio tale tecnica. Esempio 2 Sia il codice C = {01101, 01001, 10100, 10101} e supponiamo di ricevere la parola w = non appartenente al codice C. Esaminiamo la tabella seguente. C w distanza c c c c Tab.1 La parola del codice che ha distanza minima da w è c 3 = 10100, tale parola è quella che corregge w ed è quella che tra tutte le parole del codice C ha la massima probabilità di essere stata inviata in trasmissione. 33

39 2.3 Peso ed errore 2.3 Peso ed errore Si è precedentemente detto che l alfabeto dei codici a blocchi è K = {0, 1}, ma tale insieme di caratteri è anche un insieme numerico e su di esso possono essere definite due operazioni algebriche binarie, una di somma e l altra di prodotto definite dalla tabella seguente. Somma Prodotto = = = = = = = = 1 Tab.2 Le due operazioni di somma e prodotto danno all insieme K le proprietà di campo. L insieme K n, come precedentemente detto, è l insieme di tutte le possibili differenti parole binarie di lunghezza n, tale insieme è finito ed ha cardinalità uguale a 2 n, perchè ogni singola componente di una parola di K n può assumere valori 0 o 1. L insieme K n può anche assumere la struttura di spazio vettoriale se si interpretano le sue parole come vettori e su di esse si definiscono le operazioni di somma vettoriale e di prodotto esterno tra gli elementi di K e K n mediante i concetti di spazio vettoriale introdotti nei corsi base di algebra lineare. La somma tra le componenti corrispondenti di due parole è data dall operazione di somma definita su K. Un esempio di somma tra le due parole (101) e (111) è: (101) + (111) = (010). È importante notare che la somma di due parole uguali è uguale alla parola che possiede in tutte le sue componenti bits di valore 0, tale parola è detta nulla e si 34

40 2.3 Peso ed errore indica con il simbolo 0, cioè v K n si ha che v + v = 0. Tale proprietà permette di capire che la parola opposta di una qualunque parola v K n è la parola stessa. Si ha inoltre che vale la seguente proprietà. Proprietà 5 Se v + w = 0, allora si ha che v = w. Si è preferito evidenziare tale proprietà perchè molto spesso chi comincia a studiare questi argomenti commette l errore di scrivere v = w, ciò è sbagliato!!! Infatti se vale l eguaglianza v + w = 0, allora vale anche v + w + w = w che è equivalente a v + 0 = w ed infine si ha v = w. Diamo adesso l importante nozione di errore per un codice C a blocchi. Supponiamo che è stata inviata la parola v C e si sia ricevuta la differente parola w, allora si definisce errore tra v e w la parola u così definita: u = v + w. (2.6) Il concetto di errore legato alle parole v e w può per certi versi sembrare strano, infatti nella sua definizione si capisce facilmente che per determinare u non solo è necessaria la parola w conosciuta in ricezione, ma anche la parola trasmessa. Questo non deve sorprendere se si pensa che, come vedremo nel capitolo 3 e nei successivi, la teoria dei codici in correzione di errore ha come obiettivo principale quello di individuare, mediante tecniche matematiche, la parola u indipendentemente dalla conoscenza di v. Se si riesce in tale obiettivo, dopo aver verificato che w / C, per determinare v basta sommare le parole w + u e si ottiene la parola inviata. Se v K n, allora si definisce peso di v il numero di bits che hanno valore 1 in v. Tale valore si esprime secondo la simbologia wt(v). Ad esempio il peso della parola v = K 6 è uguale a tre, cioè wt (011001) = 3. 35

FUNZIONI CONTINUE - ESERCIZI SVOLTI

FUNZIONI CONTINUE - ESERCIZI SVOLTI FUNZIONI CONTINUE - ESERCIZI SVOLTI 1) Verificare che x è continua in x 0 per ogni x 0 0 ) Verificare che 1 x 1 x 0 è continua in x 0 per ogni x 0 0 3) Disegnare il grafico e studiare i punti di discontinuità

Dettagli

2) Codici univocamente decifrabili e codici a prefisso.

2) Codici univocamente decifrabili e codici a prefisso. Argomenti della Lezione ) Codici di sorgente 2) Codici univocamente decifrabili e codici a prefisso. 3) Disuguaglianza di Kraft 4) Primo Teorema di Shannon 5) Codifica di Huffman Codifica di sorgente Il

Dettagli

Esercitazioni di statistica

Esercitazioni di statistica Esercitazioni di statistica Misure di associazione: Indipendenza assoluta e in media Stefania Spina Universitá di Napoli Federico II stefania.spina@unina.it 22 ottobre 2014 Stefania Spina Esercitazioni

Dettagli

CAPITOLO V. DATABASE: Il modello relazionale

CAPITOLO V. DATABASE: Il modello relazionale CAPITOLO V DATABASE: Il modello relazionale Il modello relazionale offre una rappresentazione matematica dei dati basata sul concetto di relazione normalizzata. I principi del modello relazionale furono

Dettagli

ESERCIZI DEL CORSO DI INFORMATICA

ESERCIZI DEL CORSO DI INFORMATICA ESERCIZI DEL CORSO DI INFORMTIC Questa breve raccolta di esercizi vuole mettere in luce alcuni aspetti della prima parte del corso e fornire qualche spunto di riflessione. Il contenuto del materiale seguente

Dettagli

Indice. A Riassunto formule principali sulla Teoria dell Informazione per sorgenti135

Indice. A Riassunto formule principali sulla Teoria dell Informazione per sorgenti135 Indice 8 Teoria dell Informazione per sorgenti 123 8.1 Introduzione.................................... 123 8.2 Codifica di sorgente............................... 123 8.2.1 Classificazione tecniche di

Dettagli

Generazione di Numeri Casuali- Parte 2

Generazione di Numeri Casuali- Parte 2 Esercitazione con generatori di numeri casuali Seconda parte Sommario Trasformazioni di Variabili Aleatorie Trasformazione non lineare: numeri casuali di tipo Lognormale Trasformazioni affini Numeri casuali

Dettagli

Esercizi sulla conversione tra unità di misura

Esercizi sulla conversione tra unità di misura Esercizi sulla conversione tra unità di misura Autore: Enrico Campanelli Prima stesura: Settembre 2013 Ultima revisione: Settembre 2013 Per segnalare errori o per osservazioni e suggerimenti di qualsiasi

Dettagli

Il Metodo Scientifico

Il Metodo Scientifico Unita Naturali Il Metodo Scientifico La Fisica si occupa di descrivere ed interpretare i fenomeni naturali usando il metodo scientifico. Passi del metodo scientifico: Schematizzazione: modello semplificato

Dettagli

0.1 Esercizi calcolo combinatorio

0.1 Esercizi calcolo combinatorio 0.1 Esercizi calcolo combinatorio Esercizio 1. Sia T l insieme dei primi 100 numeri naturali. Calcolare: 1. Il numero di sottoinsiemi A di T che contengono esattamente 8 pari.. Il numero di coppie (A,

Dettagli

Studio di funzione. Tutti i diritti sono riservati. E vietata la riproduzione, anche parziale, senza il consenso dell autore. Funzioni elementari 2

Studio di funzione. Tutti i diritti sono riservati. E vietata la riproduzione, anche parziale, senza il consenso dell autore. Funzioni elementari 2 Studio di funzione Copyright c 2009 Pasquale Terrecuso Tutti i diritti sono riservati. E vietata la riproduzione, anche parziale, senza il consenso dell autore. Funzioni elementari 2 Studio di funzione

Dettagli

Sistemi Web per il turismo - lezione 3 -

Sistemi Web per il turismo - lezione 3 - Sistemi Web per il turismo - lezione 3 - Software Si definisce software il complesso di comandi che fanno eseguire al computer delle operazioni. Il termine si contrappone ad hardware, che invece designa

Dettagli

Lezione 3: Il problema del consumatore: Il

Lezione 3: Il problema del consumatore: Il Corso di Economica Politica prof. Stefano Papa Lezione 3: Il problema del consumatore: Il vincolo di bilancio Facoltà di Economia Università di Roma La Sapienza Il problema del consumatore 2 Applichiamo

Dettagli

Entropia. Motivazione. ? Quant è l informazione portata dalla sequenza? Abbiamo una sequenza S di N simboli (campioni audio, pixel, caratteri,...

Entropia. Motivazione. ? Quant è l informazione portata dalla sequenza? Abbiamo una sequenza S di N simboli (campioni audio, pixel, caratteri,... Entropia Motivazione Abbiamo una sequenza S di N simboli (campioni audio, pixel, caratteri,... ) s,s 2,s 3,... ognuno dei quali appartiene ad un alfabeto A di M elementi.? Quant è l informazione portata

Dettagli

Riconoscere e formalizzare le dipendenze funzionali

Riconoscere e formalizzare le dipendenze funzionali Riconoscere e formalizzare le dipendenze funzionali Giorgio Ghelli 25 ottobre 2007 1 Riconoscere e formalizzare le dipendenze funzionali Non sempre è facile indiduare le dipendenze funzionali espresse

Dettagli

Lezione 12 Argomenti

Lezione 12 Argomenti Lezione 12 Argomenti Costi di produzione: differenza tra costo economico e costo contabile I costi nel breve periodo Relazione di breve periodo tra funzione di produzione, produttività del lavoro e costi

Dettagli

CAPITOLO IV RISOLUZIONE DEI SISTEMI LINEARI COL METODO DEI DETERMINANTI

CAPITOLO IV RISOLUZIONE DEI SISTEMI LINEARI COL METODO DEI DETERMINANTI CAPITOLO IV RISOLUZIONE DEI SISTEMI LINEARI COL METODO DEI DETERMINANTI 1. REGOLA DI CRAMER Sia S un sistema lineare di n ( 2) equazioni in n incognite su un campo K : a 11 x 1 + a 12 x 2 + + a 1n x n

Dettagli

Domanda e offerta. consumatori di un bene/servizio per ciascun livello di prezzo del bene/servizio preso

Domanda e offerta. consumatori di un bene/servizio per ciascun livello di prezzo del bene/servizio preso . . La funzione di domanda La funzione di domanda (o curva di domanda) rappresenta la quantità domandata dai consumatori di un bene/servizio per ciascun livello di prezzo del bene/servizio preso in considerazione.

Dettagli

Appunti del corso di Informatica 1 (IN110 Fondamenti) 3 Modelli di calcolo

Appunti del corso di Informatica 1 (IN110 Fondamenti) 3 Modelli di calcolo Università Roma Tre Dipartimento di Matematica e Fisica Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 3 Modelli di calcolo Marco Liverani (liverani@mat.uniroma3.it)

Dettagli

Teoria della probabilità Assiomi e teoremi

Teoria della probabilità Assiomi e teoremi Corso di Laurea a Distanza in Ingegneria Elettrica Corso di Comunicazioni Elettriche Teoria della probabilità Assiomi e teoremi A.A. 2008-09 Alberto Perotti DELEN-DAUIN Esperimento casuale Esperimento

Dettagli

Matematica con il foglio di calcolo

Matematica con il foglio di calcolo Matematica con il foglio di calcolo Sottotitolo: Classe: V primaria Argomento: Numeri e operazioni Autore: Guido Gottardi, Alberto Battaini Introduzione: l uso del foglio di calcolo offre l opportunità

Dettagli

Esercitazione n o 3 per il corso di Ricerca Operativa

Esercitazione n o 3 per il corso di Ricerca Operativa Esercitazione n o 3 per il corso di Ricerca Operativa Ultimo aggiornamento October 17, 2011 Fornitura acqua Una città deve essere rifornita, ogni giorno, con 500 000 litri di acqua. Si richiede che l acqua

Dettagli

Geometria Superiore Esercizi 1 (da consegnare entro... )

Geometria Superiore Esercizi 1 (da consegnare entro... ) Geometria Superiore Esercizi 1 (da consegnare entro... ) In questi esercizi analizziamo il concetto di paracompattezza per uno spazio topologico e vediamo come questo implichi l esistenza di partizioni

Dettagli

ITCS Erasmo da Rotterdam. Anno Scolastico 2014/2015. CLASSE 4^ M Costruzioni, ambiente e territorio

ITCS Erasmo da Rotterdam. Anno Scolastico 2014/2015. CLASSE 4^ M Costruzioni, ambiente e territorio ITCS Erasmo da Rotterdam Anno Scolastico 014/015 CLASSE 4^ M Costruzioni, ambiente e territorio INDICAZIONI PER IL LAVORO ESTIVO DI MATEMATICA e COMPLEMENTI di MATEMATICA GLI STUDENTI CON IL DEBITO FORMATIVO

Dettagli

Informatica Teorica. Macchine a registri

Informatica Teorica. Macchine a registri Informatica Teorica Macchine a registri 1 Macchine a registri RAM (Random Access Machine) astrazione ragionevole di un calcolatore nastro di ingresso nastro di uscita unità centrale in grado di eseguire

Dettagli

Protocollo dei saperi imprescindibili Ordine di scuola: professionale

Protocollo dei saperi imprescindibili Ordine di scuola: professionale Protocollo dei saperi imprescindibili Ordine di scuola: professionale DISCIPLINA: MATEMATICA RESPONSABILE: CAGNESCHI F. IMPERATORE D. CLASSE: prima servizi commerciali Utilizzare le tecniche e le procedure

Dettagli

INDICAZIONI PER LA RICERCA DEGLI ASINTOTI VERTICALI

INDICAZIONI PER LA RICERCA DEGLI ASINTOTI VERTICALI 2.13 ASINTOTI 44 Un "asintoto", per una funzione y = f( ), è una retta alla quale il grafico della funzione "si avvicina indefinitamente", "si avvicina di tanto quanto noi vogliamo", nel senso precisato

Dettagli

Definizione Dati due insiemi A e B, contenuti nel campo reale R, si definisce funzione reale di variabile reale una legge f : A

Definizione Dati due insiemi A e B, contenuti nel campo reale R, si definisce funzione reale di variabile reale una legge f : A Scopo centrale, sia della teoria statistica che della economica, è proprio quello di esprimere ed analizzare le relazioni, esistenti tra le variabili statistiche ed economiche, che, in linguaggio matematico,

Dettagli

Syllabus: argomenti di Matematica delle prove di valutazione

Syllabus: argomenti di Matematica delle prove di valutazione Syllabus: argomenti di Matematica delle prove di valutazione abcdef... ABC (senza calcolatrici, senza palmari, senza telefonini... ) Gli Argomenti A. Numeri frazioni e numeri decimali massimo comun divisore,

Dettagli

Lab. Sistemi - Classe 5Bn A. S. 2000/2001 ITIS Primo Levi - Torino AA.AA. STANDARD SERIALE DI COMUNICAZIONE: RS232 Lo standard seriale di

Lab. Sistemi - Classe 5Bn A. S. 2000/2001 ITIS Primo Levi - Torino AA.AA. STANDARD SERIALE DI COMUNICAZIONE: RS232 Lo standard seriale di STANDARD SERIALE DI COMUNICAZIONE: RS232 Lo standard seriale di interfacciamento è stato introdotto al fine di collegare dispositivi remoti a bassa velocità con un calcolatore centrale. In questo genere

Dettagli

Illustrazione 1: Telaio. Piantanida Simone 1 G Scopo dell'esperienza: Misura di grandezze vettoriali

Illustrazione 1: Telaio. Piantanida Simone 1 G Scopo dell'esperienza: Misura di grandezze vettoriali Piantanida Simone 1 G Scopo dell'esperienza: Misura di grandezze vettoriali Materiale utilizzato: Telaio (carrucole,supporto,filo), pesi, goniometro o foglio con goniometro stampato, righello Premessa

Dettagli

Online Gradient Descent

Online Gradient Descent F94 Metodi statistici per l apprendimento Online Gradient Descent Docente: Nicolò Cesa-Bianchi versione 9 aprile 06 L analisi del Perceptrone ha rivelato come sia possibile ottenere dei maggioranti sul

Dettagli

OFFERTA DI LAVORO. p * C = M + w * L

OFFERTA DI LAVORO. p * C = M + w * L 1 OFFERTA DI LAVORO Supponiamo che il consumatore abbia inizialmente un reddito monetario M, sia che lavori o no: potrebbe trattarsi di un reddito da investimenti, di donazioni familiari, o altro. Definiamo

Dettagli

7 Disegni sperimentali ad un solo fattore. Giulio Vidotto Raffaele Cioffi

7 Disegni sperimentali ad un solo fattore. Giulio Vidotto Raffaele Cioffi 7 Disegni sperimentali ad un solo fattore Giulio Vidotto Raffaele Cioffi Indice: 7.1 Veri esperimenti 7.2 Fattori livelli condizioni e trattamenti 7.3 Alcuni disegni sperimentali da evitare 7.4 Elementi

Dettagli

MINISTERO DELL'ISTRUZIONE, DELL'UNIVERSITÀ, DELLA RICERCA SCUOLE ITALIANE ALL ESTERO

MINISTERO DELL'ISTRUZIONE, DELL'UNIVERSITÀ, DELLA RICERCA SCUOLE ITALIANE ALL ESTERO Sessione Ordinaria in America 4 MINISTERO DELL'ISTRUZIONE, DELL'UNIVERSITÀ, DELLA RICERCA SCUOLE ITALIANE ALL ESTERO (Americhe) ESAMI DI STATO DI LICEO SCIENTIFICO Sessione Ordinaria 4 SECONDA PROVA SCRITTA

Dettagli

Codifica di sorgente. esempio di sorgente con memoria

Codifica di sorgente. esempio di sorgente con memoria Codifica di sorgente esercitazione su sorgenti markoviane 1 esempio di sorgente con memoria Esempio di sorgente con memoria markoviana a due stati NB: per la simmetria del sistema, i simboli sono equiprobabili

Dettagli

NUMERI COMPLESSI. Test di autovalutazione

NUMERI COMPLESSI. Test di autovalutazione NUMERI COMPLESSI Test di autovalutazione 1. Se due numeri complessi z 1 e z 2 sono rappresentati nel piano di Gauss da due punti simmetrici rispetto all origine: (a) sono le radici quadrate di uno stesso

Dettagli

Introduzione alla programmazione lineare. Mauro Pagliacci

Introduzione alla programmazione lineare. Mauro Pagliacci Introduzione alla programmazione lineare Mauro Pagliacci c Draft date 25 maggio 2010 Premessa In questo fascicolo sono riportati gli appunti dalle lezioni del corso di Elaborazioni automatica dei dati

Dettagli

ELEMENTI DI ANALISI SPETTRALE 1 I DUE DOMINI

ELEMENTI DI ANALISI SPETTRALE 1 I DUE DOMINI Lezioni di Fisica della Terra Solida, Università di Chieti, a.a. 999/. Docente A. De Santis ELEMENTI DI ANALISI SPETTRALE I DUE DOMINI È spesso utile pensare alle unzioni ed alle loro trasormate di Fourier

Dettagli

Corso di Laurea in Ingegneria Informatica Analisi Numerica

Corso di Laurea in Ingegneria Informatica Analisi Numerica Corso di Laurea in Ingegneria Informatica Lucio Demeio Dipartimento di Scienze Matematiche 1 2 Analisi degli errori Informazioni generali Libro di testo: J. D. Faires, R. Burden, Numerical Analysis, Brooks/Cole,

Dettagli

Introduzione alla scienza della comunicazione (E. T. Jaynes)

Introduzione alla scienza della comunicazione (E. T. Jaynes) Introduzione alla scienza della comunicazione (E T Jaynes) S Bonaccorsi Department of Mathematics University of Trento Corso di Mathematical model for the Physical, Natural and Social Sciences Outline

Dettagli

Massimi e minimi vincolati in R 2 - Esercizi svolti

Massimi e minimi vincolati in R 2 - Esercizi svolti Massimi e minimi vincolati in R 2 - Esercizi svolti Esercizio 1. Determinare i massimi e minimi assoluti della funzione f(x, y) = 2x + 3y vincolati alla curva di equazione x 4 + y 4 = 1. Esercizio 2. Determinare

Dettagli

Quantificare la variabilità dei processi ecologici

Quantificare la variabilità dei processi ecologici Scopo ecologia Quantificare la variabilità dei processi ecologici Comprensione dei meccanismi fondamentale per identificare gli effetti del disturbo antropico e per prevenire alterazioni su scala globale

Dettagli

Chiusura lineare. N.B. A può essere indifferentemente un insieme, finito o no, o un sistema. Es.1. Es.2

Chiusura lineare. N.B. A può essere indifferentemente un insieme, finito o no, o un sistema. Es.1. Es.2 Chiusura lineare Def. Sia A V (K) con A. Si dice copertura lineare (o chiusura lineare) di A, e si indica con L(A), l insieme dei vettori di V che risultano combinazioni lineari di un numero finito di

Dettagli

CORSO DI CALCOLATORI ELETTRONICI I CdL Ingegneria Biomedica (A-I)

CORSO DI CALCOLATORI ELETTRONICI I CdL Ingegneria Biomedica (A-I) CORSO DI CALCOLATORI ELETTRONICI I CdL Ingegneria Biomedica (A-I) DIS - Università degli Studi di Napoli Federico II Codifica delle Informazioni T insieme delle informazioni da rappresentare E insieme

Dettagli

PROGRAMMA DI SCIENZE E TECNOLOGIE APPLICATE 2015/2016 Classe 2ª Sez. C Tecnologico

PROGRAMMA DI SCIENZE E TECNOLOGIE APPLICATE 2015/2016 Classe 2ª Sez. C Tecnologico ISTITUTO TECNICO STATALE MARCHI FORTI Viale Guglielmo Marconi n 16-51017 PESCIA (PT) - ITALIA PROGRAMMA DI SCIENZE E TECNOLOGIE APPLICATE 2015/2016 Classe 2ª Sez. C Tecnologico Docente PARROTTA GIOVANNI

Dettagli

Capitolo 5. Funzioni. Grafici.

Capitolo 5. Funzioni. Grafici. Capitolo 5 Funzioni. Grafici. Definizione: Una funzione f di una variabile reale,, è una corrispondenza che associa ad ogni numero reale appartenente ad un insieme D f R un unico numero reale, y R, denotato

Dettagli

Gli asintoti di una funzione sono rette, quindi possono essere: rette verticali o rette orizzontali o rette oblique.

Gli asintoti di una funzione sono rette, quindi possono essere: rette verticali o rette orizzontali o rette oblique. Asintoti Gli asintoti di una funzione sono rette, quindi possono essere: rette verticali o rette orizzontali o rette oblique. Asintoti verticali Sia 0 punto di accumulazione per dom(f). La retta = 0 è

Dettagli

p k q n k = p n (k) = n 12 = 1 = 12 1 12 11 10 9 1 0,1208. q = 1 2 e si ha: p 12 (8) = 12 8 4

p k q n k = p n (k) = n 12 = 1 = 12 1 12 11 10 9 1 0,1208. q = 1 2 e si ha: p 12 (8) = 12 8 4 CAPITOLO QUARTO DISTRIBUZIONE BINOMIALE (O DI BERNOULLI) Molti degli esempi che abbiamo presentato nei capitoli precedenti possono essere pensati come casi particolari di uno schema generale di prove ripetute,

Dettagli

Unità di misura di lunghezza usate in astronomia

Unità di misura di lunghezza usate in astronomia Unità di misura di lunghezza usate in astronomia In astronomia si usano unità di lunghezza un po diverse da quelle che abbiamo finora utilizzato; ciò è dovuto alle enormi distanze che separano gli oggetti

Dettagli

Rappresentazione dei numeri in un calcolatore

Rappresentazione dei numeri in un calcolatore Corso di Calcolatori Elettronici I A.A. 2010-2011 Rappresentazione dei numeri in un calcolatore Lezione 2 Università degli Studi di Napoli Federico II Facoltà di Ingegneria Rappresentazione dei numeri

Dettagli

I costi d impresa (R. Frank, Capitolo 10)

I costi d impresa (R. Frank, Capitolo 10) I costi d impresa (R. Frank, Capitolo 10) COSTI Per poter realizzare la produzione l impresa sostiene dei costi Si tratta di scegliere la combinazione ottimale dei fattori produttivi per l impresa È bene

Dettagli

Efficienza secondo i criteri di first best

Efficienza secondo i criteri di first best Efficienza secondo i criteri di first best Ruolo del settore pubblico Intervento dello Stato L economia pubblica giustifica l intervento dello Stato nell economia in presenza di fallimenti del mercato

Dettagli

2. Variabilità mediante il confronto di valori caratteristici della

2. Variabilità mediante il confronto di valori caratteristici della 2. Variabilità mediante il confronto di valori caratteristici della distribuzione Un approccio alternativo, e spesso utile, alla misura della variabilità è quello basato sul confronto di valori caratteristici

Dettagli

Le forze. Cos è una forza? in quiete. in moto

Le forze. Cos è una forza? in quiete. in moto Le forze Ricorda che quando parli di: - corpo: ti stai riferendo all oggetto che stai studiando; - deformazione. significa che il corpo che stai studiando cambia forma (come quando pesti una scatola di

Dettagli

Codifiche a lunghezza variabile

Codifiche a lunghezza variabile Sistemi Multimediali Codifiche a lunghezza variabile Marco Gribaudo marcog@di.unito.it, gribaudo@elet.polimi.it Assegnazione del codice Come visto in precedenza, per poter memorizzare o trasmettere un

Dettagli

Carta di credito standard. Carta di credito business. Esercitazione 12 maggio 2016

Carta di credito standard. Carta di credito business. Esercitazione 12 maggio 2016 Esercitazione 12 maggio 2016 ESERCIZIO 1 Si supponga che in un sondaggio di opinione su un campione di clienti, che utilizzano una carta di credito di tipo standard (Std) o di tipo business (Bsn), si siano

Dettagli

Esercitazioni di Reti Logiche. Lezione 1 Rappresentazione dell'informazione. Zeynep KIZILTAN zkiziltan@deis.unibo.it

Esercitazioni di Reti Logiche. Lezione 1 Rappresentazione dell'informazione. Zeynep KIZILTAN zkiziltan@deis.unibo.it Esercitazioni di Reti Logiche Lezione 1 Rappresentazione dell'informazione Zeynep KIZILTAN zkiziltan@deis.unibo.it Introduzione Zeynep KIZILTAN Si pronuncia Z come la S di Rose altrimenti, si legge come

Dettagli

Informatica Grafica. Un introduzione

Informatica Grafica. Un introduzione Informatica Grafica Un introduzione Rappresentare la Geometria Operabile da metodi di calcolo automatici Grafica Vettoriale Partiamo dalla rappresentazione di un punto... Spazi Vettoriale SPAZI VETTORIALI

Dettagli

APPUNTI DI MATEMATICA ALGEBRA \ INSIEMISTICA \ TEORIA DEGLI INSIEMI (1)

APPUNTI DI MATEMATICA ALGEBRA \ INSIEMISTICA \ TEORIA DEGLI INSIEMI (1) ALGEBRA \ INSIEMISTICA \ TEORIA DEGLI INSIEMI (1) Un insieme è una collezione di oggetti. Il concetto di insieme è un concetto primitivo. Deve esistere un criterio chiaro, preciso, non ambiguo, inequivocabile,

Dettagli

Per lo svolgimento del corso risulta particolarmente utile considerare l insieme

Per lo svolgimento del corso risulta particolarmente utile considerare l insieme 1. L insieme R. Per lo svolgimento del corso risulta particolarmente utile considerare l insieme R = R {, + }, detto anche retta reale estesa, che si ottiene aggiungendo all insieme dei numeri reali R

Dettagli

DIARIO DEL CORSO DI ALGEBRA A.A. 2012/13 DOCENTE: ANDREA CARANTI

DIARIO DEL CORSO DI ALGEBRA A.A. 2012/13 DOCENTE: ANDREA CARANTI DIARIO DEL CORSO DI ALGEBRA A.A. 2012/13 DOCENTE: ANDREA CARANTI Lezione 1. lunedí 17 settembre 2011 (1 ora) Presentazione del corso. Esercizio: cosa succede a moltiplicare per 2, 3, 4,... il numero 052631578947368421,

Dettagli

Corso di Laurea in Ingegneria Biomedica Corso di Trasmissione Numerica (6 crediti) Prova scritta 16.02.2006

Corso di Laurea in Ingegneria Biomedica Corso di Trasmissione Numerica (6 crediti) Prova scritta 16.02.2006 Prova scritta 16.02.2006 D. 1 Si derivi l espressione dei legami ingresso-uscita, nel dominio del tempo per le funzioni di correlazione nel caso di sistemi LTI e di segnali d ingresso SSL. Si utilizzi

Dettagli

MATEMATICA e COMPLEMENTI di MATEMATICA

MATEMATICA e COMPLEMENTI di MATEMATICA ALLEGATO N.8_b MATEMATICA e COMPLEMENTI di MATEMATICA DESTINATARI gli studenti delle classi: terze e quarte nuovo ordinamento RISULTATI DI APPRENDIMENTO DELL OBBLIGO D ISTRUZIONE, CHIAVE EUROPEA Padroneggiare

Dettagli

(1) (2) (3) (4) 11 nessuno/a 9 10. (1) (2) (3) (4) X è il minore tra A e B nessuno/a X è sempre uguale ad A X è il maggiore tra A e B

(1) (2) (3) (4) 11 nessuno/a 9 10. (1) (2) (3) (4) X è il minore tra A e B nessuno/a X è sempre uguale ad A X è il maggiore tra A e B Compito: Domanda 1 Per l'algoritmo fornito di seguito, qual è il valore assunto dalla variabile contatore quando l'algoritmo termina: Passo 1 Poni il valore di contatore a 1 Passo 2 Ripeti i passi da 3

Dettagli

SCUOLA PRIMARIA - MORI

SCUOLA PRIMARIA - MORI ISTITUTO COMPRENSIVO DI MORI Via Giovanni XXIII, n. 64-38065 MORI Cod. Fisc. 94024510227 - Tel. 0464-918669 Fax 0464-911029 www.icmori.it e-mail: segr.ic.mori@scuole.provincia.tn.it REPUBBLICA ITALIANA

Dettagli

Liceo Scientifico " C. CATTANEO " PIANO DI LAVORO DI INFORMATICA. CLASSE 3 LSA SEZ. B e D

Liceo Scientifico  C. CATTANEO  PIANO DI LAVORO DI INFORMATICA. CLASSE 3 LSA SEZ. B e D Liceo Scientifico " C. CATTANEO " PIANO DI LAVORO DI INFORMATICA CLASSE 3 LSA SEZ. B e D Sommario PIANO DI LAVORO DI INFORMATICA... 1 INDICAZIONI GENERALI... 2 PREREQUISITI... 2 CONOSCENZE, COMPETENZE

Dettagli

Nota: Eventi meno probabili danno maggiore informazione

Nota: Eventi meno probabili danno maggiore informazione Entropia Informazione associata a valore x avente probabilitá p(x é i(x = log 2 p(x Nota: Eventi meno probabili danno maggiore informazione Entropia di v.c. X P : informazione media elementi di X H(X =

Dettagli

x log(x) + 3. f(x) =

x log(x) + 3. f(x) = Università di Bari, Corso di Laurea in Economia e Commercio Esame di Matematica per l Economia L/Z Dr. G. Taglialatela 03 giugno 05 Traccia dispari Esercizio. Calcolare Esercizio. Calcolare e cos log d

Dettagli

PROBLEMA SU COLLEGAMENTO WIRELESS CON ACCESS POINT

PROBLEMA SU COLLEGAMENTO WIRELESS CON ACCESS POINT PROBLEMA SU COLLEGAMENTO WIRELESS CON ACCESS POINT Il gestore di un ipermercato richiede l' installazione di un access point da utilizzare per il collegamento wireless delle casse automatiche alla rete

Dettagli

2. Codifica dell informazione

2. Codifica dell informazione 2. Codifica dell informazione Codifica Una codifica è una regola per associare in modo univoco i valori di un dato da codificare con sequenze di simboli. La corrispondenza definita dalla codifica è arbitraria,

Dettagli

Corso di Politica Economica

Corso di Politica Economica Corso di Politica Economica Lezione 12: Introduzione alla Teoria dei Giochi (part 3) David Bartolini Università Politecnica delle Marche (Sede di S.Benedetto del Tronto) d.bartolini@univpm.it (email) http://utenti.dea.univpm.it/politica

Dettagli

Corso di Calcolo Numerico

Corso di Calcolo Numerico Corso di Calcolo Numerico Dott.ssa M.C. De Bonis Università degli Studi della Basilicata, Potenza Facoltà di Ingegneria Corso di Laurea in Ingegneria Meccanica Sistemi di Numerazione Sistema decimale La

Dettagli

Linguaggi. Rosario Culmone, Luca Tesei. 20/10/2009 UNICAM - p. 1/32

Linguaggi. Rosario Culmone, Luca Tesei. 20/10/2009 UNICAM - p. 1/32 Linguaggi Rosario Culmone, Luca Tesei 20/10/2009 UNICAM - p. 1/32 Alfabeto Un alfabeto è un insieme finito di simboli. Useremo Σ per denotare un alfabeto. Esempi di alfabeto sono: l alfabeto latino adottato

Dettagli

MISURA DELLA DISTANZA FOCALE DI UNA LENTE CONVERGENTE

MISURA DELLA DISTANZA FOCALE DI UNA LENTE CONVERGENTE MISURA DELLA DISTANZA FOCALE DI UNA LENTE CONVERGENTE La distanza focale f di una lente convergente sottile è data dalla formula: da cui 1 f = 1 p + 1 q f = pq p + q dove p e q sono, rispettivamente, le

Dettagli

COMUNICAZIONI ELETTRICHE + TRASMISSIONE NUMERICA COMPITO 13/7/2005

COMUNICAZIONI ELETTRICHE + TRASMISSIONE NUMERICA COMPITO 13/7/2005 COMUNICAZIONI ELETTRICHE + TRASMISSIONE NUMERICA COMPITO 13/7/005 1. Gli esercizi devono essere risolti su fogli separati: uno per la prima parte del compito (esercizi 1/4), uno per la seconda parte (esercizi

Dettagli

La fisica e la misura

La fisica e la misura La fisica e la misura La fisica è una scienza fondamentale che ha per oggetto la comprensione dei fenomeni naturali che accadono nel nostro universo. È basata su osservazioni sperimentali e misure quantitative

Dettagli

Algebra e Geometria. Ingegneria Meccanica e dei Materiali Sez (2) Ingegneria dell Automazione Industriale Sez (2)

Algebra e Geometria. Ingegneria Meccanica e dei Materiali Sez (2) Ingegneria dell Automazione Industriale Sez (2) Algebra e Geometria Ingegneria Meccanica e dei Materiali Sez (2) Ingegneria dell Automazione Industriale Sez (2) Traccia delle lezioni che saranno svolte nell anno accademico 2012/13 I seguenti appunti

Dettagli

Barriere assorbenti nelle catene di Markov e una loro applicazione al web

Barriere assorbenti nelle catene di Markov e una loro applicazione al web Università degli studi di Roma Tre Facoltà di Scienze Matematiche Fisiche e Naturali Corso di Laurea in Matematica Sintesi relativa alla Tesi di Laurea in Matematica di Giulio Simeone Barriere assorbenti

Dettagli

VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole.

VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole. Excel VBA VBA Visual Basic for Application VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole. 2 Prima di iniziare. Che cos è una variabile?

Dettagli

Prof. Gabriele Vezzosi... Settore Inquadramento MAT03...

Prof. Gabriele Vezzosi... Settore Inquadramento MAT03... UNIVERSITÀ DEGLI STUDI Registro dell insegnamento Anno Accademico 2014/2015 Facoltà Ingegneria....................................... Insegnamento Matematica................................ Settore Mat03............................................

Dettagli

RICHIAMI SULLE MATRICI. Una matrice di m righe e n colonne è rappresentata come

RICHIAMI SULLE MATRICI. Una matrice di m righe e n colonne è rappresentata come RICHIAMI SULLE MATRICI Una matrice di m righe e n colonne è rappresentata come A = a 11 a 12... a 1n a 21 a 22... a 2n............ a m1 a m2... a mn dove m ed n sono le dimensioni di A. La matrice A può

Dettagli

LE SUCCESSIONI 1. COS E UNA SUCCESSIONE

LE SUCCESSIONI 1. COS E UNA SUCCESSIONE LE SUCCESSIONI 1. COS E UNA SUCCESSIONE La sequenza costituisce un esempio di SUCCESSIONE. Ecco un altro esempio di successione: Una successione è dunque una sequenza infinita di numeri reali (ma potrebbe

Dettagli

TEORIA RELAZIONALE: INTRODUZIONE

TEORIA RELAZIONALE: INTRODUZIONE TEORIA RELAZIONALE: INTRODUZIONE Tre metodi per produrre uno schema relazionale: a) Partire da un buon schema a oggetti e tradurlo b) Costruire direttamente le relazioni e poi correggere quelle che presentano

Dettagli

3. TEORIA DELL INFORMAZIONE

3. TEORIA DELL INFORMAZIONE 3. TEORIA DELL INFORMAZIONE INTRODUZIONE MISURA DI INFORMAZIONE SORGENTE DISCRETA SENZA MEMORIA ENTROPIA DI UNA SORGENTE NUMERICA CODIFICA DI SORGENTE 1 TEOREMA DI SHANNON CODICI UNIVOCAMENTE DECIFRABILI

Dettagli

L indagine statistica

L indagine statistica 1 L indagine statistica DEFINIZIONE. La statistica è quella disciplina che si occupa della raccolta di dati quantitativi relativi a diversi fenomeni, della loro elaborazione e del loro utilizzo a fini

Dettagli

Insegnare relatività. nel XXI secolo

Insegnare relatività. nel XXI secolo Insegnare relatività nel XXI secolo E s p a n s i o n e d e l l ' U n i v e r s o e l e g g e d i H u b b l e La legge di Hubble Studiando distanze e moto delle galassie si trova che quelle più vicine

Dettagli

Algoritmi e strutture dati. Codici di Huffman

Algoritmi e strutture dati. Codici di Huffman Algoritmi e strutture dati Codici di Huffman Memorizzazione dei dati Quando un file viene memorizzato, esso va memorizzato in qualche formato binario Modo più semplice: memorizzare il codice ASCII per

Dettagli

UNIVERSITA DEGLI STUDI DI PADOVA DIPARTIMENTO DI INGEGNERIA IDRAULICA, MARITTIMA E GEOTECNICA

UNIVERSITA DEGLI STUDI DI PADOVA DIPARTIMENTO DI INGEGNERIA IDRAULICA, MARITTIMA E GEOTECNICA UNIVERSITA DEGLI STUDI DI PADOVA DIPARTIMENTO DI INGEGNERIA IDRAULICA, MARITTIMA E GEOTECNICA CORSO DI COSTRUZIONI IDRAULICHE A.A. 00-0 PROF. LUIGI DA DEPPO ING. NADIA URSINO ESERCITAZIONE N : Progetto

Dettagli

3 GRAFICI DI FUNZIONI

3 GRAFICI DI FUNZIONI 3 GRAFICI DI FUNZIONI Particolari sottoinsiemi di R che noi studieremo sono i grafici di funzioni. Il grafico di una funzione f (se non è specificato il dominio di definizione) è dato da {(x, y) : x dom

Dettagli

Ottimizzazione nella gestione dei progetti Capitolo 4: la gestione dei costi (Programmazione multimodale): formulazioni

Ottimizzazione nella gestione dei progetti Capitolo 4: la gestione dei costi (Programmazione multimodale): formulazioni Ottimizzazione nella gestione dei progetti Capitolo 4: la gestione dei costi (Programmazione multimodale): formulazioni CARLO MANNINO Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica

Dettagli

7 Esercizi e complementi di Elettrotecnica per allievi non elettrici. Circuiti elementari

7 Esercizi e complementi di Elettrotecnica per allievi non elettrici. Circuiti elementari 7 Esercizi e complementi di Elettrotecnica per allievi non elettrici Circuiti elementari Gli esercizi proposti in questa sezione hanno lo scopo di introdurre l allievo ad alcune tecniche, semplici e fondamentali,

Dettagli

Informatica. Rappresentazione dei numeri Numerazione binaria

Informatica. Rappresentazione dei numeri Numerazione binaria Informatica Rappresentazione dei numeri Numerazione binaria Sistemi di numerazione Non posizionali: numerazione romana Posizionali: viene associato un peso a ciascuna posizione all interno della rappresentazione

Dettagli

ESAME SCRITTO DI ELEMENTI DI INFORMATICA E PROGRAMMAZIONE. 10 Settembre 2013

ESAME SCRITTO DI ELEMENTI DI INFORMATICA E PROGRAMMAZIONE. 10 Settembre 2013 COGNOME E NOME: MATRICOLA: Civile Ambiente e Territorio Non si possono consultare manuali, appunti e calcolatrici. Esercizio 1: Rappresentare i numeri 37 e 90 (in base 10) in notazione binaria in complemento

Dettagli

Esempio prova di esonero Fisica Generale I C.d.L. ed.u. Informatica

Esempio prova di esonero Fisica Generale I C.d.L. ed.u. Informatica Esempio prova di esonero Fisica Generale I C.d.L. ed.u. Informatica Nome: N.M.: 1. Se il caffè costa 4000 /kg (lire al chilogrammo), quanto costa all incirca alla libbra? (a) 1800 ; (b) 8700 ; (c) 18000

Dettagli

Parte 6. Applicazioni lineari

Parte 6. Applicazioni lineari Parte 6 Applicazioni lineari A Savo Appunti del Corso di Geometria 203-4 Indice delle sezioni Applicazioni fra insiemi, 2 Applicazioni lineari tra spazi vettoriali, 2 3 Applicazioni lineari da R n a R

Dettagli

Raccolta degli Scritti d Esame di ANALISI MATEMATICA U.D. 1 assegnati nei Corsi di Laurea di Fisica, Fisica Applicata, Matematica

Raccolta degli Scritti d Esame di ANALISI MATEMATICA U.D. 1 assegnati nei Corsi di Laurea di Fisica, Fisica Applicata, Matematica DIPARTIMENTO DI MATEMATICA Università degli Studi di Trento Via Sommarive - Povo (TRENTO) Raccolta degli Scritti d Esame di ANALISI MATEMATICA U.D. 1 assegnati nei Corsi di Laurea di Fisica, Fisica Applicata,

Dettagli

3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 Scopo: Stimare l onere computazionale per risolvere problemi di ottimizzazione e di altra natura

Dettagli

LEZIONE 14. a 1,1 v 1 + a 1,2 v 2 + a 1,3 v 3 + + a 1,n 1 v n 1 + a 1,n v n = w 1

LEZIONE 14. a 1,1 v 1 + a 1,2 v 2 + a 1,3 v 3 + + a 1,n 1 v n 1 + a 1,n v n = w 1 LEZIONE 14 141 Dimensione di uno spazio vettoriale Abbiamo visto come l esistenza di una base in uno spazio vettoriale V su k = R, C, permetta di sostituire a V, che può essere complicato da trattare,

Dettagli

Equazioni differenziali ordinarie

Equazioni differenziali ordinarie Equazioni differenziali ordinarie Denis Nardin January 2, 2010 1 Equazioni differenziali In questa sezione considereremo le proprietà delle soluzioni del problema di Cauchy. Da adesso in poi (PC) indicherà

Dettagli