Teorema di Turing: ecco perché nessun algoritmo ci può dire se un’IA agirà contro il genere umano

A robot and a scientist facing the Turing test. Artificial intelligence vector concep illustration.

Siamo a metà gennaio 2021 quando appare su Journal of Artificial Intelligence Reasearch una relazione del Max Planck Institute che evidenzia come una Super IA dotata di capacità (super algoritmo) di autoapprendimento potrebbe sfuggire al controllo dei suoi programmatori e, virtualmente/ipoteticamente, condurre il Genere Homo Sapiens alla estinzione. Nel presente articolo si intende evidenziare la inesistenza teorica (Teorema di Incompletezza di Alan Turing) di un algoritmo che possa decidere se una IA possa agire contro il Genere Umano.

Teorema di Turing: premessa

Questa sede è presumibilmente inadatta per una sia pure elementare illustrazione dei Teoremi di Gödel e di Turing per la loro intrinseca complessità logica; ciò che, per contro, risulta interessante è come entrambi i teoremi facciano ricorso alla autorefenzialità.

Nota: Auto-referenzialità = Diallele (diallelos dal greco = ragionamento circolare) indica una pseudo- dimostrazione logica dove le conclusioni derivano dalle ipotesi iniziali che, a loro volta, sono ottenute direttamente dalle conclusioni. Nel lessico comune: “serpente che si mangia la coda”

Paradosso del Mentitore

Teorema di Turing

Le informazioni riportate in questo sito sono sempre false.

È ben noto, sino dalla sua enunciazione (Eubulide di Mileto IV Sec.. a.C.,) come questa affermazione conduca inevitabilmente al Paradosso del Mentitore. In questa sede interessa evidenziare il suo contenuto autoreferenziale-circolare (potenzialmente ricorsivo) che porta a stadi successivi del tipo:

  • if  (le informazioni sono sempre  false = A) then (è falsa anche l’informazione che le informazioni sono sempre false = B)
  •  if (è falsa  anche l’informazione che le informazioni sono sempre false = B) then (è vero che le informazioni sono sempre  false  = A )

 0 = falso 1 = vero

if   A= 0   then  B = 0

if  B = 0   then  A = 0

Simbolicamente A porta a B e B porta a sua volta ad A.  

Il Paradosso del Mentitore è stato proposto, nel tempo, in diverse forme logicamente identiche sebbene formalmente differenti da una grande varietà di autori: Aristotele, Diogene, Buridano, Cervantes, ecc. La soluzione del paradosso proposta da Aristotele ipotizza che esso sia generato dalla confusione tra un termine (falsificare) e la sua citazione (falso) (che non aggiunge alcun contributo logico) al primo termine.

Guglielmo da Ockham sostiene che il paradosso sia generato dalla fusione tra linguaggio e metalinguaggio dove la frase “le informazioni sono sempre false” è redatta in metalinguaggio. Altrettanto per Alfred Tarski (1944) che il Paradosso sia generato da autonimia ( metalinguaggio che indica ancora se stessi).

Paradosso di Richard

Teorema di Turing

Riveste ben più grande importanza il Paradosso di Richard (Jules Antoine Richard – 1905). Si consideri di definire in modo rigoroso e completo tutte le proprietà dei Razionali Interi. Ad  esempio:

  • numero primo = divisibile solo per se stesso e per l’unità
  • quadrato perfetto = prodotto di un numero per se stesso
  • numero pari =  divisibile per due
  • numero irrazionale =  non può essere rappresentato come frazione di razionali interi
  • ecc.

Per qualsiasi assiomatizzazione dell’Aritmetica il numero di proprietà dei Razionali Interi è in quantità finita così che il loro ordinamento secondo un criterio arbitrario e la conseguente numerazione progressiva porterà ad una successione numerata finita. Ad esempio:

  • 1-numero  intero = unione tra naturali positivi e negativi
  • 2-quadrato perfetto = prodotto di un numero per se stesso
  • 3-numero dispari =  non divisibile per due ( insieme  ℕ )
  • 4- …………………………………………………………………………………………………………………
  • ………………………………………………………………………………………………………………………
  • 17- numero primo = divisibile solo per l’unità e per se sesso

Si nota immediatamente che alcuni numeri della successione posseggono esattamente la proprietà cui sono associati. Ad esempio:

  • 1  possiede esattamente la proprietà di essere un naturale positivo
  • 3  non è divisibile per due (rimanendo nell’insieme ℕ)
  • 17 possiede la proprietà di essere divisibile solo per se stesso e per l’unità

mentre altri numeri sono associati a proprietà che non posseggono. Ad esempio: 2 ≠ ” è un quadrato perfetto”. Ora i numeri che NON posseggono la proprietà cui sono associati vengono definiti Richardiani mentre, ovviamente, quelli che la posseggono sono definiti NON Richardiani.

