Esistono prove dell'indecidibilità del problema di arresto che non dipende dall'autoreferenziazione o dalla diagonalizzazione?


40

Questa è una domanda relativa a questa . Riponendolo in una forma molto più semplice dopo molte discussioni lì, che sembrava una domanda totalmente diversa.

La classica dimostrazione dell'indecidibilità del problema dell'arresto dipende dalla dimostrazione di una contraddizione quando si cerca di applicare un ipotetico decisore HALT a se stesso. Penso che ciò denoti semplicemente l'impossibilità di avere un decisore HALT che decide se si fermerà o meno, ma non fornisce alcuna informazione oltre a quella sulla decidibilità dell'arresto di altri casi.

Quindi la domanda è

Esiste una prova che il problema dell'arresto è indecidibile che non dipende dal mostrare che HALT non può decidere da solo, né dipende dall'argomento della diagonalizzazione?

Piccola modifica: mi impegno a formulare la frase originale della domanda, che richiede una prova che non dipende affatto dalla diagonalizzazione (piuttosto che dal fatto che richiede semplicemente di non dipendere dalla diagonalizzazione che dipende da HALT).


Stai cercando uno che non dipende da un argomento di diagonalizzazione, o solo uno che non diagonale usando HALT direttamente? Non sono sicuro che la prova proposta da Bjørn soddisfi la prima.
Mark Reitblatt,

@Mark: non ne sono sicuro. Se l'argomento della diagonalizzazione non corrisponde all'autoreferenziazione, ma ad altri aspetti come la mancata corrispondenza della cardinalità, spero davvero che possa dare un'idea del perché la conclusione di HALT (Q) (dove Q! = HALT) è indecidibile .
M. Alaggan,

1
Bene, in quel caso, posso dare una discussione più semplice. Inizia con l'osservazione che ci sono problemi indecidibili (semplice argomento di cardinalità), e inoltre che esiste un problema indecidibile P che ha una TM M che riconosce i suoi membri (ma potrebbe non terminare con i non membri). Ora, risolvere HALT (M) ti dà un decisore per P. Per prima cosa controlliamo se M si ferma su x. Se lo fa, lo eseguiamo e restituiamo lo stesso di M. Altrimenti, rifiutiamo, poiché M si ferma su ogni membro di P. Questa è ora una contraddizione poiché abbiamo ipotizzato che P fosse una lingua senza un decisore.
Mark Reitblatt,

Tale argomento è in realtà una prova che HALT è RE-completo.
Mark Reitblatt,

1
Ti ho preso. Se tutti i TM erano decisori, allora HALT è banale. Se l'arresto è non banale (esistono dei riconoscitori), allora (per contro-positivo) l'esistenza di un HALT non banale rende i decisori del riconoscimento TM, il che significa che HALT è banale, contraddizione. Quindi tale HALT non può esistere per tutti i riconoscitori. Questo è geniale, grazie per il tuo meraviglioso commento; potresti voler ripubblicarlo come risposta :)
M. Alaggan,

Risposte:


31

Sì, ci sono tali prove nella teoria della calcolabilità (aka teoria della ricorsione).

Puoi prima dimostrare che il problema di arresto (il set ) può essere usato per calcolare un set che è 1-generico che significa che in un certo senso ogni fatto di su è deciso da un finito prefisso . Quindi è facile dimostrare che un tale insieme non può essere calcolabile (cioè decidibile). G N Σ 0 1 G G G0GNΣ10GGG

Potremmo sostituire 1 generico qui con 1 casuale, cioè Martin-Löf casuale , per lo stesso effetto. Questo utilizza il teorema di base bassa di Jockusch-Soare .

(Avvertenza: si potrebbe considerare solo la dimostrazione del fatto che calcola Ω di Chaitin , che è 1 casuale, ma qui dobbiamo fare attenzione se la prova che Ω è 1 casuale si basa sul fatto che il problema di arresto sia indecidibile! Pertanto è più sicuro basta usare il teorema della base bassa).0ΩΩ


Molto interessante! Potete fornirmi un riferimento o un insieme di parole chiave da cercare per poterlo capire di più? Molte grazie!
M. Alaggan,

6
@M. Alaggan: Il miglior riferimento potrebbe essere il recente libro di André Nies, Computabilità e casualità , Oxford Logic Guides, Oxford University Press, 2009. C'è anche un articolo di Wikipedia sul teorema di base bassa e un articolo di Scholarpedia sulla casualità algoritmica: scholarpedia.org / article / Algorithmic_randomness
Bjørn Kjos-Hanssen

@M. Alaggan, dipende da te ma i voti suggeriscono che questa dovrebbe essere la risposta accettata.
Mohammad Al-Turkistany,

Ho chiesto su meta (controlla meta.cstheory.stackexchange.com/questions/642/when-is-it-ropriate-to-change-the-accepted-answer). So che questa risposta è davvero eccezionale e anche molto utile. Ho accettato l'altro, tuttavia, perché era molto più facile per me capire con un approccio più intuitivo. Tuttavia, sembra esserci una discussione sopra sulla sua correttezza (!). Quindi, se si rivelasse errato, passerò davvero a questa risposta. La confusione è nata da me non essendo specifico nella domanda originale che volevo evitare la diagonalizzazione usando HALT, piuttosto che tutte le diagonali.
M. Alaggan,

