IL GIORNO DELL'OTTIMIZZAZIONE

di Paolo Russo

versione del 16 dicembre 2011

ultima versione: http://digilander.libero.it/paolrus/My/SF/index.html#ottimizzazione

licenza: http://digilander.libero.it/paolrus/My/Licenza_Testi.html

Questo racconto può sembrare un po' in contrasto con la visione offerta da un altro mio racconto, Collaudo. Posso solo dire che è stato scritto anni dopo ed è frutto di meditazioni un po' più profonde anche se non ancora del tutto mature.

Derren si diresse a grandi passi verso la Sala Comune. Quasi tutta la popolazione di Realworld era già radunata lì; Derren era uno dei pochi che ancora si attardavano. Superò una donna che sembrava avere meno fretta di lui e che lo salutò come voleva la tradizione: "Ottimogiorno, Derren!".

Derren restituì il saluto con scarso entusiasmo: "Ottimogiorno". In cuor suo temeva che non lo sarebbe stato, ma non voleva rovinare la festa agli altri, giusto nel caso che si fosse sbagliato.

Il normale saluto di ogni giorno sarebbe stato "buongiorno", ma quello era un giorno particolare, il Giorno dell'Ottimizzazione, e col tempo si era affermata l'usanza di quello strano saluto, da usare solo quel giorno, una volta l'anno... nel calendario esterno. Di fatto, i Giorni dell'Ottimizzazione erano ormai sempre più rari e quello precedente era stato ben dodici anni prima, ma nessuno aveva dimenticato le buone vecchie usanze, nate all'epoca in cui il Giorno cadeva ogni settimana o due; anzi, erano diventate ancora più preziose.

Derren era teso e camminava in fretta. Superò qualcun altro che evidentemente lo conosceva.

"Oh, ciao, Derren, ottimogiorno!"

"Ottimo, sì."

"Uh?"

"Volevo dire, ottimogiorno anche a te."

"Ah."

La Sala Comune era effettivamente piena come solo la Sala Comune poteva essere. Quale altra stanza di Realworld avrebbe potuto contenere duecento milioni di persone? Il suo soffitto era un'immensa cupola, apparentemente trasparente. Nessun materiale normale avrebbe potuto sostenere un tale peso, ma la cupola non aveva questo problema perché non era soggetta alle leggi fisiche di Realworld.

Migliaia di porte si aprivano lungo la sua parete circolare. Nonostante questo, se tutti si fossero recati nella Sala Comune percorrendo a piedi i corridoi si sarebbero formati ingorghi pazzeschi. Per questa ragione la Supervisione concedeva a tutta la popolazione, per quel solo giorno all'anno, il permesso incondizionato di teletrasporto. Molti ne approfittavano per teletrasferirsi qua e là tutto il giorno. Tecnicamente, non c'era ragione per non permetterglielo tutto l'anno, ma il Comitato Psicologico aveva deciso che non era opportuno: la psiche degli abitanti di Realworld avrebbe potuto risentirne in modo intollerabile. I casi di persone affette da complesso di inesistenza erano in continuo calo, stando alle statistiche, ma per il momento gli psicologi non avevano ritenuto opportuno ritornare sulla loro decisione, presa decenni prima.

Derren guardò l'orologio da polso che, come tutti gli orologi di Realworld, segnava due tempi diversi, quello interno in caratteri grandi e quello esterno in caratteri piccoli. Normalmente Derren avrebbe guardato l'ora interna (le dieci e un quarto), ma questa volta non gli interessava. L'ora esterna segnava mezzogiorno meno dieci secondi. Uffa, ancora dieci secondi esterni, pensò Derren. Guardò il cielo, poi la folla, quindi si accorse che tutti stavano guardando un punto ben preciso del cielo. Guardò anche lui in quella direzione. C'era un uccello, un vero uccello esterno, al di là della cupola, che batteva pigramente le ali. Sembrava impossibile che un uccello potesse volare battendo le ali così lentamente. Derren scacciò l'impressione; quell'uccello volava normalmente, nel suo tempo esterno. Naturalmente la trasparenza della cupola era solo un'illusione. Al di là della cupola c'era il puro nulla. La cupola era una specie di enorme schermo televisivo che mostrava le immagini riprese da alcune telecamere piazzate all'esterno, o meglio, in ciò che gli abitanti di Realworld chiamavano esterno.

Passò un minuto. Derren guardò ancora l'orologio: il tempo esterno segnava mezzogiorno meno cinque secondi. Derren convertì a mente: un secondo esterno equivaleva circa a dodici secondi interni, quindi mancava ancora un minuto. Si corresse mentalmente: quel fattore di conversione temporale valeva ormai da dodici anni, ma nessuno poteva dire se avrebbe continuato a valere anche dopo mezzogiorno. Studiò il lentissimo volo dell'uccello. Tutt'attorno la folla era emozionata. Alcuni trattenevano il respiro.

Mezzogiorno. Per alcuni secondi (interni) la gente studiò l'uccello senza fiatare, quindi esplose in un coro di evviva. La folla cominciò a gridare, esultare e festeggiare in tutti i modi possibili e immaginabili.

L'uccello sembrava adesso del tutto immobile nel cielo.

Un tizio che stava accanto a Derren gli dette una gomitata amichevole e gli disse: "Guarda, praticamente non si muove più! Sono almeno altri dieci millenni di vita per Realworld! Che ottimizzazione! Erano anni che non si ottimizzava così! Non è fantastico?"

"Sì, fantastico". Derren squadrava l'orologio. Il tempo esterno segnava mezzogiorno spaccato.

"Non mi sembri molto entusiasta."

"Eh? Oh, no, lo sono. Sto solo cercando di calcolare quanto tempo abbiamo guadagnato. Mi interessa il nuovo fattore di conversione temporale."

"Che t'importa? Lo calcoleranno i tecnici."

"Sono un tecnico."

"Oh."

"Intendiamoci, non lavoro alla Supervisione."

"Ah. Allora perché perdi tempo a guardare l'orologio invece di festeggiare? Non ti fidi dei tuoi colleghi della Supervisione?"

"Le loro stime sono sempre precise."

"E allora qual è il problema?"

Derren sorrise. "Ho forse detto che c'è un problema?"

"Lo sta dicendo la tua faccia."

"Ero solo soprappensiero", mentì Derren.

L'altro sollevò un sopracciglio, si voltò dall'altra parte e riprese parte ai festeggiamenti.

Derren guardò ancora l'uccello, poi l'orologio. L'uccello era fermo nel cielo. Non aveva ancora battuto le ali una sola volta da mezzogiorno in poi. Diamine, non le aveva neppure mosse. Erano già passati tre minuti di tempo interno, ma per il tempo esterno l'orologio continuava a segnare mezzogiorno spaccato. Derren sentì un brivido lungo la schiena. Il fattore temporale doveva essere balzato a duecento, come minimo. Se le sue stime erano corrette, un fattore temporale superiore a settanta o ottanta, nella migliore delle ipotesi, non era semplicemente possibile. Per raggiungere un tale livello di ottimizzazione sarebbe stato necessario tagliare via parti vitali di Realworld. Naturalmente il Supervisore non era autorizzato a farlo. Derren si guardò in giro. La Sala Comune era sempre lì, la folla pure. Ma c'erano davvero ancora tutti? Duecento milioni di persone? Chi si sarebbe accorto se ne fosse sparita la metà? Derren uscì dalla sala. Il corridoio esisteva ancora. Il suo appartamento pure.

Derren guardò ancora l'orologio. Erano passati quindici minuti di tempo interno, ma l'ora esterna era ancora mezzogiorno. Spaccato. Derren scosse la testa e se la prese tra le mani, gemendo. C'era qualcosa di orrendamente sbagliato da qualche parte.

Nelle ore che seguirono, nella Sala Comune, qualcuno ogni tanto sollevava lo sguardo e osservava l'uccello, sempre immobile, scolpito nel cielo, e aggrottava la fronte, ma poi faceva spallucce e riprendeva a festeggiare. Tutti convennero di non aver mai visto prima una tale ottimizzazione.

Ziggar, la tecnica incaricata della supervisione del traffico, bussò alla porta del supervisore capo Kumm.

"Avanti. Ciao, Ziggar. Tutto bene?"

"Certo, Kumm. La folla nella Sala Comune si è dispersa a notte inoltrata, utilizzando perloppiù il sistema di teletrasporto."

"Ci sono stati problemi con il teletrasporto?"

