Tutte le classi di complessità hanno una caratterizzazione del linguaggio fogliare?


20

I linguaggi fogliari sono un modo meraviglioso per definire uniformemente molte classi di complessità. La maggior parte delle classi di complessità sono generalmente specificate da un modello di calcolo (ad es. TM deterministica / randomizzata) e da un limite di risorse (tempo di log, spazio poligonale, ecc.). Tuttavia, nella formulazione del linguaggio foglia, esiste un solo modello di calcolo e la classe viene specificata fornendo il linguaggio foglia.

I dettagli sono troppo lunghi da spiegare, quindi indirizzerò i lettori interessati a uno di questi due sondaggi:

  1. Caratterizzazioni uniformi di classi di complessità di H Vollmer
  2. Corsi di lingua foglia di KW Wagner

Entrambi i sondaggi fanno un ottimo lavoro nel spiegare la formulazione nelle prime pagine.

Nel sondaggio di Wagner, afferma che "risulta che praticamente ogni classe di complessità considerata finora può essere descritta dai linguaggi fogliari".

La mia domanda si riferisce a questa affermazione. So che ci sono alcune classi per le quali non conosciamo una caratterizzazione del linguaggio fogliare, quindi questo significa che le classi non hanno necessariamente una tale caratterizzazione o non l'abbiamo trovata.

Ci aspettiamo che ogni classe di complessità (diciamo tra P e PSPACE) abbia una caratterizzazione del linguaggio foglia? (Limitiamoci a classi di complessità "naturale".) C'è qualche risultato di questo tipo in letteratura?

(Una domanda correlata a cui sarei felice di conoscere la risposta: esiste un metodo (euristico) per elaborare un linguaggio fogliare per una determinata classe?)


EDIT: Suresh sottolinea che c'è una breve definizione delle lingue delle foglie nell'articolo di Wikipedia. Lo sto copiando di seguito.

Diverse classi di complessità sono in genere definite in termini di una macchina di Turing non deterministica a tempo polinomiale, in cui ogni ramo può accettare o rifiutare e l'intera macchina accetta o rifiuta come una funzione delle condizioni dei rami. Ad esempio, una macchina di Turing non deterministica accetta se almeno un ramo accetta e rifiuta solo se tutti i rami rifiutano. Una macchina di Turing co-non deterministica, d'altra parte, accetta solo se tutti i rami accettano e rifiuta se qualsiasi ramo rifiuta. Molte classi possono essere definite in questo modo.


1
wikipedia ha una definizione abbastanza concisa di un linguaggio fogliare: forse puoi adattarlo alla domanda?
Suresh Venkat,

Grazie. Non sapevo che Wikipedia avesse un articolo su di esso. Ho copiato la loro definizione alla fine della mia domanda.
Robin Kothari,

Risposte:


21

Dai un'occhiata a

Bernd Borchert, Riccardo Silvestri: una caratterizzazione delle lezioni di lingua foglia. Inf. Processi. Lett. 63 (3): 153-158 (1997) ( link doi qui )

Gli autori descrivono le classi del linguaggio foglia come quelle che sono (a) "numerabili", (b) sono "riducibili" verso il basso rispetto alla polivalenza multi-one, e (c) "unite-chiuso" (cioè l'unione disgiunta) contro il polilungo molti riducibilità.

LC,DLEmPCDEL

P/polySPUNCE[n]SPUNCE[n]PSPUNCE[n]non chiuso sotto tali riduzioni.)


3
Grande. Questo è quello di cui avevo bisogno. (Qualche idea su come trovare una simile caratterizzazione dopo aver saputo che esiste? Forse anche un euristico, e non qualcosa che funziona sempre?)
Robin Kothari,

2
In questo caso, la mia impressione è che gli autori si siano basati su risultati noti del modulo "tutti i linguaggi foglia hanno proprietà X" e "nessun linguaggio foglia ha proprietà Y" e hanno trovato un modo diretto per legare tutti questi insieme aggiungendo il giusto condizioni.
Ryan Williams,
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.