Скачиваний:
1
Добавлен:
27.08.2024
Размер:
164.83 Кб
Скачать

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

Федеральное государственное автономное образовательное учреждение высшего образования

«САНКТ-ПЕТЕРБУРГСКИЙ УНИВЕРСИТЕТ АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ»

КАФЕДРА № 41

ОТЧЕТ ЗАЩИЩЕН С ОЦЕНКОЙ

ПРЕПОДАВАТЕЛЬ

старший преподаватель

Н.Н. Григорьева

должность, уч. степень, звание

подпись, дата

инициалы, фамилия

ОТЧЕТ О ЛАБОРАТОРНОЙ РАБОТЕ №3

ПОСТРОЕНИЕ РАСПОЗНАЮЩЕГО АВТОМАТА ПО РЕГУЛЯРНОМУ ВЫРАЖЕНИЮ

по курсу: Теория автоматов и формальных языков

РАБОТУ ВЫПОЛНИЛ

СТУДЕНТ ГР. №

4016

Жовтяк М.О.

подпись, дата

инициалы, фамилия

Санкт-Петербург 2022

  1. Цель работы

Изучение методов построения распознавателя контекстно-свободной грамматики на основе описания грамматик в виде регулярного выражения или грамматики Хомского.

2) Порядок работы

1. Данная лабораторная работа выполняется на базе автомата, построенного в ЛР№2.

2. На основе задания построить граф переходов распознающего автомата и эквивалентную ему КС-грамматику .

3. Промоделировать работу распознающего автомата на тестовых последовательностях, позволяющих выявить все возможные результаты распознавания

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

5. Сравнить полученные результаты, убедиться в эквивалентности работы распознавателей.

6. Автоматически конвертировать регулярную грамматику в граф конечного автомата

7. Промоделировать работу полученного автомата на тестовых последовательностях, сравнить полученные результаты с результатами п.п.3 и 4, сделать выводы

3) Вариант задания

Вариант №15

Входной алфавит {a, b, c, d, z}

Последовательность: acd

4) Построение грамматики и графа конечного автомата

На основе полученного задания построена контекстно-свободная грамматика распознающего автомата.

Из раскрытия S можно получить только a, b, d или совершить переход в C (z). S раскрывается как a, и соответственно переход в A, иначе в S. Если A раскрыть, как c, тогда переход в B, который можно раскрыть только как d, после чего происходит переход в B. В остальных случая происходит переход в S.

S -> aA|bS|dS|C

A -> aS|bS|cB|dS|C

B -> dS

C -> z

На основе созданной грамматики был построен граф автомата-распознавателя (рис.1).

Рисунок 1 – Граф автомата распознавателя

Моделируется работа автомата для входной последовательности, где не встречается c, abdaaabdz (рис.2).

Рисунок 2 – Результат первого моделирования распознавателя

Моделируется работа автомата для входной последовательности, где корректно вводится c, acdbbacdaz (рис.3).

Рисунок 3 – Результат второго моделирования распознавателя

Моделируется работа автомата для входной последовательности, где некорректно вводится c, adddbcaz (рис.4).

Рисунок 4 – Результат третьего моделирования распознавателя

5) Моделирование грамматики, конвертация её в граф автоматов

Моделируется работа КС-грамматики.

Для входной последовательности, где не встречается c, abdaaabdz (рис.5).

Рисунок 5 – Результат первого моделирования грамматики

Для входной последовательности, где корректно вводится c, acdbbacdaz (рис.6).

Рисунок 6 – Результат второго моделирования грамматики

Для входной последовательности, где некорректно вводится c, adddbcaz (рис.7).

Рисунок 7 – Результат третьего моделирования грамматики

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

Полученная грамматика с помощью автоматической конвертации JFLAP строится в виде графа (рис.8).

Рисунок 8 – Автоматически построенный граф

Для входной последовательности, где не встречается c, abdaaabdz (рис.9).

Рисунок 9 – Результат первой проверки автоматически построенного графа

Для входной последовательности, где корректно вводится c, acdbbacdaz (рис.10).

Рисунок 10 – Результат второй проверки автоматически построенного графа

Для входной последовательности, где некорректно вводится c, adddbcaz (рис.11).

Рисунок 11 – Результат третьей проверки автоматически построенного графа

6) Вывод

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

В ходе работы я приобрел навыки создания КС-грамматики распознающего автомата, углубил знания создания графов автоматов.

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