Gerarchia polinomiale

La gerarchia polinomiale è, nella teoria della complessità computazionale, una gerarchia di classi di complessità che estende e generalizza le classi P, NP e co-NP, definita mediante l'alternanza di quantificatori o tramite macchine di Turing con oracoli. Venne formalizzata negli anni 1970.

Ogni classe nella gerarchia è contenuta in PSPACE. L'unione delle classi facenti parte della gerarchia, che a sua volta forma una classe di complessità, è indicato con PH (dall'inglese polynomial hierarchy). È tuttora ignoto se PH sia una gerarchia propria (cioè se tutte le inclusioni siano strette) o se collassi a qualche livello finito.

Definizione

Le classi della gerarchia sono definite in modo ricorsivo. Prima di tutto, definiamo:

Δ0P:=Σ0P:=Π0P:=P,

dove P è la classe di problemi decisionali risolvibili in tempo polinomiale da una macchina di Turing deterministica. Poi, per qualunque intero i≥0, definiamo:

Δi+1P:=PΣiP
Σi+1P:=NPΣiP
Πi+1P:=coNPΣiP

dove PC è l'insieme di problemi decisionali risolvibili in tempo polinomiale da una macchina di Turing deterministica con un oracolo per qualche problema completo per la classe C; le classi NPC e coNPC sono definite in modo analogo. Ad esempio, abbiamo che Σ1P=NP, Π1P=coNP, e Δ2P=PNP è la classe dei problemi risolvibili in tempo polinomiale da una macchina di Turing deterministica con un oracolo per qualche problema NP-completo.

Infine, la classe PH è definita come l'unione di tutti i livelli: PH=⋃k≥0Σkp.

Relazioni tra classi della gerarchia polinomiale

Diagramma che mostra le relazioni di inclusione tra le varie classi della gerarchia polinomiale

Dalle definizioni delle varie classi si ottengono le seguenti relazioni:

ΣiP⊆Δi+1P⊆Σi+1P
ΠiP⊆Δi+1P⊆Πi+1P
ΣiP=coΠiP

A differenza della gerarchia aritmetica e analitica, le cui inclusioni sono note essere proprie, rimane una domanda aperta se anche quelle della gerarchia polinomiale lo sono, sebbene tale congettura sia generalmente ritenuta vera. Se per qualunque k si avesse ΣkP=Σk+1P o ΣkP=ΠkP, allora la gerarchia "collasserebbe" al livello k, ovvero: per ogni i>k, ΣiP=ΣkP. In particolare, sono vere le seguenti implicazioni riguardanti problemi aperti:

Problemi completi

Un esempio canonico: il problema di soddisfacibilità per formule booleane con k alternanze di quantificatori (una forma limitata di QBF) è completo per Σkp o Πkp, a seconda che la formula inizi con ∃ o ∀, rispettivamente.

Chiaramente, rimuovendo il limite di k (ovvero, ammettendo un qualunque numero e disposizione di quantificatori), il problema diventa PSPACE-completo.

Note

  1. ↑ Meyer-Stockmeyer, 1972
  2. 1 2 Stockmeyer, 1976
  3. ↑ (EN) M. Schaefer e Christopher Umans, Completeness in the Polynomial-Time Hierarchy: A Compendium, 5 ottobre 2008.
  4. 1 2 3 Arora-Barak, 2009
  5. ↑ (EN) Lane Hemaspaandra, 17.5 Complexity classes, in Kenneth H. Rosen (a cura di), Handbook of Discrete and Combinatorial Mathematics, Discrete Mathematics and Its Applications, 2nd, CRC Press, 2018, pp. 1308–1314, ISBN 9781351644051.

Bibliografia

Voci correlate