단일 테이프 3 상태 TM에 의해 인식 가능한 언어 클래스


9

나는 정확히 하나의 테이프와 정확히 3 개의 상태 (즉, 시작 상태)를 가진 Turing Machines에 대해 궁금했습니다. q0수락 상태 qaccept, 거부 상태 qreject). 임의의 (유한 한) 테이프 알파벳을 허용합니다 (즉, 테이프 알파벳은 입력 알파벳과 같도록 제한되지 않습니다).

편의상 해당 TM이 인식 할 수있는 언어 클래스를 호출하십시오. C3. 이 수업에 대해 몇 가지 질문이 있습니다.

  1. 있다 C3 이전에 공부 했습니까?
  2. 입니다 C3 다른 복잡성 / 계산 가능성 클래스와 동등한 것으로 알려져 있습니까?
  3. 수업인가요 C3모델 변경에 강력합니다. 예를 들어, 사용 된 TM이 단일 전환 동안 (항상 왼쪽이나 오른쪽으로 이동하는 것과는 달리) 고정되어 있거나 테이프가 오른쪽이 아닌 양방향으로 무한대로 만들어지면 클래스를 수행합니다. 3 상태 1 테이프 TM이 인식 할 수있는 언어의 변화?
  4. 어떻게 C3 일반 언어 클래스와 관련이 있으며 Regular? (특히, 모든 정규 언어는C3?)

(단순한) 검색 은 관련이 있지만 내 질문에 대답하지 않는 이 cs.stackexchange 게시물 만 가져 왔으며이 백서 는 정확하게 클래스에 대해 확실하게 읽지 못했습니다.C3 비슷하지만 다른 클래스가 아니라 (이 논문은 (1) 모든 언어가 C3 결정 가능하고 (2) C3Regular비어 있지 않은 교차가있는 개별 클래스). cs.stackexchange 게시물의 의견에서 지적했듯이 이러한 종류의 TM은 매우 특정한 셀룰러 오토마타로 생각할 수 있으므로 셀룰러 오토 마톤 이론에 대한 문헌을 알고있는 사람이 도움이 될 수 있습니다.


1
종료되지 않은 상태와 테이프 (입력 테이프)가 하나만 있으면 시스템에서 읽은 내용을 기억할 수 없습니다. 따라서 입력 알파벳에서 명확한 기호가 포함 된 입력을 정확하게 수락하거나 거부 할 수 있습니다.
David G '

4
머신은 읽은 내용을 기억할 수 없지만 읽은 내용을 다른 것으로 다시 작성할 수 있습니다. 그래서 나는 당신이주는 특성이 왜 정확한지 알지 못합니다. (즉, 나는 받아 들일 수있는 간단한 기계를 생각할 수있다01 거부 011; 여기서 동작은 전적으로 어떤 기호가 입력에 있는지에 따라 결정되지 않습니다).
Mikhail Rudoy

1
네 말이 맞아 내 직감이 틀렸어
David G

답변:


7

짐승은 매우 강력 합니다. 예를 들어 TM을 만들 수 있습니다.M 폼의 모든 문자열을 받아들입니다.

LY={r0n1mAmn}

양식의 모든 문자열을 거부합니다.

LN={r0n1mAm>n}

아이디어는 첫 번째를 변환하는 것입니다 r 으로 R머리가 끈의 중앙에 닿게 한 다음 "상태 비 저장"지그재그를 수행하십시오. 그것이 도달하면A 전에 R 그런 다음 받아들입니다.

비공식적 설명 :

  • 의 위에 r 쓰다 R 오른쪽으로 이동 (거부 준비)
  • 의 위에 0 쓰다 c 오른쪽으로 움직입니다 (중심쪽으로 이동)
  • 의 위에 1 쓰다 > 왼쪽으로 이동 1다음 왼쪽에서 오른쪽 교차로를 준비하고 왼쪽으로 이동하십시오.)
  • 의 위에 c 쓰다 < 오른쪽으로 이동 0다음 오른쪽에서 왼쪽 교차로를 준비하고 오른쪽으로 이동)
  • 의 위에 < 쓰다 > 왼쪽으로 이동 (왼쪽에서 오른쪽으로 건너, 다음 오른쪽에서 왼쪽으로 준비)
  • 의 위에 > 쓰다 < 오른쪽으로 이동 (오른쪽에서 왼쪽으로 건너, 다음 왼쪽에서 오른쪽으로 준비)
  • 의 위에 A 수락하다 R 받지 않다
  • 공백으로 b 받지 않다