Sono estremamente confuso su quale dovrei accettare, fino a questo momento, poiché sto scegliendo tra una risposta eccezionale eccezionale e una risposta facile / intuitiva (il mio background non è molto solido / maturo). Quindi, per favore, niente sentimenti duri :) Possiamo discuterne e raggiungere una decisione soddisfacente per tutti. Grazie.
M. Alaggan,

5

Ripubblicato dal mio commento secondo la richiesta:

Inizia con l'osservazione che ci sono problemi indecidibili (semplice argomento di cardinalità), e inoltre che esiste un problema indecidibile P che ha una TM M che riconosce i suoi membri (ma potrebbe non terminare con i non membri). Ora, risolvere HALT (M) ti dà un decisore per P. Per prima cosa controlliamo se M si ferma su x. Se lo fa, lo eseguiamo e restituiamo lo stesso di M. Altrimenti, rifiutiamo, poiché M si ferma su ogni membro di P. Questa è ora una contraddizione poiché abbiamo ipotizzato che P fosse indecidibile.

Nota: ha chiarito che stava cercando un argomento che evitasse la diagonalizzazione usando direttamente HALT, non un argomento che evitava del tutto la diagonalizzazione.

EDIT: questo argomento è bloccato. Puoi mostrare direttamente che RE - REC non è vuoto, oltre a mostrare che HALT è lì?


L'argomento della numerabilità utilizza una diagonalizzazione molto simile (solo leggermente più semplice) rispetto alla dimostrazione standard del problema di arresto. (Cioè, per mostrare che la cardinalità delle lingue è più grande di quella delle TM usa la diagonalizzazione.) :)
Joshua Grochow,

@Joshua Leggi i commenti. Ho chiesto se stava cercando una prova che evitasse la diagonalizzazione o una che avesse semplicemente evitato la diagonalizzazione usando HALT. Sta cercando quest'ultimo.
Mark Reitblatt l'

@Mark: Ah, l'ho perso. Grazie. +1
Joshua Grochow,

4
@Mark: potresti chiarire qualcosa per favore? Inizi osservando che c'è un problema indecidibile P che è riconoscibile, e poi osserva che se HALT fosse decidibile, potremmo costruire un decisore per P. Tuttavia, nei testi che ho letto, le cose sono provate nell'altro ordine-- l'indecidibilità di HALT viene utilizzata per dimostrare l'esistenza di tali problemi P. Potete mostrare l'esistenza di problemi indecidibili ma riconoscibili senza usare l'indecidibilità di HALT?
Kurt,

2
Il fatto che esista un problema riconoscibile ma indecidibile è forse dimostrato più facilmente mostrando che il problema di arresto è un tale problema, nel qual caso sei tornato da dove hai iniziato. Esistono solo molte lingue riconoscibili.
Bjørn Kjos-Hanssen

2

Un altro poster allude a questo (riferendosi a Chaitin), ma puoi usare il paradosso di Berry per dimostrare che il problema dell'arresto è indecidibile. Ecco un breve schizzo della dimostrazione:

Lascia che HALT sia una macchina che decide se una qualsiasi macchina M si ferma sull'input I. Dimostreremo che HALT non riesce a fermarsi su un input particolare, il che dimostra che non è in grado di decidere la lingua.

Considera la seguente funzione f:

f (M, n) = a, dove a è il numero intero positivo più piccolo non calcolabile dalla macchina M su qualsiasi input I con | I | <n

Supponendo che HALT sia una funzione calcolabile, f è anche una funzione calcolabile; simula semplicemente HALT (M, I) per ogni macchina M e inserisci la stringa I con una lunghezza di I inferiore a n. Se la simulazione si interrompe, simula M (I) e registra qual è l'output e trova l'output più piccolo a che non viene emesso da nessuna delle coppie M, n.

Ora, mostriamo che f non è calcolabile: considera f (f, 10000000 * | f | +10000000). Qualunque cosa emetta, dovrebbe essere un intero (positivo) che non è calcolabile dalla macchina che calcola f sull'input I con una lunghezza inferiore a quella data ... e tuttavia abbiamo appena emesso un intero con f e molto più breve ingresso.

Pertanto, f non è calcolabile, quindi la nostra ipotesi che HALT fosse calcolabile è falsa. Non credo che questa prova faccia alcun uso della diagonalizzazione.


Whatever it outputs, it ought to be an integer that is not computable by the machine computing f on input I with length less than that given.>nn

5
Non sto cercando di essere scortese, ma la tua obiezione non ha senso. La funzione f è definita come una funzione che genera un numero intero che non può essere calcolato da M su alcun input con lunghezza inferiore a n. Pertanto, a parte gli appelli senza senso all'aritmetica modulare, avrai difficoltà a dimostrare che la frase che hai evidenziato non è valida.
Philip White,

@johne Concordo con Philip. Non ci sono presupposti sui limiti della rappresentazione della macchina. Questa è una TM.
Mark Reitblatt,

@Philip Correzione tecnica minore: è necessario modificare il numero intero in intero naturale o positivo.
Mark Reitblatt,

1
ff

0

{We}e=1feWe=Wf(e)0fe0We0eWe(0)Wf(e)(0)


6
Questa è la prova standard della diagonalizzazione.
Yuval Filmus,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.