5
Non ci si può contare
Contare è, probabilmente, la cosa più facile che si possa fare in matematica. È da lì che questa disciplina è nata: dalla necessità di contare le cose. Anche chi si dice negato per la matematica riconosce di essere in grado di contare (magari solo sulle dita). Abbiamo già visto come i calendari possano diventare una faccenda complicata, ma se si tratta di contare quanti giorni ci sono in una settimana, arriveremo tutti alla stessa risposta. O no?
Una delle più grandi discussioni di tutti i tempi su Internet partì da una semplice domanda sull’andare in palestra e si concluse con una rissa virtuale su quanti giorni ci sono in una settimana.
Sul forum di Bodybuilding.com, un frequentatore che usava il nickname «m1ndless» chiese quante volte alla settimana fosse sicuro fare un allenamento totale. A quanto pare, era solito allenarsi per la parte superiore e quella inferiore del corpo a giorni alterni, ma a causa della mancanza di tempo voleva sapere se ci fosse qualche rischio a fare tutto in un unico giorno, così da potersi recare meno volte in palestra. So come si sentiva: anch’io divido i miei giorni tra la geometria e l’algebra.
Gli utenti più esperti e professionisti evidenziarono nelle loro risposte come la maggior parte delle routine di bodybuilding per i principianti prevedeva tre allenamenti alla settimana per l’intero corpo; di conseguenza, il loro consiglio generale era che un impegno del genere non avrebbe dato problemi ai praticanti di livello più avanzato. M1ndless sembrò soddisfatto e si limitò a un’ultima osservazione: facendo allenamento a giorni alterni, disse, «sarebbe andato in palestra quattro-cinque volte la settimana». L’utente steviekm3 sottolineò allora che «In una settimana ci sono sette giorni. Se vai a giorni alterni, fanno 3,5 volte la settimana». E tutti sembrarono d’accordo.
Di m1ndless non si ebbero più notizie, ma a quel punto alla conversazione si unì TheJosh, che non pareva condividere l’idea di steviekm3 secondo cui «a giorni alterni» corrispondeva a «3,5 volte la settimana»: stando alla sua esperienza, allenarsi a giorni alterni significava andare in palestra quattro volte la settimana.
Lunedì, mercoledì, venerdì, domenica. Fanno quattro giorni.
Da dove saltano fuori le 3,5 volte? Fai un mezzo allenamento o qualcosa del genere? lol
– TheJosh
Prima che steviekm3 potesse difendersi, Justin-27 corse in suo soccorso, ribadendo che la risposta corretta era di fatto 3,5 volte la settimana, in media: «Sette volte in due settimane = 3,5 volte la settimana, genio». E aggiunse che tre allenamenti alla settimana andavano probabilmente bene; fu l’ultimo consiglio relativo al bodybuilding che avremmo letto in quel thread.
TheJosh non prese bene la risposta critica di Justin-27, iscritto da poco al forum, e decise di spiegare con precisione perché «a giorni alterni» voleva dire «quattro volte alla settimana». Steviekm3 riapparve brevemente per sostenere Justin-27 e difendere la sua precedente affermazione, ma poi se ne andò di fretta. A quel punto, TheJosh e Justin-27 andarono avanti a discutere su quanti giorni ci fossero in una settimana. Presto altre persone si unirono alla discussione (per sostenere, cosa sorprendente, chi l’una chi l’altra tesi), che proseguì quindi per più di cinque pagine di messaggi, cinque delle più divertenti pagine mai apparse su Internet.
Ma com’è possibile che su un’ovvietà come il numero di giorni di una settimana si possa discutere con tanto accanimento per due giorni, scrivendo cinque pagine con 129 post? Eppure è successo, ed è stato spettacolare. Il linguaggio usato è inoltre fortemente creativo e contiene molte imprecazioni note (più altre nuove, create per l’occasione attraverso sagaci fusioni di quelle classiche); questa è la ragione per cui qui non posso citare molto. Potete leggere la discussione online, ma vi avviso che non è per i deboli di cuore.
In caso lo avessi dimenticato, una settimana va da domenica a sabato, NON da domenica a domenica, quelli sono 8 giorni.
Una settimana va da domenica a domenica.
Penso che semplicemente tu non sappia contare, e ok, non lo dirò a nessuno. lol
Domenica-sabato sono solo 6 giorni, hai settimane da 6 giorni nel posto in cui vivi?
Non si inizia a contare da domenica, non è ancora un giorno concluso. Non si inizia a contare fino a lunedì. Non puoi contare il giorno da cui inizi, non hai mai preso lezioni di matematica elementare?
Lunedì è giorno 1
Martedì è giorno 2
Mercoledì è giorno 3
Giovedì è giorno 4
Venerdì è giorno 5
Sabato è giorno 6
Domenica è giorno 7
Che cosa intendi dire con «Non si inizia a contare da domenica»? È un cazzo di giorno!
Come puoi negare che ho postato 4 settimane? Dimmelo, sapientone, quante volte dovrei allenarmi in 4 settimane? ****, dai un’occhiata al tuo meraviglioso calendario e dimmi se non sono 14 in un mese.
Come per tutte le più grandi discussioni online, in fondo ho il sospetto che TheJosh sia un troll e che voglia soltanto prendere in giro Justin-27 per il semplice gusto di farlo arrabbiare. TheJosh porta avanti la sceneggiata per un bel po’, mostrandosi convinto delle sue argomentazioni, prima di lasciarsi andare a un breve «Mi prendete troppo sul serio»; quindi ritorna imperterrito alla sua accorata discussione. Non possiamo escludere la possibilità che fosse sincero; perlomeno, è quello che mi piacerebbe credere.
In ogni caso, troll o sincero che sia, TheJosh ha preso una posizione perfetta: pur essendo sbagliata, per sostenerla è possibile ricorrere a numerosi fraintendimenti plausibili, così che può essere difesa a oltranza. Ed è proprio quello che fa, sfruttando due classici errori matematici: il conteggio da zero e gli errori «off-by-one» («scostato di uno»).
Contare da zero è un comportamento classico dei programmatori che, per essere sicuri di non sprecare nemmeno un singolo bit, usano spesso i sistemi informatici fino ai loro limiti assoluti. Ciò significa contare da zero anziché da uno: lo zero, in fin dei conti, è un numero a tutti gli effetti.
È come contare sulle dita, che di fatto rappresenta la forma più semplice di matematica. Eppure le persone si confondono lo stesso. Se chiedete quanti numeri potete contare sulle dita, la maggior parte delle persone vi risponderà dieci. Ma si sbaglia: con le dita possiamo contare undici numeri distinti, da zero a dieci. E questo senza barare, per esempio usando sistemi di numerazione differenti o tenendo le dita in posizioni assurde. Se passiamo dal tenere tutte le dita richiuse al tenerle distese, ci sono undici posizioni distinte che l’insieme delle nostre dita può assumere.
L’unico lato negativo è che, in questo modo, spezziamo il collegamento tra il numero delle cose che usiamo per tenere il conto (le dita) e il numero di cose che stiamo contando. Il primo oggetto, infatti, corrisponde a zero dita, il secondo a un dito e così via, fino all’undicesimo oggetto che sarà rappresentato da dieci dita.
Se vai ad allenarti l’8, non inizierai a contare i giorni fino al 9, perché a quel punto è passato un giorno; quindi, il 10 sarà due giorni e così via, finché arriverai al 22, che corrisponderà a quattordici giorni.
– TheJosh (post #14)
L’esempio fatto da TheJosh è solo un altro modo di presentare il conteggio da zero: ha preso l’8 del mese come il giorno zero, così che il 9 diventa il primo giorno che sta contando. Se le cose stanno così, il 22 del mese è di fatto il quattordicesimo giorno contato, ma ciò non significa che il totale sia di quattordici giorni. Il conteggio da zero spezza il collegamento tra il termine a cui siete giunti contando e il totale delle cose contate: se contate da zero a quattordici, il totale è quindici.
Questo tipo di errore è talmente diffuso che la comunità dei programmatori gli ha dato un nome (preso dal sintomo e non dalla causa): OBOE, o «off-by-one error». La maggior parte degli errori off-by-one nasce dalla difficoltà di convincere il codice a girare per un dato numero di volte o a contare un determinato numero di cose. Io sono ossessionato da una particolare specie di errori off-by-one: il problema «fence-post» («paletto della recinzione»), che è la seconda arma nell’arsenale di TheJosh.
Questo errore è chiamato «problema fence-post» perché può essere descritto in modo esemplare usando la metafora di una recinzione: se una recinzione di 50 metri è sostenuta da un paletto ogni 10 metri, quanti paletti ci sono? La risposta ingenua è cinque, ma di fatto ce ne saranno sei.
Cinque sezioni di recinzione richiedono sei paletti.
L’assunzione implicita è che per ogni sezione di recinzione ci sarà un corrispondente paletto, il che è vero per la maggior parte della recinzione ma dimentica il paletto extra che va messo a ciascuna estremità. Questo è un illuminante esempio di come i nostri cervelli saltino a una conclusione che la matematica può facilmente smentire. Sono sempre alla ricerca di esempi interessanti. Una volta, mentre stavo per salire sulle scale mobili di una stazione della metropolitana di Londra, ho visto un cartello che ha subito catturato il mio sguardo. Era un esempio reale del problema fence-post!
A Londra c’è sempre qualche parte della metropolitana in manutenzione e l’azienda che se ne occupa, la Transport for London, cerca di mettere dei cartelli che spieghino perché il vostro viaggio è ancora più sgradevole del solito. Quella mattina, ho dato un’occhiata al cartello sulla scala mobile chiusa mentre mi avviavo a salire per le centinaia di scalini delle scale accanto. Diceva che la maggior parte delle scale mobili della metropolitana viene rimessa a nuovo due volte, il che dà loro «il doppio della vita». È l’ambito perfetto per il problema fence-post: c’è un’alternanza di qualcosa (la scala mobile viene usata, la scala mobile viene rimessa a nuovo, il ciclo si ripete) e il processo deve iniziare e finire con la medesima cosa (la scala mobile che viene usata). Se una scala mobile viene rimessa a nuovo due volte, ne segue che sarà usata tre volte più a lungo di una che non viene mai rimessa a nuovo. Le persone che si occupano della metropolitana si sono lasciate sfuggire un passo; forse anche loro farebbero bene a seguire l’onnipresente avvertimento «Mind the gap» («Fate attenzione allo spazio»).
Con due operazioni di rimessa a nuovo, la scala mobile può essere usata per tre intervalli di tempo.
Gli errori off-by-one spiegano anche una difficoltà che ho sempre avuto con la teoria della musica. I movimenti sulla tastiera di un pianoforte si misurano nei termini del numero di note abbracciate: premere il tasto del Do, saltare il Re e premere il Mi è un intervallo chiamato una terza, in quanto il Mi è la terza nota sulla scala. Ciò che realmente conta non è quante note vengono usate, ma la differenza tra di esse. È l’inverso del problema fence-post: gli intervalli musicali contano i paletti quando dovrebbero contare la recinzione!1
Così, quando suono il piano, salire di una «terza» significa salire di due note, e salire di una «quinta» significa salire di quattro note. Considerata nel complesso, l’intera transizione è una «settima», il che ci dà 3 + 5 = 7. Contando i divisori e non gli intervalli, la nota tra le transizioni viene contata due volte. Per questo stesso motivo, salire di un’«ottava» vuol dire salire di sette note (e sette intervalli). Il lato positivo è che posso attribuire la mia tremenda mancanza di talento musicale al fatto che qui i numeri non si comportano normalmente.
Nella misurazione del tempo, invece, usiamo una strana combinazione fra il conteggio dei paletti e quello delle sezioni di recinzione. Possiamo guardare la cosa anche in termini di arrotondamenti. L’età viene di norma arrotondata per difetto: in molti Paesi, un essere umano ha zero anni nel suo primo anno di vita e inizia ad averne uno solo dopo aver concluso quell’intero periodo. In pratica, vuol dire che siete sempre più vecchi della vostra età: quando avete trentanove anni, non siete nel vostro trentanovesimo anno di vita, bensì nel quarantesimo. Se contate il giorno in cui siete nati come un compleanno (una cosa difficile da contestare), compite trentanove anni in quello che è di fatto il vostro quarantesimo compleanno. Ma per quanto vero, posso dire per esperienza che alla gente non piace vederlo scritto nei suoi biglietti di auguri.
Anche i giorni e le ore vengono contati in modo differente. Mi piace fare l’esempio di una persona che inizia a lavorare alle 8 del mattino ed entro mezzogiorno deve aver pulito i piani dall’ottavo al dodicesimo di un edificio: anche se i numeri sono uguali, se volesse pulire un piano all’ora, alle 12 un intero piano sarebbe ancora da iniziare. In altri Paesi, poi, i piani potrebbero essere indicati in modo diverso da quello usato nel vostro: alcuni li contano partendo da zero (talvolta indicando quel piano con la lettera T, per qualche oscura ragione le cui origini si perdono nella storia), altri partono da 1. E i giorni vengono contati in modo diverso rispetto alle ore: se i piani da otto a dodici dovessero essere puliti per bene tra l’8 dicembre e il 12 dicembre, ci sarebbe abbastanza tempo per farne uno al giorno.
Questo problema esiste da moltissimo tempo. Motivo per cui, duemila anni fa, i nuovi anni bisestili introdotti da Giulio Cesare furono inizialmente inseriti ogni tre anni anziché ogni quattro: i magistrati romani responsabili – i pontefici – usavano l’inizio del quarto anno. È come se, dovendo lasciare la birra a fermentare per i primi quattro giorni del mese, decideste di interrompere il processo la mattina del quarto giorno: la fermentazione sarebbe durata soltanto per tre giorni! I pontefici fecero la stessa cosa, ma con gli anni al posto delle birre. Se cominciate a contare a partire dall’inizio dell’anno uno anziché dell’anno zero, l’inizio dell’anno quattro sarà solo dopo tre anni. Tra parentesi, anche se bevete la mia birra fatta in casa avrete l’impressione di aver perso un anno della vostra vita.
Questo non è certo l’unico errore matematico giunto dall’età classica. Le persone di duemila anni fa erano brave come noi nel commettere errori matematici, solo che la maggior parte delle tracce di tali errori sono state cancellate dal tempo. Probabilmente chi li compie oggi vorrebbe che succedesse la stessa cosa. Tuttavia, scavando tra vecchi documenti, alcuni errori ritornano alla luce, incluso quello che è considerato il più vecchio esempio di un errore fence-post.
Marco Vitruvio Pollione era un contemporaneo di Giulio Cesare ed è oggi conosciuto soprattutto attraverso i suoi ampi scritti sull’architettura e la scienza. Le opere di Vitruvio ebbero una grande influenza nel Rinascimento, ed è da lui che ha preso il nome l’Uomo vitruviano di Leonardo da Vinci. Nel terzo dei dieci libri del suo trattato De architectura, espone le buone regole per l’edificazione di un tempio (tra cui quella di usare sempre un numero dispari di scalini, in modo che quando qualcuno poggia il piede dominante sul primo scalino, userà quello stesso piede anche al momento di raggiungere la sommità della scalinata). Parla anche di un errore commesso al momento di posizionare le colonne. Nel caso di un tempio con una lunghezza pari al doppio della sua larghezza, «hanno sbagliato coloro che hanno messo il doppio delle colonne, perché nella lunghezza il tempio ha un intercolunnio più del dovuto».
Nell’originale latino, dove il termine che indica le colonne è columnae, Vitruvio parla degli intercolumnia, ossia degli spazi tra le colonne. Se raddoppiamo la lunghezza del tempio, non dobbiamo mettere il doppio delle colonne ma, piuttosto, il doppio degli intercolunni. Vitruvio, in pratica, mette in guardia i costruttori di templi dall’incorrere in un errore fence-post, che li porterebbe ad avere una colonna di troppo. Se qualcuno riesce a trovare un esempio più antico di un errore fence-post o di qualche altro errore off-by-one, mi piacerebbe saperlo.
Questo problema continua a tormentare le persone. Alle 17 del 6 settembre 2017, il matematico James Propp era in un negozio della Verizon Wireless (negli Stati Uniti) a comprare un telefono nuovo. Era per suo figlio e, per fortuna, prevedeva la possibilità di ottenere un rimborso gratuito, senza domande, nel caso venisse restituito entro quattordici giorni. Il modello non era quello che suo figlio voleva, così due settimane dopo, il 20 settembre, Propp ritornò al negozio per restituirlo. Ma sebbene non fossero ancora passati quattordici giorni dal momento in cui l’aveva comprato, il negozio non poté completare la procedura di restituzione, poiché, tecnicamente, erano nel quindicesimo giorno dal contratto.
A quanto pare, la Verizon contava i giorni considerando quello del contratto come giorno uno anziché giorno zero e usava quindi quel numero per misurare il tempo trascorso; in altri termini, non appena James aveva ricevuto il nuovo telefono, per la Verizon ce l’aveva già da un giorno intero. All’inizio del giorno due, nel sistema della Verizon aveva avuto il telefono per due giorni, anche se lui l’aveva preso solo sette ore prima, all’incirca; e così via, con la conseguenza che, alla fine, James si ritrovò in mano un telefono che aveva avuto per meno di quattordici giorni e che però, secondo la Verizon, era in suo possesso già da quindici.
Nel negozio non c’era nulla che il gestore potesse fare, in quanto per il sistema della Verizon James era ormai nel quindicesimo giorno dal contratto e ogni opzione per restituire il prodotto risultava di conseguenza bloccata. Quando però James tornò a casa e lesse con attenzione tutte le clausole scritte in piccolo, vide che non c’era nessuna frase che indicasse che il giorno in cui era stato stipulato il contratto sarebbe stato considerato come giorno uno. Alcuni avvocati suoi parenti gli fecero presente che questo problema si era già verificato prima e che, sul piano legale, è importante rimuovere l’ambiguità relativa al giorno zero. Nel loro Stato di residenza, il Massachussetts, il sistema giuridico si è occupato della questione a proposito delle ingiunzioni del tribunale, e lo ha definito nei seguenti termini:
Nel calcolare qualunque periodo di tempo prescritto o consentito da queste norme, da un’ingiunzione della corte o da qualunque statuto o norma applicabile, il giorno dell’atto, dell’evento o dell’inadempienza dopo il quale ha inizio il periodo designato non dovrà essere incluso.
– Norme di procedura civile del Massachussetts,
Norma di procedura civile 6: Tempo, Sezione (a) Calcolo
James si rese conto che, probabilmente, il numero delle persone vittime dell’abuso del numero zero da parte della Verizon non era sufficiente a intentare una class action. Nel suo caso, comunque, andò avanti a contestare la matematica (e a minacciare di cancellare gli altri suoi contratti) finché la Verizon, esasperata, non si arrese e gli rimborsò la spesa. Non tutti, però, hanno le competenze matematiche di James o il tempo per sostenere le proprie ragioni. James ha proposto l’adozione legale di una norma del giorno zero, secondo la quale il giorno zero dovrebbe essere riconosciuto da tutti i contratti; è un’iniziativa che ha il mio completo appoggio.
Non penso però che vedremo introdotto questo cambiamento. Gli errori off-by-one sono un problema da migliaia di anni e ho il sospetto che continueranno a esserlo per altrettanti. Come nel thread su Bodybuilding.com (che, a quanto pare, alla fine venne chiuso dai moderatori), lascerò l’ultima parola a TheJosh:
La mia tesi è stata dimostrata da persone più intelligenti. Se prendete una singola settimana – non due settimane, solo una singola settimana – e vi allenate a giorni alterni, potete allenarvi per quattro giorni la settimana. La cosa finisce qui, smettetela di lagnarvi.
– TheJosh (post #129)
Che combinazione!
Contare le combinazioni può essere un’impresa ardua, in quanto le possibilità crescono in modo molto rapido producendo numeri straordinariamente grandi. Già nel 1974, la Lego aveva affermato che prendendo solo sei dei suoi mattoncini standard da 2×4 è possibile combinarli in ben 102.981.500 modi differenti. Per arrivare a quel numero, però, avevano dovuto fare alcune assunzioni e avevano commesso un errore.
Il loro calcolo presuppone che tutti i mattoncini abbiano lo stesso colore (oltre a essere identici sotto ogni altro aspetto) e che vengano impilati uno sull’altro per costruire una torre alta sei mattoncini. Partendo da una base formata da un mattoncino, ci sono quarantasei diversi modi di porre ciascuno degli altri cinque sopra quello sottostante, per un totale di 465 = 205.962.976 torri. Di queste, trentadue sono uniche, ma le altre 205.962.944 formano coppie identiche: ognuna di esse, infatti, può essere girata su se stessa mostrandosi così uguale a un’altra. La metà di 205.962.944 più 32 ci dà un totale di 102.981.504. L’errore di cui parlavo è dato dal fatto che la calcolatrice del 1974 usata per questo conto non era in grado di gestire tutte quelle cifre, così che la risposta era stata arrotondata per difetto di quattro.
Ci sono ventun modi di unire due mattoncini rivolti nella stessa direzione e venticinque modi di unirne due rivolti in direzioni differenti. Abbiamo così un totale di quarantasei opzioni, e solo le due centrali sono simmetriche.
Poi però, un giorno, il matematico Søren Eilers, mentre passeggiava nel parco divertimenti Legoland a Billund, in Danimarca, vide citato il numero 102.981.500 e non ne rimase convinto. Qualche tempo dopo, nel suo ufficio all’Università di Copenhagen, calcolò le possibili combinazioni per sei mattoncini Lego da 2×4, tenendo conto del fatto che i mattoncini potevano anche essere posti uno accanto all’altro e non solo uno sopra l’altro. Non era un calcolo che si potesse fare a mano: anche avendo solo sei mattoncini, il numero di modi in cui possono essere attaccati l’uno all’altro è troppo grande perché un essere umano sia in grado di calcolarlo. Un computer dovrebbe esplorare tutte le possibili opzioni e tenerne il conteggio. Eravamo ormai nel 2004, e i computer erano molto più potenti che nel 1974, ma per arrivare alla risposta ci volle comunque mezza settimana: 915.103.765.
Per assicurarsi che il suo numero fosse corretto, Eilers assegnò il problema a uno studente delle superiori, Mikkel Abrahamsen, che era alla ricerca di un progetto matematico. Il codice usato da Eilers era scritto nel linguaggio di programmazione Java e girava su un computer Apple. Abrahamsen trovò un nuovo modo di esplorare le combinazioni e lo programmò in Pascal per girare su una macchina Intel. Entrambi i metodi, totalmente diversi, diedero la medesima risposta – 915.103.765 – così che possiamo essere ragionevolmente sicuri della sua correttezza.
Dal momento che il calcolo delle combinazioni può portare a numeri molto grandi, viene spesso usato nel campo della pubblicità; tuttavia, è raro che le aziende si prendano la briga di cercare di arrivare alla risposta corretta. Quando il combinatorista (un matematico specializzato nella combinatoria) Peter Cameron entrò in una creperia in Canada, notò che reclamizzava una scelta di «1001 decorazioni». Essendo un combinatorista, si rese conto che 1001 è il numero complessivo di modi in cui è possibile scegliere quattro cose su un totale di quattordici opzioni, e concluse quindi che avevano quattordici decorazioni diverse e i clienti potevano sceglierne quattro. Di fatto, però, la creperia aveva ventisei decorazioni – gli dissero – e avevano scelto «1001» solo perché suonava grande. Se avessero fatto bene i conti, avrebbero visto che con quelle ventisei decorazioni le opzioni possibili erano in realtà 67.108.864. Uno dei rari casi in cui il marketing sottovaluta un prodotto.
Qualcosa di simile si ebbe nel 2002, quando McDonald’s lanciò una campagna pubblicitaria nel Regno Unito per promuovere il suo McChoice Menu, che consisteva di otto elementi diversi. I poster affissi a Londra promettevano che il cliente avrebbe avuto una scelta di 40.312 opzioni, un numero che, oltre a essere sbagliato in sé, si portava dietro anche un errore aggiuntivo. E ciò che lo rende un caso speciale è che quando gli errori furono fatti presenti a McDonald’s, l’azienda, anziché ammetterli, insistette nel cercare di giustificarli.
Calcolare il numero di combinazioni possibili con un menu di otto elementi è ragionevolmente semplice. Immaginate che le opzioni vi vengano offerte una alla volta. Volete un burger, sì o no? Volete anche delle patatine, sì o no? Ci saranno otto scelte sì-o-no e, di conseguenza, avremo un totale di 2 × 2 × 2 × 2 × 2 × 2 × 2 × 2 = 28 = 256 opzioni. Tra queste sono incluse la scelta di non mangiare nessuno dei prodotti del menu, quella di mangiare tutto e ogni combinazione tra questi due estremi. Se diciamo che, tecnicamente, non mangiare nulla non può essere contato come un pasto, ci restano 255 opzioni possibili (anche se qualcuno dirà che il «pasto nullo» è la cosa migliore da ordinare da McDonald’s).
Il numero usato da McDonald’s era il risultato di un calcolo molto diverso: era la risposta alla domanda sull’ordine differente che si potrebbe dare al modo in cui mangiare gli otto elementi del menu. In questo caso, immaginate di avere davanti tutti e otto gli elementi e di doverne mangiare uno alla volta. Avete otto opzioni per quale mangiare per primo, sette per il secondo e così via: 8 × 7 × 6 × 5 × 4 × 3 × 2 × 1 = 8!2 = 40.320 modi di mangiare un pasto composto da otto parti. È un po’ ottimistico, da parte di McDonald’s, assumere che le persone si limiteranno a ordinare tutti e otto gli elementi del menu per poi cercare di scoprire il loro ordine preferito in cui ingurgitarli. (Al ritmo di tre pasti al giorno, per provare tutte le combinazioni occorrerebbero quasi trentasette anni; è un periodo un po’ lungo da passare lì dentro.)
E poi c’era l’errore aggiuntivo, che secondo me fu comunque l’unico momento di chiarezza da parte di McDonald’s. Decisero che, perché si potesse parlare di una «combinazione», almeno due elementi dovevano essere combinati tra loro; di conseguenza, sottrassero otto dal loro totale, in modo da rimuovere le opzioni con la scelta di un unico elemento. Certo, dato che il calcolo originale da loro fatto non rappresentava il numero effettivo delle combinazioni, il risultato finale era comunque privo di senso.3 E anche qualora avessero fatto tutto correttamente, avrebbero comunque dimenticato di rimuovere dal loro conteggio il pasto nullo. In realtà, il numero di combinazioni di due o più elementi presi da un menu che ne contiene otto è 247, un valore molto più piccolo di 40.312 (quest’ultimo va forse letto nel quadro della tendenza a ingigantire le portate).
Tanto più piccolo che 154 persone si rivolsero all’Advertising Standards Authority (ASA), l’organizzazione che si occupa della regolamentazione del settore pubblicitario nel Regno Unito, lamentandosi che McDonald’s aveva enormemente sovrastimato il numero di possibili scelte offerto dal suo McChoice Menu. Obbligato a dare una risposta, McDonald’s non ammise di aver sbagliato i conti ma ricorse alla classica mossa della persona «assolutamente innocente», ovvero si presentò con due scuse che si escludevano a vicenda: un po’ come quando un bambino, colto con le mani nel sacco, afferma che non c’era nessun hamburger e che, comunque, era stato suo fratello a mangiarlo.
In primo luogo, di fronte alla contestazione secondo la quale l’ordine che poteva essere dato alle portate di un pasto era irrilevante, McDonald’s dichiarò che non lo era affatto. Citando dalla sentenza dell’ASA:
Gli inserzionisti hanno dichiarato che non immaginavano che alcune persone avrebbero potuto considerare un doppio cheeseburger e un milkshake come una permutazione identica a un milkshake e un doppio cheeseburger, ma pensavano che ciascuna singola permutazione potesse essere considerata come l’esperienza di un pasto differente.
Non voglio neanche prendere in considerazione il loro uso del termine «permutazione», perché questo ci distrarrebbe dal fatto principale: ovvero che McDonald’s aveva seriamente sostenuto che consumare prima il burger o prima il milkshake significava fare esperienza di due pasti differenti. Nessuno vada a dirgli che, anziché mangiare le loro portate in serie, alcune persone le consumano in parallelo, e questo ci porta a un numero astronomico – o forse sarebbe meglio dire gastronomico – di possibili pasti.
Ma dopo aver stabilito che l’azienda voleva di fatto calcolare il diverso ordine con cui mangiare le varie portate di un pasto (nella sua replica usò persino il termine tecnico per indicare tale calcolo: un «fattoriale»), McDonald’s affermò anche che 40.312 non era il risultato di un calcolo ma un numero con un valore puramente illustrativo. Sostennero che nel vero calcolo entrerebbero in gioco le diverse variazioni di gusto di alcuni degli elementi del menu (per un nuovo totale di sedici componenti distinti del pasto), con un numero complessivo di combinazioni superiore a 65.000. E questo è corretto! (216 = 65.536.) Ma in questo modo si includono cose come entrare da McDonald’s, ordinare tutti i diversi gusti di milkshake e chiamarlo un pasto.
Alla fine, l’ASA decise in favore di McDonald’s giudicando infondate le lamentele dei consumatori. L’autorità ammise che nella pubblicità era stato inserito un numero scorretto, ma stabilì che l’intento dell’azienda era indicare che c’erano un sacco di scelte; inoltre, il totale di «oltre 65.000» era comunque superiore al numero di combinazioni promesso. Alla gente, però, la sentenza non piacque. Venne presentato un appello in cui si chiedeva che agli inserzionisti non venisse consentito di cambiare retrospettivamente il calcolo dietro a un numero usato in una pubblicità, ma la richiesta non venne accolta e la cosa finì lì.
Anche se sono passati decenni, ho intenzione di riaprire questo caso ormai «freddo» (cosa che, se non altro, gli avrà evitato di andare a male) e di dare un’ultima occhiata ai fatti. Conterò soltanto le cose che possono essere ragionevolmente considerate un pasto. Gli otto elementi sul McChoice Menu potrebbero essere combinati in diversi tipi di spuntini e pasti che una persona potrebbe consumare come preferisce. Penso che potremmo coprire ogni plausibile pasto con:
Bevande:
Quattro possibili bibite, quattro possibili milkshake oppure nessuna bevanda. Totale: 9 opzioni.
Portate principali:
Cheeseburger, Filet-O-Fish o un hotdog.4 Il cliente potrebbe scegliere di non prendere nessuna portata principale (una opzione), di prenderne una (tre opzioni) oppure, se è davvero affamato, di prenderne due, magari facendo il bis della stessa (sei opzioni). Totale: 1 + 3 + 6 = 10 opzioni.
Prendete anche le patatine?
Sì o no: 2 opzioni.
Dessert:
Torta di mele, tre gusti di McFlurry o i quattro milkshake. Anche se un cliente ha già preso un milkshake come bevanda principale, non ho intenzione di giudicare chi vuole prenderne un altro come dessert. Contando anche la possibilità di saltare il dessert, abbiamo quindi 1 + 3 + 4 + 1 = 9 opzioni.
Totale:
9 × 10 × 2 × 9 = 1620
Eliminando la possibilità del pasto nullo, ci restano 1619 combinazioni legittime di elementi presi dal menu. Qualcuno dirà che ho saltato delle combinazioni possibili che la gente potrebbe di fatto ordinare, ma sono abbastanza sicuro che McDonald’s non vorrebbe che la sua pubblicità venisse usata per suggerire alle persone di entrare e mangiare sette hotdog di fila; di certo non sarebbe un happy meal.
Quando le permutazioni non bastano
A volte il numero di opzioni consentite può portare a pesanti limitazioni. Negli Stati Uniti, i codici di avviamento postale sono lunghi cinque cifre e vanno da 00000 a 99999, per un totale di centomila opzioni. Dato che gli USA hanno una superficie complessiva di 9.158.022 chilometri quadrati, a ogni potenziale CAP corrispondono poco meno di 100 chilometri quadrati; in media, i codici non possono mai avere un’accuratezza superiore a questa. Il CAP aiuta quindi a restringere il campo quando si tratta di consegnare la posta, ma per avere una risoluzione maggiore è necessario il resto dell’indirizzo.
In Australia è ancora peggio: lì i codici hanno solo quattro cifre per un’area che è paragonabile a quella degli USA (7.692.024 chilometri quadrati), così che ogni CAP deve coprire in media 769 chilometri quadrati. Tuttavia, l’Australia ha meno abitanti: le persone per ogni codice di avviamento postale sono circa 2500, mentre negli USA sono attorno a 3300. Tali numeri, però, assumono che la popolazione sia distribuita in modo uniforme, mentre l’esperienza mi insegna che la gente ama raggrupparsi, e quindi che ci siano più uomini per CAP. Ho appena controllato il codice di avviamento postale australiano del luogo dove sono cresciuto (6023) e ho visto che, nel 2011, c’erano 15.025 persone distribuite in 5646 case.
Ora vivo nel Regno Unito, e sotto il mio CAP ci sono solo trentadue indirizzi. E tutti sulla stessa strada. Nel Regno Unito, i codici di avviamento postale hanno una risoluzione molto più alta che in Australia o negli Stati Uniti. L’edificio in cui si trova il mio ufficio ha un CAP tutto suo: un codice di avviamento postale che si riferisce a un singolo edificio. Invece di darvi il mio indirizzo, posso limitarmi a darvi il mio nome e il mio CAP; alle orecchie di americani e australiani, una cosa del genere suona incredibile.5
Per arrivare a questo risultato, le poste del Regno Unito usano CAP più lunghi che possono contenere lettere, cifre e spazi in posizioni strategiche. Ci sono alcune limitazioni riguardo alle possibili posizioni di lettere e cifre, ma il sistema consente comunque ben 1,7 miliardi di codici postali differenti.
LETTERA O SPAZIO 27 | LETTERA 26 | CIFRA 10 | LETTERA, CIFRA O SPAZIO 37 | CIFRA 10 | LETTERA 26 | LETTERA 26 |
---|---|---|---|---|---|---|
G | U | 7 | 2 | A | E | |
E | 1 | 4 | N | S | ||
S | W | 1 | A | 1 | A | A |
Alcuni esempi di codici di avviamento postale. Per due terzi di questi CAP mi sono dovuto sforzare.
27 × 26 × 10 × 37 × 10 × 26 × 26 = 1.755.842.400
Va detto che questa stima è esagerata, in quanto alcune delle lettere in un CAP del Regno Unito denotano l’area geografica: nei miei esempi il «GU» sta per l’area di Guildford e l’«SW» e l’«E», rispettivamente, per la zona sud-ovest e quella est di Londra. Se il Regno Unito volesse davvero sfruttare al massimo il formato del suo codice postale consentendo l’inserimento di ogni lettera e cifra in qualunque posizione di due gruppi di tre o quattro simboli ciascuno, ci sarebbero 2.980.015.017.984 CAP diversi, abbastanza per indicare con un codice univoco ogni fazzoletto di terreno di circa 30 centimetri quadrati. Sarebbe un’idea grandiosa: al momento di fare la spesa online, potrei dare a ogni cosa che ordino l’indirizzo di spedizione esatto della credenza dove andrà messa.
I numeri telefonici devono risolvere questo stesso problema di assegnare dei numeri alle persone, ma in questo caso è davvero necessario che ci sia una corrispondenza biunivoca. All’inizio c’era un singolo numero di telefono per abitazione mentre oggi, con i cellulari, siamo arrivati a un numero per ogni individuo. Ma non ci sono abbastanza numeri per tutti.
In passato, le telefonate interurbane o internazionali avevano costi proibitivi, così che le compagnie cercavano di battere sul prezzo la concorrenza ricorrendo a strategie che evitassero ai clienti la necessità di cambiare operatore. In pratica, mettevano a disposizione dei clienti un numero verde, chiamato il quale occorreva inserire un codice ID seguito dal numero con cui si voleva parlare; il costo di questa seconda chiamata, che quindi passava attraverso la compagnia intermediaria, veniva addebitato all’account corrispondente a quell’ID.
Il problema era che queste compagnie intermediarie usavano dei codici ID troppo corti. Su Internet si racconta di come gli ID fossero di appena cinque cifre a fronte di una clientela che raggiungeva le decine di migliaia di persone. Cinque cifre consentono al massimo centomila codici diversi, e diecimila clienti ne useranno quindi il 10 per cento. In matematica, diremmo che lo spazio dei possibili codici è saturo al 10 per cento, una percentuale piuttosto alta. Con meno di dieci possibili codici per cliente, non ci vorrebbe molto per indovinarne uno valido e telefonare quindi «a sbafo». Le misure di sicurezza di questo genere, basate sul fatto che l’utente non conosce quali siano i codici validi, funzionano soltanto se il numero di questi ultimi è incredibilmente inferiore a quello di tutti i codici possibili.
Sembra inoltre che il numero di esseri umani sulla Terra abbia raggiunto un alto livello di saturazione rispetto al totale dei numeri telefonici possibili. Se i numeri di telefono fossero molti di più degli uomini, potremmo considerarli come usa e getta (i numeri telefonici, intendo, non gli uomini); ma dato che, almeno in passato, i numeri telefonici dovevano essere memorizzati, ci sono state forti pressioni perché rimanessero corti. Di conseguenza, non ce ne sono abbastanza da poterli eliminare senza pensarci due volte e pertanto vengono riciclati: quando cancellate un contratto telefonico, il vostro numero non sparisce dalla faccia della Terra ma viene dato a qualcun altro. La possibilità che un numero direttamente collegato a vostre informazioni personali venga riassegnato a qualcun altro costituisce senza dubbio un rischio sul piano della sicurezza.
Il mio aneddoto preferito riguardo ai numeri telefonici riciclati viene dalla Ultimate Fighting Championship (UFC), una competizione di arti marziali miste della cui esistenza sono vagamente consapevole solo perché il ring usato per i combattimenti è un ottagono e viene proprio indicato con questo nome. Direi che chiamare uno show televisivo La strada che porta all’ottagono, per poi mostrare al pubblico soltanto un gruppo di lottatori potrebbe essere considerato un esempio di pubblicità ingannevole. E non voglio neanche iniziare a lamentarmi di quanti pochi poligoni superiori ci fossero in Oltre l’ottagono.
Il peso welter dell’UFC Rory MacDonald notò che ogni volta che usciva dagli spogliatoi prima di un incontro non suonavano la musica da lui chiesta. I suoi avversari sceglievano canzoni aggressive che li preparassero alla lotta e le loro richieste venivano accolte, ma pareva che le sue non fossero neppure prese in considerazione. In effetti, immagino che sentir suonare di sorpresa le note di U Can’t Touch This di MC Hammer non aiuti a entrare nello spirito giusto prima di un incontro. E, per aggiungere al danno la beffa, gli altri lottatori lo prendevano in giro per le sue scelte musicali.
Le cose andarono avanti finché un giorno, prima di un combattimento, il produttore andò da Rory e si scusò di non poter suonare la canzone dei Nickelback da lui richiesta. Quando Rory gli fece presente che non aveva mai chiesto nulla del genere, il produttore gli mostrò gli SMS in cui l’aveva fatto. Un suo vecchio numero telefonico era stato riciclato e assegnato per caso a un fan dell’UFC, che si era divertito a scegliere la musica di Rory al posto suo. Oltre a illustrare in modo esemplare i limiti delle combinazioni numeriche, questo aneddoto è importante anche per un altro motivo: è il primo caso noto nella storia in cui, grazie ai Nickelback, qualcuno ha smesso di soffrire.
1. Mi rendo conto che questa stranezza dipende in parte dai semitoni (e dalla definizione di una scala maggiore); questi ultimi, però, sono solo semicolpevoli.
2. In matematica, il punto esclamativo è usato per indicare un fattoriale; data la straordinaria grandezza che questi numeri possono avere, sembra una scelta appropriata.
3. I matematici, sempre pronti alle sfide, hanno dato il nome di «McCombination» a ogni valore n! – n (è la sequenza A005096 nella On-Line Encyclopedia of Integer Sequences) e stanno cercando un possibile uso per questi numeri; finora, però, non ne hanno ancora trovato nessuno.
4. Il McChoice Menu è stata una delle poche volte in cui McDonald’s ha venduto hotdog. Il che, in fin dei conti, non è stato l’errore più grande di tutta questa faccenda.
5. Per correttezza, va detto che nel 1983 gli Stati Uniti allungarono i loro codici postali portandoli a nove cifre («CAP+4»), ma gli americani, amanti della libertà, non accolsero con entusiasmo l’idea di essere associati a numeri specifici: la cosa ricordava un po’ 1984. Così, in seguito i CAP che la gente si trova davanti agli occhi sono rimasti di cinque cifre, anche se, dietro le quinte, i codici a barre stampati sulle lettere usano un «CAP+6» che assegna undici cifre a ogni edificio del Paese.