P contiene linguaggi la cui esistenza è indipendente da PA o ZFC? (Wiki della community TCS)


14

Risposta: non nota.

Le domande poste sono naturali, aperte e apparentemente difficili; la domanda ora è un wiki della comunità.

Panoramica

La domanda cerca di dividere le lingue appartenenti alla classe di complessità P  - insieme alle macchine di Turing (TM) che accettano queste lingue - in due sottoclassi complementari:

  • linguaggi gnostici e TM (che sono fattibili per convalidare / comprendere), contro
  • linguaggi criptici e TM (che sono impossibili da validare / comprendere).

Definizioni: numeri gnostici vs criptici , TM e lingue

All'interno dei framework assiomi PA e ZFC , distinguiamo le macchine gnostiche da quelle criptiche di Turing e le lingue come segue:

D0   Diciamo che un numero reale calcolabile   è gnostico se è associato a un insieme non vuoto di TM, con ogni TM specificata in PA come un elenco esplicito di numeri che comprende un codice valido su una TM universale, tale che per qualsiasi precisione ϵ > 0 fornito come input, ciascuna TM in modo dimostrabile (in ZFC) si arresta con un numero di uscita o che in modo dimostrabile (in ZFC) soddisfa r - ϵ < o < r + ϵ .rϵ>0orϵ<o<r+ϵ

Nota   È noto che alcuni reali calcolabili non sono gnostici (per un esempio concreto vedere la risposta di Raphael Reitzig alla domanda di jkff " Esistono prove di esistenza di algoritmi non costruttive? "). Per evitare di confrontarsi con questi numeri calcolabili ma scomodi, si impone che gli esponenti di runtime siano calcolabili dalle TM che sono esplicitamente enumerate in PA (in contrasto con le TM implicitamente specificate in ZFC). Per ulteriori discussioni vedere la sezione Considerazioni sulla definizione (di seguito).

Ora cerchiamo definizioni che catturino l'intuizione che la classe di complessità include un sottoinsieme di linguaggi criptici a cui non è possibile assegnare in modo dimostrabile nessun esponente di runtime (gnostico) inferiore. P

Per guardare al futuro, la definizione conclusiva ( D5 ) specifica l'idea di una decisione canonicamente criptica TM , la cui definizione è elaborata con l'obiettivo di ovviare alle riduzioni che (banalmente) mascherano i calcoli criptici sovrapponendo computazioni epi superflui computazionalmente. La logica e le fonti di questa definizione chiave saranno discusse più avanti - sotto il titolo Considerazioni sulla definizione  - e i contributi dei commenti di Timothy Chow, Peter Shor, Sasho Nikolov e Luca Trevisan sono riconoscenti.

D1   Data una macchina di Turing M che si ferma per tutte le stringhe di input, M si chiama criptico se la seguente affermazione non è né dimostrabile né confutabile per almeno un numero reale gnostico  :r0

Dichiarazione: il tempo di esecuzione di M è rispetto alla lunghezza di ingresso nO(nr)n

Le macchine di Turing che non sono criptiche, diciamo, sono TM gnostiche.

D2   Diciamo che una macchina di Turing M di decisione è efficace se ha un esponente di runtime gnostico  tale che la lingua L che M accetta sia accettata da nessun'altra TM con un esponente di runtime gnostico inferiore a  r .rr

D3   Diciamo che una lingua L è criptica se è accettata da (a)  almeno una macchina di Turing M è sia efficiente che criptica, e inoltre (b)  nessuna TM sia efficiente che gnostica accetta in modo dimostrabile L.

Per esprimere D3 in un altro modo, una lingua è criptica se le TM che accettano quella lingua in modo più efficiente sono esse stesse criptiche.

Le lingue che non sono criptiche, diciamo, sono lingue gnostiche .

D4   Diciamo che una Criptica TM è fortemente criptica se la lingua che accetta è criptica.

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

Per esprimere D5 in un altro modo, ogni linguaggio criptico è accettato da una serie di TM di decisioni canonicamente criptiche, che sono le TM di decisione più efficienti che accettano quel linguaggio.

