Чи розпізнається ця мова за допомогою 3 символів TM в O (n log n)?


10

Я грав із дуже цікавим і досі відкритим питанням " Алфавіт односмугової машини Тюрінга " (Емануеле Віола) і придумав наступну мову:

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

де - число 1 s у рядку x.count1(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 і одночасно зберігати m 1 с праворуч;|x|=2m0ϵ12m 1
  • потім порахуйте число s модуля 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

Якщо - натуральне число, представлене x, ніж c o u n t 1 ( x ) завжди дорівнює 1 і тому L = { 10 } ? |x|=n=2mxcount1(x)1L={10}
Марк Бері

Вибачте | х | означає довжину рядка x. Приклад: x = 01101111, n = 8, m = 3, k = 2, і таким чином xL
Marzio De Biasi

1
До речі, це відмінний кандидат на питання Емануеле, оскільки він знаходиться в : він не є регулярним накачувальною лемою, тому не може бути o ( n log n ) , але це O ( n log п ) . Θ(nlogn)o(nlogn)O(nlogn)
Джошуа Грохов

Відповіді:


10

Не можете ви використати ту саму ідею, що у вас у випадку з 4 символами , із такими модифікаціями:

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

O(1)


Ти правий! ... тепер я підозрюю, що відповідь на запитання Емануеля - так ... але він все ще відкритий, тому, ймовірно, це не так просто довести це формально :-( Дякую!
Marzio De Biasi
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.