시간 복잡성을 위해 단일 테이프 Turing 기계를 사용하는 이유는 무엇입니까?


18

아시다시피 시간이 때 단일 테이프 튜링 기계에 대한 많은 유사점이 있습니다 . 멀티 테이프 TM 시뮬레이션, 만으로 더 큰 테이프 알파벳의 시뮬레이션 , 시간 구성 성, 시간 계층 정리의 견고성, ...{ 0 , 1 , b }o(n2){0,1,b}

또한 와 같은 결과 및 간단한 문제에 대한 모델 별 시간 하한 (두 개의 초 선형 하한으로도 해석되지 않음) 테이프 TM). O ( n 2 )DTime(o(nlgn)=RegO(n2)

공간 복잡성을 위해보다 독특하고 견고한 별도의 읽기 전용 입력 테이프가있는 모델을 사용합니다.

여러 개의 테이프 (또는 최소 2 개의 작업 테이프)가있는 TM 모델은 훨씬 더 강력하며 위에 나열된 것과 같은 이상 현상이 발생하지 않습니다. 한때 복잡한 이론의 초기에 시뮬레이션 결과를 입증 한 저명한 복잡한 이론가에게 이전의 결과 중 하나에 대한 개선점을 알고 있다고 대답 한 적이 있습니다. 중대한".

시간 복잡성에 대한 표준 모델을 두 개의 테이프 TM으로 변경하면 복잡성 이론의 합리적인 결과가 변경되지 않으며 특정 모델로 인한 이러한 이상을 피할 수 있습니다. 그래서 내 질문은 :

단일 테이프 TM의 관점에서 시간 복잡성이 여전히 정의되는 이유가 있습니까? (역사적 이유 이외)


7
단일 테이프 TM로 정의 된 시간 복잡성을 본 적이 없습니다. 나는 단일 테이프 TM에 의해 정의 된 강력한 시간 복잡성 클래스 만 보았습니다.

@Ricky, 문제의 시간 복잡성은 문제를 해결할 수있는 단일 테이프 TM의 시간 복잡성으로 정의됩니다.
Kaveh

그리고 나는 그 일을 본 적이 없다는 것을 의미합니다. 나는 항상 최소한 임의 접근을 보았습니다.

7
그러나 이것이 실제로 일반적인 정의입니까? 내가 교과서에서 본 것은 1) 단일 테이프 튜링 머신을 정의합니다 (더 간단하기 때문에). 2) 다른 변형, 특히 다중 테이프 및 임의 액세스로 확장하는 방법을 보여줍니다. 3) 이들 모두가 최대 다항식 감속으로 서로를 시뮬레이션 할 수 있음을 보여줍니다. 4) 최소한 오라클 머신 및 로그 공간 축소와 같은 미묘한 것들이 필요할 때까지 대부분의 모델을 즉시 잊어 버립니다. 따라서 @RickyDemer와 마찬가지로 이것이 실제로 일반적인 정의라는 주장에 도전합니다.
Sasho Nikolov

1
이에 대한 답은 없지만 Yamakami ( springerlink.com/content/u844854721p83870 ) 가이 작품을 지적하고 싶습니다 . 이 백서에서는 소형 기계 (예 : 선형 시간 1 테이프 TM)에 조언을 추가 할 때 발생하는 상황에 대해 설명합니다. 여러 클래스 분리를 ​​증명하지만 이러한 단일 테이프 TM을 사용합니다. 다른 종류의 TM이 있으면 이러한 분리가 작동하지 않습니다. 나는 이것이 하나의 테이프로 멋진 것을 증명할 수 있고 다른 모델로는 할 수없는 좋은 예라고 생각합니다. 도덕은 "미묘한 것들을 다룰 때 테이프 하나의 문제"입니다.
Marcos Villagra

답변:


13

다른 답변은 매우 멋지게 보입니다. 나는 몇 년 전에 강의에서 Russell Impagliazzo가 한 이후로 나에게 붙어있는 의견을 공유하고 싶습니다.