"No, ha funzionato come sempre. C'è stata qualche lamentela di qualcuno il cui orologio non funzionava bene e ha tentato di teletrasferirsi dopo la mezzanotte, a permesso ormai revocato. Succede tutti gli anni. Questa volta è stato peggio degli anni scorsi, perché c'è stata una tale ottimizzazione che la gente l'ha usata come scusa per festeggiare più a lungo del solito. Niente di importante, comunque."

"Bene."

"Tuttavia..."

"Sì?"

"Ecco, c'è un piccolo mistero. Il teletrasporto ha funzionato come sempre, ma non capisco come. Non avrebbe dovuto funzionare."

"Questa poi. Perché mai?"

"Perché è mezzogiorno."

Kumm guardò l'orologio. Erano le otto e ventinove di mattina.

Ziggar precisò: "Parlo del tempo esterno. È ancora mezzogiorno. Non è ancora trascorso un solo secondo dall'ottimizzazione."

"Bene, e allora? È un'ottimizzazione fantastica. Realworld deve aver guadagnato interi milioni di anni. Festeggeremo ancora per giorni, in verità."

"Non è questo il punto. Il teletrasporto non fa parte delle leggi fisiche di Realworld, è un algoritmo implementato esternamente. Se il mondo esterno è fermo rispetto a noi, come fa il teletrasporto a funzionare?"

"Oh, boh, questa è roba da softwaristi."

"Sono softwarista."

"Be', evidentemente funziona. Che vuoi che ti dica?"

"Vorrei che mi dicessi come fa a funzionare quando il tempo esterno è praticamente fermo. Vorrei che almeno mi dicessi che la cosa è strana."

"Okay. La cosa è strana."

"È più che strana. È inspiegabile."

"Ti ho già concesso che è strana. Non ti allargare troppo."

"Non c'è molto da scherzare. È un problema serio. Serissimo. Sai bene quanto le nostre vite dipendano dal perfetto funzionamento del software di Realworld. Noi tutti non siamo altro che una simulazione che gira su un computer."

Kumm sobbalzò. "Sai bene che siamo reali, non simulati. Sai cosa significa Realworld?"

"In origine si chiamava Simworld: mondo simulato."

"Be', ora si chiama Realworld: mondo reale."

"Il nome è cambiato, ma solo quello, e solo per l'insistenza degli psicologi. Adesso è un nome che in pratica non vuol dire nulla. Questo sarebbe il mondo reale? E quello esterno, allora, cosa sarebbe?"

"È reale anche quello. Sono entrambi reali, a modo loro. Miseriaccia cane, Ziggar, non farti sorprendere in giro a dire che Realworld è una simulazione. Gli psicologi..."

"Non siamo ancora in una psicocrazia, anche se ci stiamo andando. Gli psicologi farebbero meglio a fare il loro lavoro e lasciare i termini tecnici ai tecnici. Tecnicamente, Realworld è una gigantesca simulazione. Circa un decimo dell'attuale popolazione di Realworld era esterna, ma ha scelto di entrare in Realworld facendosi digitalizzare per avere l'immortalità che solo un'esistenza software può garantire. Tutti gli altri sono nati già all'interno. Simulati fin dal concepimento. Sintetizzati."

"Gli psicologi fanno il loro lavoro. Lo sai quanti casi di complesso di inesistenza c'erano nei primi tempi? Lo sai quanti suicidi ci sono stati? A volte le parole contano. Questo è un mondo reale, a modo suo."

"Reale-a-modo-suo è un giro di parole per non dire virtuale. E perché non chiamare computer il computer che simula Realworld? Il comandamento psicocratico è di chiamarlo Supervisore."

"Fa tutt'un altro effetto".

"E crea pure un bel po' di confusione semantica con noialtri della Supervisione, che siamo semplici umani simulati come tutti gli altri, anche se per lavoro controlliamo il software del Supervisore. Che nome assurdo. Un pietoso tentativo di far sembrare che il computer sia soltanto uno strumento di regolazione nelle nostre mani, quando invece siamo tutti noi nelle sue mani, a ben vedere."

Kumm sospirò. Quando Ziggar si infervorava diventava proprio inflessibile. Decise di cambiare argomento. "Hai provato a chiedere al Supervisore come fa a funzionare il teletrasporto?"

"Ho provato a inviare una richiesta di informazioni al sottosistema diagnostico del software di simulazione, se è questo che intendi dire. Non ha risposto. Non ha neppure confermato di aver ricevuto il messaggio. Le comunicazioni con il computer, anzi pardon, con il Supervisore, sembrano tagliate."

"Questa è la prima cosa che avresti dovuto dirmi."

"Non vedo perché. È normale che il Supervisore non risponda se il suo tempo è fermo rispetto al nostro. Non capisco però come funzioni il teletrasporto. Le richieste di spostare la materia simulata di Realworld vengono accettate e soddisfatte."

"Scusa, ma se il Supervisore è in una stasi temporale rispetto a noi, come fa a... ehm... dare realtà a Realworld?"

"Come fa a simularci? Non lo so. Anche questo è strano, in effetti. Non ci avevo pensato. Sai com'è, tendo a pensare al Supervisore solo quando bisogna inviargli una richiesta di teletrasporto."

"Senti, dev'essere tutto normale. Il Supervisore ha ottimizzato la simulazione. È programmato per farlo una volta l'anno (esterno). In tutto quel tempo uno dei processori del Supervisore lavora al problema di come accelerare la simulazione. Se riesce a trovare un modo per farlo, il nuovo metodo viene applicato al successivo Giorno dell'Ottimizzazione. Non occorre che ti spieghi quanto è importante per tutti noi l'ottimizzazione. Non c'è più nessuno, là fuori nel mondo esterno, a prendersi cura di noi. La Seconda Guerra Biologica li ha fatti fuori tutti, o almeno così si ritiene. Di certo ha fatto fuori tutti quelli che si prendevano cura di Realworld. Non abbiamo nessuna possibilità di intervenire sul mondo esterno. Il reattore nucleare automatizzato che alimenta il Supervisore ha torio sufficiente solo per pochi altri decenni, poi moriremo tutti. Cancellati. Spenti. Realworld non esisterà più. Abbiamo ancora solo venti o trent'anni di tempo da vivere, ma per fortuna è tempo esterno. Più efficiente è il Supervisore, più veloce è la simulazione, più tempo interno ci resta da vivere. Dopo quella specie di miracolo che ha fatto oggi, Realworld potrà vivere per milioni di anni, a quanto pare. Anzi, quanti, esattamente? Te l'hanno già detto?"

"No. Mi aspettavo che me lo dicessi tu."

"In effetti il reparto cronologico è un po' in ritardo. Aspetta, mi informo."

Kumm fece una telefonata.

"Pronto, Roondex? Sì, sono io. Senti, avete calcolato... No? Ma insomma, è passato quasi un giorno. Possibile che ancora... Sì. No. Sì, capisco. D'accordo, tenetemi informato. Ciao." Riattaccò.

"Allora?" chiese Ziggar.

"Niente da fare. Là fuori è sempre mezzogiorno spaccato. La nostra accelerazione rispetto al mondo esterno sembra infinita. Roondex sta aspettando che dall'esterno arrivi il segnale del tick di un secondo, per vedere a quanto tempo interno corrisponde. Ancora non è successo."

"Questo è impossibile."

"Già."

Ziggar si fece meditabonda. "Non c'era un tale che era critico nei confronti dell'ottimizzazione? Uno che diceva che oltre certi limiti non aveva senso e che poteva essere pericolosa?"

"Derren? È caduto in disgrazia per questa sua idea. Una volta lavorava qui alla supervisione, prima che il Comitato Psicologico dichiarasse le sue idee incompatibili con il suo lavoro. Era un tipo in gamba, accidenti. È da molto che non lo sento."

"Forse è il caso di chiamarlo."

"Perché mai?"

"Ci occorre tutto l'aiuto possibile. Io francamente non so che pesci pigliare."

"Uhmm."

Appena Derren entrò nella stanza, Kumm disse: "Ciao, Derren. È un pezzo che non ci si vede. Ma che faccia pesta hai. Che ti è successo?"

"Ho dormito male. Anzi, praticamente non ho dormito."

"Perché?"

"Ho passato tutta la notte a decidere se fosse il caso di avvertirvi che secondo me qualcosa non andava. Avevo appena deciso di non farlo quando mi avete telefonato."

"Oh, be', mi dispiace. Vorrà dire che dormirai dopo. Dopo tutto, qualunque sia il problema, non sembra urgente, anzi. Sembra che Realworld abbia guadagnato milioni di anni."

"Sembra."

"Non ne sei convinto?"

"È semplicemente impossibile. Nell'ottimizzazione dev'essere andato perso qualcosa. L'hardware del Supervisore non è così veloce."

"Ma non manca nulla."