La proprietà di essere o non essere richardiano è una proprietà dei numeri Naturali quindi anch’essa  può fare parte dell’elenco delle proprietà dei Naturali ed in tale elenco avrà un numero R = essere un numero richardiano. R è un numero richardiano oppure non lo è? Questo è il problema paradossale di Jules Richard.

Se R fosse richardiano non dovrebbe essere associato alla proprietà di esserlo mentre se non fosse richardiano non potrebbe essere associato alla proprietà “essere un numero richardiano”. Naturalmente “essere o non essere richardiano” è una proprietà NON Aritmetica dei Numeri Naturali quindi non potrebbe essere ammessa nell’elenco numerabile e numerato delle proprietà matematiche ( di una qualsivoglia assiomatizzazione della Aritmetica) ; ciò riduce a Paradosso la pseudo dimostrazione di Jules Richard.

If  R è richardiano then non possiede le proprietà dei richardiani

if non possiede le proprietà dei richardiani then non può entrare nell’elenco dei richardiani

L’autoreferenzialità appare evidente  nel momento in cui R = richardiano viene impiegato per dimostrare che R ≠ richardiano mentre la circolarità è evidenziata dal precedente mini-grafico.

Teorema di Turing

Teorema di Turing

Il Teorema di Alan Turing afferma la esistenza di algoritmi di cui non è possibile stabilire la calcolabilità (verità) poiché generano un loop infinito (Problema dell’Arresto).

Sia A un algoritmo operante su di un dato d all’ingresso; il Teorema verte sulla possibilità di stabilire se A(d) (calcolabilità di A sul dato d) si arresta in un tempo finito, ossia dopo un numero finito di passaggi). Sia allora un secondo algoritmo AR implementato su di un meta linguaggio digitale, tale che:

                                 AR (A(d)) abbia come output V= vero oppure F= falso

ossia un algoritmo AR che stabilisca mediante una uscita (Vero)  che A(d) terminerà in un tempo finito , oppure stabilisca mediante l’uscita (Falso) che A(d) produrrà un loop infinito.

Sinteticamente

  1. se  AR (A(d)) = vero  allora  A(d) termina  (si Arresta in un tempo finito)
  2. se  AR (A(d)) = falso  allora A(d)  non termina (non si Arresta in un tempo finito).

Poiché sia A che d sono stringhe di simboli di un meta-linguaggio avente come alfabeto 0, 1 (nel caso di un alfabeto digitale binomiale) quindi reciprocamente scambiabili (non riconoscibili come programma e input bensì solo come segnali digitali) è possibile operare su l’algoritmo AR ottenendo AR ((A,(A))

  • AR (A(A)) vero se A(A) termina per la relazione (1)
  • AR (A(A)) falso se A(A) non si arresta in un tempo finito  per la relazione (2)

Si ripeta ora ma medesima operazione compiuta per la creazione di (A,A) creando NW(AR, AR) che dia come Output “vero” se AR (A (A(d)) = non termina (come da (2)) quindi: NW (AR, AR) è un programma  che si autodefinisce “vero” se AR si autodefinisce “falso” che, a sua volta per la relazione (2) definisce  A(d) un algoritmo che non termina (loop infinito). Conclusione: Non può esistere un algoritmo che termini con un Vero o un Falso (Arresto).

La tecnica di dimostrazione è quella della autorefenziabilità potentemente utilizzata nella valutazione  di AR(A.A) e di NW(AR, AR) dove sia l’algoritmo AR valuta se stesso in funzione dell’algoritmo A, che dell’algoritmo NW.

Conclusione sul Teorema di Turing

(Dove, come al solito, non si conclude un bel niente ma ci si limita ad evidenziare alcune curiosità della pseudo logica umana e della pseudo potenza di una SuperIA).

Alle fine degli anni 30 Alonzo Church e Alan Turing pubblicarono il risultato dei lavori (condotti separatamente ed indipendentemente ma alla fine unificati a fronte di un risultato identico) volti a risolvere l’ormai annoso 10° problema di Hilbert e, parallelamente, il problema della Super IA. La loro congettura recita:

Se un problema è umanamente calcolabile, allora esisterà una macchina di Turing in grado di risolverlo.

Alan Turing ha dimostrato che non esiste alcun algoritmo e tantomeno alcuna macchina che possa risolvere qualsiasi cosa risolvibile dalla mente umana. Ancora più analiticamente: se volessimo creare un algoritmo che stabilisca a priori se i programmi di elaborazione dati e di auto apprendimento di SuperIA possano essere un pericolo per il genere Homo Sapiens otterremmo come risultato che tale ipotetico algoritmo (implementato su di una Macchina di Turing non deterministica) girerebbe all’infinito senza dare mai una risposta di Vero o Falso.