매우 다양한 Turing 완전 계산 모델은 물리적으로 실현 가능합니다 (무한대를 무한대로 고려하는 것까지). 따라서 모델을 선택할 수 없습니다.
@jkff의 대답은 Turing Machine이 계산 가능성과 확률을 연구하기위한 수학적 목적을위한 이론적 장치로 의도되었다는 것을 언급하는 데 적합합니다 (실제로 Hilbert의 Entscheidungsproblem 의 맥락에서 제기
). 그러나 간단한 형식주의를 선택하는 이유는 정확하지 않습니다.
원칙적으로 Halting 문제는 고급 모델에서는 그리 어렵지 않습니다. 실제로 우리의 "증명"은 종종 솔루션의 구성 일뿐입니다. 우리는 이러한 구성이 정확하다는 실제 (매우 지루한) 주장에 많이 관여하지 않습니다. 그러나 튜링 완전한 언어에 대한 통역사를 작성하는 사람이라면 누구나 보편적 인 기계를 만드는 것만큼이나 중요합니다. 음, C는 조금 복잡 할 수 있으며, 그러한 목적으로 약간 간소화하고 싶을 수도 있습니다.
간단한 모델을 갖는 것의 중요성은 모델의 속성을 설정하는 것 (예 : @jkff가 제시 한 예를 들기 위해 Halting Problem과 같은 것)보다 모델에서 사용할 수있는 것보다 훨씬 더 중요합니다.
일반적으로 대단 정리는 종종 간단하게 표현 될 수 있고 광범위한 문제에 적용 할 수있는 정리입니다. 그러나 반드시 증명하기 쉬운 정리는 아닙니다.
TM의 경우 단순성의 중요성은 Halting Problem 또는 기타 TM 문제를 우리가 관심있는 문제 (예 : 문맥이없는 언어의 모호함)로 줄여서 많은 결과가 확립되므로 해결에 대한 본질적인 한계를 설정하기 때문입니다 이 문제들.
실제로, 매우 직관적이지만 (아마 인기가있는 주된 이유 일지라도) TM 모델은 종종 그러한 증명에 사용하기에 충분히 단순하지 않습니다. 이것이 Post Correspondence Problem 과 같은 다른 단순한 모델의 중요성이 높아 분석에 덜 직관적이지만 사용하기 쉬운 이유 중 하나 입니다. 그러나 이는 이러한 계산 모델이 종종 부정적인 결과를 입증하는 데 사용되기 때문입니다 (원래의 엔츠 아이돌 스 문제로 되돌아 감).
그러나 주어진 문제를 해결하기위한 알고리즘의 존재와 같은 긍정적 인 결과를 입증하고자 할 때 TM은 너무 단순한 장치입니다. RAM 컴퓨터 또는 연관 메모리 컴퓨터 와 같은 모드 고급 모델 이나 다른 많은 모델 중 하나 또는 단순히 많은 프로그래밍 언어 중 하나 를 고려하는 것이 훨씬 쉽습니다 .
그런 다음 TM 모델은 모델을 TM 모델 (일반적으로 다항식)로 축소하는 복잡성을 고려할 때 특히 복잡도 분석의 기준점으로 만 사용됩니다. 람다 미적분의 감소에 대한 극단적 인 예를 들기 위해).
다시 말해, TM 모델은 알고리즘 (양성 결과)을 설계 및 연구하기에는 너무 단순하고 종종 계산 성 (음성 결과)을 연구하기에는 너무 복잡합니다.
그러나 그것은
직관적 인 것의 큰 장점과 함께 모든 것을 연결 하는 중앙 링크 역할을 할 수있는 적절한 장소에있는 것 같습니다 .
물리적 비유와 관련하여 한 모델을 다른 모델보다 선택해야 할 이유가 없습니다. 컴퓨터와 소프트웨어가 "네이 키드 (naked)"컴퓨터보다 덜 물리적 인 것으로 간주 할 이유가 없기 때문에 많은 Turing 완전 계산 모델은 물리적으로 실현 가능합니다 (메모리 무한대의 경우 무한대로). 결국 소프트웨어는 실제 표현이며 프로그램 된 컴퓨터의 일부입니다. 따라서 모든 계산 모델이 해당 관점과 동일하므로 지식 구성에 편리한 모델을 선택할 수도 있습니다.