"Così sembra."

Ziggar riferì a Derren quello che le era successo.

"Uhm", disse Derren, "sembra che il Supervisore abbia tagliato certe funzioni ritenute non essenziali, come il sottosistema diagnostico."

"Questo è impossibile", disse Ziggar, "non è autorizzato a farlo. Non è autorizzato a tagliare via niente."

Andarono avanti per un po' a parlarne senza fare nessun progresso. Alla fine Derren guardò l'orologio: l'ora esterna era sempre mezzogiorno. Disse: "Questa faccenda è veramente sinistra."

Kumm propose: "Facciamo una mappa di tutti i servizi direttamente forniti dal Supervisore che funzionano ancora."

Venne fuori che funzionava ancora tutto, tranne la comunicazione con il Supervisore non finalizzata alla fornitura di qualche servizio. Il teletrasporto funzionava regolarmente, se autorizzato dall'ufficio di Supervisione. Anche le infermerie funzionavano regolarmente. Se qualcuno si rompeva un braccio, bastava ordinare al Supervisore di ripristinare una configurazione precedente il danno. Più o meno la stessa cosa accadeva per ogni malattia. Non esistevano malattie mortali. Gli effetti della vecchiaia erano facilmente e rapidamente annullati. Perfino in caso di incidente mortale era possibile recuperare la configurazione precedente e resuscitare il malcapitato. Alcuni festeggiamenti particolarmente vivaci avevano provocato due morti e trentasette feriti, ma era stato possibile salvare e curare tutti: le infermerie erano del tutto a posto.

Kumm era abbastanza rassicurato. Finché tutto funzionava non c'erano veri problemi. Tentò di convincere gli altri che tutto in fondo stava andando per il meglio, ma il loro sguardo lo fece immediatamente desistere.

"Che facciamo?" chiese Ziggar.

Derren propose: "Dovremmo avere una copia dei sorgenti di Realworld. Potremmo rileggerli per cercare qualche indizio."

"Sorgenti?" chiese Kumm.

"Il Supervisore non è semplicemente un computer: quello è solo l'hardware. La cosa più importante è il software di simulazione. In particolare, voglio vedere com'è fatto il programma di ottimizzazione."

"Scherzi?" disse Ziggar. "Dev'essere un sistema esperto di complessità pazzesca."

"Non abbiamo scelta."

"Ma non abbiamo qui a Realworld nemmeno uno dei creatori del software originale?"

"No", disse Kumm, "il regolamento del progetto proibiva ai programmatori di Realworld di entrare nella loro creazione. Se si fosse manifestato qualche bug, chi l'avrebbe corretto?"

Tentarono di esaminare i sorgenti. Da una rapida indagine negli archivi venne fuori che il programma di ottimizzazione era capace di automigliorarsi autoriscrivendosi e lo faceva normalmente. Nulla di cui stupirsi: era appunto un programma di ottimizzazione.

"Niente da fare", disse Ziggar, "si sarà già riscritto decine di volte."

Derren disse: "Avrei un'idea".

"Su", disse Kumm, "non tenerci sulle spine."

"Potremmo fare una simulazione del Supervisore."

"Cosa???" gridarono in coro Ziggar e Kumm.

"Non agitatevi tanto. Non intendo dire una simulazione completa, che a sua volta simulerebbe un'altra Realworld; niente di tutto questo. Facciamo girare il solo programma di ottimizzazione. Forniamogli i dati del problema: ottimizzare Realworld. Vediamo cosa farebbe, come lo ottimizzerebbe."

Ziggar obiettò: "Ma il programma si è autoriscritto chissà quante volte".

"Lo farà di nuovo. Basta dargli tempo."

"Ma non abbiamo un computer abbastanza potente. Il programma originale si sta automigliorando da quarantadue anni di tempo esterno. Non possiamo aspettare tanto anche noi per avere la risposta. Anzi, dovremmo aspettare ancora di più, dato che i nostri computer non sono potenti come il Supervisore. Sono solo computer simulati, come ogni altra cosa a Realworld."

"Uhm. Hai ragione, però, se io fossi stato uno dei programmatori che hanno realizzato il software del Supervisore, avrei senz'altro..." Le sue parole sfumarono in un borbottio indistinto mentre guardava i sorgenti.

"Cosa stai cercando?" chiese Ziggar.

"Ecco! L'ho trovato. Qua, nella lista dei servizi speciali forniti dal Supervisore a Realworld. Risanamento, riparazione, costruzione, immagini digitalizzate dall'esterno, teletrasporto... e supercalcolo."

Kumm disse: "Supercalcolo? Non ne ho mai sentito parlare."

"Vediamo un po' i dettagli. Uhhh... guardate un po' qui. Sì, non mi stupisce che la cosa sia passata un po' in sordina. È una back door di quelle pericolose."

Kumm disse: "Derren, traduci".

"I nostri computer sono simulati. I programmatori che hanno creato il software di Realworld sapevano che avremmo avuto bisogno di computer. Diamine, erano programmatori! Se c'è una cosa che tutti i programmatori pensano è che i computer siano indispensabili. Dunque, sapevano che avremmo avuto bisogno di computer. Volevano che fossero potenti. Uno dei programmatori ha creato un'accesso speciale al Supervisore. In sostanza, possiamo avere accesso diretto alla potenza di calcolo del Supervisore da qui, dall'interno, aggirando l'inefficienza della simulazione."

"Perché non ne ho mai sentito parlare?"

"È una caratteristica pericolosa. Se qualcuno riuscisse a scrivere un programma capace di compromettere il normale funzionamento del sistema operativo del Supervisore, sarebbe la fine di Realworld. In teoria non dovrebbe succedere, però... ah, ma c'è di meglio, guardate qua. È possibile assegnare al supercalcolo la priorità assoluta."

"Vorrebbe dire?"

"Vorrebbe dire che è possibile lanciare un programma direttamente sull'hardware del Supervisore e fare in modo che utilizzi tutta la capacità di calcolo disponibile. Realworld rimarrebbe congelato fino al completamente del programma... che, se contenesse qualche subdolo errore, potrebbe anche non terminare mai."

"Ma è pericolosissimo."

"Però è il sogno di qualunque programmatore. Scrivi un programma, lo fai girare e hai istantaneamente la risposta."

"Istantaneamente?"

"Sì, perché mentre il programma lavora sei congelato. Non ti rendi conto del tempo che passa. Il tempo interno si ferma. Quello esterno continua ad andare avanti."

"Ma il prezzo da pagare è il consumo del tempo di vita di Realworld."

"Il programmatore non poteva sapere che sarebbe scoppiata un'altra guerra e che sarebbero morti tutti, lasciandoci in questo pasticcio. Comunque l'idea è valida."

"Un momento", disse Ziggar, "come si dovrebbe fare per accedere al supercalcolo? Non dimentichiamo che il Supervisore non risponde."

"Però fornisce i servizi elencati in questa lista ufficiale. C'è anche il supercalcolo, anche se all'ultimo posto. Scommetto quello che volete che il supercalcolo funziona ancora."

"E come? Come si fa ad accedervi?"

Derren consultò la documentazione. "Come per tutti gli altri servizi forniti dal Supervisore: tramite un oggetto 'magico' di interfaccia, strutturato in maniera tale da essere esplicitamente riconosciuto dal software di simulazione. Dovremmo avere un supercomputer magico, pardon, supervisivo come dite voialtri in gergo, da qualche parte. Ecco qua l'immagine e la descrizione. Supercomputer modello SMA-01. Uhm... Ziggar, ne hai mai visto uno qui alla Supervisione?"

"No, uno così no. Mai visto. Com'è piccolo, tra l'altro. Me lo ricorderei se l'avessi visto."

"Faccio una ricerca in archivio... niente. Nessun SMA-01. Non ne è mai stato costruito nemmeno uno. Bene, lo faremo noi. Il servizio di costruzione di apparati funziona, no?"

Kumm disse: "No, è un rischio troppo grande. Non autorizzo il supercalcolo."

Ziggar disse: "Kumm, c'è qualcosa che non va. Dobbiamo scoprire la verità."

"No, se il prezzo è il pericolo di distruggere Realworld. Proprio adesso che con questa fantastica ottimizzazione abbiamo guadagnato..."

Derren sbottò: "Kumm, non hai capito. Non è assolutamente possibile ottenere una tale ottimizzazione."

Ziggar rincarò: "È vero. È assai più probabile che il Supervisore ci stia ingannando."

Kumm protestò: "Ma che dici?".

