Является ли этот язык распознаваемым 3 символами ТМ в O (n log n)?


10

Я играл с очень интересным и все еще открытым вопросом « Азбука одноленточной машины Тьюринга » (Эмануэле Виола) и придумал следующий язык:

L={x{0,1}n s.t. |x|=n=2m and count1(x)=km;n,m,k1}

где - это число с в строке x.1count1(x)1

Например, если x = 01101111, то n = 8, m = 3, k = 2; такxL

Может ли L быть распознан машиной Тьюринга с одной лентой и алфавитом из 3 символов за шагов? O ( n log n ){ϵ,0,1}O(nlogn)

Если мы используем 4 символа, ответ - да:

  • проверьте, если заменяя с на и с на и в то же время сохраните с справа; 0 ϵ 1 2 м 1|x|=2m0ϵ12m 1
  • затем посчитайте число с по модулю в .m O ( n log n )2mO(nlogn)

Например:

....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

Если является натуральное число , представленное , чем всегда равна , и поэтому L = { 10 } ? x c o u n t 1 ( x ) 1|x|=n=2mxcount1(x)1L={10}
Марк Бери

Извините | х | означает длину строки х. Пример: x = 01101111, n = 8, m = 3, k = 2 и, таким образом, xL
Марцио Де Биаси

1
Кстати, это отличный кандидат на вопрос Эмануэле, поскольку он находится в : он не регулярен по лемме прокачки, поэтому не может быть , но это . Θ(nlogn)O ( n log n )o(nlogn)O(nlogn)
Джошуа Грохов

Ответы:


10

Разве вы не можете использовать ту же идею, что и у случая с 4 символами , со следующими модификациями:

  • Всегда обрабатывайте пару символов одновременно.
  • (00,01,10,11)(ϵ0,ϵ1,0ϵ,1ϵ)ϵϵ
  • Используйте аналогичный трюк для шагов "мод 2".

O(1)


Вы правы! ... теперь я подозреваю, что ответ на вопрос Эмануэле - да ... но он все еще открыт, так что, вероятно, это не так легко доказать формально :-( Спасибо!
Марцио Де Биаси
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.