하자 언어를 결정하는 튜링 머신 R이 있습니까?L ∅
여기에서 작동해야 함 을 나타내는 데 사용 된 것과 동일한 기술인 것 같습니다 .
하자 언어를 결정하는 튜링 머신 R이 있습니까?L ∅
여기에서 작동해야 함 을 나타내는 데 사용 된 것과 동일한 기술인 것 같습니다 .
답변:
마킹을하면 도달 가능성 분석을 의미 할 수 있습니다. 초기 상태에서 수용 상태까지의 경로를 찾으십시오. 실제로 그러한 경로가없는 경우 DFA의 언어가 비어 있습니다.
이것이 왜 TM에서 실패하는지에 대한 예부터 시작합시다. 에서 입력을 무시하지만 테이프에 를 쓰고 , 헤드를 오른쪽으로 이동하고 상태로 이동 한 다음 에서 다시 입력을 무시하고 쓰고 왼쪽으로 이동하고 로 이동 하는 TM을 고려 하십시오 . 에서 가 읽는 경우, , 다음 글을 , 이동 헤드 권리와로 돌아갑니다 . a q 1 q 1 a q 2 q 2 a a q 1
즉, 기계는 단지 작성 두 상태 ( 및 ) 사이를 번갈아 가며 항상 테이프에 두 개의 인접한 갖습니다 .q 1 q 2 a
우리는 이제 에서 읽을 때 수용 상태로 바뀌고 정지 되는 전환을 추가합니다 . B
이 기계의 언어가 비어 있습니다. 실제로, 실행은 항상 루프에 수락 상태가되지 않습니다. 그러나 수용 상태에 대한 국가 경로가 있습니다. 그래서 무엇이 잘못 되었습니까?
직관적으로 TM의``상태 ''는 실행의 연속성을 설명하기에 충분하지 않습니다. 모든 정보를 얻으 려면 상태, 헤드 위치 및 테이프 내용이 포함 된 TM 구성 이 필요합니다 . 허용되는 구성에 대한 구성 경로 ( run 이라고 함 )를 찾으면 실제로 언어가 비어 있지 않으며 iff 조건입니다.
구성 그래프에서 도달 가능성 분석을 사용할 때의 문제점은 무한대 일 수 있다는 것입니다. 언어 공허함을 결정할 수없는 이유가 여기에 있습니다.
이것은 언어 비 공백이 인식되는 이유이기도합니다. 무한 구성 그래프에서 BFS를 수행 할 수 있습니다. 수락 가능한 상태에 대한 경로가 있으면 결국 찾을 수 있습니다. 그러나 그렇지 않은 경우 무한 검색에 갇힐 수 있습니다.
는쌀의 정리로인해 결정 불가능하며, 부분 함수의 사소한 속성은 결정할 수 없습니다.
이것은 요소에 의해 계산 된 함수 가 사소한 속성을 가짐을 의미합니다 . 따라서 A 는 결정할 수 없습니다.
는 DFA가 상태 전이 테이블 등과 같은 특수한 방식으로 인코딩된다는 가정 하에서 만 결정할 수 있습니다 (우리는 Rice의 정리 때문에 TM이 정규 언어 만 허용하는지 여부를 결정할 수 없습니다!). 이 경우, 쌀의 정리는 E의 결정에 요소의 특정 인코딩이 필요하기 때문에 적용 할 수 없습니다. 따라서 우리는 부분 기능 만 결정하지 않습니다.
(문제는 특정 TM이 DFA 또는 DFA 계산 가능인지 여부를 결정하고 허용되는 언어가 비어 있는지 결정하는 것입니다 는 Rice의 정리를 통해 결정할 수 없습니다.이 경우 A = E입니다. .)
또 다른 힌트 : 중지 문제를 .
(원래 힌트는 라이스 정리를 사용하는 것이지만이 경우 직접적인 증거도 매우 간단합니다.)
Lemma 1 : L을 결정할 수 없으면 L의 보수도 마찬가지입니다.
우리는 중지 문제 이 결정 불가능 하다는 것을 알고 있습니다. 따라서 정지 문제의 Lemma 1 보완 에 따르면 도 결정 불가능합니다.
=
=
=
을 결정할 수 있다고 가정합니다 . 우리는 줄일 에 - 즉 우리는 튜링 기계 구성하는 방법을 보여줍니다 결정 TM을 사용하여 결정 . 우리는 이 결정 불가능 하다는 것을 알고 있기 때문에 모순 이 생겨서 존재할 수 없습니다. "감소"라는 단어는 단순히 주어진 문제를 우리가 이미 해결하고있는 다른 문제로 변환하여 해결하는 것을 의미합니다. 따라서 용 튜링 기계 는 다음과 같이 구성 할 수 있습니다.
입력에 = "
1. 다음을 수행 하는 TM, 의 코드를 구성하십시오 .
= "입력
1. x에서 을 시뮬레이트 합니다.
2. 멈 추면 수락하십시오 . "
2. 실행 에
3. 이 수락하면 수락하고, 그렇지 않으면 거부합니다. "
TM 이 실제로 시뮬레이션되지 않는다는 것을 이해하는 것이 중요합니다. 이러한 시뮬레이션은 무한 루프로 진행될 수 있습니다. 우리가하는 일은 의 코드를 작성하는 것입니다 .
은주어진입력 대해입력 x로 을시뮬레이션하도록 구성됩니다. M 은 x 에서 멈추거나 반복될 수 있으므로 두 가지 경우가 있습니다.
1. 모든 입력 받아 경우 에 정지하고 . 은 을 로 기각 합니다.
2. 이 반복 되면 은 주어진 모든 입력 대해서도 반복 됩니다. 어쨌든 은결정기는 거부되고, 입력에 중지 로서 .
버젼 : 항상 (로모 가정하여) 정지하고, 또한 항상 중단합니다. 은 허용하는 경우, 즉 인 경우 이 반복될 때 발생합니다.
은 은 M 이 x에서 정지하면발생하는 를 기각 합니다. 따라서 M H c T M 은 H c T M 을결정할 수없는 모순 인 H c T M 을 결정한다.
하자 R은 로부터 감소 될 에 .
축소는 다음을 제공합니다.
ⅰ)
M은 입력에 루프 X 인식 언어 IFF에 전혀 허용하지
ⅱ)
M의 입력에 정지하고 X 인식 언어 IFF에 것을 허용
모순에 의한 증명 T M = { ⟨ M , w ⟩는 | M은 w를 받아들이는 튜링 머신이다 } (우리가 결정 불가능 알고).
존재한다고 가정 , 결정하지 TM L을 ∅
사용 후 사용 TM의 구성에 S T M 위한 결정기이다 T M
입력을 "은 ⟨ M은 , 승 ⟩ , M은 TM 및 인코딩이다 w 문자열이다 :
새로운 M ( M 1이라고 함 )이 w 와 같지 않은 모든 입력을 거부 하도록 입력 w 를 고려하여 수정하십시오 . 여기서 w 는 설명에 내장되어 있습니다. 입력 값이 w 와 같으면 M 1 은 w 에서 M 을 실행 하고 M 출력값을 출력합니다.
실행 입력과 ⟨ M 1 , w ⟩
s 출력의 반대 출력. "
대한 튜링 기계 deicer이 존재 함을 가정 , 우리의 결정자 구성 할 수 있습니다 T M 모순이다.
E = {| M은 TM이고 L (M) = Φ}입니다. E Turing을 인식 할 수 있습니까?
E는 언어입니다. 언어 E를 받아들이 기 위해 튜링 머신을 만듭니다. 언어 E에 대한 Turing EM을 작성한다고 가정하십시오.
EM은 다른 튜링 머신의 인코딩으로 입력으로 제공됩니다. 입력 된 머신 M이 빈 언어를 허용하면 언어 E의 멤버가되고 그렇지 않으면 언어의 멤버가 아닙니다.
튜링 머신 M이 있다고 가정하고 빈 언어를 사용할 수 있는지 확인해야합니다. 튜링 머신 EM에는 M이 있고 문자열 eps, a, b, aa, bb, ..... EM은 M이 적어도 하나의 입력에서 최종 상태에 도달 할 수 있는지, 그리고 적어도 하나의 입력을 수락하면 점검합니다. 버려지고 언어 E에 포함되지 않습니다. 이제 TM M이 루프에 들어갈 가능성을 확인하여 M이 계속 실행되므로 어떤 것이 든 수락 할 수 있는지, 수락 할 수 없는지 결정할 수 없었습니다. 따라서이 주어진 언어 E는 RE가 아닙니다.
추신 : 나는 주어진 언어 E의 보완이 RE가 될 것이라고 생각합니다.