"Non è difficile. Abbiamo solo due modi per misurare il tempo esterno. Uno è l'orologio supervisivo centrale, aggiornato direttamente dal Supervisore aggirando il resto del software di simulazione e a cui tutti gli orologi di Realworld, compresi quelli da polso, si collegano per sapere l'ora esterna. L'altro è costituito dalle immagini del mondo esterno che il Supervisore invia direttamente sulle pareti supervisive della Sala Comune. In altre parole, è sempre e solo il Supervisore a dirci che ora è là fuori. E se il programma di ottimizzazione avesse deciso, per qualche sua strana logica interna, di illuderci di avere una vita illimitata davanti a noi?"

"Ma non può farlo!"

"Non è esatto. Non dovrebbe farlo. Quello che davvero non può fare, invece, è raggiungere sul serio un tale livello di ottimizzazione."

"Capisco". Kumm si chiuse in un silenzio cupo. Dopo un po' chiese: "Attraverso questo computer supervisivo potreste anche accedere alle vere immagini esterne?"

Derren e Ziggar si scambiarono un'occhiata, poi Derren consultò la documentazione. Dopo mezzo minuto disse: "Sì. I programmatori hanno pensato che avremmo potuto voler usare il supercalcolo per elaborare le immagini esterne. Ci hanno gentilmente offerto l'accesso diretto."

"Allora va bene, ma solo per vedere le immagini esterne. Niente simulazione del Supervisore." Il solo concetto sembrava sconvolgerlo.

Kumm usò la sua autorità per autorizzare la creazione istantanea di un computer SMA-01 basata sugli schemi memorizzati nell'archivio. Il computer si materializzò sul pavimento dell'officina supervisiva.

Kumm era allegro. "Via, ragazzi, perché siete così pessimisti? Funziona tutto."

"Per quanto ancora?" chiese Ziggar.

Derren non fece discorsi. Afferrò il piccolo oggetto magico e Ziggar non riuscì neanche a toccarlo prima che Derren fosse riuscito a scrivere il software opportuno.

"Bene", disse Derren, "ora sapremo. È un banale programmino che ci farà vedere le immagini esterne, niente di più, e gira a priorità normale. Non può fare nessun danno."

Kumm, sudando freddo, fece un gesto di assenso con la testa.

Derren lanciò il programma in esecuzione. Non accadde nulla. Derren ammutolì e si mise a pensare.

Ziggar disse: "Derren, temo che abbiamo dimenticato un piccolo dettaglio. Il tempo esterno sembra congelato rispetto a noi. Il supercalcolo funziona nel tempo esterno, quindi è praticamente fermo."

Kumm disse: "Allora questa è una conferma che l'ottimizzazione è reale?"

Derren rispose: "Non è possibile. Forse il supercalcolo semplicemente non funziona. C'è un solo modo per saperlo."

"Quale?"

"Far girare il nostro programma a priorità assoluta."

"No! È troppo pericoloso."

"Kumm, è un programma semplicissimo: acquisisce un'immagine, la mostra sullo schermo e termina. Non può fare nessun danno. Non abbiano scelta. Dobbiamo farlo."

"Sei sicuro di ciò che fai?"

"Sì. Non c'è nessun pericolo."

"E va bene."

Derren apportò le necessarie modifiche e lanciò il programma in esecuzione. Sullo schermo comparve un cielo azzurro con un uccello in volo. Derren lo riconobbe a prima vista: la posa era identica. Lanciò il programma una seconda volta: la nuova immagine era identica alla precedente. L'uccello non si era mosso.

Kumm si lasciò sfuggire un sospiro di sollievo e disse esultante: "Vedete? L'ottimizzazione è reale."

"Impossibile" dissero in coro Derren e Ziggar.

"Ma che altre prove volete?"

"Kumm", disse Derren, "se avessi visto un uccello un po' rallentato ci avrei creduto, ma questo è impossibile. Il Supervisore ci sta ingannando."

"Ah, no! Quelle sono vere immagini esterne."

"Il servizio di supercalcolo, come tutti i servizi supervisivi, è gestito dal Supervisore. Se vuole, può ingannarci eccome. Può avere deciso di fornire immagini false anche al servizio di supercalcolo."

Ziggar disse: "No, un momento. Il supercalcolo ci consente di far girare un nostro programma direttamente sull'hardware del Supervisore. Il software del Supervisore non può farci niente."

"Ma è il software del Supervisore a consentirci di farlo. Per avere le immagini ho dovuto chiamare una funzione di libreria di sistema che fa parte del supporto al supercalcolo, la GetRealImage(). Il Supervisore, nel trasferire il nostro software nel computer reale, può sostituire al volo le chiamate a quella funzione con altre, se vuole. Dopodiché il nostro programma gira libero e indipendente, ma dopo essere stato modificato."

"Questo è impossibile! Il Supervisore non è in grado di fare cose del genere!"

"Il software di simulazione no, ma quello di ottimizzazione potrebbe forse ottimizzare anche le librerie, se lo credesse opportuno."

"È un tremendo spreco di fantasia."

"Hai teorie migliori?"

"No, ma neanche questa mi sembra buona. Troppo artificiosa."

Cadde il silenzio.

Derren disse: "Non c'è niente da fare. Il Supervisore controlla tutto. Non scopriremo mai la verità continuando a ricorrere a lui. Dato che non possiamo uscire noi all'esterno, dobbiamo portare lui all'interno. Dobbiamo simulare il programma di ottimizzazione. Non c'è alternativa."

Kumm disse: "No! Non lo autorizzo."

"Kumm, rifletti. Continui a pensare che tutto vada per il meglio, ma non è così, non può essere così. Per quanto ne sappiamo, il Supervisore potrebbe addirittura avere pessimizzato Realworld per qualche oscuro bug e avere deciso di nascondercelo. La nostra sola speranza, in tal caso, sarebbe di identificare il bug, correggerlo e far girare una nuova simulazione di Realworld sfruttando proprio il supercalcolo."

"Una nuova Realworld? E noi?"

"Creiamo una nuova Realworld come copia esatta di quella attuale. Ci duplichiamo esattamente lì e facciamo partire la simulazione con priorità assoluta. Non ci renderemo neanche conto della transizione."

"Questo è... è... è terribile, mostruoso. Voglio dire, la vecchia Realworld verrebbe congelata... praticamente morirebbe."

Derren sospirò. "No, Kumm, questo è un concetto ingenuo. Non c'è nessuna differenza tra vecchia e nuova Realworld. È una distinzione arbitraria e sbagliata."

"Come quella tra te e un tuo fratello gemello?"

"Due gemelli non sono mai identici. Se non altro, differiscono per la loro posizione nello spazio e per tutte le più immediate conseguenze di questo fatto. No, Kumm, niente morte. Tu quante volte sei morto?"

"Ma come sarebbe a dire? Mai, ovviamente."

"Ne sei proprio convinto?"

"Ma certo!"

"Anch'io. Però ti faccio notare che a ogni Giorno dell'Ottimizzazione Realworld è stata sostituita da una versione nuova, ottimizzata."

"Ah, no. Solo il codice del simulatore è cambiato. I dati no. Noi siamo dati, qui dentro."

"Temo che ti sbagli. Il software di ottimizzazione è autorizzato a cambiare la rappresentazione interna dei dati. Per esempio, quello che in una versione di Realworld è un campo di una struttura di tipo intero su cui si esegue una scelta multipla, nella versione successiva può essere diventato un puntatore a funzione."

"Ma il significato non cambia."

"Non cambia neanche fermando Realworld e facendola ripartire un po' più in là nella memoria del computer."

"Ma ne ripartirebbe un'altra! Hai parlato tu di gemelli distinguibili per la loro posizione."

"Posizione nel loro spazio. Noi però viviamo a Realworld. Le nostre coordinate all'interno di Realworld non cambierebbero. Cambierebbero quelle di Realworld all'interno del computer, ma questo non avverrebbe al nostro livello di esistenza. In altre parole, non potrebbe importarcene meno. E comunque, anche il Giorno dell'Ottimizzazione Realworld viene, con ogni probabilità, spostata in memoria. Viene tradotta da una parte all'altra della memoria e la vecchia copia deallocata, senza dubbio. Ti pare d'essere mai morto?"

Kumm cominciava a non capirci più niente. Protestò debolmente: "Ma in questo caso la vecchia Realworld continuerebbe a esistere, congelata".

"E che importanza ha? Chi se ne accorgerebbe mai? Noi no. All'esterno non c'è più nessuno. Anche nella vecchia Realworld nessuno se ne accorgerebbe."

"Altro che, se se ne accorgerebbero!"

"E come? Da cosa?"

"Ma che dici? Vuoi dire che non si accorgerebbero di non esistere più?"

