문제

변경되는 TM이 읽혀지는 동일한 심볼을 쓸 수없는 TM이 될 수있게 해줍니다. 형식 : $ m ^ *= (Q, \ SIGMA, \ GAMMA, \ Δ, Q_ , $ \ Δ (q, a)= (q ^ *, a ^ *, c), \ neq a ^ * $ $ qq ^ * \ in q, a, a ^ * \ in \ gamma, c \ in \ {r, l \} $ . 이제 변화하는 TM이 정상적인 TM과 동일하다는 것을 증명해야합니다.

내 추측은 변화하는 TM을 시뮬레이션 할 수있는 다중 테이프 TM을 만드는 것이 었습니다 (따라서 TM은 모든 멀티 테이프 TM이 동등한 단일 테이프 TM을 갖기 때문에 변화하는 TM에 해당)이지만마침 (공식적이고 원 지식이 없으므로).

도움이 되었습니까?

해결책

변경 TM이 TM을 시뮬레이트 할 수 있음을 증명하는 또 다른 쉬운 방법입니다. 이전 에이 해결책의 장점은 "체류"움직임이 허용되는지 여부에 관계없이 추가 지루한 작업없이 작동한다는 것입니다.

$ T $ 테이프 알파벳 $ \ gamma $ 동일한 상태 공간과 테이프 알파벳 $ \ gamma '$ 같은 변경 TM $ t'$ 을 만듭니다. $ 2 | \ 감마 | $ 기호 : 각 기호 $ a \ in \ gamma $ 모두 추가 < SPAN 클래스="수학 용기"> $ A $ 및 새 기호 $ a '$ $ \ gamma '$ .

$ (q, a) \ ~ $ t의 $ $ $ T '$ ( $ a= b $ < / span>) :

  • $ (q, a) \ ~ (q ', b', m) $
  • $ (q, a ') \ to (q', b, m) $

다른 단어는 $ a $ $ a '$ 을 대우하는 것처럼 동일했다. "일반"기호 (즉, $ \ gamma $ 에서 하나씩)를 읽을 때마다 "Prime"기호를 쓸 것입니다. "Prime"심볼 (즉, $ \ gamma '\ setminus \ gamma $ )을 읽을 때마다 "일반"기호를 쓸 것입니다.

다른 팁

TM이 변경된 TM을 시뮬레이션 할 수 있으므로 대화를 표시하면됩니다. 변화하는 튜링 머신에서 "체류"움직임을 사용할 수있게 해주십시오. 이 가정을 제거하고이를 유지하는 것은 쉽지 않고 (그러나 지루한) 다음과 같은 논쟁을 더욱 직관적으로 만듭니다.

다음을 수행 할 수 있습니다. TM $ T $ 상태 집합 $ Q $ 테이프 알파벳 $ \ gamma $ . 그런 다음 $ q '= q \ 컵 (q \ times \ gamma \ \ Times \ {l, r \}) $ 및 테이프 알파벳 $ \ gamma '=gamma \ cup \ {\ gamma \} $ .

직관적으로 $ q \ $ T '$ 은 State $ T $ , $ (q, a)의 $ t '$ 은 우리가 계획하는 사실을 나타냅니다. 현재 테이프 셀에서 $ a $ 을 씁니다. 그런 다음 상태 $ q $ 으로 전환하고 $ M $ (이 아닌이 상태가 전환, 우리는 미래의 계획을 추적하고 있습니다. < / P>

각 전환 $ (Q, A) \, $ T의 $ (q, m) $ $ T '$ :

에서 $ 다음과 같은 전환

  • $ (q, a) \ ~ (q ', b, m), \ gamma, s) $
  • $ (q ', b, m), \ gamma) \ ~ q', b, m) $

직관적으로 이것은 두 가지 작업이있는 테이프에서 기호 $ b $ 을 대체합니다. 1) $ \ gamma $ 머리를 움직이지 않고 $ \ gamma $ $ b $ , 의도 한 방향 $ m $ 의 머리를 움직이고 해당 상태 $ q '$로 전환 $ T $ .


"체류 이동"이 허용되지 않는 경우 TM의 TM의 지루한 Simulaton입니다. $ \ gamma '=gamma \ chup \ {\ gamma_1, \ gamma_2 \} $ $ q'= q \ 컵 (q \ times \ gamma \ times \ {l, r \ times \ gamma ') $ . 각 전환 $ (Q, A) \ ", $ T $ $ T '$ 에서 다음과 같은 전환으로 :

  • $ (q, a) \ to (q ', b, m, \ gamma_1), \ gamma_1, r $ ,
  • $ ((q ', b, m, \ gamma_1), x) \ to (q', b, m, x), \ gamma_2, l) $ < / span> $ \ quad \ forall x \ in \ gamma $ ,
  • $ ((q ', b, m, x), \ gamma_1) \ to ((q', b, m, x), \ gamma_2, r) $ < / span> $ \ quad \ forall x \ in \ gamma $ ,
  • $ ((q ', b, m, x), \ gamma_2) \ - (q', b, m, \ gamma_1), x, l) $ < / span> $ \ quad \ forall x \ in \ gamma $ ,
  • $ (q ', b, m, \ gamma_1), \ gamma_2) \ ~ (q', b, m) $

우리가하는 일은 다음과 같습니다. 1) $ \ gamma_1 $ 을 작성하고 오른쪽으로 이동합니다. 2) 현재 테이프 기호 $ x $ , $ \ gamma_2 $ 을 왼쪽으로 바꿉니다. 3) 테이프 기호 $ \ gamma_1 $ $ \ gamma_2 $ 을 사용하고 오른쪽으로 움직입니다. 4) 저장된 유형 기호 $ \ gamma_2 $ 을 대신하여 $ b $ , $ m $ 에 따라 움직이고 State $ q '$ .

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 cs.stackexchange
scroll top