P contiene lingue incomprensibili? (Wiki della community TCS)


11

Risposta: non nota

Mille grazie a tutti coloro che hanno contribuito a perfezionare questa domanda e le definizioni ad essa associate.

Le definizioni di questo wiki hanno fornito il punto di partenza per il più recente wiki di TCS " P contiene linguaggi la cui esistenza è indipendente da PA o ZFC? (Wiki della comunità TCS) ".

Il wiki più recente è preferito perché le sue definizioni e nomenclatura sono sostanzialmente più sofisticate di quelle di questo wiki più vecchio.

In particolare, la nomenclatura di questo wiki anziani incomprensibile   comprensibili lingue e TMS è soppiantato nel più recente wiki di criptico gnostica . A parte i dettagli definitivi - che comunque sono importanti - i due wiki affrontano una classe simile di domande.  

Ulteriori risposte sono benvenute

Sono benvenute ulteriori risposte (inutile dirlo) ed è probabile che siano necessarie ulteriori regolazioni definitive. Una lezione principale è stata che questa classe di domande è difficile da formulare e ancora più impegnativa per rispondere rigorosamente.

Come sfondo, la risposta di Sasho Nikolov è stata classificata come "accettata" perché forniva una formulazione che catturava l'intento della domanda: la risposta alla domanda (apparentemente) non è nota.

