我在玩一个非常有趣且仍未解决的问题“ 单带图灵机的字母 ”(作者:Emanuele Viola),提出了以下语言:
其中是字符串x 中的个数。
例如,如果x = 01101111,则n = 8,m = 3,k = 2;所以
图灵机可以用单个胶带和3个符号的字母来识别L吗在步骤是什么?
如果我们使用4个符号,则答案为是:
- 检查代替0 s的ε和1和与S 2,并在同一时间存储器米1个 S于权;
- 然后在O (n log n)中计算 s模m的个数。
例如:
....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
如果是自然数由下式表示X比Ç Ò ù Ñ 吨1 (X )总是等于1,因此大号= { 10 }?
—
Marc Bury
抱歉| x | 表示字符串x的长度。一个例子:X = 01101111,N = 8,M = 3,K = 2,因此,
—
马兹奥德BIASI
顺便说一句,这是Emanuele问题的极好候选者,因为它在:泵激引理不是规则的,所以不能是o (n log n ),但是它是O (n log n )。
—
Joshua Grochow 2011年