Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Встроенный магазинный автомат или EPDA является вычислительной моделью для разбора языков , порождаемых дерев прилегающих грамматик (TAGS). Он похож на автомат контекстно-свободного разбора грамматики , но вместо использования простого стека для хранения символов он имеет стек повторяющихся стеков, в которых хранятся символы, что дает тегам возможность генерации между контекстно-независимыми и контекстно-зависимыми грамматиками. , или подмножество контекстно-зависимых грамматик . Встроенные автоматические выталкивающие элементы не следует путать с автоматами вложенных стеков, которые обладают большей вычислительной мощностью. [цитата необходима ]

История и приложения [ править ]

EPDA были впервые описаны К. Виджай-Шанкером в его докторской диссертации 1988 г. [1] С тех пор они применялись для более полных описаний классов слегка контекстно-зависимых грамматик и сыграли важную роль в уточнении иерархии Хомского . Таким образом, могут быть определены различные подграмматики, такие как линейная индексированная грамматика . [2] EPDA также начинают играть важную роль в обработке естественного языка.

Хотя естественные языки традиционно анализировались с использованием контекстно-свободных грамматик (см. Трансформационно-генеративная грамматика и вычислительная лингвистика ), эта модель не работает для языков со скрещенными зависимостями, таких как голландский, ситуаций, для которых хорошо подходит EPDA. Подробный лингвистический анализ доступен у Joshi, Schabes (1997). [3]

Теория [ править ]

EPDA - это конечный автомат с набором стеков, к которым можно получить доступ через встроенный стек . Каждый стек содержит элементы алфавита стека , поэтому мы определяем элемент стека как , где звездочка - это замыкание Клини алфавита.

Каждый стек может быть определен в терминах его элементов, поэтому мы обозначим й стек в автомате , используя символ двойного кинжала: , [ требуется уточнение ] , где будет следующим доступным символ в стеке. Встроенный стек из стопок , таким образом , может быть обозначен . [ требуется разъяснение ]

Мы определяем EPDA семеркой (семеркой)

куда
  • - конечный набор состояний ;
  • - конечное множество входного алфавита ;
  • - конечный стековый алфавит ;
  • это начальное состояние ;
  • - множество конечных состояний ;
  • это начальный символ стека
  • - функция перехода , где - конечные подмножества .

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

Данная конфигурация определяется

где это текущее состояние, то ей является стеки в встроенном стеке , с текущим стеком, а также для входной строки , это часть строки уже обработанной на машине , и представляют собой участок, подлежащую обработке, с головным существом текущий символ читается. Обратите внимание, что пустая строка неявно определяется как символ завершения, где, если машина находится в конечном состоянии при чтении пустой строки, вся входная строка принимается , а если нет, она отклоняется . Такие принятые строки являются элементами языка

где и определяет функцию перехода, применяемую столько раз, сколько необходимо для анализа строки.

Неформальное описание EPDA можно также найти в Joshi, Schabes (1997), [3] Sect.7, p. 23-25.

k- порядок EPDA и иерархия Weir [ править ]

Более точно определенная иерархия языков, которые соответствуют умеренно контекстно-зависимому классу, была определена Дэвидом Дж. Вейром. [4] На основе работы Набила А. Хаббаза, [5] [6] Иерархия языка управления Weir представляет собой иерархию включения счетного набора языковых классов [ пояснить ], где Уровень-1 определяется как контекстно-свободный, а Уровень -2 - это класс смежных с деревом и трех других грамматик.

Ниже приведены некоторые свойства языков Level- k в иерархии:

  • Языки Level- k правильно содержатся в языковом классе Level- ( k  + 1)
  • Языки уровня k можно разобрать во времени
  • Уровень- k содержит язык , но не
  • Уровень- k содержит язык , но не

Эти свойства хорошо соответствуют (по крайней мере, для малых k  > 1) условиям умеренно контекстно-зависимых языков, наложенных Джоши, и по мере того, как k становится больше, языковой класс в некотором смысле становится менее зависимым от контекста.

См. Также [ править ]

Ссылки [ править ]

  1. Виджай-Шанкер, К. (январь 1988 г.). "Исследование грамматик, примыкающих к дереву" . Кандидат наук. Диссертация . Пенсильванский университет .
  2. ^ Weir, Дэвид Дж. (1994). «Линейные повторяющиеся выталкивания вниз» (PDF) . Вычислительный интеллект . 10 (4): 431–439. DOI : 10.1111 / j.1467-8640.1994.tb00007.x . Проверено 20 октября 2012 .
  3. ^ a b Джоши, Аравинд К .; Ив Шабес (1997). «Грамматики, примыкающие к дереву» (PDF) . Справочник формальных языков . Springer. 3 : 69–124. DOI : 10.1007 / 978-3-642-59126-6_2 . ISBN  978-3-642-63859-6. Проверено 7 февраля 2014 .
  4. ^ Weir, DJ (1992), "Геометрическая иерархия вне контекстно-свободных языков", Теоретическая информатика , 104 (2): 235-261, DOI : 10,1016 / 0304-3975 (92) 90124-X .
  5. ^ Набиль Антон Хаббаз (1972). Обобщенные контекстно-свободные языки (Ph.D.). Университет Айовы.
  6. ^ Набиль Антон Хаббаз (1974). «Геометрическая иерархия языков». J. Comput. Syst. Sci . 8 (2): 142–157. DOI : 10.1016 / s0022-0000 (74) 80052-8 .

Дальнейшее чтение [ править ]

  • Лаура Каллмейер (2010). Анализ вне контекстно-свободных грамматик . Springer Science & Business Media. ISBN 978-3-642-14846-0.