Чи є якісь некінцеві автомати?


35

У теорії автоматів ми всі читаємо автомати як кінцеві автомати з самого початку. Що я хочу знати, чому автомати є обмеженими? Щоб було зрозуміло, що це в кінцевому автоматі - алфавіті, мові, рядках, зроблених регулярними виразами, чи що? А чи є (теоретично) якісь некінцеві автомати?


1
Безумовно, не мова чи "рядки, зроблені з регулярними виразами"; багато простих регулярних виразів відповідають нескінченній кількості рядків (але їх можна розпізнати скінченним автоматом.)
alexis

Я задав запитання, маючи на увазі нескінченне
Слова, як Джаред

Відповіді:


34

Усі моделі автоматів, з якими ти зазвичай стикаєшся, представлені безмежно; інакше їх буде незліченно багато, це означає, що вони не захоплені Тьюрінгом. Або, в CS-думці, вони були б марними¹.

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


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


  1. Я свідомо не враховую тут гіперкомп'ютацію для цілей цього питання.

Коментарі не для розширеного обговорення; ця розмова перенесена в чат .
Рафаель

32

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

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

Однак ця стаття ( повний текст ) розробляє варіацію, коли ймовірність переходу також залежить від вектора реальної кількості попередніх результатів. Стан цієї системи є поєднанням дискретного стану Маркова та кортежу реальних чисел («модель змішаного стану Маркова»), отже, він може знаходитися у нескінченній кількості різних станів.

Коротше кажучи, некінцеві автомати теоретично чітко визначені, а іноді навіть зустрічаються.


1
Повне розкриття: Я один із авторів згаданої роботи. Я не впевнений, чи вважається це належним розголошенням або неактуальним саморекламою ...
alexis

6
Я думаю, що цілком нормально посилатись на власну роботу там, де це доречно - якщо ви один з провідних експертів з тієї чи іншої теми, ми раді вам! - і простого розкриття як вашого цілком достатньо. Спасибі!
Рафаель

Автомати з кінцевим станом не включають автомати автоматичного натискання, чи не так? Чи є певна причина в цілому до реальних держав? Я не впевнений, чи пропускаю я щось тут, чому цей очевидний приклад не спрацював, або якщо ви просто випадково вибрали натомість незвичайний приклад.
Мехрдад

1
Я думаю, він намагається запитати, чому ви не використовували більш звичайний не FSA, як автоматичний віджимання, замість того, щоб перейти на щось на зразок змінних реального значення стану.
user2357112 підтримує Моніку

1
Ну, головним чином, тому, що це я придумав! Але також "стан" моделі Маркова зі змішаним станом складається з фіксованої кількості параметрів, але все ще існує нескінченна кількість станів (визначається як поточне положення + ймовірності переходу), оскільки деякі параметри є реальними числами (але впливають переходи, а не лише вихід). У випадку PDA, нескінченність походить від необмеженого розміру стека; але є лише обмежена кількість правил, що мають кінцеву довжину, тому на одному кроці існує лише обмежена кількість можливих бебайорів.
alexis

19

У кінцевому автоматі є досить багато кінцевості: кількість станів, розмір основного алфавіту та довжини рядків, прийнятих машиною.

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


А що, якщо це нескінченний лише алфавіт? що робити, якщо ми працюємо, наприклад, із регулярним виразом на натуральні числа? це можливо?
парвін

8
Якщо автомат кінцевий, але алфавіт нескінченний, то автомат матиме кінцеву кількість переходів із кожного стану. Будь-який символ, не пов'язаний з одним із переходів, не розпізнається автоматом. Як результат, ви можете замінити нескінченний алфавіт кінцевим алфавітом, що містить лише символи, що з’являються в переходах автомата, і автомат все одно прийме абсолютно ту саму мову.
Кевін - Відновіть Моніку

3
@parvin Не дуже. Тоді вам знадобиться нескінченна кількість переходів між вашими (кінцевою кількістю) станами, які ви все ще не можете представити. Якщо ви шукаєте предикати (як-от "усі парні входи йдуть від А до В, всі непарні входи йдуть від А до С"), ви в основному розбиваєте свій алфавіт вниз на кінцеву кількість класів еквівалентності.
Бергі

@Kevin, це залежить від того, як ви визначаєте "кінцеву кількість переходів". Розглянемо звичайну (кінцеву) FSA з наступним станом, обраним згідно з будь-яким кінцевим розділом натуральних чисел: наприклад, за рештою ділення на 7. Або розглянемо аналогічну ситуацію, що включає реальні числа. Діаграма стану повністю обмежена, але вона чітко визначена нескінченним алфавітом.
alexis

@Parvin Я б сказав, що відповідь "так" (див. Мій попередній коментар).
alexis

10

Насправді в теорії автоматів (яка багато що відходить від витоків Клейна, Рабіна та Скотта) існує багато форм автоматів, які не є кінцевими. Це виникає з кількох причин.

Автомати Pushdown , наприклад, це автомати, що мають нескінченний набір конфігурацій (у них є кінцева кількість станів, але реальність така, що їх слід розглядати як "нескінченні автомати").

У цьому ж ключі є й інші приклади нескінченних автоматів, для яких простір стану нескінченний, але з великою структурою. Наприклад, розглядається клас автоматів, що мають як простір стану (векторний простір) кінцевий вимір, і як функції переходу лінійні карти (плюс деякі початкові кінцеві речі). Вони відомі як зважені автомати над базовим полем (завдяки Шютценбергеру в 61 році). Їх можна мінімізувати і перевірити на рівність. Інші приклади включають регістри автоматів (ці автомати мають обмежений набір регістрів і працюють над нескінченним алфавітом: вони можуть порівнювати літери з регістрами та зберігати літери в регістрах), і більш сучасну форму номінальних автоматів(які мають однакову виразність, але мають кращі основи та властивості). Порожнеча таких автоматів вирішальна.

Aauua, а стан приймає, якщо він належить до L). Існує також кінцевий об'єкт (який має мови держав!). Існування цих двох об'єктів є одним із способів на високому рівні пояснити, чому детерміновані автомати можуть бути мінімізовані і тісно пов'язані з конгруентністю Міхіл-Нерода.

На закінчення є нескінченні автомати, але моделі, які вперше вивчаються на лекції, завжди є кінцевими.


2

Я думаю, що питання припускає висновок, що не існує нескінченних державних автоматів, коли вони є, вони просто не вартують підводити.

В теорії автоматів існує ієрархія повноважень різних віртуальних моделей. У того, кого я дізнався, було 4 (про що я пам’ятаю, пройшов уже якийсь час), у того, що я знайшов у Вікіпедії, є 5. Найслабші в будь-яких автоматизованих автоматах, а найсильніші - машини Тьюрінга. Існує деяка концепція рівня, більш потужного, ніж машини Тьюрінга, який вкрай називають гіперкомп'ютацією. Багато різних описів віртуальних машин потрапляють на один із цих рівнів. Машини Тьюрінга особливо відомі для численних моделей, які мають однаковий рівень обчислювальної потужності.

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

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


2

(Наївна) нескінченна версія детермінованої машини з кінцевим станом занадто потужна . Така річ могла б взагалі «запам’ятати» будь-яку мову, тому з їх розгляду мало що можна навчитися.

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

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.