예:

  :r 0 0 0 1 1 A
   R:0 0 0 1 1 A
   R c:0 0 1 1 A
   R c c:0 1 1 A
   R c c c:1 1 A
   R c c:c > 1 A
   R c c <:> 1 A
   R c c < <:1 A
   R c c <:< > A
   R c c:< > > A
   R c:c > > > A
   R c <:> > > A
   ...
   R c < < < <:A ACCEPT

이 지그재그 기술은 Rogozhin (Rogozhin 1996. TCS, 168 (2) : 215–240)이 구성한 가장 작은 2 상태 Universal Turing machine (18 개의 심볼이 있음)에 사용됩니다.

이를 증명하기 위해주의를 기울여야합니다 M 모든 입력을 정지시킵니다 (빈 입력과 정지하지 않는 모든 심볼은 "수렴"합니다). < 또는 > 무한 루프로 이어질 수 없습니다).

DavidG의 의견에 따르면 L(M) 인정 M ~의 슈퍼 세트입니다 LY (즉 LYL(M))이지만 문자열이 포함되어 있지 않습니다. LN (즉 L(M)LN=) 그리고-MikhailRudoy에 의해 논평 된대로-이것은 이것을 증명하기에 충분합니다. L(M) 규칙적이지 않습니다.

실제로 L(M) 그때도 규칙적입니다 L(M){r01A}=LY={r0n1mAmn}규칙적 일 것 (펌핑 보조 정리의 간단한 적용이 아님); 모순으로 연결됩니다.

그래서 L(M) 규칙적이지 않습니다 .

...하지만 모든 슈퍼 히어로처럼 C3 아 킬레의 발 뒤꿈치가 있습니다.

L={12n}

비공식적으로는 가장 왼쪽 만 사용할 수 있습니다 b1... (b 빈 기호입니다) 또는 rightmist 1b...후크로서 다른 방향으로 "확장"; 그러나 최종 수락 또는 거부는 반대쪽의 빈 기호에있을 수 없으므로 내부의 내부 부분에서만 수행 할 수 있습니다1충분히 긴 입력에서 시작하여 하나 "확장"할 수 있습니다.

마지막으로-논문을 읽은 후-여기에 설명 된 단일 상태 TM이 C3 class ... (그래서 새로운 것은 없습니다 :-) ... 그리고 비정규 언어가 포함되어 있음을 증명하기 위해 저자가 사용한 언어는 내 것과 매우 유사합니다.


1
나는 대답을 매우 좋아합니다 (+1). 그러나 설명 된 TM은 다른 언어를 허용합니다. 예를 들어, 문자열 rrrrr00011AAAA, r000000r0000r0000r00011A, r00011A11111111 (A 이후에 다른 문자열이 될 수도 있음)도 허용합니다.
David G

@DavidG : 당신 말이 맞아요! 나는 그것에 대해 너무 많이 생각하지 않았다 ... 나는 그것을 고치려고 노력한다.
Marzio De Biasi

4
실제로도 L 기술 된 TM에 의해 인식되는 언어가 아니며, 그 언어는 확실히 규칙적이지 않습니다. M그런 다음 L(M)r01A=L 모순에 의한 짧은 증거 L(M) 그때는 규칙적이다 L(M)r01A=L또한 규칙적 일 것이다. 모순)은L(M)규칙적이지 않습니다.
Mikhail Rudoy

3
@MikhailRudoy : 그렇습니다! 나는 같은 생각을 가지고 있었다. 나는 답변을 편집하기 위해 cstheory를 열었고 귀하의 의견을 보았습니다. 귀하의 의견을 고려하여 답변을 다시 작성할 수 있는지 봅시다 ...
Marzio De Biasi

