Halting Problem의 결정 불가능한 증거가 결과를 반대로해서 속임수입니까?


12

Turing의 정지 문제를 이해하는 데 어려움이 있습니다.

그의 증거는 컴퓨터가 주어진 입력에 대해 영원히 멈추거나 반복되는지 여부를 결정할 수 있는 마법 기계 가 있다고 가정합니다 . 그런 다음 출력을 반전시키는 다른 기계를 연결하여 모순이 생겨 H 가 존재할 수 없습니다.HH

내 관심사는 우리가 답을 뒤집어서 답변이 틀렸다고 말하는 것처럼 보입니다. 비 유적으로, 라는 기계가 있으면 특정 입력에 대한 정답을 출력하고 다른 입력에 대한 정답을 출력합니다. 그런 다음 A 의 결과를 반대로하는 다른 기계를 연결 하여 두 기계의 조합이 A 정의 방법과 모순 됩니다. 두 기계는 이제 A 가 정답을 출력하도록 정의 된 입력에 대해 오답을 생성 하고 A 가 오답을 출력하도록 정의 된 입력에 대해 정답을 출력합니다. 이것을 모순이라고합니까? 따라서 일부 입력에 대해서는 정답을 출력하고 다른 입력에는 오답을 출력하는 기계가 존재하지 않습니까?AAAAA

답변:


20

짧은 버전 : 기계의 출력이 정확하지 않거나 부정확합니다. 모순입니다 . 입력 기계가 주어진 문자열에서 정지하는지 여부 를 결정 하는 초기 기계가 존재하지 않음 을 증명 합니다.

긴 버전 : 먼저 증거를 스케치합니다 (또는 적어도 하나의 버전이 있습니다).

  1. 우리 튜링 기계 있다고 가정 튜링 머신 여부를 결정하는 M의 입력에 정지하고 X 아닌지.HALT(M,x)Mx
  2. 사용 우리가 시스템 구성 F L I P ( M , X ) 를 사용 H L T를 여부를 확인하기 위해 M의 에 정지하는 X , 그 반대, 즉 수행 여부를 경우 M의 에 정지하는 X , F L Mx 에서 정지하지 않으면 I P가 반복되고 F L I P가 정지합니다.HALTFLIP(M,x)HALTMxMxFLIPMxFLIP
  3. 마지막으로, 우리는 TM 크리에이트 (I 좋은 이름 부족이)와, TM의 설명을 취하여 실행되는 F L I P를 입력하여 ( M , M ) , 출력간에 F L I P 출력.C(M)FLIP(M,M)FLIP

결정자 가 존재하는 한, 이들 단계들 각각은 구현하기가 간단 하다는 것에 주목하는 것이 중요하다 ; F L I PH A L T 를 사용 하여 수행 할 작업을 확인해야하며 C 는 입력을 복제하여 F L I P 로 전달합니다 .HALTFLIPHALTCFLIP

우리는 우리가 실행할 때 발생하는 볼 때 모순이 발생 . 어느 C를 정지하는 경우는 입력으로서 또는 그 자체가 주어. H A L T 는 이것을 결정할 것이다 :C(C)CHALT

  • 경우 입력에 정지하고 C는 , H L T는 말할 것이다 Y 전자 , 그렇지만 F L I P는 루프 때문에 것이다 C 뜻 루프 모순 H L T를 .CCHALTYesFLIPCHALT
  • 경우 입력에 루프 C , H L T는 말할 것이다 N의 O를 , 그러나 F L I P가 되도록 멈춘다 C는 또한 정지, 상반된 것이다 H L T를 .CCHALTNoFLIPCHALT

구성의 각 단계가 명확하게 들리기 때문에 가 존재할 수 없다는 결론을 내릴 수 있습니다. 우리는 그것이 무엇을 말하는지에 관계없이 H A L T 가 무엇을 출력할지 결정할 수없는 경우, 즉 문제를 결정할 수없는 경우를 만들었습니다. 실제로 지점을 조금 망치기 위해 H A L T 는 존재할 수 없습니다. 즉, 정지 문제를 결정하는 TM이 없을 수 있습니다. 가능한 답변. 결정자가 틀린 답을 출력 할 수없고 무언가를 출력해야한다는 것을 기억하십시오. 그러나 우리가 구성한 경우 가능한 두 가지 답이 틀립니다.HALTHALTHALT


기계 의 정의는 M이 수용 하는 입력을 받아들이지 않기 때문에 의미가 없습니다 . 어떻게 실행할 수 있습니까? CM
AleksandrH

7

“모순”의 두 가지 의미를 논의하고 있습니다.

비유하면 기계 A 와 뒤집힌 수정은 출력이 항상 다르다는 의미에서 서로 모순됩니다. 예를 들어 정수에 대해 두 개의 테스트 함수 ( " x ≤ 5?"및 " x > 5?")를 구현할 수 있습니다. "모순"은 일상적인 사용에서 의미 할 수있는 것은 분명하지만 논리적으로 의미하는 것은 아닙니다. 증거.

논리적 증거에서, 그것은 더 강한 것을 의미합니다. 단순히 불가능한 것입니다. 예를 들어, 5보다 큰 모든 입력에 대해 "true"를 반환하고 10보다 작은 모든 입력에 대해 "false"를 반환하는 함수 – 이는 더 강력한 의미에서 모순됩니다. 예를 들어, 7의 출력은 모두 "true"여야합니다. "거짓"이지만 동일하지 않습니다. 튜링의 주장은 중지 프로그램이 더 강한 의미에서 모순된다는 것을 보여준다.


2

xxf(n)n

f(m)

mm

mPmf(m)+1PmPmmm|m||m|m|m|log10mTPmT+log10mmm=2TT+log10mmf(m)Pmf(m)f(m)+1. 우리는 모순에 도달했습니다.

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