Разделы презентаций


Лекция 8

Содержание

ПредпосылкаЕстественный язык не может использоваться для записи алгоритма в силу его:изменчивости;неоднозначности;избыточности

Слайды и текст этой презентации

Слайд 1Лекция 8
Формальная грамматика.
Способы описания формальных языков. Мета-язык. Нотация Бекуса-Наура. Синтаксические

диаграммы

Лекция 8Формальная грамматика.Способы описания формальных языков. Мета-язык. Нотация Бекуса-Наура. Синтаксические диаграммы

Слайд 2Предпосылка
Естественный язык не может использоваться для записи алгоритма в силу

его:
изменчивости;
неоднозначности;
избыточности

ПредпосылкаЕстественный язык не может использоваться для записи алгоритма в силу его:изменчивости;неоднозначности;избыточности

Слайд 3Опр.
Формальный язык – это искусственный язык со строгим синтаксисом и

полной смысловой определенностью.

Любой конечный механизм задания языка называется грамматикой



Разработка формальных грамматик была начата Хомским.
Опр.Формальный язык – это искусственный язык со строгим синтаксисом и полной смысловой определенностью. Любой конечный механизм задания

Слайд 4Опр.
Формальная грамматика - система правил, описывающая множество конечных последовательностей символов

формального алфавита.

Опр.Формальная грамматика - система правил, описывающая множество конечных последовательностей символов формального алфавита.

Слайд 5Опр.
Конечные цепочки символов называются предложениями формального языка, а само множество

цепочек - языком, описываемым данной грамматикой.

Опр.Конечные цепочки символов называются предложениями формального языка, а само множество цепочек - языком, описываемым данной грамматикой.

Слайд 6Опр.
Синтаксисом языка называются правила построения предложений языка.

Синтаксис определяет множество

формально правильных предложений

Опр.Синтаксисом языка называются правила построения предложений языка. Синтаксис определяет множество формально правильных предложений

Слайд 7Опр.
Семантикой языка называются правила интерпретации предложений языка (выбор значения из

некоторого множества значений).

Семантика определяется структурой предложения

Опр.Семантикой языка называются правила интерпретации предложений языка (выбор значения из некоторого множества значений).Семантика определяется структурой предложения

Слайд 8Определение формальной грамматики
G = { Vn, Vt, P, S} ,

где
Vn – нетерминальный словарь
Vt - терминальный словарь
P

– множество правил подстановок имеющие вид g -> h, где g и h - цепочки, состоящие из терминальных и нетерминальных символов.
S  Vn - аксиома, начальный знак.
Определение формальной грамматикиG = { Vn, Vt, P, S} , где Vn – нетерминальный словарь Vt -

Слайд 9Правила
Vn ∩ Vt =0.
Нетерминальный и терминальный словари являются непересекающимися

множествами

их объединение определяет словарь символов языка V=Vn U Vt .

ПравилаVn ∩ Vt =0. Нетерминальный и терминальный словари являются непересекающимися множествамиих объединение определяет словарь символов языка V=Vn

Слайд 10Пример
Словари Vn и Vt создаются с помощью знаков алфавита.

Последовательное применение правил порождает все возможные слова, входящие в терминальный

словарь. Нетерминальный словарь в состав языка не включается.

P1: S ab и P2:S aSb порождают язык L={ab, aabb, a3b3, …}

ПримерСловари Vn и Vt  создаются с помощью знаков алфавита. Последовательное применение правил порождает все возможные слова,

Слайд 11Формальная грамматика
Последовательность грамматических правил создается путем логических заключений.
Процесс создания

языка начинается с аксиомы – исходного набора знаков, к которому

затем применяются одно за другим установленные правила подстановки.

Таким образом, из небольшого набора исходных конструкций порождаются все допустимые их комбинации
Формальная грамматикаПоследовательность грамматических правил создается путем логических заключений. Процесс создания языка начинается с аксиомы – исходного набора

Слайд 12Пояснения
Правило подстановок: если в преобразуемой цепочке есть слово g, то

оно заменяется словом h.
Получение на некотором шаге цепочки, состоящей