5

나는의 힘을 과소 평가했다 C3... 실제로는 하이퍼 컴퓨 테이션 에서 그리 멀지 않습니다 !

(나는 이것을 더 명확하게하기 위해 별도의 답변으로 게시합니다)

단일 상태 튜링 머신을 만들 수 있습니다 M 그것은 형식의 문자열을 받아들입니다.

LY={a0n1mRm2n}

다음 형식의 문자열을 거부합니다.

LN={a0n1mRm<2n}

아이디어와 구성은 이전 답변과 유사합니다. a 으로 A머리가 끈의 중앙에 도달 한 다음 "상태 비 저장"지그재그를 수행하지만 전환은 상반기에 "이진 카운터"를 "구현"합니다. Z(영) 머리를 오른쪽 으로 튕겨서ZS (1) 다음에 머리가 닿을 때 S으로 변환 )머리를 왼쪽으로 움직이게하십시오. 머리가 도달하면) 그것을 Z. 줄의 후반은 단항 카운터처럼 동작합니다.

전환은 다음과 같습니다.

  • 의 위에 r 쓰다 R 오른쪽으로 이동 (거부 준비)
  • 의 위에 0 쓰다 Z 오른쪽으로 이동하십시오 (중심쪽으로 이동하여 이진 카운터를 0으로 설정하십시오.)
  • 의 위에 1 쓰다 > 왼쪽으로 이동 1 단항 카운터를 줄이고 다음 왼쪽에서 오른쪽 교차를 준비한 다음 이진 카운터로 다시 바운스합니다)
  • 의 위에 > 쓰다 < 오른쪽으로 가십시오 (줄의 후반을 오른쪽에서 왼쪽으로 교차, 다음 왼쪽에서 오른쪽으로 준비하십시오)
  • 의 위에 < 쓰다 > 왼쪽으로 가십시오 (줄의 후반을 왼쪽에서 오른쪽으로 교차, 다음 오른쪽에서 왼쪽으로 준비하십시오)
  • 의 위에 Z 쓰다 S 오른쪽으로 이동합니다 (숫자를 1로 변환하고 단항 카운터쪽으로 오른쪽으로 튀어 오름)
  • 의 위에 S 쓰다 ) 왼쪽으로 이동합니다 (숫자를 지우고 머리가 "캐리"처럼 왼쪽으로 이동하도록하고 첫 번째 부분의 왼쪽에서 오른쪽으로 준비).
  • 의 위에 ) 쓰다 Z 오른쪽으로 이동 (바운스를 유발할 0을 설정하고 헤드를 오른쪽으로 이동)
  • 의 위에 A 수락하다 R 받지 않다
  • 공백으로 b 받지 않다

예:

 :a 0 0 0 1 1 1 1 1 1 1 1 R
  A:0 0 0 1 1 1 1 1 1 1 1 R
  A Z:0 0 1 1 1 1 1 1 1 1 R
  ...
  A Z Z Z:1 1 1 1 1 1 1 1 R
  A Z Z:Z > 1 1 1 1 1 1 1 R
  A Z Z S:> 1 1 1 1 1 1 1 R
  A Z Z S <:1 1 1 1 1 1 1 R
  A Z Z S:< > 1 1 1 1 1 1 R
  A Z Z:S > > 1 1 1 1 1 1 R
  A Z:Z ) > > 1 1 1 1 1 1 R
  A Z S:) > > 1 1 1 1 1 1 R
  A Z S Z:> > 1 1 1 1 1 1 R
  ...
  A Z S:Z > > > 1 1 1 1 1 R
  ...
  A Z S S < < <:1 1 1 1 1 R
  ...
  A S:) ) > > > > 1 1 1 1 R
  ...
 :A ) ) ) > > > > > > > > R ---> ACCEPT

이를 증명하기 위해주의를 기울여야합니다 M 모든 입력을 정지시킵니다 (빈 입력과 정지하지 않는 모든 심볼은 "사이클"을 거부합니다) (,S,Z 또는 <,> 무한 루프로 이어질 수 없습니다).

