튜링 인식 가능 => 열거 가능


10

열거 자에서 Turing Machine으로 이동한다는 증거를 얻습니다 (열거를 계속 실행하고 입력과 일치하는지 확인하십시오). 다른 방법이 어떻게 작동하는지 알 수 없습니다.

저의 노트와 저서 (계산 이론 소개-Sipser)에 따르면 Turing 기계에서 Turing 열거자를 얻으려면 기본적으로 알파벳의 모든 조합을 씁니다. 그런 다음이 입력에서 TM을 실행하고 인쇄가 승인되면 새 문자열 반복 광고 무한대로 대체하십시오.

내가 겪고있는 문제는 분명히 언어를 결정할 수 있어야한다는 것입니다. 그렇지 않으면 무한 루프에서 세 번째 단어에 갇히거나 절대 거부하거나 거부하지 않으며 전체 언어를 인쇄하지 않을 수도 있습니다.

내가 무엇을 놓치고 있습니까?

답변:


9

누락 된 것은 문자열 에서 Turing Machine 을 실행 하여 열거자를 얻는 방법입니다. 각 문자열을 생성하는 대신 실행 한 다음 승인하면 작동하지 않는 경우이 문자열을 출력 합니다. 다음과 같은 방식 으로 다른 문자열 에서 의 여러 인스턴스를 시뮬레이션하는 전략을 채택합니다 . 평행".M M MMMMM

테이프를 가정하면 내용 갖는다 , 고려중인 어떤 단어와 현재 상태 의 동작 . 이것은 사본 이 시뮬레이션되고 있음을 나타냅니다 . 원래 입력이 무엇인지 알 수 있도록 가 저장됩니다.제가 S I M을 w I N M w Iw1,S1##wn,SnwiSiMwinMwi

이제 다음 루프를 실행하십시오.

  1. 마지막에 테이프 는 의 초기 구성 와 함께 다음 문자열을 작성합니다 . 즉, . S M의 # w , S wΣSM#w,S
  2. 테이프 에서 의 각 사본 을 한 단계 시뮬레이션하십시오 . (아마도 다른 테이프를 사용하십시오.)M
  3. 중 하나라도 수락 상태가되면 해당 문자열을 출력 테이프에 놓습니다. 테이프 에서이 인스턴스를 제거하십시오 .MMM
  4. 중 하나라도 거부 상태 가되면 테이프에서 해당 인스턴스를 제거하십시오 .MMM
  5. 1 단계로 이동하십시오.

이 받아 들인 모든 문자열 가 결국 테이프에 출력 될 것이라고 주장하는 것은 어렵지 않습니다 . MwΣM


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