только из терминальных символов, свидетельствует о прекращении процесса порождения - эта цепочка является правильной, завершенной конструкцией порождаемого языка.
ПоясненияПравило подстановок: если в преобразуемой цепочке есть слово g, то оно заменяется словом h. Получение на некотором

Слайд 13Пример 1
Дана грамматика G:
Vn ={S}; Vt ={*,0}; P={S→SS; S→*;

S→*S0}

Порожденным такой грамматикой языком L(G) будет
L = {*, **, ***0,

***0**0, … }.
Пример 1  Дана грамматика G:Vn ={S}; Vt ={*,0}; P={S→SS; S→*; S→*S0}Порожденным такой грамматикой языком L(G) будетL

Слайд 14 Пример 2

Vt = {a, b}; Vn = {S},
P=

{S → aSa; S → bSb; S → a; S

→ b}.
Пример 2  Vt = {a, b}; Vn = {S}, P= {S → aSa; S →

Слайд 15Пример 2
Грамматика порождает язык, состоящий из всех «слов-перевертышей» в алфавите

{a, b}, имеющих нечетную длину, например, aba, abababa, bbbbb, baaaaaab

и т.д.
Цепочки типа αSα-1, где α-1 означает слово α, записанное справа налево
Пример 2 Грамматика порождает язык, состоящий из всех «слов-перевертышей» в алфавите {a, b}, имеющих нечетную длину, например,

Слайд 16Пример 3
Пусть Vt ={а,б,...,я, А,Б,...,Я} - множество терминальных символов -

букв русского алфавита.
Vn = {Q, R, S} - нетерминальный

словарь, где Q = {q1,..,.qn} - множество имен людей в русском алфавите,
R = {r1,…,.rm} - множество глаголов, стоящих в третьем лице единственного числа настоящего времени.
Система подстановок :
S → QR
Q → q1, Q → q2, …, Q → qm
R→ r1, R→ r2, …, R→ rm
Пример 3Пусть Vt ={а,б,...,я, А,Б,...,Я} - множество терминальных символов - букв русского алфавита. Vn = {Q, R,

Слайд 17Разъяснение примера 2
Грамматика порождает язык, состоящий из фраз типа: «такой-то

делает то-то», например, «Маша читает», «Вася спит» и т.п. Работает

грамматика следующим образом: на первом шаге определяется тип фразы; второй шаг порождает конкретное имя, а третий шаг - конкретное действие (глагол).
Разъяснение примера 2Грамматика порождает язык, состоящий из фраз типа: «такой-то делает то-то», например, «Маша читает», «Вася спит»

Слайд 18Хомский выделил 4 типа грамматик

1) Грамматики без ограничений.
а) аАвСД 

aНД

Порождение АвС  H возможно только в контексте а .... Д.
б) PQ QP
Свобода выбора перестановок.

Грамматики без ограничений не представляют интереса с точки зрения информатики - слишком много свободы.
Хомский выделил 4 типа грамматик1) Грамматики без ограничений.а) аАвСД  aНД

Слайд 192. Грамматика непосредственных составляющих
Пример такой грамматики:
SAB
A a
A ac
B b
B

2. Грамматика непосредственных составляющих Пример такой грамматики:SABA aA acB bB cb

Слайд 202. Грамматика непосредственных составляющих
Четыре вывода терминальных строк:
S AB aB

ab
S AB acB  acb
S AB aB acb
S ABacB accb

2

и 3 –я строки двусмысленны
2. Грамматика непосредственных составляющихЧетыре вывода терминальных строк: S AB aB abS AB acB  acbS AB aB

Слайд 213) Контекстно-свободные грамматики
В левой части допускается лишь один нетерминальный символ

(не зависит от контекста)
Пусть задана грамматика

S aT
T bT
T c
3) Контекстно-свободные грамматикиВ левой части допускается лишь один нетерминальный символ (не зависит от контекста)Пусть задана грамматика

Слайд 223) Контекстно-свободные грамматики
Выводы:
S aT abT abc
S aT abT abbTabbc
Данная грамматика

содержит рекурсивное правило подстановки: ас, аbс, аbbс, аbbbс, ....., в

общем виде abnc (n>=0).
3) Контекстно-свободные грамматикиВыводы:S aT abT abcS aT abT abbTabbcДанная грамматика содержит рекурсивное правило подстановки: ас, аbс, аbbс,

