Teoria della complessità quando un oracolo fa parte dell'input


14

Il modo più comune in cui si verificano gli oracoli nella teoria della complessità è il seguente: un oracolo fisso è reso disponibile, per esempio, a una macchina di Turing con determinate risorse limitate, e si studia come l'oracolo aumenta la potenza computazionale della macchina.

Vi è, tuttavia, un altro modo in cui talvolta si verificano gli oracoli: come parte dell'input . Ad esempio, supponiamo che io voglia studiare algoritmi per calcolare il volume di un dato politopo ad alta dimensione. Classicamente, il polytope dovrebbe essere specificato fornendo un elenco delle sue sfaccettature o qualche altra rappresentazione esplicita. Tuttavia, possiamo anche porre il problema di calcolare il volume di un politopo specificato da un oracolo del volume, che prende le coordinate di un punto nello spazio come input e genera "sì" se e solo se il punto dato si trova all'interno del politopo. Quindi possiamo chiedere quali risorse computazionali sono necessarie per calcolare il volume di un politopo specificato in questo modo. In questo caso particolare abbiamo il simpaticissimo schema di approssimazione temporale polinomiale di Dyer, Frieze e Kannan e, interessante dal punto di vista della teoria della complessità, una prova che la casualità aiuta in modo essenziale per questo problema, in quanto nessun algoritmo deterministico può eseguire così come l'algoritmo Dyer-Frieze-Kannan.

Esiste un modo sistematico di studiare la teoria della complessità dei problemi in cui gli oracoli sono forniti come parte dell'input? In qualche modo si riduce alla solita teoria delle classi di complessità con oracoli? La mia ipotesi è no, e dato che ci sono troppi modi diversi in cui un oracolo potrebbe essere fornito come parte dell'input, ogni problema di questo tipo deve essere gestito in modo ad hoc. Tuttavia, sarei felice di essere smentito su questo punto.


2
Ricordo un post sul blog di Scott Aaronson con una discussione di questo punto nei commenti # 21- # 23: scottaaronson.com/blog/?p=451 .
Martin Schwarz,

Risposte:


18

Si chiama Teoria della complessità di tipo 2. C'è un articolo di Cook, Impagliazzo e Yamakami che lo lega bene alla teoria degli oracoli generici.


9

Questa deve essere tutt'altro che una risposta completa, ma si spera che indichi alcuni luoghi da vedere.

I problemi in cui una parte dell'input viene data come un oracolo sono talvolta chiamati problemi con input implicito . È un modello conveniente, ad esempio quando si studiano prove probabilisticamente verificabili .

Un'importante area di studio sui problemi con input implicito è la teoria della complessità della query , in cui la complessità è misurata esclusivamente dal numero di query per l'oracolo di input, ignorando la quantità di calcolo tra query. Molte classi di complessità hanno le loro controparti nella complessità della query e una separazione tra classi di complessità nella complessità della query spesso implica una separazione dell'oracolo tra le classi corrispondenti nella complessità computazionale.

Non conosco lo studio di classi di complessità di problemi con input impliciti (piuttosto che problemi individuali) tenendo conto del costo del calcolo, ma probabilmente alcune persone lo sanno.


1
ora che hai menzionato, sai in quali casi la complessità della query non fornisce una separazione dell'oracolo tra le classi corrispondenti?
Marcos Villagra

@MarcosVillagra: Non specificamente, ma dubito che una controparte della complessità della query di una classe nella complessità computazionale sia sempre ben definita.
Tsuyoshi Ito,

5

Il modello in cui l'input viene fornito come oracolo è studiato nella teoria della computabilità e nell'analisi calcolabile. Uno dei modelli che sembrano vicini a ciò che si desidera è il modello TTE (tipo due di efficacia). Un buon riferimento è il libro di Klaus Weihrauch " Analisi computabile ". Parla anche brevemente della complessità nel capitolo 7.

Il libro di Ker-I Ko " Computational Complexity of Real Functions " discute un altro modello di accesso all'oracolo che sembra più adatto alla complessità. Le questioni relative alla rappresentazione di oggetti di tipo superiore e al metodo per accedere all'oracolo sono questioni delicate. Vedi ad esempio il recente articolo di Stephen A. Cook e Akitoshi Kawamura " Teoria della complessità per operatori in analisi " tratto da STOC 2010 e la sua tesi di dottorato . Uno dei problemi principali è che per rendere ragionevole il modello è necessario concedere alla macchina abbastanza tempo per elaborare le risposte dall'oracolo (altrimenti non si può nemmeno calcolare l'operatore dell'applicazione). Per il tempo polinomiale e lo spazio polinomiale si può fare usando polinomi di ordine superiore basati su Stephen A. Cook e Bruce M. Kapron ' Una nuova caratterizzazione della fattibilità di tipo 2 " FOCS 1991 e " Caratterizzazioni dei funzionali fattibili di base di tipo finito " STOC 1989.

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.