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.[1][2]
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
modificaLe classi della gerarchia sono definite in modo ricorsivo. Prima di tutto, definiamo:
dove P è la classe di problemi decisionali risolvibili in tempo polinomiale da una macchina di Turing deterministica. Poi, per qualunque intero , definiamo:
dove è 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 ; le classi e sono definite in modo analogo. Ad esempio, abbiamo che , , e è la classe dei problemi risolvibili in tempo polinomiale da una macchina di Turing deterministica con un oracolo per qualche problema NP-completo.[3]
Infine, la classe PH è definita come l'unione di tutti i livelli: .[4]
Relazioni tra classi della gerarchia polinomiale
modificaDalle definizioni delle varie classi si ottengono le seguenti relazioni:
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 si avesse o , allora la gerarchia "collasserebbe" al livello , ovvero: per ogni , .[4] In particolare, sono vere le seguenti implicazioni riguardanti problemi aperti:
- se e solo se .[5]
- Se , allora .
Problemi completi
modificaUn esempio canonico: il problema di soddisfacibilità per formule booleane con alternanze di quantificatori (una forma limitata di QBF) è completo per o , a seconda che la formula inizi con o , rispettivamente.[2]
Note
modifica- ^ Meyer-Stockmeyer, 1972
- ^ a b Stockmeyer, 1976
- ^ (EN) M. Schaefer e Christopher Umans, Completeness in the Polynomial-Time Hierarchy: A Compendium, 5 ottobre 2008.
- ^ a b Arora-Barak, 2009
- ^ (EN) Lane Hemaspaandra, 17.5 Complexity classes, in Handbook of Discrete and Combinatorial Mathematics, 2nd, CRC Press, 2018, pp. 1308–1314, ISBN 9781351644051.
Bibliografia
modifica- (EN) S. Arora e B. Barak, Complexity Theory: A Modern Approach, Cambridge University Press, 2009, ISBN 978-0-521-42426-4.
- (EN) A. R. Meyer e L. J. Stockmeyer, The Equivalence Problem for Regular Expressions with Squaring Requires Exponential Space, Proceedings of the 13th IEEE Symposium on Switching and Automata Theory, 1972, pp. 125-129, DOI:10.1016/0304-3975(76)90061-X.
- (EN) L. J. Stockmeyer, The polynomial-time hierarchy, in Theoretical Computer Science, vol. 3, 1976, pp. 1-22, DOI:10.1016/0304-3975(76)90061-X.
- (EN) C. Papadimitriou, Chapter 17. Polynomial hierarchy, in Computational Complexity, Addison-Wesley, 1994, pp. 409-438, ISBN 978-0-521-42426-4.
- (EN) M. R. Garey e D. S. Johnson, Section 7.2: The Polynomial Hierarchy, in Computers and Intractability: A Guide to the Theory of NP-Completeness, W.H. Freeman, 1979, pp. 161-167, ISBN 0-7167-1045-5.