
Чурилов / Z9411_Чурилов_ТАиФЯ_КР
.docxМИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное автономное образовательное учреждение высшего образования
«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ»
(ГУАП)
ИНСТИТУТ НЕПРЕРЫВНОГО И ДИСТАНЦИОННОГО ОБРАЗОВАНИЯ
Кафедра проблемно-ориентированных вычислительных комплексов
СОГЛАСОВАНО
РУКОВОДИТЕЛЬ
старший преподаватель |
|
|
|
Н.Н. Григорьева |
должность, уч. степень, звание |
|
подпись, дата |
|
инициалы, фамилия |
КОНТРОЛЬНАЯ РАБОТА
по дисциплине «Теория автоматов и формальных языков»
Вариант №8
РАБОТУ ВЫПОЛНИЛ
СТУДЕНТ ГР. |
|
Z9411 |
|
|
|
А. С. Чурилов |
|
|
|
|
подпись, дата |
|
инициалы, фамилия |
Санкт-Петербург
2022г.
Задание №1.
Пусть грамматика Хомского G1 определяется правилами:
S→0A0 | 1B1 | BB
A→C | EaA
B→S | A
C→S | ε | CE
E→CE | a
К какому классу грамматик Хомского она относится? Постройте несколько терминальных цепочек языка, порождаемого этой грамматикой. Попробуйте сформулировать более простую (узкую) эквивалентную грамматику для порождения этого языка. Отобразите данную грамматику с помощью иного метода задания (БНФ-нотации, язык синтаксических диаграмм, грамматики с рассеянным контекстом).
1. Грамматика G1 относится к типу 2, КС-грамматика.
2. а) S → 0A0 → 0C0 → 00.
б) S → 1B1→ 1A1 → 1EaA1 → 1CEaA1 → 1EaA1 → 1aaA1 → 1aaC1 → 1aa1.
в) S → BB → AB → A0A0 → C0A0 → C0EaA0 → CE0EaA0 → E0EaA0 → a0EaA0 → a0aC0 → a0a0.
3. Из данной грамматики невозможно сделать более простую.
4. Отобразим грамматику G1 с помощью метода БНФ-нотации.
КС-грамматика |
БНФ |
S→0A0 | 1B1 | BB |
<S> ::= 0 <A> 0 | 1 <B> 1 | <B> <B> |
A→C | EaA |
<A> ::= <C> | <E> a <A> |
B→S | A |
<B> ::= <S> | <A> |
C→S | ε | CE |
<C> ::= <S> | ε| <C> <E> |
E→CE | a |
<E> ::= <C> <E> | a |
Задание №2.
Определите, к какому типу относится данная грамматика G2, и какой язык порождает (представить в виде регулярного выражения):
S→0A1|01
0A→00A1
A→01
1. Грамматика G2 относится к типу 1, КЗ-грамматика.
Язык L2, порождаемый данной грамматикой:
L2 = {0n1m; n,m>0}.
Задание №3.
Допустим, структура условного оператора языка программирования с
несколькими условиями имеет вид:
if условие 1 than операторы 1
elsif условие 2 than операторы 2
elsif условие 3 than операторы 3
……..
else операторы end
Постройте грамматику, описывающую структуру такой записи
Грамматика данной структуры выглядит так:
U → Id = Id | Id = C | …
Op → Id = Id | Ƶ Id | …
S → if U than Op V else Op end
V → elseif U than Op V | elseif U than Op
Задание №4.
Дана грамматика G4, определяемая правилами
S→aQb|accb
Q→cSc
и порожденная терминальная цепочка acacaccbcbcb. Восстановите дерево вывода этой цепочки (левосторонний вывод, нисходящий распознаватель).
Сначала восстановим шаги получения данной цепочки
S → aQb → acScb → acaQbcb → acacScbcb → acacaccbcbcb
Построим дерево вывода цепочки:
|
|