나는 매우 흥미롭고 여전히 열린 질문 " 단일 테이프 Turing machine의 알파벳 "(Emanuele Viola) 을 가지고 놀고 있었고 다음 언어를 생각해 냈습니다.
여기서 의 개수를 문자열 내의 X들.1
예를 들어, x = 01101111이면 n = 8, m = 3, k = 2; 그래서
L은 단일 테이프와 단계 에서 알파벳 의 3 개 기호로 Turing Machine에서 인식 할 수 있습니까 ?
4 개의 기호를 사용하면 대답은 '그렇다'입니다.
- 체크하면 교체 과 S 과 로들 과 동시에 저장에서 우측 S;
- 다음의 숫자 카운트 의 모듈로 에 .
예를 들면 다음과 같습니다.
....01101111....... input x (|x| = 8 = 2^3)
000.021.1212.0001.. div 2, first sweep (000. can safely be used as a delimiter)
000.022.1222.00011. div 2, second sweep
000.022.2222.000111 div 2, third sweep --> m = 3 (= log(n) )
000..22.2222....111 cleanup (original 1s are preserved as 2)
000..22.2221102.... start modulo m=3 calculation
000..22.2210022.... mod 3 = 2
000..22.2000222.... mod 3 = 0
000..22.0012222.... mod 3 = 1
000..20112.2222.... mod 3 = 2
000..11122.2222.... ACCEPT
만약 이 보다 표시되는 자연수 는 항상 1 과 같으므로 L = { 10 } ?
—
Marc Bury
죄송합니다 | x | 문자열 x의 길이를 의미합니다. 예 : x = 01101111, n = 8, m = 3, k = 2, 따라서
—
Marzio De Biasi
그건 그렇고, 그것은 Emanuele의 질문에 대한 훌륭한 후보입니다. 왜냐하면 그것이 이기 때문에 : 펌핑 보조에 의해 규칙적이지 않으므로 o ( n log n ) 일 수는 없지만 O ( n log입니다 n ) .
—
Joshua Grochow