Turing Machine을 주요 계산 모델로 채택한 역사적 이유.


44

Turing의 모델이 계산을 설명 할 때 "표준"이되었다는 것을 이해하고 있습니다. 왜 이것이 사실인지 알고 싶습니다. 즉, TM 모델이 다른 이론적으로 동등한 (내 지식과 같은) 모델보다 더 널리 사용되는 이유는 무엇입니까? 전자는 나중에까지 나타나지 않았고 후자는 원래 계산 모델로 특별히 설계되지 않았지만 대안이 처음부터 존재했음을 보여줍니다).

내가 생각할 수있는 것은 TM 모델이 다른 컴퓨터보다 실제로 가지고있는 컴퓨터를 더 잘 표현한다는 것입니다. 이것이 유일한 이유입니까?


1
동일한 주제에 직접 있지는 않지만 cstheory.stackexchange.com/questions/625/…cstheory.stackexchange.com/questions/1117/… 질문 은 TM과 -calculus 의 관계를 탐색하고 역사적 요소. λ
Suresh Venkat

네, 봤어요 나는 다양한 이론의 문자적인 역사를 상당히 잘 이해하고 있지만, 시간이 지남에 따라 현재의 "선호"를 이끌어 낸 발전에 더 관심이 있습니다.
Evan

2
실제로 실제 컴퓨터에 더 가까운 모델이 있습니다 ( 이 질문 참조) . 일반적으로 최상의 모델은 요구 사항에 따라 다르며 지역마다 다릅니다.
Kaveh

답변:


46

이것은 컴퓨터 과학의 일부 영역에서 사실 인 것처럼 보이지만 일반적으로 그렇지는 않습니다.

한 가지 이유는 교회의 논문과 관련이 있습니다. 주된 이유는 Godel과 같은 일부 전문가들이 이전 / 다른 계산 모델이 정확하게 직관적 인 계산 개념을 포착한다는 주장이 설득력이 있다고 생각하지 않았기 때문입니다. 교회에는 몇 가지 논쟁이 있었지만 그들은 고델을 설득하지 못했습니다. 그것은으로 받아 그래서 반면에 튜링의 분석은 괴델에 대한 설득했다 효과적인 계산을위한 모델. 다른 모델 사이의 동등성은 나중에 입증되었습니다 (Kleene이 생각합니다).

두 번째 이유는 복잡성 이론 연구와 관련하여 기술적이고 나중에 개발되기 때문입니다. 시간, 공간 및 비결정론과 같은 복잡성 측정을 정의하는 것은 미적분 및 μ 재귀 함수 와 같은 다른 모델보다 Turing 기계를 사용하는 것이 더 쉬운 것 같습니다 .λμ

한편, 재귀 함수는 논리 및 계산 이론 이론 책에서 계산을 정의하는 주요 방법으로 사용되어 왔습니다. 복잡성이 아닌 효율성에만 관심이있을 때 작업하기가 더 쉽습니다. Kleene의 저서 "Metamathematics"는이 개발에 큰 영향을 미쳤습니다. 또한 프로그래밍 언어 및 유형 이론과 같은 CMU / 유럽식 컴퓨터 과학에서 λ -calculus가 더 일반적으로 보입니다. 일부 작성자는 RAM 및 기계 등록 모델을 선호합니다. (어떤 이유로 미국인들이 튜링의 시맨틱 모델을 채택하고 유럽인이 교회의 구문 모델을 채택한 것처럼, 크루 치는 미국이고 튜링은 영국인이었습니다. 이것은 개인적인 견해 / 관찰과 다른 견해를 가지고 있습니다μλ. 또한 Viggo Stoltenberg-Hansen과 John V. Tucker I , II의 논문을 참조하십시오 .)

추가로 읽을 수있는 자료 :

Robert I. Soare 는 이러한 발전의 역사에 관한 많은 기사를 가지고 있으며, 저는 개인적으로 계산 성 이론 핸드북을 좋아합니다. 해당 논문의 참고 문헌을 확인하여 더 많은 것을 찾을 수 있습니다.

또 다른 좋은 자료는 SEP에 관한 Neil Immerman의 계산 기사입니다 . B. Jack Copeland의 Church-Turing Thesis 기사 도 참조하십시오 .

Godel의 수집 작품 에는 그의 견해에 대한 많은 정보 포함되어 있습니다. 그의 기사에 대한 특별히 소개는 매우 잘 작성되었습니다.

Kleene의 " Metamathematics "는 매우 좋은 책입니다.

마지막으로, 여전히 만족스럽지 않은 경우 FOM 메일 목록 의 아카이브를 확인하고 아카이브 에서 답변을 찾을 수없는 경우 메일 목록 에 대한 이메일을 보내십시오.


문제가 있으면 알려주세요.
Kaveh

1
와우, 이것은 좋은 정보입니다. 리소스에 감사드립니다, 나는 그것을 체크 아웃 할 것입니다 (나는 메타 수학을 읽을 계획이었습니다-나는 그것을 대기열에 올릴 것입니다).
Evan

당신은 환영합니다, 잘만되면 내가 잘못하지 않았습니다. :)
Kaveh

