Скачать презентацию Классификация языков и грамматик Классификация языков и Скачать презентацию Классификация языков и грамматик Классификация языков и

SPO-4 Классификация языков и грамматик.pptx

  • Количество слайдов: 10

Классификация языков и грамматик Классификация языков и грамматик

Классификация языков и грамматик Ноам Хомский предложил относить грамматики в зависимости от вида их Классификация языков и грамматик Ноам Хомский предложил относить грамматики в зависимости от вида их правил к одному из четырех типов. С практической точки зрения тип грамматики влияет на свойства порождаемых её языков и на сложность процедуры распознавания языка. 2

Классификация языков и грамматик Тип 0. Произвольные грамматики На вид правил не накладывается никаких Классификация языков и грамматик Тип 0. Произвольные грамматики На вид правил не накладывается никаких либо ограничений. Практического применения грамматики типа 0 не имеют. 3

Классификация языков и грамматик Тип 1. Контекстно-зависимые грамматики Правила таких грамматик имеют вид: A Классификация языков и грамматик Тип 1. Контекстно-зависимые грамматики Правила таких грамматик имеют вид: A , где , , V*, A Vn. Такие правила обозначают, что нетерминальный символ А может быть заменен на цепочку символов только в контексте, образуемом цепочками и . 4

Классификация языков и грамматик Тип 2. Контекстно-свободные грамматики Правила таких грамматик имеют вид: A Классификация языков и грамматик Тип 2. Контекстно-свободные грамматики Правила таких грамматик имеют вид: A , где A Vn, V*. (В левой части правил всегда один нетерминальный символ A, который всегда может быть заменен на цепочку вне зависимости от контекста) 5

Классификация языков и грамматик Тип 3. Автоматные (регулярные) грамматики Все правила имеют одну из Классификация языков и грамматик Тип 3. Автоматные (регулярные) грамматики Все правила имеют одну из трех форм: A a. B A a A где A, B Vn, a Vt. 6

Классификация языков и грамматик Языки, порождаемые грамматиками типа 0, для которых отсутствуют эквивалентные порождающие Классификация языков и грамматик Языки, порождаемые грамматиками типа 0, для которых отсутствуют эквивалентные порождающие грамматики других типов, называются языками без ограничений. В общем случае нельзя гарантировать завершение процедуры распознавания языка без ограничений за конечное время. 7

Классификация языков и грамматик Языки, порождаемые грамматиками типа 1, для которых отсутствуют эквивалентные порождающие Классификация языков и грамматик Языки, порождаемые грамматиками типа 1, для которых отсутствуют эквивалентные порождающие грамматики типа 2, 3, называются контекстно-зависимыми языками. Процедуры распознавания контекстно-зависимых языков имеют экспоненциальную сложность (т. е. время работы экспоненциально зависит от длины распознаваемой цепочки). 8

Классификация языков и грамматик Языки, порождаемые грамматиками типа 2, для которых отсутствуют эквивалентные порождающие Классификация языков и грамматик Языки, порождаемые грамматиками типа 2, для которых отсутствуют эквивалентные порождающие грамматики типа 3, называются контекстно-свободными языками. Контекстно-свободные языки используются для описания синтаксиса структур языков программирования. Процедуры распознавания контекстно-свободных языков имеют полиномиальную сложность. 9

Классификация языков и грамматик Языки, порождаемые грамматиками типа 3 называются регулярными или автоматными языками. Классификация языков и грамматик Языки, порождаемые грамматиками типа 3 называются регулярными или автоматными языками. Автоматные языки используются для описания отдельных элементов языков программирования: константы, идентификаторы и т. п. Процедуры распознавания автоматного языка имеют линейную сложность. 10