언어 L(M) ~의 슈퍼 세트입니다 LY (LYL(M))이며 다음의 문자열을 포함하지 않습니다. LN (L(M)LN=).

한다고 가정 L(M)이다 문맥 무료 다음, -의 CFL의 폐쇄 속성으로, 일반 언어로 교차{r01A} CF 언어를 생성하십시오.

L(M){r01A}={a0n1mRm2n}=LY

그러나 CFL 에 대한 Ogden의 Lemma 를 간단히 적용 하면LYCFL: 그냥 충분히 길게 sLY 그리고 모든 표시 0에스; 적어도 하나의 0을 펌핑 할 수 있으며1s 펌핑 스트링에서 지수 성장 2n 끈으로 연결 LY).

그래서 L(M) Context Free가 아닙니다 .

... 이것이 또 다른 "바람을 재발견"하는 대답인지 아니면 새로운 (작은) 결과인지 궁금합니다.


음, 여기의 언어는 coNLOGTIME만큼 낮은 클래스에서 계산 가능하므로 하이퍼 계산이 정확히 필요하지 않습니다. (사실로,LYLNDLOGTIME에서도 분리 될 수 있습니다.)
Emil Jeřábek

EmilJeřábek @ : 나는 "너무 멀리"라고 ... 그 작은 클래스의 야망을 억압하지 않습니다 ... :-)
MARZIO 드 BIASI

2

이 답변에서 Turing 기계에는 양방향 무한 테이프가 있다고 가정합니다. 단방향 무한 테이프에는 해당 주장이 적용되지 않습니다.

먼저 언어 클래스를 정의하겠습니다 C33 개 상태의 단일 테이프 튜링 기계 로 결정할 수 있는 모든 언어의 클래스C33 개 상태의 1 테이프 튜링 기계에서 인식 할 수 있는 언어 클래스로 정의 됨 ). 나는 수업을 소개했다C3 원래 답변에서 무의식적으로 수업을 교환했기 때문에 C3C3 (나는 단지 수업을 고려했다 C3).

이 답변은 @MarzioDeBiasi 답변을 보완합니다. 그는 수업이C3C3CFL에는 포함되어 있지 않으므로 매우 흥미로운 언어가 포함되어 있습니다. 그러나이 글에서 보여 드리 듯이 각 언어는LC3 설정 한 속성이 있습니다 {1n;nN{0}} 어느 쪽이든 L 또는 그 보완 LC. 그러므로C3또한 매우 제한적입니다 (예 : 사소한 단항 언어 만 포함합니다{}, {ε}, {1n;nN}{1n;nN{0}}. 클래스C3조금 더 단항 언어를 포함합니다. 그러나, 그 보유하고 있는 경우LC31nL ...에 대한 n1그런 다음 1mL 모든 mn. 간단한 추론은 모든 일반 언어가C3 또는 C3. 또한 언어{1} 에 없다 C3 또는 C3.


대담한 주장에 대해 C3, 단일 테이프 튜링 머신임을 증명하기에 충분합니다. M 항상 3 개의 상태에서 모든 문자열을 수락하거나 거부합니다. {1n;nN{0}}. 다음과 같은 형식의 문자열을 가정하십시오.1n, nN{0}에 주어진다 M. 세 가지 경우가 있습니다.

1) 언제M 1을 읽으면 수락하거나 거부합니다.

2) 언제M1을 읽으면 머리가 왼쪽으로 이동합니다. 우리가 원한다면M이 입력을 정지 시키려면 공백 기호를 승인, 거부 또는 오른쪽으로 이동해야합니다. 따라서 테이프의 초기 셀 오른쪽에있는 셀을 방문하지 않습니다. 그렇다면 입력 1에서 영원히 실행됩니다.

3) 언제M 1을 읽으면 머리가 오른쪽으로 이동합니다.이후에n 단계, 테이프의 내용은 An 어디 A 테이프 알파벳과 머리의 상징입니다 M 마지막 오른쪽의 가장 왼쪽 빈 기호에 있습니다. A. 우리가 원한다면M이 입력을 중단하려면 공백 기호의 왼쪽을 수락, 거부 또는 왼쪽으로 이동해야합니다. 사례 2)에서와 같이M 이제 가장 오른쪽의 셀을 직접 방문하지 않습니다. A. 그렇다면M 입력 1에서 영원히 실행됩니다.