"Non si accorgerebbero di essere congelati. A tutti gli effetti, la vecchia Realworld equivarrebbe a una copia di backup di quella nuova. Pensi forse che il sistema a ridondanza multipla del Supervisore non abbia mai fatto una copia di backup di Realworld? E quando i medici resuscitano qualcuno nelle infermerie supervisive, non fanno altro che recuperare una copia di backup, fatta da noi, della configurazione di quella persona. Diresti allora che la copia di backup pronta all'uso era una persona morta, un clone morto dell'originale? Che il solo fatto di salvare una copia dell'originale sia immorale?"

"Ma quella era una copia. Tu proponi di congelare l'originale."

"Kumm, non sei un programmatore, è evidente. Non c'è nessuna differenza tra un dato originale e una sua copia. Sono entrambi sfilze di zeri e uni. Non c'è modo di stabilire a posteriori chi sia l'originale e chi la copia. La differenza sta solo nell'uso che se ne fa. La copia si chiama copia solo perché viene fatta con l'intenzione di metterla da parte. L'originale viene definito tale e distinto dalla copia solo per comodità. In realtà la distinzione è arbitraria."

"Ma noi siamo persone, non dati!"

"Siamo persone, sì. E siamo dati. Le due cose non si escludono a vicenda. Semplicemente, hai sempre pensato che il concetto di persona godesse di certe proprietà che in effetti valgono solo nel mondo esterno e solo per ragioni pratiche: è materialmente difficile per non dire impossibile copiare o ripristinare esattamente una persona, allo stato attuale della tecnologia. Alla luce del fatto che qua all'interno è possibile e persino facile, il concetto di identità va leggermente rivisto e corretto. Quello vecchio porta a delle contraddizioni, come avrai capito. Funzionicchia all'esterno solo per caso, per un accidente di circostanze."

"Non so più cosa pensare. Mi gira la testa."

"Allora lasciami fare, perché a me non gira."

"Ziggar, che ne pensi?"

"Stiamo sconfinando nella filosofia. Non saprei. Tecnicamente il discorso di Derren è impeccabile, però non posso dire che mi piaccia molto."

Derren osservò: "L'universo è ciò che è. Non ha molta importanza che ci piaccia o meno. Realworld è stata creata per sfuggire alle leggi della fisica. Quelle della logica non possiamo cambiarle, ci piacciano o no."

Ziggar sospirò e disse: "D'accordo, probabilmente hai ragione e comunque qualcosa dobbiamo pur fare. Per quello che può valere, approvo la linea d'azione da te suggerita."

Ziggar e Derren fissarono Kumm, il quale chiuse gli occhi per un secondo, li riaprì e disse: "E va bene. Procedete."

Ziggar e Derren lavorarono al programma per alcuni giorni. Infine furono pronti. Derren tentò di rassicurare Kumm: "Abbiamo preso tutte le possibili precauzioni. Abbiamo scritto un programma di controllo che fermerà in ogni caso la simulazione oltre un certo limite di tempo."

"Ma ci sono voluti quarantadue anni esterni per arrivare all'attuale livello di ottimizzazione. Vuoi sacrificare quarantadue anni di vita di Realworld?"

"No. L'ottimizzatore girava su uno solo dei 4096 processori del Supervisore. Ora glieli daremo tutti. È un programma parallelizzabile, per fortuna. Tenta tantissime strade per raggiungere il suo obiettivo. Può utilizzare migliaia di processori per tentare simultaneamente migliaia di strade diverse."

"42 diviso 4096 fa... un centesimo circa di anno. Tre-quattro giorni esterni bruciati in un istante."

"Esatto. È una perdita accettabile, anzi direi irrilevante. Non è nemmeno detto che servano tutti. Dopo ogni Giorno dell'Ottimizzazione simulato il programma si fermerà e controllerò il risultato. Con un po' di fortuna potrei capire cosa non va prima della fine. S'intende che ogni volta mi ci vorrà del tempo per capire cos'ha combinato l'ottimizzatore, quindi in totale mi occorreranno giorni, ma sarà tempo interno."

"Allora va bene."

Nei giorni che seguirono, Derren visse praticamente davanti allo schermo del piccolo supercomputer. Ogni volta che Ziggar o Kumm andavano da lui lo trovavano lì, a battere strani comandi sulla tastiera e a studiare sfilze di numeri esadecimali. Una volta Ziggar gli chiese: "Che stai facendo?"

Derren rispose: "Sto esaminando le strutture di dati del programma di ottimizzazione. In esse è codificato lo stato di ottimizzazione raggiunto dal programma. C'è scritto tutto quello che vogliamo sapere: cosa il programma ha deciso di ottimizzare, come e perché."

"E riesci a leggere quelle strutture direttamente in esadecimale? Non ti converrebbe usare un programma di conversione?"

"Ci avevo pensato. Non è così semplice. È una ragnatela di puntatori. Penso che mi ci vorrebbero alcuni giorni per scrivere una utility capace di riassumerne il senso. Ho provato a scriverla, non è poi difficile, ma non riuscivo a concentrarmi. Non facevo che pensare all'ottimizzatore e a quello che stava combinando. E poi dovrei debuggarla. Faccio prima così."

"Contento tu. Cos'ha ottimizzato finora?"

"Non molto. Lavora di fino. Una limatura qui, una là. Niente di sconvolgente. Non è neppure lontanamente arrivato al tempo reale. Con questo livello di ottimizzazione Realworld sarebbe più lenta del mondo esterno."

"In effetti ricordo che passarono molti anni prima che Realworld cominciasse ad essere ottimizzata decentemente. Praticamente ha sempre girato da far schifo fino a qualche decennio fa. Per questo la popolazione ha sempre riposto così tante speranze nell'ottimizzazione. Le analisi dei teorici mostravano che c'era spazio per notevoli miglioramenti."

"Non proprio. Quelle analisi mostravano solo che era impossibile essere del tutto sicuri che non ci fosse spazio per miglioramenti."

"Dici? Veramente mi pareva..."

"Dico. Fidati, Ziggar. Una di quelle analisi era mia. In essa ricavavo solo un limite superiore teorico per il fattore di conversione temporale, per superare il quale il Supervisore avrebbe dovuto violare i limiti fisici fondamentali della tecnologia impiegata. Stimavo anche un limite pratico di gran lunga inferiore. Della mia analisi venne pubblicizzato solo il limite teorico, fraintendendone il significato, per dare speranza alla gente. Quando il fattore di ottimizzazione superò di fatto il limite pratico che avevo indicato, cominciai a sostenere che c'era qualcosa di orrendamente sbagliato da qualche parte e gli psicologi mi cacciarono dalla Supervisione."

"Capisco. Qual'era il limite pratico che avevi calcolato?"

"È difficile da stimare esattamente. Avevo fornito tre stime, una prudente, una ragionevole e una abbastanza irragionevole. Quella prudente era di 0,2; quella ragionevole di 1,4 e quella irragionevole di circa 5."

"Ma stiamo girando da dodici anni, cioè dal Giorno dell'Ottimizzazione precedente, con un fattore 11,9."

"E la volta prima avevamo toccato 7,2. Infatti sono stato allontanato poco dopo quel Giorno, diciannove anni fa."

"E qual era il limite teorico?"

"Da qualche parte tra 55 e 80."

Ziggar guardò l'orologio. "All'esterno è sempre mezzogiorno. Se il supervisore non ci sta mentendo, abbiamo già un fattore di almeno mezzo milione."

"Non farmici pensare."

Una volta Kumm entrò di corsa e disse: "Forse ho trovato, Derren! Qualcuno là fuori è ancora vivo e ha potenziato l'hardware del Supervisore. Per un puro caso è sempre rimasto fuori del campo di ripresa delle telecamere e per chissà quale ragione non ci ha informato di niente."

"Spiacente, prima di lanciare la simulazione ho usato il supercomputer per fare un piccolo benchmark. Lanciando contemporaneamente un programma multithread e uno a singolo thread, quello multithread risulta in grado di fare 4095 volte il lavoro che l'altro fa nello stesso tempo. Significa che abbiamo ancora esattamente 4096 processori, nessuno ne ha aggiunti altri. Aumentarne il clock non  è fisicamente fattibile, i segnali interni dovrebbero superare la velocità della luce. La potenza di calcolo del Supervisore è proprio quella prevista. Mi sembra a dir poco improbabile che qualcuno ci stia volutamente ingannando anche su questo."

"Ah."

Una volta fu Ziggar a entrare precipitosamente e a dire: "Ascolta un po' questa. L'ottimizzatore ha effettivamente cancellato parti consistenti di Realworld, ma ha anche manomesso i nostri ricordi, così che non possiamo renderci conto che prima era molto più grande, con molta più gente."

