Чи застаріла ієрархія Хомського?


45

Ієрархія Хомського (–Schützenberger) використовується в підручниках теоретичної інформатики, але вона, очевидно, охоплює лише дуже малу частину формальних мов (REG, CFL, CSL, RE) порівняно з повною діаграмою зоопарку Складності . Чи вже ієрархія відіграє якусь роль у сучасних дослідженнях? Тут я знайшов лише невеликі згадки про Хомського на сайті cstheory.stackexchange, а в Зоопарку Складності імена Чомського та Шютценбергер взагалі не згадуються.

Чи сучасні дослідження більше орієнтовані на інші засоби опису, а не на формальні граматики? Я шукав практичні методи, щоб описати формальні мови з різною експресивністю, і натрапив на зростаючу контекстну мову (GCSL) та видимо висунуті мови (VPL), які обидва лежать між класичними мовами Хомського. Чи не слід оновити ієрархію Хомського, щоб включити їх? Або не існує вибору конкретної ієрархії з повного набору класів складності? Наскільки я зрозумів, я намагався вибрати лише ті мови, які можуть бути поміщені в прогалини Чомської ієрархії:

REG (= Хомський 3) ⊊ VPL ⊊ DCFL ⊊ CFL (= Хомський 2) ⊊ GCSL ⊊ CSL (= Хомський 1) ⊊ R ⊊ RE

Я все ще не знаходжусь там, де "м'яко контекстно-чутливі мови" та "індексовані мови" вписуються (десь між CFL та CSL), хоча, здається, є практичне значення для обробки природних мов (але, можливо, все, що має практичне значення, є менш цікавим в теоретичних дослідженнях ;-). Крім того, ви можете згадати GCSL ⊊ P ⊂ NP ⊂ PSPACE та CSL ⊊ PSPACE ⊊ R, щоб показати відношення до відомих класів P і NP.

Я знайшов у GCSL та VPL:

  • Роберт Макнафтон: Вкладення в ієрархію Хомських ?. В: Коштовності назавжди, Вклади з теоретичних комп'ютерних наук на честь Арто Саломаа. С. 204-212, 1999
  • http://en.wikipedia.org/wiki/Nested_word#References (VPL)

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


7
Незначний пункт: Я не розглядаю відсутність імен Хомський та Шютценбергер у зоопарку складності як доказ того, що «ієрархія Хомського застаріла». Ієрархія Хомського є поняттям у формальній теорії мови. Зоопарк Складності - це веб-сайт, в першу чергу про теорію складності, хоча він містить деякі поняття в теорії формальної мови, такі як без контекстні мови. Вони пов'язані, але чіткі поля. Це було б застарілим, якби воно не було зазначено в підручнику в формальній теорії мови, але я не знаю, чи так це.
Tsuyoshi Ito

7
Хороший момент, Цуйосі. Відверто кажучи, я хотів би побачити "Зоопарк формальних мов" з хорошим теоретичним обгрунтуванням (посилання на наукові роботи!), А також практичними ресурсами. Наприклад, є десятки варіантів синтаксису Backus-Naur-Form і варіанти регулярних виразів (деякі з них навіть не регулярні). Окрім простої ієрархії Хомського, мені було складно скласти чітке уявлення про сучасний стан досліджень у формальних мовах.
Якоб

Ви також можете додавати мови, що не містять зірок, строго нижче звичайних мов. Вони як звичайні, але без зірки Клейна. Добре відомий. Добре поводився.
wren romano

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

2
У галузі інформатики, комп'ютерної мови, дизайну програмного забезпечення та програмування, без контекстних граматик та мов, а також регулярних виразів та мов - це основне робоче обладнання та важливе як ніколи. Але для довільних граматик, LBA та мов, залежних від контексту, з іншого боку, я бачив мало застосунків або взагалі жодного.
reinierpost

Відповіді:


20

З того, що я бачив у спільноті з переробки природних мов, формальні граматики à la Chomsky вже не використовуються. Вони (теж) вважають, що Ієрархія Хомського застаріла для модельної мови.

Його місце займають такі речі, як правило перезапису (алгоритм Ларса), моделі залежностей (Ден Кляйн), граматика заміщення дерев (модель DOP), бінарні функції граматики (Алекс Кларк).


Перечитавши мою відповідь, це звучить більш негативно, ніж я хотів, щоб це теж звучало. RL та CFL ніколи не повинні були бути реалістичними моделями природної мови, і більшість "нових" моделей насправді надихали їх.
mgalle

Я думав, що РЛ навіть не розраховували як модель природних мов, а як модель деякої поведінки системи. [Оригінальний текст Kleene також не використовує формальну термінологію мови.]
DG_

26

Коротше кажучи: так.

Більш конкретно: Хомський був одним із перших, хто формалізував ієрархію, що стосується мов, граматик та автомати. Це розуміння все ще є дуже актуальним і викладається на всіх вступних курсах з теорії автомати. Однак конкретна ієрархія, яку придумав Хомський, і назви елементів ієрархії вже не мають значення. З тих пір ми винайшли численні формалізми, які потрапляють між рівнями ієрархії Хомського, над ним чи нижче нього. Імена, які Хомський використовував, не особливо цікаві, тобто вони не ґрунтуються на цікавій мірі складності чи що-небудь, вони просто цифри. Чи повинні м'яко-контекстно-чутливі мови бути Type-1.5 або Type-1.7 або Type-1.3? Кому все одно. "Помірно чутливий до контексту" - набагато інформативніша назва.

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