세 가지 경우 모두에서 M 세트에서 모든 문자열을 받아들입니다. {1n;nN{0}} 또는 그것들을 모두 거부합니다.


에 대한 주장의 증거 (굵은 글씨) C3위와 같은 줄을 따릅니다. 우리는 1 테이프 3 상태 튜링 기계를 사용합니다.M 문자열을 받아들입니다 1n 일부 n1. 가정M 입력이 주어진다 1m ...에 대한 mn. 우리는 그것을 증명해야M이 입력을 받아들입니다. 우리는 3 가지 경우가 있습니다 :

1) 언제M 1을 읽습니다.

2) 언제M1을 읽으면 머리가 왼쪽으로 이동합니다. 때문에M 입력을 받아들입니다 1n빈 기호를 승인하거나 오른쪽으로 이동해야합니다. 따라서 결코 방문하지 않습니다.n초기 셀의 오른쪽에있는 셀. 그렇다면 입력시 영원히 실행될 것입니다.1n.

3) 언제M1을 읽으면 머리가 오른쪽으로 이동합니다. 이후에m 단계, 테이프의 내용은 Am 어디 A 테이프 알파벳과 머리의 상징입니다 M 마지막 오른쪽의 가장 왼쪽 빈 기호에 있습니다. A. 때문에M 입력을 받아들입니다 1n공백 기호를 승인하거나 왼쪽으로 이동해야합니다. 사례 2)에서와 같이M 이제는 절대 방문하지 않을 것입니다 n가장 오른쪽의 왼쪽 셀 A. 입력에 있기 때문입니다1n, M 빈 셀 기호가 포함되어 있기 때문에 초기 셀 바로 왼쪽에있는 셀을 방문하지 않고 읽을 경우 영원히 실행됩니다.

세 가지 경우 모두에서 M 세트에서 모든 문자열을 받아들입니다. {1m;mn}.


우선, 질문의 어느 곳에서도 M이 모든 입력에서 정지해야한다고 말하지 않으므로이 답변의 논리를 망칠 수 있습니다. 그 외에도 여러 경우의 논리가 나에게 이해가되지 않습니다. 예를 들어, 사례 3에서 M이 공백과 A 둘 다에서 왼쪽으로 이동하면 M은 가장 오른쪽 A의 왼쪽에있는 셀을 직접 방문합니다 (답변의 주장과 직접 대조 됨)
Mikhail Rudoy

좋은; 그것을 진술하는 다른 방법은 다음과 같습니다.Σ={1} (단어) k s.t. 1kL(M)L(M)={1nn>0}...
Marzio De Biasi

@MikhailRudoy, ​​먼저 사례를 명확히하기 위해 : 머리가 A와 빈 기호 모두에서 왼쪽으로 움직이면 영원히 왼쪽으로 움직이고 멈추지 않습니다. 그것이 (100 단계 후) 가장 오른쪽 A의 바로 왼쪽 셀을 방문하면 입력 1의 경우 결코 멈추지 않습니다 (이 경우 가장 오른쪽 A의 가장 왼쪽에있는 셀은 공백 기호를 포함합니다).
데이비드 G

@MikhailRudoy, ​​나는 Turing 기계가 정지해야한다고 가정합니다. 나는 영원히 실행될 가능성도 포함하도록 답변을 편집 할 것입니다. 결과는 비슷합니다.
David G

3
@MikhailRudoy : BTW 부화 문제는 1 개의 상태 Turing 기계에 대해 결정될 수있다; Gabor T. Herman, 일반화 된 단일 상태 튜링 기계의 균일 한 정지 문제를 참조하십시오 . 설명 된 모델은 사용자와 약간 다릅니다. TM이 필사 구성으로 끝나면 수락합니다 (승인 / 거부 없음). 그러나 결과는 모델에도 적용됩니다 (추가 승인 / 거부 상태로 이어지는 기호에서 TM을 중지).
마르 치오 데 비아시
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.