튜링은 물리적 인 타당성 때문에 단일 테이프 TM를 선호했을 것입니다.

나는 러셀에게 며칠 전에이 실을 지적했지만 그가 여기에 있지 않은 것을 알면 그의 의견을 알고 싶습니다. 해석하기 위해 최선을 다할 것입니다.

단일 테이프 TM의 경우 길이가 무한한 테이프를 가정하면 (고착하십시오) 반복 당 제한된 양의 에너지가 필요한 TM을 작성할 수 있습니다. 테이프를 긴 막대로 상상하고 모든 TM 논리가 포함 된 헤드가이 막대를 따라 움직입니다. (나는 매우 원시적 인 기술을 사용하여 귀여운 작은 기어 모양의 장치라고 생각합니다. 막대는 그것을 도울 수있는 노치가있을 수 있으며 테이프 셀 내용은 막대 축에 직각으로 미끄러지는 블록 일 수 있습니다.)

반면에 tape TM 에서는 어떻게해야 합니까? k 가 있다면kk위의 정체 상태 중 하나는 잠재적으로 극도로 먼 다른 헤드에 판독 상태를 전달해야합니다.이 헤드는 무한한 양의 에너지를 소비하므로 (열을 새는 와이어를 사용하는 등) 순간적이지 않으므로 메커니즘이 복잡해집니다. 대신 헤드를 함께 유지하고 테이프를 그 아래로 이동하면 무한 길이의 테이프를 이동하기에 충분한 에너지를 사용하게됩니다. 어느 경우 에나 묶여있는 에너지를 얻는 방법을 모르겠습니다. (길이를 늘리기 위해) 줄어드는 테이프 증가와 같은 트릭은 무한 분할 가능한 우주를 가정하고 플랑크 상수 및 홀로그램 원리와 같은 것을 위반합니다. 이를 무시하더라도 헤드의 메커니즘은 임의로 정확해야하며, 이는 다시 에너지 문제를 야기하고 상당히 복잡합니다.

물론, 첫 번째 계획에는 많은 노치가있는 무한 테이프의 구조, 움직이는 헤드의 태양열 집열기에 전력을 공급하기 위해 무한히 많은 태양, 무한한 청소 및 유지 보수 공급 장치 등이 있습니다. 양자 역학의 주요 돌파구 테이프 헤드가 제대로 통신 하도록 할 수 있지만 이제는 우리의 통제가 얼마나 복잡한 지 살펴보십시오. 어쨌든, Russell의 의견은 매우 흥미 롭습니다.k


튜링은 "컴퓨팅"이라는 개념을 추상화하려고하지만 물리적 장치에 대한 모델을 추상화하지는 않았다고 생각했습니다. 이 경우 단일 테이프 튜링 머신은 계산에 큰 (무한) 메모리에 대한 로컬 액세스가 포함된다는 철학적 직관을 깨끗하게 포착합니다.
Sasho Nikolov

나는 이론적 인 이유 (모델의 실현 가능성이 아님)를 기대하고 있었지만이 답변이 매우 흥미로워 서 받아들입니다. 다시 감사합니다.
Kaveh

테이프 헤드를 제 위치에 유지하면 Hennie-Stearns 구조의 형태를 엔지니어링하여 전체 에너지를 선형으로 만들거나 희망적으로 준 선형보다 나쁘게 만들 수있는 것처럼 보입니다. 테이프가 어느 방향 으로든 확장 될수록 점점 더 큰 루프로 롤링되는 것을 상상하고 있습니다. 또는 더 상상적으로, 테이프의 스풀, 100 개의 테이프를 스풀에, 100 개의 스풀을 랙에, 100 개의 랙을 창고에, 그리고 의 위에. 물론 반복 당 제한된 에너지의 경우 시간에 따른 총 에너지가 필요합니다. 그러나 quasilinear는 순차 이차보다 낫기 때문에 언급 할 것이라고 생각했습니다.
Dan Brumleve

14

f(n)

