Приклади, у яких розмір алфавіту (


9

Дозволяє Σбути алфавітом, тобто не порожнім кінцевим набором. Рядок - це будь-яка кінцева послідовність елементів (символів) зΣ. Як приклад,{0,1} - двійковий алфавіт і 0110 є рядком для цього алфавіту.

Зазвичай до тих пір, поки Σ містить більше 1 елемента, точну кількість елементів у Σне має значення: у кращому випадку ми десь опиняємося з іншою константою. Іншими словами, насправді не має значення, якщо ми використовуємо двійковий алфавіт, числа, латинський алфавіт або Unicode.

Чи є приклади ситуацій, коли важливо, наскільки великий алфавіт?

Причина, яка мене цікавить, полягає в тому, що мені трапилося натрапити на один такий приклад:

Для будь-якого алфавіту Σ визначимо випадковий оракул OΣ бути оракулом, який повертає випадкові елементи з Σ, такий, що кожен елемент має рівний шанс повернутись (тому шанс для кожного елемента є 1|Σ|).

Для деяких алфавітів Σ1 і Σ2 - можливо, різного розміру - розгляньте клас машин Oracle з доступом до OΣ1. Нас цікавлять машини oracle цього класу, які поводяться так само, якOΣ2. Іншими словами, ми хочемо перетворити оракулOΣ1 в оракул OΣ2за допомогою машини Тьюрінга. Ми назвемо таку машину Тьюрінга програмою перетворення.

Дозволяє Σ1={0,1} і Σ={0,1,2,3}. ПеретворенняOΣ1 в оракул OΣ2 легко: ми запитуємо OΣ1 двічі, перетворюючи результати таким чином: 000, 011, 102, 113. Зрозуміло, ця програма працюєO(1) час.

Тепер нехай Σ1={0,1} і Σ={0,1,2}. Для цих двох мов працюють усі програми перетворенняO() час, тобто немає програм перетворення з OΣ1 до OΣ2 які бігають O(1) час.

Це можна довести суперечливістю: припустимо, існує програма перетворення C з OΣ1 до OΣ2 бігаючи O(1)час. Це означає, що єdN такий як C робить щонайбільше d запити до Σ1.

C може становити менше, ніж dзапити в певних шляхах виконання. Ми можемо легко побудувати програму перетворенняC що виконує C, відслідковуючи, скільки разів робився запит на оракул. Дозволяєk бути кількість запитів oracle. C потім робить dk додаткові запити oracle, відкидання результатів, повернення того, що C повернувся б.

Таким чином, є саме такі |Σ1|d=2d шляхи виконання для C. Саме так1|Σ2|=13 цих шляхів виконання призведе до C повернення 0. Однак,2d3не є цілим числом, тому ми маємо протиріччя. Отже, такої програми не існує.

Більш загально, якщо у нас є алфавіти Σ1 і Σ2 з |Σ1|=n і |Σ2|=k, то існує програма перетворення з OΣ1 до OΣ2 якщо і лише тоді, коли всі прайми, що з'являються в основній факторизації n також з'являються в основній факторизації k (тому експоненти праймерів у факторизації не мають значення).

Наслідком цього є те, що якщо у нас є генератор випадкових чисел, що генерує двійковий рядок довжини l, ми не можемо використовувати цей генератор випадкових чисел для генерації числа в {0,1,2} з точно однаковою ймовірністю.

Я придумав вищезгадану проблему, коли стояв у супермаркеті, обдумував, що слід пообідати. Мені було цікаво, чи можу я використовувати монети кидок, щоб визначитись між варіантами A, B і C. Як виявляється, це неможливо.


5
Доказ Дінура теореми PCP в значній мірі покладається на маніпулювання розміром алфавіту, конкретно підірвавши його, а потім повторно зменшивши його за допомогою складу PCP. Без другого фрагменту кроку (відведення розміру алфавіту назад вниз) доказ не працює.
Даніель Апон

2
@Daniel Apon: Чому б не повторно розмістити відповідь?
Джошуа Грохов

@Joshua, ой. Звичайно. :)
Даніель Апон

Відповіді:


11

У теорії формальної мови є кілька прикладів, коли 2-символьні та 3-символьні алфавіти дають якісно різну поведінку. Козен наводить такий приємний приклад (перефразоване):

