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.