LE RETI NEURALI QUANTISTICHE SONO SOGGETTE AI VINCOLI DI DECIDIBILITA’ DELLA TESI DI CHURCH ? Ogni computer classico è una macchina di von Neumann, ossia computa gli algoritmi seguendo istruzioni completamente deterministiche e seriali. Le macchine di von Neumann sono implementate da unità di informazione dette bit, e da gates logici che operano su questi bit. La Tesi di Church non può essere dimostrata , sembra solo intuitivamente corretta. E’ stata formulata indipendentemente da A. Church e A. Turing, e afferma che qualsiasi metodo che noi riusciamo a formulare con il pensiero per risolvere un problema può essere espresso come un programma al calcolatore. Ad esempio, se dobbiamo moltiplicare due numeri fra loro , seguiremo un semplice algoritmo che un computer può riprodurre. Se ci viene chiesto di fattorizzare un numero, l’approccio che usiamo nella mente sarebbe trascrivibile in un programma. Sembra cioè che non ci sia problema algoritmico risolvibile da una persona che non possa essere risolto da un computer, e viceversa. Ogni programma al computer può essere svolto anche da un uomo con carta e matita. Sappiamo che se un problema può essere risolto, può essere risolto con una macchina di Turing con nastro di lunghezza finita.. Se questo non vale, l’algoritmo non è decidibile. Un sistema assiomatico è decidibile se esiste una macchina di Turing che può determinare quale proposizione del sistema assiomatico è vera e quale falsa. Se un programma può essere creato per una macchina di Turing che prenderà tutte le proposizioni di un sistema assiomatico, e determinerà tutti i suoi valori di verità, allora il sistema è decidibile. In sostanza si tratta di trovare un algoritmo con terminazione per determinare se una proposizione è vera o falsa. Ogni algoritmo che possa fare questo è detto computabile. La Tesi di Church dice che c’è un livello di computabilità che non possiamo superare, e tutti i computer usano questo livello di computabilità, e quindi sono computazionalmente equivalenti. La questione è se le quantum neural networks, o più in generale il quantum computing, possano usare un livello di computabilità superiore. Una rete neurale funziona tramite connessioni fra nodi/neuroni, senza utilizzare una notazione simbolica come i normali programmi computazionali. Semplicemente apprendere tramite esempi, per riprodurre un output dato un certo input. Ciò può significare che ci sia qualcosa che va oltre al livello di complessità del calcolo simbolico ? Risposta: NO. Infatti possiamo costruire una macchina di Turing per rappresentare una rete neurale e calcolare come la rete. Resta il problema se una rete neurale quantistica possa essere computazionalmente più potente di una rete neurale classica. Un qubit ha un’importante differenza rispetto ad un bit: può avere valore 0 ed 1 simultaneamente. Un qubyte, fatto di 8 qubit, permetterà di rappresentare 256 numeri contemporaneamente. La quantità di numeri rappresentabili sarà 2n, con n numero dei qubit. Su questa base possiamo costruire un algoritmo, e quando l’algoritmo finisce, la sovrapposizione viene fatta collassare, e tutti i qubits salteranno nei loro stati 0 o 1. La domanda è allora se il quantum computing offra qualcosa di non raggiungibile da un computer classico. Sicuramente la velocità è molto superiore. Prendiamo la fattorizzazione di un numero con 250 cifre: un computer classico impiegherebbe circa 800.000 anni con 1400 computer odierni in parallelo. Anche migliorando le prestazioni, il problema resta esponenziale. Con un quantum computer la complessità è ridotta a polinomiale: si può fattorizzare un numero di 1000 cifre in pochi milioni di passi, computando tutte le possibilità simultaneamente via sopvapposizione. In ogni caso anche un quantum computer non permette computazioni più complesse di quelle consentite ad un computer classico. I problemi risolubili sono limitati dal numero di qubits utilizzabili, e non si possono computare problemi senza terminazione in un tempo finito. Esiste però qualche discusso controesempio. Nel 2001 Tien Kieu propone un algoritmo per il classico decimo problema di Hilbert, che è connesso al problema dell’arresto di Turing. Un’equazione diofantea è un’equazione della forma: E0(x1,…,xn) = E1(x1,…,xn) dove E0 , E1 sono polinomi a coefficienti interi positivi. Un’equazione diofantea esponenziale è una equazione della forma: E0(x1,…,xn) = E1(x1,…,xn) dove E0, E1 sono polinomi esponenziali a coefficienti interi positivi. Alla fine dell’800 Hilbert indicò 23 importanti problemi. Il decimo si può esprimere così: Data una qualsiasi equazione diofantea con qualsiasi numero di coefficienti interi, trovare un procedimento universale secondo il quale possa essere determinato da un numero finito di operazioni se l’equazione ha soluzioni intere. Il problema della decisione per tali equazioni polinomiali e’ stato dimostrato da Matiyaesevich nel 1970 essere indecidibile nel senso di Turing. Di fatto le equazioni diofantee coprono la classe delle funzioni parziali ricorsive, che sono alla base degli algoritmi classici. Pertanto il risultato di indecidibilità è importante: il decimo problema di Hilbert può essere risolto se e solo se può essere risolto il problema dell’arresto di Turing. Per risolvere il Decimo problema di Hilbert Kieu costruisce un algoritmo per trovare il minimo globale di una funzione (P(x;y;z) di ad es. tre variabili x;y;z ,ciascuna scelta fra gli interi non negativi. A questo scopo, l’evoluzione adiabatica trova lo stato base dell’Hamiltoniana i cui autovalori sono i numeri P(x;y;z). L’evoluzione adiabatica si ottiene con uno strumento matematico che permette di descrivere gli autostati di un sistema di particelle interagenti in termini di autostati di un sistema di particelle non interagenti. Questo è ovviamente molto utile dato che si presume si sappia descrivere perfettamente il sistema di particelle non interagenti. Si introduce una hamiltoniana del tipo: H = H0 + e-tH1 tale che in cui numero reale positivo. Al tempo t = 0 l'hamiltoniana corrisponde all'intera hamiltoniana: Gli autostati dell'hamiltoniana in rappresentazione d'interazione sono espressi come: Analogamente nel calcolo quantistico un’hamiltoniana dipendente dal tempo interpola fra un’hamiltoniana iniziale facile da costruire ed una finale il cui stato codifica l’assegnamento corretto. Il tempo di evoluzione, confrontato con quello della computazione quantistica normale, è estremamente inferiore. Secondo Kieu, purchè venga fornita la corretta hamiltoniana , la nozione di computabilità viene stesa rispetto a quella classica di ChurchTuring. Il punto cruciale è che il range degli interi deve essere esaminato entro un tempo finito. Questo, secondo Kieu, è possibile perché lo spazio di Hilbert prescelto è finitodimensionale. Boris Tsirelson sostiene invece che la dimostrazione di Kieu è errata, perché l’evoluzione adiabatica non riesce a trovare il minimo globale. Dunque un computer quantistico è solo una macchina di Turing più veloce, quindi è ancora soggetta alla tesi di Church, o almeno lo è un quantum computer come lo concepiamo oggi, con un insieme di gates. Ma il dubbio è se la tesi di Church sia vera per qualsiasi computer quantistico: ossia non si può escludere che non si possano costruire altri tipi di computer che siano sostanzialmente più potenti. Forse le QNN sono di questo tipo ? Se costruiamo su computer quantistico delle reti neurali come costruiamo reti neurali su computer classici, sicuramente avremo solo maggior velocità. Ma se costruiamo reti neurali con un approccio completamente diverso da quello di qubits e gates, forse la tesi di Church potrebbe non essere più valida. Questo sicuramente è molto difficile, ma esiste già qualche tentativo, anche se non pubblicato perché le università stanno facendo a gara per vincere la corsa al quantum computer. Il vantaggio delle QNN è il seguente. La sovrapposizione di molti qubit diminuisce la resistenza al rumore, e il rumore può portare alla decoerenza prima che la computazione sia finita. Invece una QNN non richiede molte sovrapposizioni per nodo, e quindi sarebbe meno suscettibile al rumore a parità di problema da risolvere computazionalmente rispetto ad un quantum computer a gates. Una QNN sarebbe molto (probabilmente esponenzialmente) più veloce di una rete artificiale classica, potendo compiere una sovrapposizione di valori ai nodi, ed inoltre potrebbe eliminare molti neuroni nascosti avendo modo di calcolare tutte le possibilità all’interno di un singolo nodo. Ma anche in questo caso non ci sono elementi per pensare che anche questi vantaggi in velocità potrebbero cambiare la posizione delle QNN rispetto alla tesi di Curch, sempre che siano basate sul concetto di qubit e di gates. Ad esempio la congettura di Goldbach: “Ogni numero pari può essere rappresentato come somma di due numeri primi” richiede un algoritmo non decidibile se si prende a turno ogni numero pari e si cerca fra i numeri naturali quale coppia di numeri primi sommata corrisponde a quel numero. Ammettiamo però di poter utilizzare un wormhole e di poterlo usare a ciclo chiuso come parte del nostro quantum computer. Noi potremmo avere il tempo infinito necessario per computare l’algoritmo all’interno di questo ciclo chiuso. Oppure il wormhole potrebbe generare un altro universo all’interno del nostro e così via all’infinito. Se ogni universo computa un passo dell’algoritmo, si ottiene la soluzione immediatamente. Degli esempi di QNN visti in precedenza l’unico che potrebbe avere caratteristiche interessanti in questio senso è ovviamente quello di Weigang che sfrutta il teletrasporto. La versione più formale della tesi di Church è : Una funzione è computabile sse è parziale ricorsiva. Un insieme è detto ricorsivo se esiste un procedimento effettivo per decidere se un elemento appartiene o no ad esso, mentre si dice che è ricorsivamente numerabile se esiste un procedimento per generare i suoi elementi uno dopo l’altro. Una formulazione astratta del teorema di Goedel è la seguente: Esiste un insieme di interi positivi ricorsivamente numerabile ma non ricorsivo. Poiché si può vedere una procedura di decisione come la computazione di una funzione c t.c. se Q è un insieme numerico c(n) = 0 se n Q c(n) = 1 altrimenti, si dimostra che La proprietà di terminazione dei programmi è ricorsivamente indecidibile. Si può esprimere questo concetto affermando che non esiste un programma che sappia prevedere in modo affidabile se un altro programma cadrà o meno in un loop infinito., ossia non esiste un perfetto controllore di arresto. Secondo molti studiosi questo è ciò che distingue il cervello umano dal computer. Secondo il filosofo inglese Lucas (1964) l’uomo può esaminare il proprio pensiero attraverso la coscienza, che gestisce senza difficoltà il regresso all’infinito (conoscere il proprio pensiero, conoscere di conoscerlo, conoscere di conoscere di conoscerlo, ecc.) . Lo stesso argomento è adottato da Ernest Nagel nel suolibro La prova di Goedel. Turing stesso osserva che ad un certo grado di complessità anche i sistemi meccanici potrebbero cessare di essere predicibili, perché potrebbero intervenire trasformazioni di stato irreversibili al di sopra di una certa dimensione critica. In tal caso non si potrà predire il loro comportamento solo conoscendone il funzionamento e le condizioni iniziali. Questa capacità è quell ache in genere si attribuisce al cervello umano. Secondo Douglas Hofstadter invece il cervello umano riesce a superare il problema dell’arresto perché metaconoscenza e conoscenza si mescolano fra loro in un “tangled loop”: l’uomo non è una torre infinita di autoosservatori, ma un unico autoosservatore in cui tutti i livelli ricadono su uno solo. Il loop non ha un ordine cronologico o topologico : i due livelli di osservatore ed osservato sono fusi insieme. Quando non esiste più distinzione di livello in un ciclo si crea il paradosso: il linguaggio crea paradosso quando parla di se stesso: qualcosa nel sistema agisce sul sistema come se ne fosse fuori. Il cervello riesce a costruire come un anello di Moebius, uscendo dal circolo vizioso. Un fenomeno emergente come la coscienza, in grado di interrompere i loop infiniti, può provenire dall’interazione “tangled” di livelli simbolici differenti all’interno del cervello. Dal punto di vista neurofisiologo questo potrebbe prodursi attraverso il feedback fra lobi prefrontali (sede delle percezioni) e sistema libico (sede delle emozioni). Secondo Roger Penrose l’intuizione matematica che porta l’uomo a non entrare in loop infiniti non è di natura computazionale. I bambini comprendono il funzionamento dei numeri naturali senza che si debba loro spiegare un insieme di regole computazionali, ma stabiliscono con la matematica un contatto di tipo platonico. Secondo Penrose quindi la coscienza ha caratteristiche di non computabilità. Questo non deve sembrare ascientifico: Penrose cita in proposito due teorie sulla gravità quantistica, una di David Deutsch e una di Geroch-Hartle, che si rifà ad una varietà topologica 4dimensionale non classificabile in modo computazionale. L’idea di Penrose è che i neuroni biologici potrebbero comportarsi in modo non computazionale, attraverso l’attività dei microtubuli, che potrebbero creare processi quantistici coerenti su larga scala. In conclusione reti neurali quantistiche che riproducano il funzionamento delle reti neurali biologiche potrebbero forse falsificare la Tesi di Church.