INI에서 Robert Soare 의 최근 연설 이있었습니다 . 내가 알기로, 튜링 모델로 변경하고 재귀 함수와 재귀 이론에서 계산 가능성을 계산하는 주된 이유는 다음과 같습니다. 일부는 계산 능력의 변화로 인해 해당 지역을 이해하고 부활시키기가 훨씬 쉬워졌습니다.
Kaveh

19

TM이 계산의 기본 모델이거나 적어도 질문의 다른 차원을 지적한다는 주장을 약화시키고 싶습니다. 분명히 TM은 컴퓨터 과학의보다 복잡하고 알고리즘 지향적 인 부분에서 지배적이지만 프로그래밍 언어 이론과 실무에서는 특별히 지배적이지는 않습니다. 여기에는 여러 가지 이유가 있지만 가장 중요한 것은 TM에서 실행되는 TM 또는 프로그램 (예 : 람다 계산 또는 프로세스 계산)이 대수적으로 구성되지 않았기 때문일 수 있습니다. 이것은 프로그래밍 언어 이론의 주된 유형 이론을 개발하는 것을 어렵게 만듭니다.


2
또한 TM 프로그램 (일명 전이 테이블)은 실제로 사람이 읽을 수 없습니다.
Raphael

13

튜링 머신의 좋은 점 중 하나는 많은 수의 입력과 출력을 자연스럽게 문자열로 공식화 할 수 있기 때문에 자연 수나 람다 용어 대신 문자열에서 작동한다는 것입니다. 그러나 이것이“역사적”이유인지 아닌지는 모르겠습니다.


13

튜링 머신은 확실한 펜-페이퍼 계산 모델 ( "직관적 인 계산 개념")이라는 사실 외에도 특히 유용한 이론을 증명할 때 유용한 일련의 기능을 가지고 있다고 생각합니다.

  • 그것들은 공식적으로 설명하기 쉽고 간단한 운영 의미론을 가지고 있습니다.
  • 시간과 공간의 복잡성을 구체적으로 정의하는 것은 쉽습니다.
  • 랜덤 액세스 머신과 같은보다 사실적이고 복잡한 전자 컴퓨터 모델은 다항식 오버 헤드로 TM에 의해 시뮬레이션 될 수 있으며 그 반대도 마찬가지입니다.

때로는 설명 기능이 TM의 유용성을 방해하는 것처럼 보입니다. 설명은주의하지 않으면 (적어도, 내가 조심하지 않으면 ... 초보자입니다) 평범한 영어 설명으로 빠르게 나눌 수 있기 때문입니다.
Evan

예를 들어, 귀하의 이유는 레지스터 시스템을 제외하지 않습니다.
Raphael

글쎄, 그것은 당신이 생각하는 "등록 기계"의 정확한 개념에 달려 있습니다. 예를 들어, 증가, 감소 및 점프 연산 만있는 사람들은 다항식 시간에 TM을 시뮬레이션 할 수 없습니다.
Antonio E. Porreca

1
λλ

나는 PL 측에 있지만 순수한 람다 미적분은 산술 계산의 명백한 모델이 아닙니다 (전임자 생각). 람다 미적분학에서는 정의가 적지 만 정의의 의미를 이해하는 데 더 많은 노력이 필요합니다.
Blaisorblade

0

처음으로 영향을 미쳤으므로 특히 복잡한 이론에서 확립되었습니다. 이것은 약한 이유이지만 사람들은 그런 식으로 일합니다. 우리는 새로운 문제를 선포하는 대신 먼저 오래된 문제를 해결합니다.


8
"우리는 새로운 문제를 선언하는 대신 오래된 문제를 먼저 해결합니다." <-어쨌든, 특히 오래된 질문이 극도로 어려운 분야에서는 그 반대가 사실이라고 생각합니다. 예를 들어 회로 복잡성에서 일하는 사람들은 상대적으로 적습니다 (그러나 지금은 더 많을 것입니다!). 사람들은 출판하기 위해 해결할 수있는 문제를 해결해야합니다. 이것은 새로 선언 된 해결 가능한 문제의 일정한 흐름을 생성합니다.
Aaron Sterling

나는 거기에서 나의 말을 조금 성급하게했다. 압도적 인 이유가 없다면 사람들은 종종 새로운 모델을 만들고 (기본 속성을 증명하는 것) 기존의 모델을 고수한다고 생각합니다. 그 느낌은 분명히 사라 졌을 것입니다. 특히, 처음에는 모델을 사냥하는 사람들이 있습니다.
Raphael

람다 미적분학이 먼저 나왔습니다. 그러나 튜링은 튜링 기계가 계산을 수행하는 인간의 기초를 정확하게 모델링 함을 보여 주었다. 이것은 동등성을 증명할 때 람다 미적분학에 대해서만 수행되었습니다. 또한이 동등성은 1 차 계산에만 적용됩니다. cstheory.stackexchange.com/q/1117/989- 고차 데이터는 실제로 종이에 존재하지 않습니다. 컴퓨터의 메모리에도 존재하지 않지만 완벽하게 시뮬레이션 할 수 있습니다.
Blaisorblade
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.