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à - 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 + ϵ .
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.
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 :
Dichiarazione: il tempo di esecuzione di M è rispetto alla lunghezza di ingresso 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 .
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.
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.
C2 (come esplicitamente dimostrato in PA o ZFC)
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 .
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 .