La preziosa risposta di Philip White ha motivato la definizione graduale di TM che sono incomprensibili, contro fortemente incomprensibili, contro canonicamente incomprensibili (per l'elenco "definizioni classificate di incomprensibilità" di seguito).

La seguente affermazione della domanda incorpora provvisoriamente preziosi approfondimenti e suggerimenti forniti da Tsuyoshi Ito, Marzio De Biasi, Huck Bennett, Ricky Demer, Peter Shor e anche un prezioso post sul weblog di Luca Trevisan .

Definizione formale

Le macchine di Turing incomprensibili sono definite (all'interno di ZFC) come segue:

D1   Data una macchina di Turing M che si arresta in modo dimostrabile per tutte le stringhe di input, M viene chiamata incomprensibile se la seguente affermazione non è provabile né confutabile per almeno un numero reale semidefinito positivo :r

Istruzione: il tempo di esecuzione di M è rispetto alla lunghezza di inputnO(nr)n

Al contrario, M è chiamato comprensibile se non è incomprensibile.

Decondizionabile non ambiguo

La voce di Wikipedia " Problema indecidibile: esempi di affermazioni indecidibili " esamina in modo conciso i diversi sensi del termine "indecidibile" che sono consuetudinari nella letteratura della teoria della prova rispetto alla teoria della calcolabilità. Al fine di evitare ambiguità, le definizioni e le domande poste impiegano esclusivamente la terminologia "né dimostrabile né confutabile".

Ulteriori riferimenti a questo proposito sono gli appunti del corso di Jeremy Avigad " Incompletità attraverso il problema dell'altare ", il saggio sul blog di Scott Aaronson " Il teorema di Rosser tramite macchine di Turing " e il post sul blog di Luca Trevisan Due domande interessanti .

Sull'esistenza di incomprensibili macchine di Turing

L'esistenza di incomprensibili macchine di Turing deriva concretamente da una costruzione di Emmanuele Viola e sostanzialmente dal quadro teorico della complessità di Juris Hartmanis. In particolare, la costruzione di Viola prevede, attraverso i metodi delle note del corso di Jeremy Avigad (per quanto io le capisca), il seguente lemma:

Lemma [Viola's Implication]
    (se una lingua L è accettata da una TM comprensibile)          (L è accettata da una TM incomprensibile).

Rispettare la naturalezza nel definire l'incomprensibilità

È naturale chiedersi se sia vero il contrario delle implicazioni di Viola's Implication.

Le considerazioni sulla naturalezza richiedono che le implicazioni opposte siano poste con attenzione, in quanto il commento di Philip White in basso mostra come ridurre banalmente le TM incomprensibili a TM comprensibili tramite polilimitatori , che sono moduli computazionali che (in effetti) "controllano" il runtime di una macchina incomprensibile come ridurlo a una macchina comprensibile.

In particolare, è naturale richiedere che non " mascheriamo esteticamente vecchi elementi di incomprensibilità introducendo nuovi elementi di incomprensibilità ". La sfida principale associata alla domanda posta equivale a "Esiste una definizione naturale di incomprensibilità?" ... quale (vista la discussione qui di TCS) dovremmo forse considerare una meta-domanda non banale che può avere più di una risposta naturale.

In vista di questo principio guida di naturalità, le definizioni classificate di incomprensibilità sono specificate come segue.

Definizioni classificate di incomprensibilità

D2   Diciamo che una macchina di Turing M è efficiente se ha un esponente di runtime tale che la lingua L che M accetta è accettata da nessun altra TM con un esponente di runtime inferiore a  .rrr

D3   Diciamo che una lingua L è incomprensibile se è accettata da (a)  almeno una macchina di Turing M è sia efficiente che incomprensibile, e inoltre (b)  non esiste una TM efficiente e comprensibile che dimostra (in ZFC) L.

D4   Diciamo che una MT incomprensibile è fortemente incomprensibile se la lingua che accetta è incomprensibile.

D5   Diciamo che una TM fortemente incomprensibile è canonicamente incomprensibile se è efficiente.

Queste definizioni assicurano che ogni linguaggio incomprensibile sia accettato da almeno una TM che è canonicamente incomprensibile, e inoltre - alla luce di D3 (a) e D3 (b)  - non esiste una banale riduzione del polilimero di una TM canonicamente incomprensibile a una TM comprensibile che riconosce in modo dimostrabile la stessa lingua.

Le tre domande poste

D1   La classe di complessità P contiene linguaggi incomprensibili?

D2 È   possibile rappresentare concretamente almeno un linguaggio incomprensibile? (in tal caso, fornire un esempio costruttivo).

D3 È   possibile rappresentare concretamente almeno una TM canonicamente incomprensibile? (in tal caso, fornire un esempio costruttivo).


Motivazione

Le proprietà incomprensibili della classe di complessità P ostacolano la comprensione di una vasta classe di problemi che (per il proponente originale di questa domanda ) includono il puzzle di Blue-Eyed Islanders di Terry Tao , Dick Lipton e Urn-Choice Game di Ken Regan e la loro ibridazione in il contesto del paradosso di Newcomb tramite il gioco Newcomb di Balanced Advantage .

Come afferma la monografia di Juris Hartmanis, Calcoli fattibili e proprietà dimostrabili della complessità (1978):

I risultati sulla complessità degli algoritmi cambiano radicalmente se consideriamo solo le proprietà dei calcoli che possono essere provate formalmente.

La lotta per costruire definizioni e postulati ben posati che catturano l'intuizione di Hartmanis ci aiuta a capire meglio che la classe di complessità P contiene alcuni linguaggi estremamente peculiari, che sono riconosciuti da macchine di Turing estremamente peculiari, di cui siamo (attualmente ) molto lontano dalla comprensione. È sorprendente che in un senso completamente rigoroso non sia attualmente noto se la classe di complessità P sia comprensibile.

Molte grazie a tutti coloro che hanno contribuito con commenti e risposte.


1
Si prega di definire il termine "(una macchina di Turing) che è decisamente in P."
Tsuyoshi Ito,

2
Nel problema dichiarato nella definizione di "incomprensibile in P", qual è esattamente l'input? La macchina di Turing fa parte dell'input o è fissa? Inoltre, come viene specificato un numero reale come stringa?
Tsuyoshi Ito,

3
rM

2
Come spiegato in anticipo da Sasho, il problema dichiarato nella definizione di "incomprensibile" nella revisione 4 è decidibile per ogni M. Temo che qui stiate commettendo un errore elementare. Se hai ancora problemi a capirlo, questo post di Raffaello e il link in esso possono essere utili. Ho votato per chiudere questa non come una vera domanda.
Tsuyoshi Ito,

2
CnkCk

Risposte:


11

(Sto andando in pensione perché non è più pertinente la parte della risposta che ha appena spiegato il motivo per cui non ci sono istanze indecidibili di un problema / nessun algoritmo polifunzionale con limite temporale non calcolabile)

TMMT

  • MM
  • MM

Quindi sembra che la risposta alla tua domanda sia "no": qualsiasi linguaggio decidibile nel tempo polifunzionale da qualche macchina è deciso da una macchina polifunzionale dimostrabilmente. Ma forse la tua domanda dovrebbe essere:

  • MMM

Sospetto che la risposta sia sì, ma in questo momento non ho più tempo da dedicare a questo.


------ Esistono due sensi distinti della parola indecidibili in matematica e informatica. Il primo di questi è il senso teorico-dimostrativo usato in relazione ai teoremi di Gödel, quello di un'affermazione che non è né dimostrabile né confutabile in un determinato sistema deduttivo. ... A causa dei due significati della parola indecidibile, a volte viene usato il termine indipendente anziché indecidibile per il senso "né dimostrabile né confutabile".
John Sidles,

Grazie Sasho! Sono arrivato anche a questo apprezzamento, ma il postulato può essere modificato mediante la distinzione di Wikipedia: "Esistono due sensi distinti della parola indecidibile in matematica e informatica. Il primo di questi è il senso teorico-dimostrativo usato in relazione ai teoremi di Gödel, quella di un'affermazione che non è né dimostrabile né confutabile in un determinato sistema deduttivo ... A causa dei due significati della parola indecidibile, il termine indipendente è talvolta usato al posto di indecidibile per il senso "né dimostrabile né confutabile". " Quindi spero di chiarire la domanda più tardi oggi.
John Sidles,

Spinto in gran parte dai vostri commenti ponderati, l'attributo ambiguo "decidibile" ora è stato sostituito dall'attributo (si spera non ambiguo) "né dimostrabile né confutabile". Per il quale il tuo aiuto è apprezzato e ti vengono dati ringraziamenti.
John Sidles,

1
controlla la mia risposta aggiornata
Sasho Nikolov,

Grazie Sasho. Anch'io devo fare una pausa fino a domani, tuttavia in prima lettura il tuo suggerimento finale sembra molto fruttuoso e spero di poter rispondere presto. Grazie ancora.
John Sidles,

2

Solo un commento esteso che cerca di interpretare la domanda.

Mè promesso di fermarsiMnumero reale semidefinito positivordomandaQM,r

OPZIONE 1

QM,r(n)Mnrn

2nM

OPZIONE 2

QM,rMO(nr)

E se chiedi: "Ok, ma possiamo calcolare il valore 1 o 0 per costruire l'algoritmo che risponde alla domanda dell'opzione 2?", Allora torniamo a questo:

Qr(M)MO(nr)M


Marzo, grazie per questa risposta e per il tuo commento sopra. Il termine ambiguo "decidibile" è già stato abbandonato - significava cose diverse per comunità diverse --- a favore del linguaggio teorico-dimostrativo "né dimostrabile né confutabile". Alla fila di chiarire gli emendamenti per la versione modificata della domanda di domani (che si spera sarà l'ultima rigorosa posa della domanda) la frase "Per tutte le n " sarà anteposta, secondo la tua Opzione 1. E infine, l'apprezzamento e il ringraziamento sono estesi a te ea tutti, per un aiuto nel porre la domanda in modo rigoroso e chiaro.
John Sidles,

1
MMO(nr)MO(nr)

Marzo, ok e grazie. Inoltre, al fine di stabilire "Viola's Implication", dobbiamo adattare l'argomento della sezione 3 delle note del corso di Jeremy Avigad (come collegato nella domanda) alla costruzione di Viola ... la domanda modificata chiarirà questo punto. Inutile dire che il processo di chiarimento delle definizioni è stato 10X ++ più arduo di quanto inizialmente previsto ... che forse è il punto principale della domanda. Grazie ancora.
John Sidles,

1

La risposta alla tua domanda n. 1 è sicuramente "no". Come credo qualcuno abbia sottolineato nella sezione (molto lunga) dei commenti, potresti facilmente aggiungere una "polilimitazione" a una macchina. Cioè, anche se non sai cos'è r, se indovini un numero intero maggiore di r (questo è sicuramente possibile, ovviamente), potresti impostare una macchina aerea che simula la tua macchina "incomprensibile" di Turing e forzarla per interrompere l'esecuzione in tempo polinomiale ... senza cambiare la lingua accettata dalla macchina Turing. In questo modo, è possibile convertire qualsiasi macchina di Turing del tempo polinomiale "incomprensibile" in una macchina di Turing del tempo "comprensibile", il che significa che non esiste un linguaggio in P che può essere deciso da macchine di Turing esclusivamente "incomprensibili".

Spero che questo possa essere d'aiuto. A meno che non abbia frainteso completamente la tua domanda e il tuo intento, la mia risposta è sicuramente corretta; non è affatto una domanda aperta.


1
A proposito, se vuoi un buon esempio di candidato per quello che chiami un algoritmo "incomprensibile", vedi scholarpedia.org/article/Universal_search . L'algoritmo di ricerca universale per la risoluzione di SAT aderisce alla tua definizione di incomprensibile iff P = NP è formalmente indipendente.
Philip White,

1
sai qualcosa sull'ultima domanda dalla mia risposta? Credo che sia l'unica domanda che non è ancora ovviamente banale ... per me che lo è
Sasho Nikolov

@Philip White, la definizione è costruita con cura per eludere la costruzione fornita. Perché supponiamo che il runtime di M sia indecidibile per alcuni esponenti r , e indoviniamo un valore r ' > r , e installiamo un r-- polilimitatore in una macchina modificata M' che riconosce la stessa lingua di M, quindi per M 'l'istruzione "il tempo di esecuzione di M 'è O (n ^ r) rispetto alla lunghezza di input n" è ancora indecidibile. Sono d'accordo, tuttavia, che dobbiamo riflettere attentamente sull'esclusione di TUTTI i giochi di gatto e topo con polilimitatori specificati da Oracle (come è l'intento) --- e quindi ho votato a favore della tua risposta!
John Sidles,

Oh, e poiché il commento di Sasho si è sovrapposto al mio, per favore lasciami esprimere il mio apprezzamento per la domanda finale nella risposta di Sasho , che (secondo la mia attuale comprensione di esso) ostacola abilmente l'introduzione di polilimitatori derivati ​​dall'oracolo. Come prima, dovrò pensarci per un giorno o due. Grazie ancora, Filippo.
John Sidles,

Mi dispiace, avrei dovuto leggere più attentamente la risposta di Sasho Nikolov; Ho appena visto la parola "sì" oops. Esaminerò l'ultima domanda tra un momento e vedrò se ho qualcosa di utile da dire.
Philip White,
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.