Дискретная математика 2
Что может быть дискретно?
Что такое ДМ?
Теория автоматов и формальных языков
Автомат
Автомат
Алфавитный оператор
Функции переходов и выходов
Автоматы Мили и Мура
Автомат Мили
Автомат Мили
Автомат Мура
Автомат Мура
Условия «автоматности» оператора
Теория автоматов
Теория автоматов и формальных языков Приложения теории автоматов
Классификация автоматов
Распознаватель правильного идентификатора
Распознаватель правильного идентификатора
Распознаватель перечисления
1.16M
Категория: МатематикаМатематика

Что такое дискретная математика?

1. Дискретная математика 2

Что такое дискретная
математика?

2. Что может быть дискретно?

• Множества, с которыми мы работаем
• Шаги некоторого алгоритма
• Время

3. Что такое ДМ?


Логика высказываний
Логика предикатов
Математическая логика
Комбинаторика
Теория алгоритмов
Теория автоматов
Теория графов
Теория игр
Теория кодирования
Логическое программирование
Функциональное программирование

4. Теория автоматов и формальных языков

Институт Информационных
Технологий
ЧелГУ, 2010

5.

Автомат
X
Автомат
(реализует преобразователь F)
Черный ящик
Y
F: X Y
Зависит от того, какая информация в данный момент появилась на входе
от того, что происходило раньше

6.

Автомат
Автомат, в зависимости от входных данных Х меняет свое состояние S –
текущее состояние хранится в памяти

7.

Автомат
Пример реализация автомата
Действия – выходные сигналы:
Входные данные:
2,5 - оценки
состояния
Реализация:
программная
аппаратная

8.

Автомат
Пример програмной реализация автомата

9.

Автомат
Пример аппаратной реализация автомата

10. Автомат

Рассмотрим механизм управления лифтом. Если всего в здании N этажей,
лифт может находится в одном из N состояний:
- возможные состояния
На вход подаются номера этажей, к которым должен поехать лифт:
- этажи здания
Выходными сигналами будем считать расстояния, которые должен
проехать лифт:
При этом множество возможных значений w(t) конечно и определяется
наборам возможных входных значений и множеством этажей.

11. Автомат

Это скучный слайд с терминологией
Автомат
- входной алфавит
- выходной алфавит
- набор внутренних состояний
- дискретные моменты времени
- состояние автомата в начальный момент времени
- состояние автомата в момент времени i.
Автомат – математическая абстракция, позволяющая описывать
пути изменения состояния объекта в зависимости от его текущего
состояния и входных данных.

12. Алфавитный оператор

Это скучный слайд с терминологией
Алфавитный оператор
Последовательности входных букв:
называются входными словами.
На вход автомату может подаваться любое слово из множества
допустимы слов.
Каждое допустимое входное слово:
вызывает появление выходного слова:
Длины соответствующих входных и выходных слов равны между собой.
- алфавитный оператор, индуцированный автоматом A.
- множество допустимых входных слов
- множество выходных слов

13. Функции переходов и выходов

Это скучный слайд с терминологией
Функции переходов и выходов
- функция переходов, если:
- функция выходов, если:
При помощи задания начального состояния a(0) и функций перехода
и выхода λ и δ можно для любого входного слова p определить
выходное слово q.

14. Автоматы Мили и Мура

Это скучный слайд с терминологией
Автоматы Мили и Мура
Автомат Мили:
Автомат Мура:
Символ на выходе зависит от символа на
входе автомата и состояния автомата в
предыдущий момент времени
Символ на выходе зависит только от
текущего состояния автомата
Автомат Мура всегда сводится к автомату Мили:

15. Автомат Мили

Это скучный слайд с терминологией
Автомат Мили

16. Автомат Мили

Это скучный слайд с терминологией
Автомат Мили

17. Автомат Мура

Это скучный слайд с терминологией
Автомат Мура

18. Автомат Мура

Это скучный слайд с терминологией
Автомат Мура

19.

Автоматы Мили и Мура
Автомат Мура
Автомат Мили
Из автомата Мура можно
получить эквивалентный
автомат Мили
Слайд 11

20.

Автоматы Мили и Мура
Автомат Мили
Автомат Мура
Из автомата Мили можно
получить эквивалентный
автомат Мура
Каждое состояние s автомата Мили расщепляется на несколько эквивалентных состояний, с
каждым из которых связан один из выхдных символов

21.

Автоматы Мили и Мура
В состоянии q мы можем
находиться, имея на
выходе 0 или 1, значит
будет 2 состояния q0 и q1
Автомат Мили
Автомат Мура
Из автомата Мили можно
получить эквивалентный
автомат Мура
Каждое состояние s автомата Мили расщепляется на несколько эквивалентных состояний, с
каждым из которых связан один из выхдных символов

22. Условия «автоматности» оператора

Это скучный слайд с терминологией
Условия «автоматности» оператора
- алфавитный оператор
1
2
3
осуществляет однозначное отображение из P в Q.
Если P содержит слово p, то P содержит и все начальные
отрезки слова p, включая пустое слово.
сохраняет длину слова.
4
Такой оператор называется автоматным оператором.

23. Теория автоматов

Это скучный слайд с терминологией
Теория автоматов
Теория автоматов
Состав теории
Абстрактная теория
Структурная теория
Математический аппарат теории
Описывает способы реализации
автоматов, представляет связь с алгеброй автомата при помощи заданного
и логикой.
набора элементов.
Автоматы, рассматриваемые безотносительно их структуры, принято
абстрактными автоматами.
Абстрактный автомат задаётся своим входным алфавитом, выходным
алфавитом, множеством состояний и автоматным оператором.

24. Теория автоматов и формальных языков Приложения теории автоматов

Институт Информационных
Технологий
ЧелГУ, 2010

25. Классификация автоматов

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

26. Распознаватель правильного идентификатора

Правильным идентификатором называется последовательность букв,
цифр и символа подчёркивания, начинающаяся с буквы или символа
подчёркивания.
_a123
Var75
my_value
Правильные идентификаторы
Пусть реализованы функции:
int isLetter(char ch);
int isDigit(char ch);
int isSmall(char ch);

27. Распознаватель правильного идентификатора

Правильным идентификатором называется последовательность букв,
цифр и символа подчёркивания, начинающаяся с буквы или символа
подчёркивания.
Пусть реализованы функции:
int isLetter(char ch);
int isDigit(char ch);
int isSmall(char ch);
Достаточно функций:
int isLetterOrSmall(char ch);
int isDigit(char ch);

28. Распознаватель перечисления

Допустимые входные последовательности
Можно ли представить данный автомат в виде комбинации каких-либо
других двух автоматов?
English     Русский Правила