Чому ми вважаємо, що PSPACE ≠ ДОСЛІДЖЕННЯ?


31

У мене виникають труднощі інтуїтивно зрозуміти, чому, як правило, вважають, що PSPACE відрізняється від EXPTIME. Якщо PSPACE - це набір задач, розв’язуваних у просторі полінома вхідного розміру , то як може існувати клас проблем, які зазнають більшого експоненціального часу вибуху та не використовують експоненціальний простір?f(n)

Відповідь Юваля Філімуса вже надзвичайно корисна. Однак чи могла б хтось намалювати мій аргумент, чому це може бути так, що PSPACE ≠ EXPTIME (тобто PSPACE не є належним підмножиною EXPTIME)? Чи не знадобиться нам експоненціальний простір для того, щоб перемогти верхню межу для загальної кількості системних конфігурацій, досяжних з простором, який масштабується поліноміально з розміром введення? Просто кажу, я можу зрозуміти, чому EXPTIME PS EXPSPACE - це відкрита справа, але мені не вистачає розуміння щодо взаємозв'язку між PSPACE та EXPTIME.

Відповіді:


40

Давайте оновимо визначення.

  • PSPACE - це клас проблем, який можна вирішити на детермінованій машині Тьюрінга з поліноміальними просторовими межами: тобто для кожної такої проблеми існує машина, яка вирішує проблему, використовуючи щонайбільше клітинок стрічки коли її вхід має довжину  n , для деякого многочлена  p .p(n)np

  • EXP - клас задач, який можна вирішити на детермінованій машині Тьюрінга з експоненціальними часовими межами: для кожної такої проблеми існує машина, яка вирішує проблему, використовуючи щонайменше кроки, коли її вхід має довжину  n , для деякий многочлен  p2p(n)np .

По-перше, слід сказати, що ці два класи можуть бути рівними. Вони здаються різними, але іноді класи виявляються однаковими: наприклад, у 2004 р. Рейнгольд довів, що симетричний журнальний простір такий самий, як і звичайний журнальний простір; у 1987 р. Іммерман і Щелепченій незалежно довели, що NL=f(n)]=co-NSPACE[f(n)] for any f(n)logn).

But, at the moment, most people believe that PSPACE and EXP are different. Why? Let's look at what we can do in the two complexity classes. Consider a problem in PSPACE. We're allowed to use p(n) tape cells to solve an input of length n but it's hard to compare that against EXP, which is specified by a time bound.

How much time can we use for a PSPACE problem? If we only write to p(n) tape cells, there are 2p(n) different strings that could appear on the tape, assuming a binary alphabet. The tape head could be in any of p(n) different places and the Turing machine could be in one of k different states. So the total number of configurations is T(n)=kp(n)2p(n). By the pigeonhole principle, if we run for T(n)+1 steps, we must visit a configuration twice but, since the machine is deterministic, that means it will loop around and visit that same configuration infinitely often, i.e., it won't halt. Since part of the definition of being in PSPACE is that you have to decide the problem, any machine that doesn't terminate doesn't solve a PSPACE problem. In other words, PSPACE is the class of problems that are decidable using at most p(n) space and at most kp(n)2p(n) time, which is at most 2q(n) for some polynomial q. So we've shown that PSPACEEXP.

And how much space can we use for an EXP problem? Well, we're allowed 2p(n) steps and the head of a Turing machine can only move one position at each step. Since the head can't move more than 2p(n) positions, we can only use that many tape cells.

That's what the difference is: although both PSPACE and EXP are problems that can be solved in exponential time, PSPACE is restricted to polynomial space use, whereas EXP can use exponential space. That already suggests that EXP ought to be more powerful. For example, suppose you're trying to solve a problem about graphs. In PSPACE, you can look at every subset of the vertices (it only takes n bits to write down a subset). You can use some working space to compute on each subset but, once you've finished working on a subset, you must erase that working space and re-use it for the next subset. In EXP, on the other hand, you can not only look at every subset but you don't need to reuse your working space, so you can remember what you learnt about each one individually. That seems like it should be more powerful.

Another intuition for why they should be different is that the time and space hierarchy theorems tell us that allowing even a tiny bit more space or time strictly increases what you can compute. The hierarchy theorems only let you compare like with like (e.g., they show that PSPACEEXPSPACE and PEXP) so they don't directly apply to PSPACE vs EXP but they do give us a strong intuition that more resource means that more problems become solvable.


1
If EXPTIME allows exponential space, I suppose the right question is, can we say that it might be true that EXPTIME is a proper subset of EXPSPACE because EXPSPACE allows for problems that can be solved in superexponential time?
user25876

If that's true, then I think everything makes sense for me. For some reason I had assumed that EXPTIME forbade the use of exponential space, but that's not the case. This is where my confusion came from.
user25876

1
I like your subset example. IIRC correctly, we know problems that can't be computed online (as well as with full information) so you'd have to keep all elements in memory. Intuitively speaking.
Raphael

@user25876 Yes, the same argument that says a PSPACE machine can use exponential time says that an EXPSPACE machine can use doubly-exponential time (i.e., 22poly(n)).
David Richerby

1
@DavidRicherby I'm accepting your answer. Do you know any paper references BTW discussing the technical barriers for proving or disproving PSPACE as a proper subset of EXPTIME? I'm actually very curious about it now.
user25876

9

A machine running in exponential time could use exponential space. So a priori it could be that machines restricted to polynomial space would be weaker. A similar situation occurs for P and L. A machine running in polynomial time could use polynomial space, so a priori it could be that machines restricted to logarithmic space would be weaker. It is even conjectured that P is different from NL, the non-deterministic analog of L. (For PSPACE the corresponding conjectures are equivalent, since PSPACE=NPSPACE due to Savitch's theorem.) Unfortunately, we don't know how to prove these conjectures currently. The conjecture EXPTIMEPSPACE is stronger since it implies PNL via a padding argument.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.