Слайд 234) Односторонние линейные грамматики
Они допускают подстановки вида:
Аа А аb

4) Односторонние линейные грамматикиОни допускают подстановки вида: Аа А аb

Слайд 24Способы описания формальных языков

Для описания языка-объекта должен применяться метаязык.
Метаязык

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

языка-объекта
Способы описания формальных языковДля описания языка-объекта должен применяться метаязык. Метаязык должен обладать некоторыми свойствами формального языка, чтобы

Слайд 25Способы описания формальных языков
Метаязык должен быть сначала описан сам.
Для

описания любого метаязыка можно использовать язык естественный.
Таким образом, для

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

Слайд 26Язык Бекуса-Наура
Нотации Бекуса-Наура (форма) (ФБН).
Для формирования предложений используются метасимволы:

{ , ::=, | }.
Угловые скобки - служат

для обрамления нетерминального символа.
Символ «::=» читается «по определению есть»;
символ «|» - «или».
Язык Бекуса-НаураНотации Бекуса-Наура (форма) (ФБН). Для формирования предложений используются метасимволы: { , ::=, | }. Угловые скобки

Слайд 27Пример ФБН
«идентификатор»
На естественном языке: «Идентификатор - это любая последовательность

букв и цифр, начинающаяся с буквы».
В форме Бекуса-Наура :
::=|

|<идентификатор><цифра>
<буква>::= а|b|c|…
<цифра>::= 0|1|2|3|...|9.
Пример ФБН«идентификатор» На естественном языке: «Идентификатор - это любая последовательность букв и цифр, начинающаяся с буквы». В

Слайд 28Пример
Записать определение арифметического выражения
Vt = {А, С, +, -

},

::= АС
::=+-
А, С, А+С, С+А, А-С, С-А, А+А, А-А,

С+С, С-С
Пример Записать определение арифметического выраженияVt = {А, С, +, - }, ::= АС::=+-А, С, А+С, С+А, А-С,

Слайд 29Синтаксические диаграммы
Синтаксическая диаграмма - это схема (графическое представление) описания какого-либо

нетерминального символа языка-объекта.
Схема всегда имеет один вход и один

выход. Элементами схемы могут служить терминальные символы языка-объекта, заключенные в окружность (или овал) или нетерминальные символы (понятия) языка-объекта, заключенные в прямоугольник.
Синтаксические диаграммыСинтаксическая диаграмма - это схема (графическое представление) описания какого-либо нетерминального символа языка-объекта. Схема всегда имеет один

Слайд 30Идентификатор
буква
буква
буква
буква
цифра
а
я
. . .
буква
0
9
. . .
цифра

Идентификаторбуквабуквабуквабуквацифраая. . .буква09. . .цифра

Слайд 31Примеры
1. Опишите формальную грамматику, порождающую множество целых двоичных чисел.
2. Измените

описание грамматики из примера таким образом, чтобы она

описывала конструкции типа «Имя_1, Имя_2.. Имя М делают_то-то».
3. Что определяет следующая нотация Бекуса-Наура: <формула>::=<цифра>|(<формула><знак><формула>) <знак>::= +| — | *
<цифра>::= 0|1|2|3|4|5|6|7|8|9

Примеры 1. Опишите формальную грамматику, порождающую множество целых двоичных чисел.2. Измените описание грамматики из примера таким образом,

Слайд 32Примеры
С помощью синтаксических диаграмм опишите следующие конструкции языка PASCAL:
1. оператор

цикла с предусловием WHILE...DO;
2. составной оператор;
3. оператор цикла с параметром

FOR...DO;
4. оператор выбора CASE.
ПримерыС помощью синтаксических диаграмм опишите следующие конструкции языка PASCAL:1. оператор цикла с предусловием WHILE...DO;2. составной оператор;3. оператор

Слайд 33Контрольные вопросы
Дайте определение формальной грамматики.
Какие предложения допускает грамматика: S ->b,

S -> bS, A ->aSa.?
Какие предложения допускает ФБК:
::= 0|1|. ?

Контрольные вопросыДайте определение формальной грамматики.Какие предложения допускает грамматика: S ->b, S -> bS, A ->aSa.?Какие предложения допускает

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика