Sappiamo che ogni messaggio utilizza un codice che deve essere comune a chi lo trasmette e a chi lo riceve, e sulla cui base il messaggio deve essere interpretato. I codici utilizzano di norma un certo numero di simboli di base, e costruiscono messaggi complessi combinando fra loro i simboli di base sulla base di apposite regole di combinazione. Stabilire esattamente quali siano i simboli semplici e quali siano le combinazioni ammesse può essere assai difficile, soprattutto nel caso delle lingue storico-naturali (i simboli di base saranno le singole lettere, le parole che troviamo in un dizionario, o qualcos'altro ancora?), ma in generale sembra molto naturale pensare che - anche nel caso delle lingue storico-naturali - chi codifica un messaggio lo faccia attraverso una successione di scelte, scelte effettuate fra i simboli semplici e le combinazioni di simboli semplici messe a sua disposizione dal codice che sta utilizzando.
Anche se nel 1928 Ralph Vinton Hartley aveva già fornito una prima definizione in termini matematici della quantità di informazione, il padre della moderna teoria dell'informazione può essere probabilmente considerato Claude Shannon, che in un famoso articolo del 1948 ha proposto di utilizzare il concetto di scelta (o decisione) per misurare la quantità di informazione contenuta in un messaggio.
Per semplificare questa misura, Shannon suggerisce di ridurre ogni scelta a una successione di scelte binarie.In effetti, una scelta fra più alternative può sempre essere ridotta a più scelte fra due alternative. Nella videocassetta che accompagna questa dispensa [VC 1], viene discusso l'esempio di un semaforo: il semaforo ha tre lampadine, ciascuna delle quali può essere accesa o spenta (trascuriamo qui il caso un po' particolare della lampadina gialla lampeggiante). La nostra scelta è dunque fra otto alternative: 1. tutte e tre le lampadine spente; 2. verde acceso; 3. giallo acceso; 4. rosso acceso; 5. verde e giallo accesi; 6. giallo e rosso accesi; 7. verde e rosso accesi; 8. verde, giallo e rosso tutti accesi (le ultime due combinazioni sarebbero sicuramente un po' pericolose per il traffico!).
Il semaforo, in un certo senso, rappresenta una scelta fra otto alternative in termini di tre scelte binarie, cioè di tre scelte (ognuna rappresentata da una lampadina) fra due sole alternative (acceso o spento). Avete presente il concetto di logaritmo in base 2? Il logaritmo in base 2 di un numero n non è altro che il numero al quale bisogna elevare 2 per ottenere n. Ebbene, è facile rendersi conto che la scelta fra n alternative diverse (nel nostro esempio, 8 alternative diverse; se vogliamo essere rigorosi, è necessario aggiungere che queste alternative devono essere anche egualmente probabili) corrisponde a log n (nel nostro esempio, 3) scelte binarie. Sappiamo in effetti che 8=23, e che dunque il logaritmo in base 2 di 8 è proprio 3.
Per capire meglio questo meccanismo pensate a un gioco: supponiamo che dobbiate indovinare il numero (intero) pensato da un amico, sapendo che questo numero è compreso fra 1 e 8 (8 alternative!), e avendo a disposizione tre domande alle quali il vostro amico può rispondere solo 'sì' o 'no'. Potete innanzitutto chiedere se il numero pensato dal vostro amico è compreso fra 1 e 4. Supponiamo che la risposta sia 'no': è allora chiaro che il numero è compreso fra 5 e 8. Vi sono rimaste 4 alternative. Dimezzatele di nuovo, chiedendo come seconda domanda se il numero è compreso fra 5 e 6. Supponiamo che la risposta sia nuovamente 'no'. Sono rimaste due sole alternative: il numero sarà 7, oppure 8. La terza domanda potrà essere "il numero che hai pensato è 7?" In caso di risposta affermativa, avrete individuato il numero che cercavate. Ma anche in caso di risposta negativa l'avrete individuato: poteva essere solo o 7 o 8, non è 7, dunque è 8.
Il lettore potrà verificare, costruendo un semplice albero binario, che qualunque sia il numero pensato dal suo ipotetico amico, se esso è compreso fra 1 e 8 il processo di progressivo 'dimezzamento' delle alternative porta sempre a individuarlo attraverso tre domande. In effetti, quella che abbiamo appena descritto è una ricerca binaria (o logaritmica) di un dato in un insieme: si tratta di uno degli algoritmi più importanti - e più usati - dell'informatica!
Sappiamo che ogni scelta binaria corrisponde a un bit di informazione: nell'esempio visto sopra, dunque, la scelta del vostro amico - che avveniva fra 8 alternative diverse, e poteva essere quindi individuata o codificata attraverso tre scelte binarie - 'peserà' 3 bit. In generale: se mi trovo davanti a una scelta fra n alternative egualmente probabili, la quantità di informazione (ovvero il numero di scelte binarie) corrispondente sarà uguale al logaritmo in base 2 di n (in formula, log2n).La situazione si complica un po' se la scelta avviene fra alternative che non sono egualmente probabili; in questo caso, dovrò tener conto delle singole probabilità p1...pn delle mie n scelte. Per un'analisi più dettagliata di questo caso rimandiamo ai testi di introduzione alla teoria dell'informazione citati in bibliografia, limitandoci qui a fornire la relativa formula:
bit |