Hierarquia exponencial: diferenças entre revisões
Conteúdo apagado Conteúdo adicionado
Linha 1: | Linha 1: | ||
Em [[teoria da complexidade computacional]], a '''hierarquia exponencial''' é a hierarquia da [[complexidade das classes]], que |
Em [[teoria da complexidade computacional]], a '''hierarquia exponencial''' é a hierarquia da [[complexidade das classes]], que pertencem à classe de [[EXPTIME|tempo exponencial]], análogo a [[hierarquia polinomial]]. Como em outros lugares da teoria da complexidade, "exponencial" é usado em dois contextos diferentes (limite exponencial linear <math>2^{cn}</math> para uma constante ''c'', e limite exponencial completo <math>2^{n^c}</math>), levando a duas versões diferentes da hierarquia exponencial:<ref>Sarah Mocas, Separating classes in the exponential-time hierarchy from classes in ''PH'', Theoretical Computer Science 158 (1996), no. 1–2, pp. 221–231.</ref><ref>Anuj Dawar, Georg Gottlob, Lauri Hella, Capturing relativized complexity classes without order, Mathematical Logic Quarterly 44 (1998), no. 1, pp. 109–122.</ref> |
||
*EH é a união das classes <math>\Sigma^E_k</math> para todo ''k,'' onde <math>\Sigma^E_k=\mathrm{NE}^{\Sigma^P_{k-1}}</math> (i.e, linguagens computáveis em tempo [[máquina de turing não deterministica|não determinístico]] <math>2^{cn}</math> para alguma constante ''c'' com <math>\Sigma^P_{k-1}</math> |
*EH é a união das classes <math>\Sigma^E_k</math> para todo ''k,'' onde <math>\Sigma^E_k=\mathrm{NE}^{\Sigma^P_{k-1}}</math> (i.e, linguagens computáveis em tempo [[máquina de turing não deterministica|não determinístico]] <math>2^{cn}</math> para alguma constante ''c'' com oráculo <math>\Sigma^P_{k-1}</math>. Uma outra definição <math>\Pi^E_k=\mathrm{coNE}^{\Sigma^P_{k-1}}</math>, <math>\Delta^E_k=\mathrm E^{\Sigma^P_{k-1}}</math>. Uma definição equivalente é que a linguagem ''L'' está em <math>\Sigma^E_k</math> se e somente se ela pode ser escrita na forma |
||
::<math>x\in L\iff\exists y_1\,\forall y_2\dots Qy_k\,R(x,y_1,\dots,y_k),</math> |
::<math>x\in L\iff\exists y_1\,\forall y_2\dots Qy_k\,R(x,y_1,\dots,y_k),</math> |
||
:onde <math>R(x,y_1,\dots,y_n)</math> é um predicado computável em tempo <math>2^{c|x|}</math> ( o que implicitamente limita o comprimento de ''y<sub>i</sub>''). Também equivalente, EH é a classe de linguagens computáveis em uma [[máquina de turing alternativa]] em tempo <math>2^{cn}</math> para algum ''c'' com constantes alterações. |
:onde <math>R(x,y_1,\dots,y_n)</math> é um predicado computável em tempo <math>2^{c|x|}</math> ( o que implicitamente limita o comprimento de ''y<sub>i</sub>''). Também equivalente, EH é a classe de linguagens computáveis em uma [[máquina de turing alternativa]] em tempo <math>2^{cn}</math> para algum ''c'' com constantes alterações. |
||
*EXPH é a união das classes <math>\Sigma^{EXP}_k</math>, onde <math>\Sigma^{EXP}_k=\mathrm{NEXP}^{\Sigma^P_{k-1}}</math> (linguagens computáveis em tempo não determinístico <math>2^{n^c}</math> para alguma constante ''c'' com <math>\Sigma^P_{k-1}</math> |
*EXPH é a união das classes <math>\Sigma^{EXP}_k</math>, onde <math>\Sigma^{EXP}_k=\mathrm{NEXP}^{\Sigma^P_{k-1}}</math> (linguagens computáveis em tempo não determinístico <math>2^{n^c}</math> para alguma constante ''c'' com oráculo <math>\Sigma^P_{k-1}</math>), e novamente <math>\Pi^{EXP}_k=\mathrm{coNEXP}^{\Sigma^P_{k-1}}</math>, <math>\Delta^{EXP}_k=\mathrm{EXP}^{\Sigma^P_{k-1}}</math>. A linguagem ''L'' está em <math>\Sigma^{EXP}_k</math> se e somente se puder ser escrita na forma: |
||
::<math>x\in L\iff\exists y_1\,\forall y_2\dots Qy_k\,R(x,y_1,\dots,y_k),</math> |
::<math>x\in L\iff\exists y_1\,\forall y_2\dots Qy_k\,R(x,y_1,\dots,y_k),</math> |
||
:onde <math>R(x,y_1,\dots,y_k)</math> é computável em tempo <math>2^{n^c}</math> para algum ''c'', que novamente possui limites implícitos de comprimento ''y<sub>i</sub>''. |
:onde <math>R(x,y_1,\dots,y_k)</math> é computável em tempo <math>2^{n^c}</math> para algum ''c'', que novamente possui limites implícitos de comprimento ''y<sub>i</sub>''. |
Revisão das 17h11min de 14 de agosto de 2014
Em teoria da complexidade computacional, a hierarquia exponencial é a hierarquia da complexidade das classes, que pertencem à classe de tempo exponencial, análogo a hierarquia polinomial. Como em outros lugares da teoria da complexidade, "exponencial" é usado em dois contextos diferentes (limite exponencial linear para uma constante c, e limite exponencial completo ), levando a duas versões diferentes da hierarquia exponencial:[1][2]
- EH é a união das classes para todo k, onde (i.e, linguagens computáveis em tempo não determinístico para alguma constante c com oráculo . Uma outra definição , . Uma definição equivalente é que a linguagem L está em se e somente se ela pode ser escrita na forma
- onde é um predicado computável em tempo ( o que implicitamente limita o comprimento de yi). Também equivalente, EH é a classe de linguagens computáveis em uma máquina de turing alternativa em tempo para algum c com constantes alterações.
- EXPH é a união das classes , onde (linguagens computáveis em tempo não determinístico para alguma constante c com oráculo ), e novamente , . A linguagem L está em se e somente se puder ser escrita na forma:
- onde é computável em tempo para algum c, que novamente possui limites implícitos de comprimento yi.
Equivalentemente, EXPH é a classe de linguagens computáveis em tempo em uma máquina de turing alternante com constantes alternâncias. Temos E ⊆ NE ⊆ EH ⊆ ESPACE, EXP ⊆ NEXP ⊆ EXPH ⊆ EXPSPACE, and EH ⊆ EXPH.
Referências
- ↑ Sarah Mocas, Separating classes in the exponential-time hierarchy from classes in PH, Theoretical Computer Science 158 (1996), no. 1–2, pp. 221–231.
- ↑ Anuj Dawar, Georg Gottlob, Lauri Hella, Capturing relativized complexity classes without order, Mathematical Logic Quarterly 44 (1998), no. 1, pp. 109–122.