Le domande poste

La seguente congettura C0 è naturale e (apparentemente) aperta:

C0   La classe di complessità P contiene almeno un linguaggio criptico.

Vengono poste tre domande, Q1 - Q3 , di cui la prima è:

Q1   La congettura C0 è indipendente da PA o ZFC?

Partendo dal presupposto che C0 è vero - o in modo dimostrabile in ZFC, o come un assioma indipendente che è supplementare a ZFC - due ulteriori domande sono naturali:

Q2   Almeno un linguaggio criptico in P può essere presentato concretamente, cioè esibito come un dizionario di parole esplicite in un alfabeto finito che include tutte le parole fino a una lunghezza specificata? In tal caso, esibisci un tale dizionario.

Q3   Almeno una decisione canonicamente criptica TM può essere presentata concretamente, cioè come una descrizione abilitante per la costruzione di una macchina di Turing fisica che decide (in tempo polinomiale) tutte le parole del dizionario di Q2 ? In tal caso, costruisci una tale macchina di Turing e calcolandola con essa, esibisci il dizionario linguistico criptico di Q2 .

Considerazioni definitive

La definizione D0 implica che ogni numero reale gnostico è calcolabile, ma è noto che alcuni numeri reali calcolabili non sono gnostici. Per esempi, vedi le risposte su MathOverflow di Michaël Cadilhac e Ryan Williams e su TCS StackExchange di Raphael Reitzig . Più in generale, le definizioni D0 – D5 sono realizzate per escludere riferimenti a esponenti di runtime non gnostici.

Come discusso nel wiki del TCS " P contiene lingue incomprensibili? ", Le definizioni D0 – D5 assicurano che ogni linguaggio criptico sia accettato da almeno una TM che è canonicamente criptica. (Nota anche che nella domanda attuale la parola "criptico" sostituisce la parola meno descrittiva "incomprensibile" usata nel wiki).

Inoltre - alla luce di D3 (a) e D3 (b)  - non esiste una riduzione banalmente computazionale di una TM canonicamente criptica a una TM gnostica che riconosce in modo dimostrabile la stessa lingua. In particolare, D3 (a) e D3 (b) ostacolano le strategie di riduzione del polilimitatore che sono state delineate nei commenti di Peter Shor e di Sasho Nikolov , e indipendentemente da Luca Trevisan , e ostacola anche la strategia di riduzione con clock polinomiale di Timothy Chow , tutto di cui allo stesso modo maschera i calcoli criptici sovrapponendo un calcolo dell'epi superfluo dal punto di vista computazionale .