Нехай алфавіт буде Σ= {1, .., k} зі стандартним числовим упорядкуванням і визначте сортування (x) як перестановку слова x, в якому букви x відображаються в упорядкованому порядку. Розширити сортування (A) = {sort (x) | х A} і розгляньте таку заяву:

Якщо A без контексту, то сортування (A) є без контексту.

Це твердження справедливо для k = 2, але хибне для k 3.


11

Доказ Дінура теореми PCP значною мірою спирається на маніпулювання розміром алфавіту.

Зокрема, загальна структура доказування - це ітеративне застосування техніки живлення графіків, логарифму в розмірі графіка кількість разів. На кожній ітерації графік попередньо обробляється у звичайний графік, що розширюється, посилений потужністю (яка збільшує розмір алфавіту), а потім застосовується композиція PCP (перетворюючи кожне обмеження на великий алфавіт у систему обмежень над невеликий алфавіт).

Неявна мета процесу - знайти спосіб повторного використання кроку ампліфікації, поки значення UNSAT не стане постійною часткою (що доводить теорему PCP). Ключовим моментом є те, що якщо розмір алфавіту не відводиться кожен раз, отриманий графік не є тим, що потрібно для остаточного зменшення.


9

Вимоги вашого прикладу досить суворі. Якщо ви розслабите її, потрібно лише виконати конверсіюO(1)в очікуванні . Можна зробити вибірку рівномірно з{0,1,2} використовуючи, в очікуванні, постійну кількість кидок монет.

Я не фахівець з цього питання, але одним із приємних прикладів того, що розмір алфавіту має значення, є кодування та стислі структури даних. Уявіть, що ви хочете представити повідомлення над алфавітом{0,1,2} в алфавіті {0,1}(наприклад, щоб зберегти його у вашому двійковому комп’ютері). Ви хочете мінімізувати необхідний простір, але в той же час, ви хочете мати можливість швидко читати та писати окремі символи повідомлення (скажімо, уO(1)). Такі проблеми вивчаються вже досить давно. Нещодавній документ Додіса, Патраску та Торупа про нього та посилання на них мають стати хорошим моментом для початку.


8

У кодах для виправлення помилок можливо, що існує принципова різниця між бінарними кодами та кодами над більшими алфавітами в тому, що приклади Гілберта Варшамова для кодів, які виправляють частину помилок (які по суті є жадібними або випадковими прикладами), деякі вважають бути бісною у двійковому випадку і, як відомо, не є щільним над великим алфавітом за допомогою алгебраїко-геометрійних кодів. Це змусило деяких думати, що стандартне визначення кодів виправлення помилок для великого алфавіту не є правильним аналогом двійкових кодів виправлення помилок.


5

Я зіткнувся з цікавим випадком у своєму власному дослідженні невеликих відмінностей у розмірі алфавіту, що суттєво відрізняється в отриманій теорії. Приблизний опис проблеми навчання ймовірнісних схем полягає в наступному: учень може переосмислити ворота прихованої схеми і спостерігати отриманий вихід, а мета - створити схему "функціонально еквівалентної". Для булевих схем, коли ворота мають "вплив" на вихід, можна виділити впливовий шлях від цього ворота до виходу ланцюга. Для схем розміру алфавіту3це вже не відбувається, а саме - є схеми, які мають ворота з великим впливом на вихідну величину, але ніякого впливу по жодному шляху до виходу! Ми знайшли цей результат досить дивовижним.

Результат дещо технічний, але якщо вам цікаво, ви можете порівняти лему 8 з розділом 4.1 для відповідних тверджень теореми.


Це здається дуже цікавим. Ви намагалися змінити визначення впливу, щоб побачити, чи можете ви отримати щось подібне до булевого випадку?
Каве

Наше визначення впливу є цілком природним - ви дивитесь на розподіл ймовірностей вихідного вузла з урахуванням різних параметрів цілі. Якщо всі параметри дають однаковий точний розподіл ймовірностей, то ми говоримо, що ціль не впливає. Якщо ви зацікавлені, модель, над якою ми працювали, називається моделлю VIQ, яка, на мою думку, є найцікавішою моделлю навчання схеми. Це було визначено в ( cs.yale.edu/homes/aspnes/… ) Angluin et al. у STOC '06.
Лев Рейзін
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.