Cosa hanno in comune la CEP e Tiquit? indice: il computer è onnipotente?problemi irresolubili

Piastrellare una stanza qualsiasi

Il nostro viaggio era iniziato con un semplice solitario:

  • Abbiamo a disposizione quante piastrelle vogliamo, ma tutte di una serie di tipi fissati, per esempio:


Fig. 1: Tre tipi di piastrelle

oppure:


Fig. 2: Altri tre tipi di piastrelle

  • Fissato l'insieme dei tipi di piastrelle, il gioco consiste nel ricoprire una stanza assegnata (di dimensione e forma fissate, ma arbitrarie), usando quante piastrelle si vogliano e con qualsiasi orientamento, ma solo dei tipi fissati e con il vincolo che due piastrelle possono stare una accanto all'altra solo se i colori sul bordo comune coincidono.

Il gioco non è concettualmente difficile, fissata la stanza. E non c'è bisogno di un grande ragionamento per convincersi che un calcolatoreDizionario (o anche ciascuno di noi) è in grado di risolverlo, avendo abbastanza tempo e provando tutte le combinazioni. Si tratta dunque di un problema C-risolubile.

Adesso proponiamoci un problema simile, solo più generale.

 
Fig. 3: Oggetti impossibili: risolvere con un calcolatore un problema non C-risolubile è impossibile quanto realizzare uno di questi oggetti.

Fissato l'insieme dei tipi di piastrelle, questi tipi sono sufficienti a ricoprire una stanza qualsiasi?
Ora il procedimento di forza bruta, che prova tutti i casi, non è più possibile, perché esistono infinite stanze, di infinite forme e dimensioni.

Mediante una non semplice dimostrazione matematica, ad esempio, si può mostrare che il primo insieme di piastrelle di Fig. 1 non è sufficiente (cioè esistono stanze che non possono esser piastrellate con solo quei tipi di colori), mentre con il secondo insieme di Fig. 2 è possibile ricoprire il pavimento di una qualsiasi stanza.

La domanda che ci interessa è se un calcolatore possa risolvere questo problema di ricoprimento generale. Formuliamo la domanda in modo diretto.

Esiste un algoritmoDizionario che, presi come dati iniziali i tipi di piastrelle ammesse, dopo un certo tempo si ferma rispondendo SI nel caso in cui quei tipi di piastrelle siano sufficienti a piastrellare una stanza qualsiasi, oppure si ferma rispondendo NO nel caso in cui esista una stanza che non è possibile ricoprire con quei tipi di piastrelle?

Ebbene, non esiste alcun algoritmo in grado di rispondere a questa domanda. E non per nostra incapacità, ma perché si tratta in un problema intrinsecamente irresolubile per via algoritmica.

 


The Webweavers: Last modified Mon, 23 Jan 2006 14:09:35 GMT