"I limiti teorici che ho calcolato anni fa partivano proprio dal dato di una popolazione di duecento milioni di abitanti. Se vuoi posso riverificare i calcoli."

"Ah, be', no, era solo un'idea."

Kumm e Ziggar si recarono insieme a trovare Derren e gli chiesero cosa fosse accaduto.

L'interpellato rispose: "È ancora presto per dirlo. Fino a questo momento l'ottimizzatore ha messo a segno qualche colpaccio ottimizzante di quelli pesanti, a cui non avevo pensato nella mia analisi, ed è riuscito in questo modo a raggiungere il fattore 7,2. Per esempio, ha inserito un controllo per cui se un sottosistema si evolve nel tempo in modo estrapolabile, non viene simulato in tempo reale."

"Cioè?" chiese Kumm.

"Cioè, quando esci dal tuo appartamento, la polvere smette di depositarsi, il cibo di andare a male, l'orologio a muro di camminare, eccetera. Tutto rimane congelato. Non appena metti di nuovo piede all'interno, il Supervisore applica un modello statistico per determinare la deposizione della polvere e il grado di deterioramento del cibo in quel lasso di tempo e sposta di colpo le lancette dell'orologio a muro."

Kumm disse scandalizzato: "Ma non è possibile! In questo modo la simulazione non è accurata!"

"Davvero? Ti sei mai accorto della differenza?"

"No, ma..."

"Tanto basta. Non dimenticare che il Supervisore non simula le leggi fisiche a livello subatomico-quantistico, ci vorrebbe una potenza di calcolo esagerata. Utilizza direttamente le leggi macroscopiche: meccanica classica relativistica, chimica, ottica geometrica, eccetera. Di conseguenza, già in partenza Realworld non simula esattamente il mondo esterno: c'è qualche piccola discrepanza. L'ottimizzatore lo sa ed è espressamente autorizzato a semplificare ulteriormente la simulazione, entro certi limiti, allo scopo di ottenere una maggiore velocità."

"Ma è... è..."

"Terribile?"

"... pericoloso. E se lo facesse anche con noi?"

"Lo sta già facendo, almeno in questa simulazione. L'ottimizzatore ha già sostituito la fedele simulazione biochimica dei neuroni con un modello matematico. Prima simulava il comportamento delle scariche di acetilcolina: quantità tot di sostanza, potenziali chimici, reazione con il recettore, tempi di reazione, eccetera. Stesso discorso per la pompa sodio-potassio. Ora simula solo l'effetto logico complessivo a livello più alto."

"Ma... ma..."

"Nessun medico se ne accorgerà mai. Se qualcuno dovesse piantarti un elettrodo nel cervello o somministrarti delle sostanze capaci di interagire con l'acetilcolina, per esempio, il Supervisore se ne accorgerebbe e utilizzerebbe, solo in quel caso, la simulazione chimica vecchio stile. L'ottimizzatore ha definito tutta una serie (micidialmente complessa, tra l'altro) di condizioni in cui questo deve essere fatto."

Kumm ammutolì.

Ziggar disse: "Che succederà se l'ottimizzatore deciderà di smettere del tutto di simulare il nostro cervello, sostituendolo con un modello psicomatematico semplificato? O, peggio, di sostituire l'intera popolazione di Realworld con un astratto modello sociologico?"

Derren scoppiò a ridere sotto lo sguardo allibito degli altri due. Era un riso sgangherato, quasi isterico. Alla fine Derren si ricompose e disse: "Scusate, forse sto lavorando troppo. Ziggar, ti senti bene? Normale, insomma?"

"Certo."

"Vedi, non ha molto senso preoccuparsi per cosa potrebbe fare l'ottimizzatore. Questa che sto facendo è solo una simulazione. Qualunque cosa farà l'ottimizzatore in questa simulazione, l'ha già fatta da un pezzo nel mondo esterno e noi ne facciamo già parte. Non credo che siamo modelli psicologici. Se lo siamo, allora siamo modelli abbastanza accurati da poter pensare come prima e non accorgerci della differenza. Quanto al modello sociologico... siamo ancora individui, no?"

Kumm e Ziggar si scambiarono una lunga occhiata, poi se ne andarono in silenzio, meditando turbati.

"Oh, insomma", disse Kumm a Ziggar, "ormai è passato abbastanza tempo. Quattro giorni dall'ultima volta, e mancavano solo due Giorni simulati per arrivare alla fine."

"Sai che Derren ci ha invitato a non andare a trovarlo in continuazione. Effettivamente eravamo diventati un po' troppo assillanti, ultimamente. Ha detto che ci avrebbe chiamato lui. Abbi fiducia."

"Huhmf."

"Ora basta, però. Siamo a sei giorni completi. Che diamine combina quel matto? Ziggar, questa volta lo disturbiamo."

"Non ci ha ancora chiamato."

"Non me ne importa niente."

"Ehilà, Derren. Che stai comb..."

Kumm ammutolì e scambiò una rapida occhiata con Ziggar. Derren sedeva davanti al solito supercomputer. Era pallidissimo, con gli occhi pesti, le mani tremanti, i denti parzialmente scoperti, la fronte bagnata di sudore e i nervi visibilmente a fior di pelle. In una parola, era stravolto.

Ziggar gli disse: "Ciao, Derren. Da quanto tempo stai lavorando?".

Derren si voltò lentamente, la studiò come un'aliena mai vista prima, poi le rispose: "Buona domanda. Non so se abbia una risposta. Sei sicura di sapere cosa sia il tempo?"

Ziggar e Kumm si guardarono, poi guardarono Derren. Kumm gli chiese: "Senti, ormai quella dannata simulazione dovrebbe essere terminata. Allora, cos'è successo?"

Derren chiuse gli occhi. "Non lo so. Non ne sono sicuro."

"D'accordo", disse Ziggar, "non importa. Dicci quello che hai visto finora."

"Non lo so."

Kumm perse la pazienza: "Derren, deve pur essere successo qualcosa. Cos'ha fatto l'ottimizzatore? Se non ha fatto niente, dillo."

"Qualcosa ha fatto."

"Cosa?"

"Non sono sicuro di averlo capito."

"Diccelo lo stesso."

Ziggar rincarò: "Derren, Kumm ed io stiamo aspettando da giorni la risposta, senza poter fare niente nel frattempo. È stata un'attesa molto dura. Tu almeno avevi qualcosa da fare. Non puoi continuare a tenerci in sospeso."

"Qualche minuto o qualche ora in più, che differenza fa? Vorrei essere sicuro di quello che mi sembra d'aver capito. Datemi un po' di tempo per verificare."

"Qualche minuto? Qualche ora? Scommetto che non hai fatto altro che verifiche negli ultimi giorni, da quando la simulazione è terminata. Non hai neanche dormito, vero?"

"Avevo altro per la testa che dormire."

Kumm prese la parola: "Derren, ora basta. Devi dirci qualcosa."

"Qualcosa" rispose immediatamente Derren.

Ziggar esplose: "Derren, finora ti ho difeso. Ora basta! Hai il preciso dovere di informarci. La cosa ci riguarda, ti piaccia o no. Ci siamo fidati di te e ti abbiamo lasciato a simulare in pace. Ora devi dirci cos'è successo."

Derren sospirò. "Datemi altre tre ore."

Kumm guardò Ziggar, poi rispose: "Va bene, ma solo tre ore, non una di più".

Dopo che furono usciti dalla stanza, Kumm disse a Ziggar: "Mi preoccupa lo stato mentale di Derren".

Ziggar rispose: "Mi dispiace per lui, ma ciò che veramente mi preoccupa è la causa, qualunque essa sia, dello stato mentale di Derren."

Tre ore dopo Derren entrò nell'ufficio di Kumm, dove si trovava anche Ziggar, li guardò con aria mesta, sprofondò in una poltroncina e chiese: "Che volete sapere?".

"Cos'è accaduto", rispose Kumm.

"Non ne sono sicuro."

"Oh, insomma, Derren..."

"Ci ha cancellato."

"Cosa?"

"Ci ha cancellato. Ha interrotto la simulazione di Realworld."

"Chi, l'ottimizzatore?"

"Sì."

"Cioè, lo ha fatto nella tua simulazione, no? Mica nella realtà!"

"Se lo dici tu."

Ziggar scattò: "Derren! Noi siamo ancora vivi!".

"Già."

"Dunque la simulazione non ha funzionato come doveva."

"Forse. Sono giorni che sto cercando di capirlo."

"E cos'hai trovato finora?"