In generale, le definizioni di "gnostico" e "criptico" sono deliberatamente sintonizzate in modo da essere robuste rispetto alle riduzioni matematicamente banali (ed è del tutto possibile che sia auspicabile un'ulteriore messa a punto di queste definizioni).

Considerazioni metodologiche

La recensione di Lance Fortnow " Lo stato del problema P contro NP " esamina i metodi per stabilire l'indipendenza (o altrimenti) delle congetture nella teoria della complessità; particolarmente desiderati sono suggerimenti su come i metodi che Lance recensisce potrebbero aiutare (o meno) a rispondere a Q1 .

È chiaro che molte altre domande sono naturali. Ad esempio, la congettura di Hartmanis-Stearns ci ispira a chiedere "Esistono macchine turing multitape in tempo reale? La loro esistenza (o no) è indipendente da PA o ZFC?"

Considerazioni di tipo Zeilberger

Nel caso in cui Q1 riceva risposta "sì", allora gli oracoli che decidono l'appartenenza a esistono al di fuori di PA o ZFC, e pertanto un elemento essenziale della moderna teoria della complessità non è (attualmente) risaputo all'interno di alcun sistema formale di logica. P

A questo proposito la teoria della complessità si distingue dalla maggior parte delle discipline matematiche, in modo tale che le apprensioni che Doron Zeilberger esprime nel suo recente " Opinione 125: Ora che Alan Turing ha compiuto 100 anni, è tempo di dare uno sguardo nuovo ai suoi contributi seminali , che ha fatto molto bene ma anche un sacco di danni "probabilmente sono ben fondati.

Le preoccupazioni di Zeilberger assumono forma esplicita come criterio Z0    (! Q1  ) && (! C0  ), che equivale al seguente criterio:

Z0:   criterio di sensibilità di Zeilberger Le   definizioni della classe di complessità P   sono chiamate Zeilberger sensibili se tutte le lingue in P sono decisamente gnostiche.

Al momento non è noto se la definizione di Stephen Cook della classe di complessità P   sia sensibile a Zeilberger.

Considerazioni motivazionali

Le definizioni di "gnostico" e "criptico" sono elaborate in vista di (eventualmente) decidere congetture come le seguenti:

C1   Sia e N P le restrizioni gnostiche di P e N P rispettivamente. Quindi P N P è dimostrabile o confutabile in PA o ZFC.PNPPNPPNP

C2   (come esplicitamente dimostrato in PA o ZFC)PNP

Chiaramente C2   C1 , e viceversa è ipotizzabile che una dimostrazione del (meta) teorema C1 possa fornire una guida verso una dimostrazione del (più forte) teorema C2 . 

La motivazione generale è l'attesa / intuizione / speranza che per una distinzione ben sintonizzata tra TM e linguaggi gnostici e criptici, una prova di C1 e forse anche C2 potrebbe illuminare - e persino avere implicazioni pratiche comparabili a - presumibilmente molto più difficile e più profondo la prova che . PNP

Juris Hartmanis fu tra i primi teorici della complessità a perseguire seriamente questa linea di indagine; vedi la monografia di Hartmanis Feasible Computations and Provable Complexity Properties (1978), per esempio.

Considerazioni nomenclaturali

Dall'Oxford English Dictionary (OED) abbiamo:

  • gnostic (agg)  Relativo alla conoscenza; cognitivo; intellettuale   "Esistono [i numeri] in modo vitale, gnostico e speculativo, ma non in modo operativo".

  • criptico (agg)  Non immediatamente comprensibile; misterioso, enigmatico   "Invece di semplici Regole utili all'umanità, [i filosofi] oppongono crudeltà e frasi oscure".

Apparentemente nessuna Revisione Matematica ha in precedenza usato la parola "gnostico" in alcun senso. Tuttavia, si richiama l'attenzione sul recente articolo di Marcus Kracht " Gnosis " ( Journal of Philosophical Logic , MR2802332), che utilizza il senso OED.

Apparentemente nessuna recensione matematica ha usato la parola "criptico" - nel suo senso tecnico - in relazione alla teoria della complessità. Tuttavia, si richiama l'attenzione sull'articolo di Charles H. Bennett " Profondità logica e complessità fisica " (in The Universal Turing Machine: A Half-Century Survey , 1988) che contiene il passaggio

Un altro tipo di complessità associata a un oggetto sarebbe la difficoltà, dato l'oggetto, di trovare un'ipotesi plausibile per spiegarlo. Gli oggetti con questo tipo di complessità potrebbero essere chiamati "criptici" : trovare un'origine plausibile per l'oggetto è come risolvere un crittogramma.

Considerazioni di naturalezza, apertura e difficoltà

La naturalezza di queste domande illustra la tesi della monografia di Fisible Computations e Provable Complexity Properties (1978) di Juris Hartmanis che:

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

L'apertura e la difficoltà di queste domande sono sostanzialmente in linea con la conclusione della recensione di Lance Fortnow " The Status of the P Versus NP Problem " (2009) che:

"Nessuno di noi comprende veramente il problema P contro NP, abbiamo solo iniziato a sbucciare gli strati attorno a questa domanda sempre più complessa."

Guida Wiki

Particolarmente ricercati sono gli aggiustamenti definitivi e le strategie di dimostrazione specificamente relative alle domande Q1 – Q3 e che illuminano ampiamente le congetture di tipo Hartmanis C1 – C2 .


Non sono sicuro di cosa intendi in Q3; sembra che la rappresentazione di input influenzerebbe pesantemente esattamente cosa funziona la TM.

2
Che cos'è un numero reale semidefinito positivo? Capisco il "semidefinito positivo" per le matrici simmetriche reali, ma cosa significa per i numeri !?
David Monniaux,

Significa zero o maggiore (un numero visto come una matrice 1x1).
John Sidles,

1
linea di indagine interessante. ho pensato a lungo che l'accelerazione dei blum potesse avere qualche connessione con domande come questa e / o P =? NP ma non ho mai visto che inchiodato o esplorato ovunque. in particolare, non ha visto una prova molto severa / rigorosa che non esiste un linguaggio in P che sia anche nella classe identificata da blum in modo tale che il programma "non abbia un algoritmo più veloce"
vzn

1
@JohnSidles Non penso che esista un linguaggio gnostico all'interno di P, anche se NP è contenuto in P. Possiamo forse separarli come quelli che possiamo risolvere cercando e gli altri con un metodo diverso da quello di ricerca.
Tayfun paga il

Risposte:


26

Penso che ci sia una fondamentale difficoltà di fondo con la domanda che stai ponendo qui (e che hai posto nella tua domanda correlata sulle lingue incomprensibili).

In parole povere, sembra che tu stia cercando una lingua taleL

ma ZFC non sa che L P .LPLP

LLLLLLLLϕ(x)xLL

LPPLPL

LLL

xx

P

PNPPPPPP


Timothy, grazie per questo bel saggio. Apprezzo correttamente, tuttavia, che la definizione standard di P - per complessità computazionale di Arora & Barak : un approccio moderno e / o calcoli fattibili di Hartmanis e proprietà di complessità disponibili , o la dichiarazione del premio del millennio - NON è estensiva? Tuttavia forse alcuni problemi sarebbero più trattabili se la definizione di P fosse opportunamente modificata, sulla base del fatto che (per Hartmanis) "Dobbiamo esplorare ulteriormente come la nostra" visione del mondo "della complessità degli algoritmi debba essere modificata se consideriamo solo dimostrabile proprietà degli algoritmi ".
John Sidles,

2
@JohnSidles la definizione standard di P è "l'insieme di tutte le lingue che possono essere decise da alcuni polytime TM". il modo in cui una lingua viene definita (intenzionalmente o estensivamente) non entra affatto nell'immagine: entra nell'immagine solo una volta che dobbiamo dimostrare che una determinata macchina accetta una lingua particolare.
Sasho Nikolov,

1
Sasho, la spinta della risposta di Timothy Chow (mentre la leggo) è "Se definiamo P in modo estensivo , decidere l'appartenenza a P è banale". La spinta del tuo commento (come l'ho letto) è che, per convenzione odierna, " P è definita intenzionalmente ". La combinazione di queste due osservazioni ci porta ad apprezzare l'osservazione di Hartmanis: "I risultati sulla complessità degli algoritmi cambiano radicalmente se consideriamo solo le proprietà dei calcoli che possono essere provate formalmente". E quindi ci chiediamo naturalmente come possa essere variata la definizione di P , in modo da dimostrare più facilmente buoni teoremi.
John Sidles,

1
PP

Sì, le definizioni di gnostico e trascendentale sono finalizzate al fine di (eventualmente) dimostrare delle affermazioni come le seguenti: Teorema Sia P ' e NP' le restrizioni gnostiche di P e NP rispettivamente. Quindi P '≠ NP' . Per una definizione opportunamente ampia ma naturale di "gnostico", una tale prova potrebbe essere comparativamente illuminante e avere implicazioni pratiche comparabili a una prova (presumibilmente molto più difficile?) Che P ≠ NP . AFAICT, Juris Hartmanis è stato tra i primi teorici della complessità a perseguire seriamente questa linea di indagine.
John Sidles

8

Q1: No
Q2: Sì, almeno due-1s-in-binary


Lemma: Ogni TM con un esponente di runtime calcolabile che è almeno 1 è trascendentale.

Prova:
Sia A e B insiemi ricorsivamente inseparabili .M0M1r0,r1,r2,r3,...M0M1rmmA allora l'affermazione di D1 è vera] e [if mB allora l'affermazione di D1 è falsa]. r0,r1,r2,r3,...rmPertanto la macchina di Turing è trascendentale.


Definizione:
almeno-due-1s-in-binary è l'insieme di numeri interi non negativi la cui
rappresentazione binaria ha almeno due 1s. (scommetto che non avresti mai immaginato ^ _ ^)

Definizione:
M è la macchina di Turing che esegue la scansione della rappresentazione binaria del
suo input, accetta se trova almeno due 1 e rifiuta diversamente.

Ovviamente, M decide almeno due-1s-in-binario e ha esponente di runtime 1, e nessun'altra macchina di Turing con un esponente di runtime più piccolo decide anche di almeno due-1s-in-binario.
Banalmente,111Secondo il Lemma, M è efficiente e trascendentale.
Questi significano che almeno due-1-in-binario è anche trascendentale.

Pertanto TPCCC è un teorema di PA (e ZFC), e
almeno due-1-in-binario è un linguaggio trascendentale concreto.


Ricky, grazie mille! Ci vorranno un paio di giorni per contemplare il tuo ingegnoso linguaggio "almeno-due-1-in-binario" (ALT1siB) e la TM che lo accetta ... ci sono considerazioni di naturalità che D1-5 sono (si spera) messo a punto per garantire e che (si spera) ALT1siB rispetti. Sono particolarmente ricercate le intuizioni relative a "Cosa ci insegna ALT1siB sulla complessità?" Se ti interessa offrire osservazioni al riguardo, le saremmo grati.
John Sidles,

3
(Spero che tu lo capisca, ma) L'unica cosa che sto usando su ALT1siB è che ha una complessità esattamente lineare, quindi non ci insegna nulla sulla complessità. Ciò che il lemma ci insegna è che la maggior parte delle macchine di Turing naturali sono trascendentali.

r

Hmmm ... per dirla in altro modo, poiché la nostra definizione di trascendentale è così ampia che (per il tuo lemma) anche le TM sono (pensiamo di capire) OK - cioè le TM che consideriamo gnostiche - sono in realtà trascendentale, quindi la definizione di "trascendentale" deve essere (si spera minimamente) limitata. Esempio: desideriamo rispettare la nostra intuizione di buon senso che le TM che decidono la primalità attraverso il test di primalità dell'AKS siano gnostiche e non trascendentali. La tua risposta mostra che è necessaria una messa a punto della definizione (si spera minore) ... ma cosa?
John Sidles,

1
Ricky, mi chiedo se mi dispiacerebbe modificare la risposta per dare definizioni esplicite per m , s e t . Allo stato attuale, le definizioni di questi numeri devono essere indovinate e non sono affatto sicuro di averlo indovinato correttamente. In particolare, capisco correttamente che cambiare "reale" in "razionale" in D1 chiuderebbe la scappatoia che il tuo post (AFAICT) evidenzia, in modo tale che sotto la D1 modificata almeno alcune TM sono gnostiche?
John Sidles,

1

xn:=2+i=0n[1/2i if i encodes a proof that ZF is inconsistent, and 0 otherwise]nxnxnx:=2+i=0[1/2i if i encodes a proof that ZF is inconsistent, and 0 otherwise]

xZF

x>1MxnNsNs|s|x/log(|s|)xMxMxMxMxO(|s|y)yxMx

Pertanto, per come nella definizione 1, M x verrà eseguito nel tempo O ( | s | 2 ) esattamente se x = 2 , ovvero se Z F è coerente; inoltre questo fatto sarà di per sé dimostrabilexMxO(|s|2)x=2ZFZFZFMxZF+Con(ZF)

Tuttavia, dimostra che tutte le lingue in PZF+on(ZF)PZFO(|s|z)zZF

Mx


Ben, grazie per questa risposta attentamente ragionata e ponderata. Ci vorranno alcuni giorni per digerirlo ... Spero di commentare tra una settimana o giù di lì!
John Sidles,
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.