История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...
История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...
Топ:
Оценка эффективности инструментов коммуникационной политики: Внешние коммуникации - обмен информацией между организацией и её внешней средой...
Проблема типологии научных революций: Глобальные научные революции и типы научной рациональности...
Интересное:
Инженерная защита территорий, зданий и сооружений от опасных геологических процессов: Изучение оползневых явлений, оценка устойчивости склонов и проектирование противооползневых сооружений — актуальнейшие задачи, стоящие перед отечественными...
Средства для ингаляционного наркоза: Наркоз наступает в результате вдыхания (ингаляции) средств, которое осуществляют или с помощью маски...
Национальное богатство страны и его составляющие: для оценки элементов национального богатства используются...
Дисциплины:
2021-03-18 | 104 |
5.00
из
|
Заказать работу |
1. Праволинейной (выровненной вправо) грамматикой называется грамматика G, если каждое правило из Р имеет вид
A ® xB или A ® x
где A, B – нетерминалы, x – цепочка, состоящая из терминалов
Например, грамматика G2 = ({ 0,1 }, { S }, S, P)
где P: S ® 0S;
S ® 1S;
S ® e,
определяет язык {0, 1}.
2. Контекстно-свободной (бесконтекстной) грамматикой (КС-грамматикой) называется грамматика G, если каждое правило из Р имеет вид:
A ® a
где A Î N, a Î (T È N)*, то есть является цепочкой, состоящей из множества терминалов и нетерминалов и может быть пустой.
Например, грамматика G3 = ({E, T, F}, {a, +, *, (,)}, P, E)
где P: E ® T
E ® E + T
T ® F
T ® T * F
F ® (E)
F ® a.
порождает простейшие арифметические выражения.
Согласно определению, каждая праволинейная грамматика является контекстно- свободной.
НетерминалА контекстно-свободной грамматикиG = (T, N, S, P) для некоторых a и b, если a = ε, называется леворекурсивным, а если b = ε, называется праворекурсивным.
Грамматика G называется леворекурсивной (соответственно праворекурсивной), если в G имеется хотя бы один леворекурсивный (соответственно праворекурсивный) нетерминал.
Грамматика, в которой рекурсивны все нетерминалы (возможно, кроме, начального символа) называется рекурсивной.
3. Контекстно-зависимой (неукорачивающей) грамматикой (КЗ-грамматикой) называется грамматика G, если каждое правило из P имеет вид:
a ® b
где | a | £ | b |, то есть вновь порождаемые цепочки не могут быть короче, чем исходные, а также пустыми (другие ограничения отсутствуют).
Например, грамматика G = ({ a, b, c }, { B, C, S }, S, P)
где P: S ® aSBC;
S ® abc;
CB ® BC;
bB ® bb;
bC ® bc;
cC ® с c,
порождает язык { a n b n c n }, n ≥ 1 (n >0).
По определению КЗ-грамматика не допускает правил А ® e, где e – пустая цепочка, т. е. КС-грамматика с пустыми цепочками в правой части правил не является контекстно-зависимой.
Запрещение в контекстно-зависимой грамматике использования правил вида A →ε сделано для того, чтобы алгоритм, определяющий принадлежность цепочки языку, не зацикливается.
Наличие пустых цепочек ведет к грамматике без ограничений.
4. Грамматикой свободного (общего) вида(без ограничений) называется грамматика G, если в ней отсутствуют выше упомянутые ограничения.
Если язык L порождается грамматикой типа G, то L называется языком типа G.
Например, L(G) – КС-язык типа G.
Наиболее широкое применение при разработке трансляторов нашли КС-грамматики и порождаемые ими КС-языки.
Эта классификация называется включающей, т. е. все контекстно-свободные грамматики являются контекстно-зависимыми, а все контекстно-зависимые грамматики являются грамматиками общего вида и т. д.
Существуют языки, принадлежащие к типу i, но не к типу i + 1: например, язык грамматики Gi является контекстно-зависимым, но не контекстно-свободным, т. е. не существует контекстно-свободной грамматики, порождающий этот язык.
5. Способы записи синтаксиса языка
Существуют различные способы записи синтаксических правил, что в основном определяется условными обозначениями и ограничениями на структуру правил, принятых в используемых метаязыках.
Метаязыки используются для задания грамматики языков программирования со времен Алгола 60. Еще раньше они начали использоваться при описании небольших языков в статьях, посвященных формальным грамматикам.
5.1. Метаязык Хомского.
Метаязык Хомского вышел из математической логики; имеет следующую систему обозначений:
· символ ® отделяет левую часть правила от правой; обозначает порождает или это есть;
· нетерминалы обозначаются буквой А с индексом, указывающим на его номер;
· терминалы – это символы, используемые в описываемом языке;
· каждое правило определяет порождение одной новой цепочки;
· один и тот же нетерминал может встречаться в нескольких правилах слева.
Описание идентификатора на метаязыке Хомского.
1. A1 ® A | 2. A1 ® B … | 26. A1 ® Z |
27. A1 ® a | 28. A1 ® b … | 52. A1 ® z |
53. A2 ® 0 | 54. A2 ® 1 … | 62. A2 ® 9 |
63. A3 ® A1 | 64. A3 ® A3A1 | 65. A3 ® A3A2 |
Описание идентификатора на метаязыке Хомского показывает громоздкость метаязыка, поэтому его можно эффективно использовать только для описания небольших абстрактных языков.
5.2. Метаязык Хомского-Щутценберже.
Более компактное описание возможно с применением метаязыка Хомского-Щутценберже, использующего следующие обозначения метасимволов:
· символ = отделяет левую часть правила от правой (вместо символа ®);
· нетерминалы обозначаются буквой А с индексом, указывающим на его номер;
· терминалы – это символы, используемые в описываемом языке;
· каждое правило определяет порождение нескольких альтернативных цепочек, отделяемых друг от друга символом +, что позволяет использовать в левой части только разные нетерминалы.
Введение возможности альтернативного перечисления позволило сократить описание языков.
История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...
Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...
Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...
Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!