Risposte:
C'è un'interpretazione logica dei vari livelli della gerarchia polinomiale, che estende la caratterizzazione del testimone di e .
Una lingua è dentro se esiste un predicato polytime e un polinomio tale che
Allo stesso modo, è dentro se può essere scritto in modo simile, iniziando solo con .
Come esempio, è e comprende tutte le lingue tali
Il tuo terzo esempio è , che è . Non sono sicuro di quale sia la caratterizzazione logica.
Dire contiene problemi con "piccoli testimoni verificabili" è concettualmente inesatto nella migliore delle ipotesi. I testimoni sono limitati solo dal punto di vista polinomiale perché vogliamo che il verificatore sia efficiente (vale a dire, eseguito in tempo polinomiale). In tale contesto, solo un prefisso polinomialmente lungo di qualsiasi testimone può essere rilevante, quindi perché insistiamo su testimoni polinomialmente lunghi. Inoltre, "piccolo" significa potenzialmente costante o logaritmico; quelli non sono usati, ovviamente, perché possono essere forzati dagli algoritmi del tempo polinomiale (e ci danno solo problemi).
Il modo in cui la nozione di sistema di prova di generalizza per cedere la gerarchia polinomiale è molto simile al punto di vista logico che Yuval Filmus descrive nella sua risposta. Consentitemi di presentare la visione meno tecnica alla base.
Consideriamo i giochi a due parti basati su QBF. Un'istanza (o il "tabellone" se ti interessa immaginarlo come un gioco da tavolo come scacchi o pedine) di un tale gioco è una formula, e i due giocatori, diciamo e , a turno scegliendo valori per e , rispettivamente. Ciascuna di queste scelte costituisce una mossa . Quando non rimangono più valori, viene valutata la formula (ovvero la posizione finale del gioco); vince se è vero, e vince se è falso.
Questo gioco modella i quantificatori esistenziali e universali nel modo seguente: Se la formula è un vero QBF, allora (che svolge il ruolo di quantificatori esistenziali) avrà sempre una strategia vincente e sarà in grado di scegliere una serie di quale causa essere vero indipendentemente dai valori scelto da (che svolge il ruolo di quantificatori universali). Le istanze "sì" sono quelle in cui il QBF è vero, ovvero ha sempre una strategia vincente, indipendentemente da come gioca.
e quindi corrispondono ai giochi che durano mosse e in cui e , rispettivamente, iniziare per primi. In realtà, hai anche e il inclusione come bonus poiché corrisponde alla classe di giochi che si svolgono per un numero arbitrario (sebbene predeterminato) di mosse.
Si noti anche che e sono casi piuttosto degenerati di questi giochi perché e , rispettivamente, non hai la possibilità di muoverti affatto! Ad esempio, per le istanze "yes" di, arriva a vincere semplicemente non facendo nulla (poiché un'istanza "sì" è una tautologia ed è vera indipendentemente da cosa sceglie).
Esiste anche una versione più generalizzata di quanto sopra che si basa su giochi generici (e non specificamente su QBF). Puoi trovarlo, ad esempio, nella sezione 5.4 "PSPACE e giochi" di "Computational Complicità: una prospettiva concettuale" di Goldreich ( ecco un link gratuito alla versione bozza; vedi p. 174 e pagg. 118-121) .
è la chiusura di in tempo polinomiale Riduzioni di Turing (= Riduzioni di Cook). Pertanto, è chiuso in Riduzioni Cook, quindi abbiamo. In effetti, per qualsiasi oracolo, definiamo come la chiusura di sotto le riduzioni di Cook, e abbiamo sempre e . Anche e . Ma le riduzioni di Cook sembrano leggermente innaturali per problemi di decisione.
Nota che è una classe di funzioni sotto mentite spoglie, e quella anche è una classe di funzioni sotto mentite spoglie. Scriviamo per la classe di funzioni parziali calcolabili nel tempo polinomiale, ovvero la classe di funzione corrispondente a , e per la classe di funzione corrispondente a . L'inclusione delle funzioni parziali consente di utilizzare la notazione consolidata (utilizzata in una tassonomia delle classi di complessità delle funzioni di A. Selman, 1994) che evita lo scontro di nomi con la classe non correlata.
La riduzione della cottura sembra più naturale per le classi di funzioni. Probabilmente hai riscontrato una riduzione di Cook (e implicitamente anche la classe) nel punto in cui il tuo libro di testo o professore ha spiegato perché è OK esaminare solo i problemi di decisione. In genere, qualcosa come un algoritmo (da) per calcolare l'ultima assegnazione soddisfacente dal punto di vista lessicografico di una determinata istanza SAT. Uno prima chiede all'oracolo se c'è qualche assegnazione soddisfacente, quindi determina i valori delle variabili (binarie) chiedendo successivamente all'oracolo se esiste un compito soddisfacente dove sono impostati sui valori già determinati e è impostato per . Se sì, allora uno imposta per , altrimenti si imposta per . (Si noti che questa è una funzione parziale, poiché la funzione è indefinita nel caso in cui non vi siano assegnazioni soddisfacenti.)
Vorrei provare a dire alcune parole sull'osservazione di Yuval Filmus:
Il tuo terzo esempio è , che è . Non sono sicuro di quale sia la caratterizzazione logica.
Esistono due difficoltà da superare: (1) la caratterizzazione di una classe di funzioni ha un aspetto diverso rispetto alla caratterizzazione logica di una classe di decisione e (2) almeno per dobbiamo modellare il carattere deterministico delle domande sull'oracolo.
Se guardiamo la classe di funzioni parziali corrispondenti alla classe prima dei problemi di decisione, quindi possiamo ignorare (2) per un momento: una funzione parziale è dentro se esiste una funzione parziale polytime , un predicato polytime e un polinomio tale che dove
Si potrebbe provare a superare (2) introducendo gli operatori e . Ma sarebbe ancora brutto e si può discutere se ciò costituirebbe davvero una caratterizzazione logica.