
ТА3
.docxЦель работы: изучение методов построения распознавателя контекстно-свободной грамматики на основе описания грамматик в виде регулярного выражения или грамматики Хомского.
Вариант № 3
Входной алфавит: {a, b, c, d, z}
Последовательность: bad
Ход работы
Часть 1
Рисунок 1- исходный граф автомата
Построение КС-грамматики распознающего автомата:
𝑆 → dS|bB|c𝑆|zD
B → с𝑆|bB|aA|dS|zD
A → dS
D →
Рисунок 2- граф конечного автомата
Моделирование автомата на тестовых последовательностях
Последовательность при отсутствии а:
Рисунок 3- последовательность при отсутствии a
Корректно веденая последовательность:
Рисунок 4- корректная последовательность
Некорректно веденная последовательность:
Рисунок 5- некорректная последовательность
Моделирование грамматики
На основе полученной КС-грамматики были протестированы различные последовательности.
Последовательность при отсутствии а:
Рисунок 6- последовательность без a
Корректно веденная последовательность:
Рисунок 7- корректно веденная последовательность
Некорректно веденная последовательность:
Рисунок 8- некорректная последовательность
Как видно из рисунков 6-8, результаты моделирования совпадают с результатами проверки предыдущего автомата.
Построение графа с помощью автоматической конвертации, Convert>Convert Right-Linear Grammar to FA.
Рисунок 9- автоматический граф
Последовательность при отсутствии а:
Рисунок 10- последовательность без a
Корректно веденная последовательность:
Рисунок 11- корректно веденная последовательность
Некорректно веденная последовательность:
Рисунок 12- некорректно веденная последовательность
Из рисунков 10-12 видно, что результаты тестирований всех автоматов совпадают.
Часть 2
Построение распознавателя КС-грамматики на базе МП-автомата
Рисунок 13- распознаватель КС-грамматики
Последовательность с отсутствием a:
Рисунок 14- последовательность с отсутствием a
Корректно веденная последовательность:
Рисунок 15- корректно веденная последовательность
Некорректно веденная последовательность:
Рисунок 16- некорректно веденная последовательность
Вывод
В ходе лабораторной работы получены навыки создания КС-грамматики, и построения автоматов.