Я шукаю математичні теорії, які стосуються опису формальних мов (набору рядків) загалом, а не лише граматичних ієрархій.
Я шукаю математичні теорії, які стосуються опису формальних мов (набору рядків) загалом, а не лише граматичних ієрархій.
Відповіді:
Варіантів багато. Інші вже згадували автомати, які пропонують багатий вибір. Розглянемо і такі рамки:
Деякі мови можна визначити безпосередньо за допомогою (спів) індуктивних визначень . Наприклад, найменша фіксація
- це та сама мова, що й описана(ba∣a)∗, найбільша фіксація -(ba∣a)ω. Зауважте, що таке визначення можна також записати уформіобчислення чиправила виводу:
Слова визначають структуру слів, які можна використовувати як моделі логічної формули . По суті, кожне слово визначає область своїх позицій , предикатів P a : D → { 0 , 1 }, так що P a ( i ) ⟺ w i = a для всіх a ∈ Σ , присудок < що є < від Nобмежено та присудком suc : D w × D w → { 0 , 1 }, що відповідає дійсності тоді і лише тоді, коли другий параметр є прямим наступником кулака.
Наприклад, якщо w = a a b a b a a b тоді
насправді, цеперший порядку формулавизначає --- через безліч всіх слів структурякі виконують його --- ту саму мову(б|)*. Відповіднаω-мовна(ba∣a)ωописуєтьсяформулою LTL
кілька еквівалентності між класичними класами мови і деяких логік відомі. Наприклад,FOвідповідає мов, що не містять зірок, слабкихMSOдо звичайних мов іMSOдоω-регулярних мов. Дивітьсятутпосилання.
Щось ортогональне класичним заняттям - це моделі мов . Припустимо термінальний алфавіт і змінний алфавіт X = { x 1 , x 2 , … } . Рядок p ∈ ( Σ ∪ X ) + називається візерунком . Нехай H = { σ ∣ σ : X → Σ ∗ } безліч підстановок. Ми визначимо мову візерунка p як
Зауважимощоσпоширюється на роботи по формам; кінцеві символи залишаються незмінними.
Як приклад, розглянемоL(x1abbax1)={wabbaw∣w∈{a,b}∗}
.
Зауважте, що ми дозволяємо замінам видаляти змінні; деякі властивості класу мов шаблонів сильно відрізняються для видалення заміни, що не видаляє. Мови моделей представляють особливий інтерес у навчанні золотому стилі .
Ви повинні поглянути на теорію автоматів . Про це багато матеріалів.
Наприклад, ви можете визначити звичайну мову з недетермінованим кінцевим автоматом з міченими ребрами: рядок належить мові, якщо автомат може слідувати за переходами, позначеними його символами, і зупиняється у остаточному стані.
Крім того, граматика без контексту може розпізнаватися за допомогою автоматичного розгортання .
Ще один спосіб визначення мов - це за допомогою машин Тьюрінга .
З ієрархії Хомського є чотири типи формальних мов (кожна з них є підмножиною з них після неї):
Регулярний формальну мову може бути описаний:
1., 2. і 3. рівнозначні, і з одного з них можна побудувати інші.
Контекстно-вільної формальну мову може бути описаний:
Також 1. і 2. рівнозначні.
Контекстний формальну мову може бути описаний:
Перечіслімий формальну мову може бути описаний:
Надалі до інших відповідей можна описати та класифікувати мови за термінами "генератори" та властивості закриття. Наприклад, має сенс поговорити про найменший AFL, що генерується якоюсь мовою. Хорошим місцем для початку дізнатися про такий тип опису є ця книга, хоча знайти її важку копію може бути досить важко.