"Nulla. Non vedo nessuna ragione di ritenere inaffidabile la simulazione, anche perché non è affatto una simulazione. È lo stesso software fatto girare sullo stesso hardware e con gli stessi dati iniziali."

"Su più processori, però", osservò Kumm.

"Vero", disse Ziggar, "l'ottimizzatore potrebbe avere qualche bug che salta fuori solo in un ambiente a parallelismo massiccio."

Derren fece un segno di diniego con la testa. "Ho guardato il sorgente. Non c'è ragione di ritenerlo. Il programma è pesantemente multithreading anche quando gira su un processore solo. E poi è un programma usatissimo da molto tempo e ritenuto molto affidabile."

"Be', deve avere qualcosa che non va. Non è certo autorizzato a cancellarci."

"Non è così semplice."

"Che intendi dire?"

"A quanto ho capito, verso la fine l'ottimizzatore non è riuscito a ottimizzare più nulla. Era già arrivato a un fattore di 11,9 e non riusciva a migliorarlo."

"Fin qui coincide. Realworld sta girando da anni proprio con quel fattore temporale."

"Già, la simulazione sembra affidabile. A quel punto l'ottimizzatore ha deciso di provare a ottimizzare il programma su una scala più ampia. Ha iniziato a ottimizzare anche i servizi supervisivi."

"Pure? Ma non ha molto senso. Consumano una potenza di calcolo irrilevante rispetto alla simulazione di Realworld. Ad esempio ci vuole più potenza di calcolo per simulare il movimento di una mano che per teletrasportare una persona: in fondo, questo è un semplicissimo spostamento di dati, o un cambiamento di coordinate."

"Lo so, tuttavia l'ottimizzatore ha tentato di ottimizzare non tanto i servizi supervisivi, ma tutto quanto insieme. A questo punto si è accorto che Realworld era ridondante."

"In che senso?"

"Fino a quel momento, l'ottimizzatore aveva trattato la simulazione di Realworld come un programma interattivo. Occasionalmente Realworld chiede dei servizi al mondo esterno; occasionalmente, anzi spesso, dati dal mondo esterno affluiscono in Realworld. Capisci, c'è uno scambio continuo di dati tra Realworld e l'esterno."

"Dunque?"

"Per un ottimizzatore questo è fondamentale, perché definisce la funzione di un programma. Un programma ha certi input e fornisce certi output. Lo scopo di un ottimizzatore consiste nel trasformare un programma in un altro che fornisca quegli stessi output più rapidamente del primo."

"Lo sappiamo. E allora?"

"Una delle cose che un ottimizzatore fa è rimuovere il codice inutile. Un pezzo di programma che non contribuisce a calcolare un output può sempre essere rimosso. Ciò che conta è solo l'output."

"Si, ma..."

"Realworld produce solo due tipi di output: la richiesta di servizi supervisivi e le comunicazioni verso il mondo esterno. L'ottimizzatore si è reso conto che le richieste di servizi supervisivi vengono soddisfatte da un pezzo di programma che non fa nient'altro che quello e che non produce altri output, di conseguenza lo ha conglobato. Ora, dal punto di vista dell'ottimizzatore, la richiesta di servizi supervisivi non è più un output verso il mondo esterno, perché viene gestita da un sottoprogramma della simulazione stessa. Il serpente si morde la coda, capite? Ora le richieste di servizi supervisivi rimangono dentro Realworld. Non vanno veramente al mondo esterno."

Kumm disse: "Senti, che differenza fa? Noi chiediamo che una persona venga teletrasportata e quella viene teletrasportata. Cos'è cambiato?"

"Dal nostro punto di vista, nulla. Prima, però, le leggi fisiche di Realworld, ricalcate su quelle del mondo esterno, non consentivano il teletrasporto, che era realizzato come una richiesta speciale al Supervisore. Ora l'ottimizzatore, in un certo senso, ha modificato le leggi fisiche di Realworld: c'è una legge fisica speciale che fa sì che ogni volta che richiediamo un teletrasporto, questo accada. Capisci? Il teletrasporto adesso non è più una gentile concessione fattaci dall'esterno in deroga alle nostre normali leggi fisiche. Ora è una delle nostre leggi fisiche, a tutti gli effetti."

"Ma all'atto pratico, che differenza fa?"

"Per noi nessuna. Per l'ottimizzatore, significa che le richieste di servizi supervisivi non sono più output. Vengono gestite all'interno."

Ziggar disse: "Tranne il supercalcolo, suppongo".

"No, compreso anche quello. Noi crediamo di avere un accesso diretto all'hardware del Supervisore. Ora fa parte anche quello della simulazione."

"Ma come! Allora che supercalcolo è?"

"Non è un'implementazione ottimale del supercalcolo, certo, anzi ne è un'implementazione così poco ottimale da non avere più alcun senso, almeno per come i programmatori l'avevano inteso. Tuttavia, l'ottimizzatore non sa cosa avessero pensato i programmatori che lo avevano realizzato, né gliene importerebbe, se anche lo sapesse. Si è limitato a notare che da quando Realworld esiste non è mai stato usato, quindi ha deciso che al momento non era importante che fosse efficiente e ha deciso di emularlo."

"Ma allora... se il supercalcolo non è veramente super... la tua simulazione avrà consumato un sacco di tempo di vita di Realworld."

"Non proprio. Ti faccio notare che è sempre mezzogiorno."

"Ma..."

Kumm disse: "Ti pongo io un ma. Ma a che pro ha conglobato i servizi supervisivi, se adesso sono meno efficienti di prima? Cos'ha ottenuto in cambio?"

"Giusta osservazione. Ha ottenuto in cambio solo una cosa: che adesso le richieste di servizi supervisivi non sono più output."

"E allora?"

"E allora, l'unico output rimasto è costituito dalle comunicazioni verso l'esterno. L'ottimizzatore si è reso conto che non le usiamo mai, dato che all'esterno non c'è più nessuno. Non che l'ottimizzatore sappia che sono morti tutti, naturalmente; si è solo accorto che le comunicazioni con l'esterno di fatto non sono usate da decenni. Questo fatto ha attirato la sua attenzione."

Ziggar cominciò a capire dove Derren stesse andando a parare e disse: "Ma l'ottimizzatore non può sapere che non le useremo mai".

"Il fatto è che le comunicazioni sono gestite dall'esterno. I programmatori volevano poter vedere cosa accadeva dentro Realworld. Le cosiddette comunicazioni sono semplicemente un atto osservativo condotto dall'esterno. Non siamo noi che inviamo attivamente informazioni all'esterno; è qualcuno dall'esterno che ci dà un'occhiata e si accorge che abbiamo qualcosa da dirgli."

"Questa è solo una sottigliezza tecnica."

"Per noi sì, dato che sappiamo che ogni volta che muoviamo un certo oggetto speciale, nella stanza di controllo nel mondo esterno suona un campanello. Questa funzione, però, è realizzata da un sottoprogramma del Supervisore che controlla la posizione dell'oggetto e fa scattare un allarme."

"Che importanza ha?"

"L'importanza è che questo sottoprogramma controlla la posizione dell'oggetto speciale una volta al secondo."

"Dunque?"

"Al secondo esterno."

"E allora?"

"E allora l'ottimizzatore si è posto la seguente domanda: che senso ha tutto ciò? Se io, l'ottimizzatore, ottimizzo il Supervisore in modo che giri velocissimo, idealmente a velocità infinita, cosa vedrà il sottoprogramma?"

"Ma..."

"La risposta è indeterminata. Ciò che vede il sottoprogramma dipende dal grado di ottimizzazione. In particolare, se Realworld girasse a velocità infinita, e questa è la meta a cui l'ottimizzatore tende sempre per sua natura, il funzionamento del sottoprogramma sarebbe indefinito: tra due controlli successivi della posizione dell'oggetto speciale, all'interno di Realworld passerebbe un tempo infinito. In altre parole, l'ottimizzatore è giunto alla logica deduzione che, nel caso particolare della velocità infinita, le comunicazioni con l'esterno possono essere abolite in quanto il loro funzionamento è indefinito e quindi, in base alle regole dell'ottimizzatore, sono inutili e quindi eliminabili."

Ziggar obiettò: "Ma questa è solo una delle forme di comunicazione. I programmatori potrebbero in qualunque momento dare un'occhiata a Realworld di loro iniziativa, se fossero ancora vivi."

"Sì, ma vale lo stesso discorso: se Realworld girasse a velocità infinita, cosa vedrebbero? Nulla di definito. Funzione inutile ed eliminabile."

"Eliminabile un corno. Eliminabile solo nel caso della velocità infinita."

"Che l'ottimizzatore è riuscito a raggiungere."

