Por que acreditamos que PSPACE P EXPTIME?


31

Estou tendo problemas para entender intuitivamente por que geralmente se acredita que o PSPACE seja diferente de EXPTIME. Se PSPACE é o conjunto de problemas solucionáveis ​​no polinômio espacial no tamanho de entrada , então como pode haver uma classe de problemas que experimentam uma maior explosão de tempo exponencial e não fazem uso do espaço exponencial?f(n)

A resposta de Yuval Filmus já é extremamente útil. No entanto, alguém poderia esboçar meu argumento solto por que pode ser o caso de PSPACE P EXPTIME (ou seja, que PSPACE não é um subconjunto adequado de EXPTIME)? Não precisaremos de espaço exponencial para superar o limite superior para o número total de configurações do sistema alcançáveis ​​com espaço escalável polinomialmente com o tamanho da entrada? Só para dizer, eu posso entender por que EXPTIME ≠ EXPSPACE é um assunto em aberto, mas me falta compreensão sobre o relacionamento entre PSPACE e EXPTIME.

Respostas:


40

Vamos atualizar as definições.

  • PSPACE é a classe de problemas que podem ser resolvidos em uma máquina de Turing determinística com limites de espaço polinomial: ou seja, para cada um desses problemas, existe uma máquina que decide o problema usando no máximo células de fita quando sua entrada tem comprimento  , para alguns polinômios  .n pp(n)np

  • EXP é a classe de problemas que podem ser resolvidos em uma máquina de Turing determinística com limites de tempo exponenciais: para cada um desses problemas, há uma máquina que decide o problema usando no máximo etapas quando sua entrada tem tamanho  , para alguns polinômios  . n p2p(n)np

Primeiro, devemos dizer que essas duas classes podem ser iguais. Parece mais provável que sejam diferentes, mas às vezes as classes são as mesmas: por exemplo, em 2004, Reingold provou que o espaço de log simétrico é o mesmo que o espaço de log comum; em 1987, Immerman e Szelepcsényi provaram independentemente que NLco-NL= (e, de fato, que NSPACE [ ] co-NSPACE [ f ( n ) ]f(n)=f(n) para qualquer ).f(n)logn

Mas, no momento, a maioria das pessoas acredita que PSPACE e EXP são diferentes. Por quê? Vejamos o que podemos fazer nas duas classes de complexidade. Considere um problema no PSPACE . É permitido o uso de  células de fita para resolver uma entrada de comprimento  n, mas é difícil comparar isso com EXP , que é especificado por um limite de tempo.p(n)n

Quanto tempo podemos usar para um problema no PSPACE ? Se escrevermos apenas para  células da fita, existem 2 p ( n ) cadeias diferentes que podem aparecer na fita, assumindo um alfabeto binário. A cabeça da fita pode estar em qualquer um dos p ( n )  lugares diferentes e a máquina de Turing pode estar em um dos k  estados diferentes. Portanto, o número total de configurações é T ( n ) = kp(n)2p(n)p(n)kT(n)=kp(n)2p(n). Pelo princípio do pigeonhole, se executarmos para as etapas , devemos visitar uma configuração duas vezes, mas, como a máquina é determinística, isso significa que ela fará um loop e visitará a mesma configuração infinitamente, ou seja, ela vencerá ' Não pare. Como parte da definição de estar no PSPACE é que você precisa decidir o problema, qualquer máquina que não termine não resolve um problema do PSPACE . Em outras palavras, PSPACE é a classe de problemas que são decidíveis usando no máximo p ( n ) de  espaço e no máximo kT(n)+1p(n) tempo, que é no máximo 2 q ( n ) para algum polinômio  q . Então, mostramos que oPSPACEkp(n)2p(n)2q(n)qEXP .

E quanto espaço podemos usar para um problema de EXP ? Bem, temos permissão de etapas e a cabeça de uma máquina de Turing pode mover apenas uma posição em cada etapa. Como a cabeça não pode se mover mais do que 2 p ( n ) posições, só podemos usar tantas células de fita.2p(n)2p(n)

n, por outro lado, você pode não apenas olhar para todos os subconjuntos, mas também não precisar reutilizar seu espaço de trabalho, para lembrar o que aprendeu sobre cada um individualmente. Parece que deveria ser mais poderoso.

Outra intuição sobre por que eles deveriam ser diferentes é que os teoremas da hierarquia de tempo e espaço nos dizem que permitir um pouco mais de espaço ou tempo aumenta estritamente o que você pode calcular. Os teoremas da hierarquia apenas permitem comparar gostos com gostos (por exemplo, eles mostram que o PSPACE


1
Se EXPTIME permite espaço exponencial, suponho que a pergunta certa seja: podemos dizer que EXPTIME é um subconjunto adequado de EXPSPACE porque EXPSPACE permite problemas que podem ser resolvidos em tempo superexponencial?
user25876

Se isso é verdade, acho que tudo faz sentido para mim. Por alguma razão, assumi que EXPTIME proibia o uso de espaço exponencial, mas esse não é o caso. Foi daí que veio a minha confusão.
user25876

1
Eu gosto do seu exemplo de subconjunto. Segundo o IIRC corretamente, conhecemos problemas que não podem ser computados on-line (assim como com informações completas); portanto, você deve manter todos os elementos na memória. Intuitivamente falando.
Raphael

22poly(n)

1
@DavidRicherby Estou aceitando sua resposta. Você conhece algum documento que faça referência à BTW discutindo as barreiras técnicas para provar ou refutar o PSPACE como um subconjunto adequado de EXPTIME? Na verdade, estou muito curioso sobre isso agora.
user25876

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.