Sipser가 이것을 수행하는 명백한 교육학적인 이유가 있습니다.

  • 다중 테이프 기계보다 먼저 단일 테이프 기계를 도입해야합니다. 그렇지 않으면 학습 곡선이 가파르게됩니다.

  • 멀티 테이프 기계를 도입하는 순간 멀티 테이프 기계를 단일 테이프 기계와 비교하는 것이 이상적입니다.

  • 다중 테이프 머신에 대해 유사한 TIME 클래스를 생략하여 전체적으로 표기법을 단순화 할 수 있습니다.

교육학이 가장 쉬운 길을 분명하게 지시 할 때 개념적 청결도를 극복 할 이유가 없으며, 모든 컴퓨터 과학은 아직 증거를 이해하지 못하는 모든 사람을 포함하여이 초급 과정을 이수해야합니다.


아니요, IIRC, TM과의 첫 만남은 Hopcroft와 Ullman의 첫 번째 판이었습니다. 그러나이 질문을하는 이유는 실제로 Sipser의 훌륭한 교과서와 관련이 있습니다 .Sipser를 기반으로 복잡한 이론을 가르쳤으며 멀티 기반의 경우 나와 학생에게 더 간단하고 깨끗합니다 (필수 자료가 손실되지 않음) 테이프 TM. 단일 테이프 TM의 제한된 액세스에 대한 이러한 작은 기술적 세부 사항은 모두 피할 수 있으며 제한된 시간 내에 더 흥미로운 자료를 다룰 수 있습니다. Sipser는 Church-Turing 논문 사용에 대해 편안합니다
Kaveh

그래서이 부분에 대해 긴장을 풀면 괜찮을 것이라고 생각했습니다. 시간 계층 정리 부분에서 그는 테이프가 여러 개인 경우 추가 로그 요소가 필요하지 않으며 매우 빡빡하다고 언급했습니다. 이로 인해 단일 테이프 TM을 시간 복잡성으로 사용하는 비 역사적 이유가 있는지 묻습니다. 공간 복잡성을 위해 별도의 읽기 전용 테이프를 사용하는 것보다 나쁘지 않습니다 (다시 말해서 이것은 단일 테이프 TM이 작은 공간 복잡성 클래스에 대한 직감을 훌륭하게 포착하지 않기 때문입니다).
Kaveh

2
별도의 입력 테이프없이 하위 선형 공간 경계를 이해하는 방법을 보지 못했습니다.

그렇습니다 .SPACE가 부분적으로 다르게 수행되었다고 가정합니다. 부분 선형 경계를 수행하기 때문에 TIME에는 없을 것입니다. 이 방법으로 TIME을 첨자하거나 Sipser가 SPACE에 대해 수행하는 모든 작업을 수행하고 싶습니다. TIME 또는 TIME_1 또는 멀티 테이프 머신 전에 무엇이든 이야기하고 싶습니다.
Jeff Burdges

1
흥미롭게도, Sipser는 SPACE (f (n))을 정의 할 때 단순히 "Turing machine"이라고 말하지만 나중에 하위 선형 함수 f를 논의 할 때 정의를 변경하여 수퍼 라이너 f에 대한 동등성에 대한 연습을 할당합니다. 나는 Sipser에서이 자료를 전에 가르쳤다. 나는 당시에 그것에 대해 너무 많이 생각하지 않았지만 지금 그것에 대해 기쁘게 생각합니다.
Jeff Burdges

7

오리지널 튜링 기계는 단일 테이프를 사용하여 설명되었습니다.

www.cs.ox.ac.uk/activities/ieg/e-library/sources/tp2-ie.pdf

당신이 당신의 질문에 진술 할 때, 이것은 주로 역사적 이유 때문입니다. 또한 무언가를 할 수있는 가장 간단한 모델이 무엇인지 묻는 경향이 항상 있습니다.

또한이 주제는 일반적으로 매우 공식적으로 설명되므로 두 테이프 처리보다 단일 테이프 기계를 기술하는 것이 기술적으로 더 쉽습니다.

또한보십시오:

http://www.cs.utah.edu/~draperg/cartoons/2005/turing.html

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.