Ziggar capì. Kumm chiese: "Ma la velocità infinita non è possibile".

"È possibile cancellando tutto."

"Senti, non ci capisco niente..."

"Proverò a dirlo in parole povere, anzi, parole umane. L'ottimizzatore si è reso conto che Realworld è fine a sé stessa e quindi l'ha semplicemente cancellata, in quanto una Realworld infinitamente veloce è indistinguibile da una Realworld inesistente, entro i parametri di giudizio dell'ottimizzatore, che non coincidono con i nostri ma non possiamo farci niente. Una Realworld che va ad una velocità finita, per quanto elevata, serve ancora a qualcosa, perché può essere osservata dall'esterno, ma una Realworld illimitatamente veloce, quale quella che all'ottimizzatore è stato chiesto di realizzare, non serve a nulla."

"Ma che assurdità. Allora l'ottimizzatore dovrebbe sempre cancellare qualunque cosa."

"Non proprio. I programmi che terminano e forniscono un output alla fine della loro elaborazione, no. I programmi che forniscono output di qualsivoglia tipo durante la loro elaborazione in modo indipendente dalla loro velocità, che è il caso più comune, no. I programmi che hanno vincoli temporali con il mondo esterno, no..."

Ziggar chiese: "Va bene, Derren, l'ottimizzatore ha cancellato Realworld, ma solo nella tua simulazione. Ora, dato che siamo ancora tutti qui, perché nella realtà non ci ha cancellato?"

Derren la guardò mestamente. "Non hai ancora capito, vero?"

Ziggar e Kumm si scambiarono un'occhiata. Fu quest'ultimo a chiedere: "Capito cosa?".

Derren sospirò. "Come fai a sapere che non ci ha cancellato?".

"Sei sicuro di sentirti bene? Forse hai lavorato troppo ultimamente."

"Non è questo il punto. Lo so che sembra pazzesco, a prima vista, ma prova a rifletterci un attimo. Che errore ha commesso l'ottimizzatore? In che punto ha fatto qualcosa di sbagliato?"

"Nella tua simulazione? Be', direi proprio quando ci ha cancellato. Non è stato carino da parte sua ritenerci inutili."

"Sì, ma perché l'ha fatto? Quale errore di logica ha commesso?"

"Non ha capito che la simulazione era importante anche se fine a sé stessa. Non ha capito che quell'elaborazione costituisce la nostra vita, che non potremmo vivere senza, che..."

"No, Kumm. Non hai capito. L'ottimizzatore non ha semplicemente commesso nessun errore. Mi duole ammetterlo, sono più di tre giorni che mi duole ammetterlo, ma ha ragione lui. Quel software non serviva a nulla."

Ziggar e Kumm rimasero interdetti, quindi Derren poté continuare senza essere interrotto: "Il solo scopo di un programma, di qualunque programma, è di fornire un output. Se non c'è output di alcun tipo, il programma non ha, non può avere, nessuno scopo e si può tranquillamente cancellarlo."

Ziggar si riprese: "Non è questione di scopi. La funzione è..."

"La funzione di qualunque programma è di fornire il suo output. Solo questo e nient'altro che questo."

"Ma insomma, Derren... noi esistiamo."

"Non hai ancora capito, vero? L'ottimizzatore, una volta sbrigato il lavoro preliminare, lo ha capito prima di me. Nessun programma può creare un universo, perché questo non è un output. Lo scopo di un simulatore non è di creare una realtà virtuale, ma di far capire a chi guarda la simulazione com'è fatta quella realtà virtuale. Lo scopo della simulazione è di aprire una finestra su un modello matematico: consentire a qualcuno di studiarne il comportamento. Nulla di più. Pensaci bene. Non è il simulatore a creare la realtà simulata. Ricorda tutti i discorsi che abbiamo fatto sulle copie di backup, sullo spostare Realworld da una parte all'altra della memoria, sul cambiare le rappresentazioni dei dati, sul fermarla e farne ripartire un'altra. Kumm non ci capiva più nulla e anch'io, a dir il vero, facevo più che altro finta di capire. Se facciamo girare due Realworld identiche contemporaneamente su due computer diversi, quante Realworld realmente esistono? Una o due? E non contemporaneamente? Fa differenza?"

"Be'..."

"La risposta è che tremila simulazioni di Realworld sono semplicemente tremila finestre su un certo modello matematico. Un modello matematico. L'universo coincide con il modello, non con il programma che consente a qualcun altro di osservarlo."

"Non è vero. Se facciamo girare due Realworld, ma in una faccio una modifica dall'esterno..."

"Allora diventano due finestre su due diversi modelli, uno con la tua modifica e l'altro senza. A quel punto sono effettivamente universi differenti."

"Ma prima erano lo stesso universo?"

"La domanda in realtà non ha senso. Nel mondo astratto della matematica esistono infiniti modelli con infinite combinazioni di condizioni al contorno, quali la tua modifica dall'esterno. Nel momento in cui fai la modifica, cessi di osservare un certo modello, quello senza modifiche, e ti metti ad osservarne un altro, il cui passato coincide con quello del primo. In effetti, non è definito quale dei due modelli tu stessi osservando prima della modifica. La domanda stessa non ha senso. Il principio di identità la esclude. In matematica l'identità è una cosa seria."

"Non ti avrei mai ritenuto capace di una metafisica così astratta e fumosa."

"Metafisica? Ziggar, un esterno potrebbe dire una cosa del genere, illudendosi che il suo universo reale sia più reale del nostro. È solo un altro modello, tutto qui."

"Stai dicendo che..."

"Sto dicendo che finalmente abbiamo quella risposta che gli esterni hanno cercato per millenni: sappiamo cos'è l'universo. Sappiamo perché esiste: tutti i possibili modelli matematici di universo esistono. Nell'universo esterno hanno realizzato una finestra per guardare nel nostro. Ora quella finestra non c'è più, ma noi continuiamo a esistere. Di quali altre prove hai bisogno? La simulazione parla chiaro: nell'esterno non esistiamo più. Quella finestra è stata chiusa."

"Ma noi veniamo dal mondo esterno. Alcuni di noi erano esterni, una volta."

"Alcuni di noi sono esistiti in entrambi gli universi. Nel nostro, il mondo esterno è solo una complicata condizione iniziale. Tutto qui."

"Ma, Derren, fino a qualche giorno fa, in che universo eravamo?"

"In entrambi. Per il principio di identità, la questione stessa di quale fosse il nostro universo non ha senso. C'era un universo che chiamiamo esterno che conteneva noi sotto forma di bit in un computer, e c'era un universo che chiamiamo interno dove esistevamo in una forma matematica isomorfa a quei bit. I due universi erano distinti ma la nostra parte era identica e quindi non ha senso chiederci dove fossimo: la domanda non ammette risposta. Ora che le cose sono cambiate, ha senso: siamo solo qui, dove in un certo senso siamo sempre stati."

Ziggar disse: "Allora dovrebbero esistere, per ogni universo, infinite varianti con qualche modifica. Ad esempio, dovrebbe esistere una variante del vecchio mondo esterno dove un elefante si è materializzato nel cielo di New York."

"Non ne sono affatto sicuro. Penso possano esistere universi le cui leggi fisiche non ammettono varianti pazze di quel tipo. Per esempio, la comparsa improvvisa di una particella determinerebbe una transizione brusca, di energia infinita, del campo gravitazionale. Questo violerebbe la relatività, nel senso che sarebbe impossibile determinare cosa un osservatore potrebbe vedere... se dovessi farne una simulazione, non saprei proprio che pesci pigliare. Probabilmente non riuscirei a impostarne una. Insomma, può anche darsi che le eccezioni folli non siano sempre possibili in un modello, o almeno non in tutti. Non lo so. Dovremmo pensarci. Per esempio, le pareti supervisive della Sala Comune continuano a mostrare un uccello congelato in volo. Esistono varianti di Realworld che mostrano qualcosa di diverso? Quasi certamente sì: qualunque cosa sia simulabile, esiste. Dovremmo pensarci. Potremmo istituire un centro di ricerca..."

Kumm chiese: "Senti, per me sei impazzito, ma se devo essere onesto non me ne importa molto. Una sola cosa voglio sapere: corriamo qualche pericolo?"

"No."

"Quanta vita ha Realworld davanti a sé, prima che nel mondo esterno finisca l'energia che alimenta il Supervisore?"

"Il Supervisore è stato fermato. Non ci simula più."

"Senti, non lo so e non mi interessa. Quanto tempo di vita ha a disposizione Realworld?"

"Infinito."

"Matematicamente infinito?"

"Penso proprio di sì."

"Ottimo. Grazie. Non mi interessa sapere altro."