4
Ми знайшли кращі імена, так. Це не означає, що результати застаріли.
Рафаель

4
@Raphael: Застарілість пов'язана не з іменами, як такою, це тому, що конкретна ієрархія, запроваджена Чомським, вже не використовується. Включення, описані ієрархією Хомського, є: (а) все-таки правильними та (б) серед включень у будь-яку сучасну ієрархію; але ієрархія Хомського як така не є надзвичайно актуальною, за винятком того, що вона може потрапити на деякі відомі високі моменти. Люди більше не займаються дослідженням ієрархії Хомських, вони займаються дослідженнями в інших місцях. Це не схоже на багаточленну вежу, яка має свої назви / структури.
wren romano

26

Якщо що- небудь у TCS застаріло, саме ця ієрархія включення крихітного підмножини класів складності виявилася відомою / вважається цікавою у 1956 році.

Будьте спокійні, Ієрархія Хомського, і, можливо, більше не будете переслідувати навчальну програму з теорії нижньої ланки.


12
Як колись кричав Юріс Хартманіс: "А що за Хомські класи? Класи Хомського - це гидота !!"
Райан Вільямс

1
Райан: Я також пам’ятаю, що Юріс називав СН «гидотою»! Коли я писав свою відповідь, я обговорював, чи хотів би він оприлюднити своє зауваження. Але ти його краще знаєш, ніж я ... :-D
Скотт Ааронсон,

Цей коментар також може бути мотивований хоча б крихітним поглядом деяких теоретичних комп'ютерних наук та математиків до лінгвістики та інших "слабких" наук: xkcd.com/435 . Але впевнений, що ієрархія Хомського сьогодні затьмарює погляд на сучасну теорію складності, тому це відповідає на моє запитання. І все-таки було б непогано зайняти оновлену заміну, щоб почати з навчальної програми з теорії нижньої ланки, особливо якщо вас більше цікавлять формальні мови та граматики для практичних програм.
Якоб

1
Ієрархія Хомського перераховує класи мов, упорядковані за складністю опису, а не за складністю обчислень, що зазвичай маються на увазі під час використання терміна "теорія складності". Вони пов'язані, очевидно. У всякому разі, я все ще не бачу, як одна (груба) ієрахія може затьмарити більш вишукані класи, які навряд чи можна зрозуміти, не походячи з ієрархії Хомських. Вони - вхідні двері!
Рафаель

20

Якщо ви вважаєте ієрархію Хомського з "сучасними" іменами (наприклад, REG, LIN, CFL, CSL, RE відповідно DFA / NFA, PDA, LBA, TM), я кажу: Ні, це не застаріло!

Причина 0 : Це все-таки правильно в тому сенсі, що його визначення та результати не суперечать новим знанням.

Причина 1 : Ці класи / моделі обчислень все ще першими ви навчаєте - тому що вони прості та добре вивчені. Спробуйте навчити LR-автомат до нижнього рівня, не спочатку охоплюючи DFA / DPDA.

Причина 2 : Класи все ще є першими / основними орієнтирами для нових винаходів (я знехтував доповідь про багато CFG, яка, звичайно, сказала: більше CFG, менше ніж CSG). Це може бути почасти тому , що вони вчать першим, але і тому , що вони є простими і добре вивчені.

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


10
"Математика не старіє , стає класичною ". (Я, на жаль, не знаю, кому ця цитата приписується.)
Генріх Апфельмус

Ви не маєте на увазі "NPDA" замість "DPDA"? Деякі безконтекстні мови розпізнаються лише недетермінованими автоматизами, що висуваються.
Zsbán Ambrus

@ ZsbánAmbrus Цілком правильно; Я повинен був написати просто "КПК". Дякую!
Рафаель

Остання причина зовсім не є переконливою (я думаю, саме тому це є причиною анти?). Чимало результатів застаріли, оскільки вони підпадають під дію або іноді навіть тривіалізуються різним підходом до теми. Я не кажу про це саме тут, просто про те, що зазначена причина не дуже говорить. Також граматична нитка: "застаріти" не є дієсловом.
Сашо Ніколов

11

Я думаю, це залежить від моделі обчислення. Якщо ви розглядаєте скінченне / віджимання / тощо. Автомати як модель обчислення, тоді важливою стає ієрархія Хомського (див., наприклад, книгу Сіпсера). З іншого боку, вона відіграє незначну роль у моделі обчислення Тьюрінга.

Наступна ілюстрація може бути корисною:

Редагувати: Формальні мови відіграють важливу роль у розробці комп'ютерних мов (таких як Java) та компіляторів, а також в обробці природними мовами (NLP).


Вибачте, Андраш, я не можу зрозуміти ваш коментар. ОП запитала, чи застаріла ієрархія Хомського. Його міркування полягали в тому, що він не бачив це у зоопарку складності тощо. Я відповів, що якщо він розглядає автомати як модель обчислень, ієрархія Хомського стає актуальною. Крім того, я згадав, що класи цієї ієрархії важливі для проектування компілятора та алгоритмів NLP. ІМХО, це повністю пов'язане з питанням.
MS Dousti

2
Звичайно, ієрархія Хомського насправді не застаріла, вона зустрічається у більшості введень теоретичної інформатики, формальних мов, дизайну компіляторів тощо. Але крім цього, здається, нічого нового сказати не можна. Я думаю, що мови подяки між REG та CFL та між CFL можуть бути також важливими. Чи просто погана ідея розширити ієрархію цими мовами, тому що в ієрархії Хомського запах "застарілого" не є важливим для сучасних досліджень?
Якоб

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