статьиGNU Free Documentation License материалы взяты из Википедии Статья была изменена. Оригинал статьи.

Грамматика с фразовой структурой

Материал из Энциклопедии в свободной энциклопедии
Перейти к: навигация, поиск

Содержание

[править] Языки и грамматики. Основные понятия

Назначение языков и грамматик заключается в:

  • Разработке алгоритмических языков
  • Разработке специальных языков для описания явлений
  • Применяется в компьютерной криптографии

Буква(символ) в простой неделимый знак.

Алфавит в множество букв (символов) A={a, b, c}. Если есть два алфавита A и B(подмножество множества A), говорят, что алфавит B является подалфавитом A, а A в свою очередь в надалфавитом.

Конкатенация в операция слияния символов в языке. Эта операция, по отношению к алгебраическим структурам, представляет собой полугруппу или моноид.

Слово(строка) в упорядоченная совокупность букв в алфавите. Множество всех строк(включая пустую), которые могут быть построены из символов алфавита A, называется замыканием A, и обозначается A*. Положительное замыкание A(обозначается A+) в множество A*\{e}, то есть множество всех строк, которые могут быть построены из символов алфавита A, за исключением пустой строки.

Язык в в общем случае, совокупность слов или предложений, сформированных набором правил и ограничений.

[править] Подъязык (расширение) языка

Любой язык в общем случае можно трактовать в 3-х срезах, как:

  • Совокупность букв, слов (предложений) вместе с наложенными на них ограничивающими правилами в синтаксическое рассмотрение (синтаксис).
  • Интерпретация предложений на предмет «понимания» предложений, то есть распознавания связей, в том числе логических, между предложением и соответствующим явлением жизни в семантическое рассмотрение (семантика).
  • Практическое воздействие языка в есть прагматизм.

[править] Грамматики

Грамматики в наиболее распространённый класс описаний языков. Описание грамматики языка начинается с определения алфавита, набора терминальных символов из которых состоит язык. После создания алфавита, необходимо определить набор ограничивающих правил, те правила по которым будут строиться слова и предложения в языке, вида αβ. В левой и правой частях этих выражений могут содержаться специальные нетерминальные символы. В процессе вывода нетерминальные символы заменяются соответствующими терминальными, до полной их замены, с помощью соответствующих правил. Каждая грамматика должна содержать начальный символ или аксиому с которой и начинается любое слово или предложение языка.

[править] Грамматика с фазовой структурой

Грамматика с фазовой структурой в алгебраическая структура, состоящая из упорядоченной четвёрки G=(N, T, P, S) и определёной на ней неявно операцией конкатенации.

  • N в конечное множество нетерминальных символов
  • T в не пересекающееся с N конечное множество терминальных символов
  • P в набор ограничивающих правил (продукций)
  • S в стартовый (начальный символ)

Пример Грамматикой, порождающей язык {0n1n | nв‰0}, является G: G= ({S}, {0,1}, P, S), где P = {S0S1, Sε}.

Понятие выводимости: Если αβγ последовательный набор символов языка G, а βδ правило этого языка, то αβγ=>αδγ (αδγ непосредственно выводима из αβγ в G).

Цепь в последовательное присваивание нетерминальных символов. Цикл в замкнутая цепь

x (x в€€ N) в недоступный символ, если x неэквивалентен стартовому символу S (x в‰  S) и не существует выводов типа S+αxβ. Символ называется непродуктивным, если не существует строки γ, такой, что нетерминальный символ не будет присвоен γ (xγ) Символ называется бесполезным если он непродуктивен или недоступен.

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

  • Ахо, Дж. Ульман «Теория синтаксического анализа, перевода и компиляции», Т.1 «Синтаксический анализ», М.: Мир, 1978
  • Р. Хантер «Проектирование и конструирование компиляторов», ФиС, 1984

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

Пространства имён

Варианты
Просмотры
Действия