Jump to content

Несжимающая грамматика

В формальной теории языка грамматика ) , является несжимающей (или монотонной если для всех ее правил производстваα → β (где α и β — строки нетерминальных что и терминальных символов), верно, |α| ≤ |β|, то есть β имеет по крайней мере столько же символов, сколько и α. Грамматика по существу является несжимающей, если может быть одно исключение, а именно правило. С → εгде S начальный символ , а ε — пустая строка , и, кроме того, S никогда не встречается в правой части любого правила.

Контекстно -зависимая грамматика — это несжимающая грамматика, в которой все правила имеют вид αAβ → αγβ, где A — нетерминал, а γ — непустая строка нетерминальных и/или терминальных символов.

Однако некоторые авторы используют термин « контекстно-зависимая грамматика» для обозначения несжимающих грамматик в целом. [1]

Несжимающая грамматика, в которой |α| < |β| для всех правил называется растущей контекстно-зависимой грамматикой .

Хомский (1959) представил иерархию Хомского , в которой контекстно-зависимые грамматики встречаются как грамматики «типа 1»; общие несжимающие грамматики не встречаются. [2]

Хомский (1963) называет несжимающую грамматику «грамматикой типа 1», а контекстно-зависимую грамматику — «грамматикой типа 2» и, представляя преобразование первой во вторую, доказывает их слабо эквивалентность . [3]

Курода (1964) ввел нормальную форму Курода, в которую можно преобразовать все несжимающиеся грамматики. [4]

С абв
С АСБк
КБ до нашей эры
ББ бб

Эта грамматика с начальным символом S генерирует язык { а н б н с н : n ≥ 1 } , [5] который не является контекстно-свободным из-за леммы о накачке .

показана контекстно-зависимая грамматика для того же языка Ниже .

Выразительная сила

[ редактировать ]

Любая контекстно-зависимая грамматика является несжимающей грамматикой.

Существуют простые процедуры для

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

Прямое преобразование

[ редактировать ]

Прямое преобразование в контекстно-зависимые грамматики без нормальной формы Курода:

Для произвольной несжимающей грамматики ( N , Σ, P , S ) постройте контекстно-зависимую грамматику ( N ', Σ, P ', S ) следующим образом:

  1. Для каждого терминального символа a ∈ Σ введем новый нетерминальный символ [ a ] ∈ N ' и новое правило ([ a ] → a ) ∈ P '.
  2. В правилах P замените каждый терминальный символ a соответствующим нетерминальным символом [ a ]. В результате все эти правила имеют вид X 1 ... X m Y 1 ... Y n для нетерминалов X i , Y j и m n .
  3. Замените каждое правило X 1 ... X m Y 1 ... Y n на m >1 на 2 m правил: [примечание 1]
х 1 х 2 ... Х м -1 Х м З 1 х 2 ... Х м -1 Х м
З 1 х 2 ... Х м -1 Х м З 1 З 2 ... Х м -1 Х м
:
З 1 З 2 ... Х м -1 Х м З 1 З 2 ... С м -1 Х м
З 1 З 2 ... С м -1 Х м З 1 З 2 ... С м -1 С м М +1 ... Затем
З 1 З 2 ... С м -1 С м М +1 ... Затем      →       Д 1 З 2 ... С м -1 С м М +1 ... Затем
Д 1 З 2 ... С м -1 С м М +1 ... Затем Д 1 Д 2 ... С м -1 С м М +1 ... Затем
:
Д 1 Д 2 ... С м -1 С м М +1 ... Затем Д 1 Д 2 ... м -1 С м М +1 ... Затем
Д 1 Д 2 ... м -1 С м М +1 ... Затем Д 1 Д 2 ... м -1 Их М +1 ... Затем
где каждый Z i N ' является новым нетерминалом, не встречающимся где-либо еще. [7] [8]

Например, приведенная выше несжимающая грамматика для { a н б н с н | n ≥ 1 } приводит к следующей контекстно-зависимой грамматике (с начальным символом S ) для того же языка:

[ а ] а с шага 1
[ б ] б с шага 1
[ с ] с с шага 1
С [ а ] [ б ] [ с ] начиная с шага 2, без изменений
С [ а ] С Б [ с ] начиная с шага 2, без изменений
[ с ] Б Б [ с ] из шага 2, дополнительно изменено ниже
[ с ] Б З 1 Б изменено сверху на шаге 3
З 1 Б З 1 З 2 изменено сверху на шаге 3
З 1 З 2      →       Б З 2 изменено сверху на шаге 3
Б З 2 Б [ с ] изменено сверху на шаге 3
[ б ] Б [ б ] [ б ] из шага 2, дополнительно изменено ниже
[ б ] Б З 3 Б изменено сверху на шаге 3
З 3 Б З 3 З 4 изменено сверху на шаге 3
З 3 З 4 [ б ] З 4 изменено сверху на шаге 3
[ б ] З 4 [ б ] [ б ] изменено сверху на шаге 3

См. также

[ редактировать ]

Примечания

[ редактировать ]
  1. ^ Для удобства неконтекстная часть левой и правой части выделена жирным шрифтом.
  1. ^ Виллем Дж. М. Левельт (2008). Введение в теорию формальных языков и автоматов . Издательство Джона Бенджамина. стр. 125–126. ISBN  978-90-272-3250-2 .
  2. ^ Хомский, Н. 1959а. О некоторых формальных свойствах грамматик. Информация и контроль 2: 137–67. (141–42 для определений)
  3. ^ Ноам Хомский (1963). «Формальные свойства грамматики». В Р. Д. Люсе, Р. Р. Буше и Э. Галантере (ред.). Справочник по математической психологии . Том. II. Нью-Йорк: Уайли. стр. 323–418 . Здесь: стр. 360–363 и 367.
  4. ^ Перейти обратно: а б Сиге-Юки Курода (июнь 1964 г.). «Классы языков и линейно-ограниченные автоматы» . Информация и контроль . 7 (2): 207–223. дои : 10.1016/s0019-9958(64)90120-2 .
  5. ^ Мэтьюз и Соломон (1997) , Пример 2.1, с. 188
  6. ^ Мэтьюз и Соломон (1997) , Теорема 2.2, с. 190
  7. ^ Мэтьюз и Соломон (1997) , Теорема 2.1, с. 187
  8. ^ Джон Э. Хопкрофт, Джеффри Д. Ульман (1979). Введение в теорию автоматов, языки и вычисления . Аддисон-Уэсли. ISBN  0-201-02988-Х . Упражнение 9.9, с.230. В издании 2003 года глава о несжимающихся/контекстно-зависимых языках была опущена.
  • Книга, Р.В. (1973). «О структуре контекстно-зависимых грамматик». Международный журнал компьютерных и информационных наук . 2 (2): 129–139. дои : 10.1007/BF00976059 . hdl : 2060/19710024701 . S2CID   31699138 .
  • Матееску, Александру; Саломаа, Арто (1997). «Глава 4: Аспекты классической теории языка». В Розенберге, Гжегоже; Саломаа, Арто (ред.). Справочник формальных языков. Том I: Слово, язык, грамматика . Спрингер-Верлаг. стр. 175–252. ISBN  3-540-61486-9 .
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: dccc48b3173cad059a4ce653704cde2f__1715760060
URL1:https://arc.ask3.ru/arc/aa/dc/2f/dccc48b3173cad059a4ce653704cde2f.html
Заголовок, (Title) документа по адресу, URL1:
Noncontracting grammar - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)