Форум Статьи Контакты
Строительство — возведение зданий и сооружений, а также их капитальный и текущий ремонт, реконструкция, реставрация и реновация.

Двухуровневая грамматика


Двухуровневая грамматика — это формальная грамматика, которая используется для порождения другой формальной грамматики, например с бесконечным множеством правил. Именно так грамматика ван Вейнгаардена была использована для определения языка Алгол-68. Контекстно-свободная грамматика, которая определяет правила для другой грамматики, может породить в сущности бесконечное множество правил производной грамматики. Это делает двухуровневые грамматики более мощными, чем одноуровневые контекстно-свободные грамматики, так как было доказано, что двухуровневые порождающие грамматики являются полными по Тьюрингу.

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

Пример

Хорошо известным не контекстно-свободным языком является

{ a n b n a n | n ≥ 1 } . {displaystyle {a^{n}b^{n}a^{n}|ngeq 1}.}

Двухуровневой грамматикой для него может быть метаграмматика

N ::= 1 | N1 X ::= a | b | c

вместе с грамматической схемой

Start ::= ⟨ a N ⟩ ⟨ b N ⟩ ⟨ c N ⟩ {displaystyle langle a^{N} angle langle b^{N} angle langle c^{N} angle } ⟨ X N 1 ⟩ {displaystyle langle X^{N1} angle } ::= ⟨ X N ⟩ X {displaystyle langle X^{N} angle X} ⟨ X 1 ⟩ {displaystyle langle X^{1} angle } ::= X
(голосов:0)

Пожожие новости
Комментарии

Ваше Имя:   

Ваш E-Mail: