정의를 새로 고칩니다.
PSPACE 는 다항식 공간 경계가있는 결정 성있는 Turing 기계에서 해결할 수있는 문제의 클래스입니다. 즉, 이러한 각 문제에 대해 입력 길이가 길 때 최대 p(n) 테이프 셀을 사용하여 문제를 결정하는 기계가 있습니다. 일부 다항식 p의 경우 입니다.np
EXP은 지수 시간 경계와 결정적 튜링 기계에 해결 될 수있는 문제의 클래스 각각의 이러한 문제에 대한 대부분의 사용 문제 판정 기계가 2p(n) 입력 길이를 가질 때 단계 n 에 대해는, 일부 다항식 p .
먼저,이 두 클래스는 동일 할 수 있습니다. 예를 들어 2004 년에 Reingold는 대칭 로그 공간이 일반 로그 공간과 동일하다는 것을 증명했습니다. 1987 년 Immerman과 Szelepcsényi는 독립적으로 NL=co-NL (실제로 NSPACE [ f(n) ]=f(n) )에 대해 co-NSPACE [ f ( n ) ] .f(n)≥logn
그러나 현재 대부분의 사람들은 PSPACE 와 EXP 가 다르다고 생각합니다 . 왜? 두 가지 복잡한 클래스에서 우리가 할 수있는 것을 살펴 보자. PSPACE 의 문제점을 고려하십시오 . 우리는 길이가 n 인 입력을 풀기 위해 테이프 셀을 사용할 수는 있지만 시간 제한에 의해 지정된 EXP 와 비교하기는 어렵습니다 .p(n)n
PSPACE 문제에 얼마나 많은 시간을 사용할 수 있습니까? 테이프 셀 에만 쓰면 이진 알파벳을 가정 할 때 테이프에 나타날 수 있는 2 p ( n )의 다른 문자열이 있습니다. 테이프 헤드는 p ( n ) 개의 다른 장소에있을 수 있으며 튜링 기계는 k 개의 다른 상태 중 하나에있을 수 있습니다 . 따라서 총 구성 수는 T ( n ) = k입니다.p(n)2p(n)p(n)kT(n)=kp(n)2p(n). 비둘기 구멍 원리에 따르면 단계로 실행 하면 구성을 두 번 방문해야하지만 기계가 결정적이므로 반복적으로 반복되어 동일한 구성을 자주 방문합니다. 멈춰. PSPACE 에있는 정의의 일부는 문제 를 결정 해야한다는 것이므로 종료되지 않은 시스템은 PSPACE 문제를 해결하지 못합니다 . 즉, PSPACE 는 최대 p ( n ) 공간과 최대 k를 사용하여 결정할 수있는 문제의 클래스입니다.T(n)+1p(n) 는 최대 인 시간 (2) Q ( N ) 어떤 다항식 Q . 우리는 그PSPACE를보여주었습니다kp(n)2p(n)2q(n)q⊆EXP .
EXP 문제에 얼마나 많은 공간을 사용할 수 있습니까? 글쎄, 우리는 스텝 이 허용 되며 Turing 머신의 헤드는 각 스텝에서 한 위치 만 움직일 수 있습니다. 머리보다 더 이동할 수 없기 때문에 이 P ( N ) 위치, 우리는 많은 테이프 세포를 사용할 수 있습니다.2p(n)2p(n)
차이점은 PSPACE 와 EXP 가 지수 시간으로 해결할 수있는 문제이지만 PSPACE 는 다항식 공간 사용으로 제한되는 반면 EXP 는 지수 공간을 사용할 수 있다는 것입니다. 그것은 이미 EXP 가 더 강력해야 함을 암시합니다 . 예를 들어, 그래프에 대한 문제를 해결하려고한다고 가정하십시오. PSPACE 에서는 정점의 모든 하위 집합을 볼 수 있습니다 ( 부분 집합을 쓰려면 비트 만 소요됨 ). 일부 작업 공간을 사용하여 각 서브 세트에서 계산할 수 있지만 서브 세트에 대한 작업을 완료 한 후에는 해당 작업 공간을 지우고 다음 서브 세트에 다시 사용해야합니다. 에서 EXPn반면에 모든 하위 집합을 볼 수있을뿐만 아니라 작업 공간을 재사용 할 필요가 없으므로 각 하위 집합에 대해 배운 내용을 기억할 수 있습니다. 더 강력해야 할 것 같습니다.
그것들이 다른 이유에 대한 또 다른 직감은 시간과 공간 계층 구조 이론에 따르면 조금 더 많은 공간이나 시간을 허용하면 계산할 수있는 것을 엄격하게 증가 시킨다는 것입니다. 계층 구조 정리는 다음과 같은 방식으로 만 비교할 수 있습니다 (예 : PSPACE⊊EXPSPACE 와 P⊊EXP ) 따라서 PSPACE 와 EXP에 직접 적용되지는 않지만 더 많은 리소스가 더 많은 문제를 해결할 수 있음을 의미하는 강력한 직관을 제공합니다.