Polynomisk hierarki

I kompleksitetsteori er et polynomiumhierarki  et hierarki af kompleksitetsklasser, der generaliserer klasserne P, NP, co-NP til orakelberegninger .

Definition

Der er mange ækvivalente definitioner af polynomielle hierarkiklasser. Lad os tage en af ​​dem.

For at definere et orakel i et polynomiumhierarki, definerer vi

hvor P er mængden af ​​problemer, der skal løses i polynomisk tid. Så definerer vi for i ≥ 0

Hvor A B  er det sæt af problemer, der løses af en Turing-maskine i klasse A, udvidet med et orakel for et eller andet problem fra klasse B. For eksempel, , og  er en klasse af problemer løst i polynomisk tid med et orakel for et eller andet problem fra NP .

Relationer mellem klasser i et polynomiumhierarki

Definitionerne antyder følgende forhold:


I modsætning til de aritmetiske og analytiske hierarkier, hvor alle inklusioner er strenge, er spørgsmålet om strenghed stadig åbent i polynomiehierarkiet.

Hvis nogen , eller nogen , så krymper hierarkiet ned til niveau k : for alle , . I praksis betyder det, at ligheden af ​​klasserne P og NP fuldstændig ødelægger polynomiehierarkiet.

Foreningen af ​​alle klasser i polynomiumhierarkiet er klassen PH .

Det polynomielle hierarki er modstykket (med mindre kompleksitet) til det aritmetiske hierarki.

Det er kendt, at PH er indeholdt i PSPACE , men det vides ikke, om de to klasser er ens.


Hver klasse i polynomiehierarkiet indeholder -komplet-problemer (problemerne er komplette med hensyn til Karp-reduktion i polynomietid).