Ogni lettera estratta in modo indipendente. 26 possibilità per posizione, probabilità uniforme.
Estrarre una lettera casuale da 26 candidati è una distribuzione uniforme discreta su un alfabeto finito. Ogni lettera ha esattamente 1/26 ≈ 3,85% di probabilità. Ogni estrazione è indipendente: la comparsa della lettera "A" una volta non ha alcuna influenza sulla probabilità che "A" compaia successivamente. Questa indipendenza è ciò che separa il testo casuale dal linguaggio naturale, dove le sequenze di lettere seguono profondi schemi statistici plasmati dal vocabolario, dalla grammatica e dalla fonetica.
Nel testo in inglese, le frequenze delle lettere sono profondamente diseguali. Samuel Morse le quantificò negli anni 1830 mentre progettava i codici telegrafici: contò le lettere nelle cassette dei caratteri di una tipografia e scoprì che la E appare circa il 13% delle volte, la T circa il 9% e la Z appena lo 0,07%. La sua classifica di frequenza (ETAOIN SHRDLU) divenne leggendaria tra tipografi e crittografi. Un generatore di lettere casuali ignora tutto questo. Ogni lettera appare con identica probabilità del 3,85%, producendo sequenze che non assomigliano affatto al linguaggio naturale. Questo contrasto è esattamente ciò che rende questo strumento utile per verificare se un sistema tratta tutti gli input allo stesso modo.
Quante lettere casuali bisogna estrarre prima di averle viste tutte e 26 almeno una volta? La maggior parte delle persone stima circa 30. La risposta matematica è approssimativamente 100. Nello specifico, il numero atteso è 26 × H(26) ≈ 26 × 3,85 ≈ 100,2, dove H(26) è il 26° numero armonico (la somma 1 + 1/2 + 1/3 + … + 1/26). Le prime lettere arrivano rapidamente. Le ultime una o due richiedono un tempo esasperante. Con 20 lettere uniche raccolte, ci si aspettano ancora circa 26 × (1/6 + 1/5 + 1/4 + 1/3 + 1/2 + 1) ≈ 64 ulteriori estrazioni per completare l'insieme. Il grafico di copertura qui sopra traccia questo percorso in tempo reale.
Questo fenomeno, noto come il problema del collezionista di figurine, compare in tutta l'informatica, l'ecologia (campionamento delle specie) e il controllo qualità (quanti elementi testare prima di coprire tutti i tipi di difetto). Philippe Flajolet e Robert Sedgewick hanno fornito il moderno framework analitico nel loro testo fondamentale sulla combinatoria analitica.
Ogni lettera è selezionata tramite crypto.getRandomValues(), la Web Cryptography API. Viene generato un byte casuale e mappato sull'intervallo delle 26 lettere utilizzando il campionamento per rigetto: i valori al di fuori del più grande multiplo esatto di 26 (che è 234 nell'intervallo di byte 0-255) vengono scartati e rigenerati. Questo elimina il bias del modulo che altrimenti renderebbe le lettere dalla A alla D leggermente più probabili. Il risultato è una distribuzione uniforme matematicamente perfetta sull'alfabeto, generata interamente nel tuo browser.
Fate visitare a ogni studente /letter/100 e generare 100 lettere casuali. Chiedete loro di contare la frequenza di ogni lettera e confrontarla con le 3,85 attese per lettera. Alcuni studenti vedranno 8 o più di una lettera e zero di un'altra. La discussione in classe: il generatore è distorto? L'istogramma fornisce la risposta visivamente man mano che più lettere si accumulano verso altezze uguali.
Per un esercizio più approfondito di crittoanalisi, ispirato allo studioso arabo del IX secolo Al-Kindi che fu pioniere dell'analisi delle frequenze, fate confrontare agli studenti le loro sequenze casuali con un paragrafo di testo in inglese. La sequenza casuale ha una frequenza piatta; il paragrafo in inglese mostra picchi drammatici su E, T, A. Questo contrasto introduce il concetto che la casualità ha una struttura e che tale struttura può essere misurata. Lo strumento non richiede account e non memorizza dati degli studenti.
Ogni lettera viene generata all'interno del tuo browser. Il server fornisce la pagina; il tuo dispositivo crea la casualità. La tua cronologia risiede nel localStorage sulla tua macchina. Condividere l'URL condivide solo la configurazione dello strumento. Il destinatario estrae le proprie lettere indipendenti dall'entropia del proprio dispositivo.
L'URL controlla il numero:
Condividi il link. Stesso alfabeto, destino diverso. Confronta le tue estrazioni.
Ispirazione Quotidiana
Opere selezionate dalla giuria dell’A' Design Award, presentate fresche ogni mattina.