- •Введение
- •1. Теория множеств
- •1.1. Основные понятия
- •1.2. Операции над множествами
- •1.3. Алгебраические свойства операций над множествами
- •1.4. Нечёткие множества
- •2. Элементы комбинаторики
- •2.1. Основные правила комбинаторики
- •2.2. Выборки элементов без повторений
- •2.3. Выборки элементов с повторениями
- •2.4. Объединение комбинаторных конфигураций
- •2.5. Бином Ньютона
- •3. Отношения на множествах
- •3.1. Декартово произведение множеств
- •3.2. Булев куб и его свойства
- •3.3. Понятие отношения
- •3.4. Операции над отношениями
- •3.5. Свойства отношений на множестве
- •3.6. Отношения эквивалентности, толерантности и порядка
- •3.7. Нечеткие отношения
- •3.8. Понятие отображения
- •3.9. Алгебраическая операция
- •3.10. Общие сведения об алгебраических системах
- •4 Булевы функции
- •4.1. Основные определения и операции над высказываниями
- •4.2. Типы пф.
- •4.3. Равносильность формул
- •4.4. Дизъюнктивные и конъюнктивные нормальные формы
- •4.5 Алгоритм приведения пф к нормальным формам
- •4.6 Аналитический способ приведения к сднф
- •4.7. Табличный способ приведения к сднф
- •4.8. Табличный способ приведения к скнф
- •4.9. Логическое следствие
- •4.10. Алгоритм проверки правильности рассуждений
- •4.11. Алгоритм определения всех логических следствий из данных посылок
- •4.12. Алгоритм определения всех посылок, логическим следствием которых является данная формула
- •4.13. Полнота систем булевых функций
- •4.14. Полином Жегалкина
- •4.15. Замкнутость
- •4.16. Теорема Поста
- •4.17. Нечеткая логика
- •5. Многозначные функции
- •5.1. Функции и формулы k-значной логики
- •5.2. Полнота и замкнутость функций k-значной логики
- •5.3. Особенности k – значной логики
- •6.. Основные понятия теории графов.
- •6.1. Задачи теории графов.
- •6.2. Основные определения.
- •6.3. Степени вершин графа.
- •6.4. Изоморфизм графов.
- •6.5. Матричные способы задания графов.
- •6.6. Основные операции над графами.
- •6.7. Маршруты в графах
- •6.8. Связность в графах.
- •Связность и матрица смежности графа.
- •6.9. Матрица взаимодостижимости.
- •6.10. Деревья Свободные деревья.
- •Ориентированные, упорядоченные и бинарные деревья.
- •6.11. Эйлеровы графы.
- •6.12 Гамильтоновы графы.
- •6.13. Планарные графы.
- •6.14. Потоки в сетях. Основные определения.
- •Теорема Форда и Фалкерсона.
- •Алгоритм построения максимального потока в сети.
- •7. Конечные автоматы
- •7.1. Понятие конечного автомата Общие сведения о конечных автоматах
- •7.2. Абстрактное определение конечного автомата
- •7.3. Автоматная функция и её моделирование Понятие ограниченно детерминированной функции
- •Моделирование автоматной функции с помощью схемы из функциональных элементов и задержки
- •7.4. Эксперименты с автоматами
- •8. Рекуррентные уравнения
- •8.1. Определение рекуррентного уравнения/ Решение линейного однородного рекуррентного уравнения
- •8.2. Решение линейного неоднородного рекуррентного уравнения
- •8.3. Решение рекуррентного уравнения для чисел Фибоначчи
- •Заключение
- •Библиографический список
- •Оглавление
- •1.Теория множеств 5
- •2 Элементы комбинаторики 14
- •3 Отношения на множествах 22
- •4. Булевы функции 42
- •5. Многозначные функции 64
- •6. Основные понятия теории графов 70
- •7. Конечные автоматы 106
- •8. Рекуррентные уравнения 120
- •394026 Воронеж, Московский просп., 14
7.3. Автоматная функция и её моделирование Понятие ограниченно детерминированной функции
Пусть даны алфавиты: входной и выходной . Обозначим и как множества всех возможных последовательностей в алфавитах и соответственно.
Определение 1. Отображение → называется детерминированной функцией, если любой член выходная последовательности для любого однозначно определяется предшествующими значениями входной последовательности .
Функция, осуществляющая отображения двух входных последовательностей
будет детерминированной функцией, при условиях:
1) если , то и
2) если ,то .
Определение 2. Пусть задана детерминированная функция → . Пусть далее имеется произвольное входное слово . Функция при произвольной входной последовательности даёт следующий результат:
,
При этом вводится функция → , осуществляющая отображение
.
Она называется остаточной функцией по слову .
Определение 3. Детерминированная функция → называется ограниченно-детерминированной функцией, если у нее имеется лишь конечное число различных остаточных функций.
Рассмотрим автомат (A,S,B,φ, , ) где A,S,B — конечные алфавиты (входной, выходной и состояния), - переходная функция, - выходная и - начальное состояние.
Входом автомата служит последовательность (конечная или бесконечная), выходом автомата служит последовательность . При этом автомат задается системой канонических уравнений:
В результате работы конечного автомата бесконечная последовательность преобразуется в бесконечную последовательность .
Таким образом, автомат определяет некоторую функцию , которая называется отображением, осуществляемым конечным автоматом.
Определение 4. Отображение ,называется автоматной функцией, если существует автомат, который реализует это отображение.
Справедливо утверждение: функция является автоматной тогда и только тогда, когда она ограниченно детерминированная.
Пример: Пусть задан автомат с алфавитами , а его система канонических уравнений выглядит следующим образом:
Такой автомат осуществляет отображение
и называется единичной задержкой. При этом последовательности входа, состояния и выхода меняются следующим образом
Таблица 18
|
0 |
1 |
2 |
3 |
|
0 |
|
|
|
|
0 |
|
|
|
|
0 |
0 |
|
|
Теорема о преобразовании периодической последовательности автоматной функцией
Пусть - автоматная функция веса r. Тогда для каждой входной периодической последовательности с периодом T она выдаёт выходную периодическую последовательность, период которой /
Моделирование автоматной функции с помощью схемы из функциональных элементов и задержки
Определение. Схемой из функциональных элементов и элементов задержки (СФЭЗ) называется схема, содержащая элементы некоторой функционально полной системы булевых функций, к которой добавлены элементы, реализующие функцию единичной задержки.
В СФЭЗ допускаются ориентированные циклы, но любой ориентированный цикл должен проходить хотя бы через одну задержку.
Заметим что, схема из функциональных элементов и задержки осуществляет автоматное отображение.
Определение. Пусть автоматная функция отображает последовательность конечного базиса в последовательность конечного базиса . При \этом СФЭЗ Σ осуществляет преобразование последовательностей булевых векторов длины в последовательности булевых векторов длины . Говорят, что Σ моделирует , если существуют отображения (кодировки) и , которые сопоставляют разным элементам алфавита разные векторы. Отображения и таковы, что если , то при любой последовательности из алфавита
Здесь использовано обозначение .
Следует иметь ввиду, что для любого конечного автомата существует моделирующая его СФЭЗ в функционально полной системе, содержащей элементы дизъюнкции, конъюнкции, отрицания, а также элемента задержки.
Для осуществления такого моделирования необходимо задать конечный автомат системой булевых функций.
Алгоритм задания конечного автомата системой булевых функций.
Находим число разрядов, необходимых для двоичного представления чисел , и . Соответствующие числа находятся из условий - ; ; .
Кодирование состояний, входных и выходных символов исходного автомата. Каждому состоянию ставится в соответствие двоичная последовательность длины - двоичный код . Аналогично каждому и каждому ставятся в соответствие двоичные последовательности . Отметим, что кодирование может быть осуществлено различными способами. При этом может оказаться, что некоторые коды не используются.
Составляется следующая таблица:
Таблица 19
-
Код
входного
сигнала
Код
текущего
состояния
Код
следующего
состояния
Код
выходного
сигнала
…
…
…
…
0
0
…
0
0
0
…
0
1
1
1
1
1
1
Заполнение двух последних столбцов таблицы. Для каждой пары находятся коды и . Исходя из описания конечного автомата определяются и . Затем находится код и код . В строку таблицы, соответствующую набору дописывается набор .
Определение системы булевых функций. После выполнения предыдущего шага может оказаться, что не все строки в таблице заполнены. Это произойдёт в том случае, когда хотя бы одно из чисел не является степенью 2. Таким образом, функции окажутся не полностью определёнными. Их можно доопределить произвольным образом. Но обычно их доопределяют так, чтобы они имели минимальные ДНФ или КНФ. После выполнения этого шага исходный автомат будет задаваться системой полностью определённых булевых функций
.
Пример реализации конечного автомата с помощью СФЭЗ
Пусть задана таблица состояний конечного автомата.
Таблица 20
Текущее состояние |
Следующее состояние |
Выход |
||
0 |
1 |
0 |
1 |
|
s0 |
s0 |
s1 |
1 |
0 |
s1 |
s2 |
s1 |
0 |
1 |
s2 |
s0 |
s1 |
1 |
1 |
Требуется реализовать данный автомат с помощью СФЭЗ.
Анализ таблицы состояний показывает, что алфавиты . Это говорит о том, что символы входного и выходного алфавитов можно не кодировать. Для решения поставленной задачи кодируем только внутренние состояния конечного автомата посредством двух булевых переменных и . Пусть состояния кодируются следующим образом:
Таблица 21
-
s0
0
0
s1
1
0
s2
0
1
В результате получаем следующую систему частично определённых булевых функций
Таблица 22
A |
|
|
|
B |
|
|
0 |
0 |
0 |
|
1 |
0 |
0 |
0 |
1 |
o |
|
0 |
0 |
1 |
0 |
0 |
1 |
|
1 |
0 |
0 |
1 |
0 |
0 |
|
0 |
1 |
0 |
1 |
1 |
0 |
|
1 |
1 |
0 |
1 |
0 |
1 |
|
1 |
1 |
0 |
0 |
1 |
1 |
|
- |
- |
- |
1 |
1 |
1 |
|
- |
- |
- |
Здесь булевы переменные и отображают код следующего состояния автомата.
Логические функции , и можно физически реализовать посредством следующих логических схем.
,
,
.
После проведения минимизации системы частично определённых булевых функций, будем иметь:
,
,
.
Объединяя три последние логические схемы, получим модель конечного автомата в виде СФЭЗ.
Рис. 41
Здесь изображены триггеры (ТР) – устройства, технически реализующие единичную задержку. При этом, переменные и отражают те состояния триггеров, в которых они должны находиться в следующий момент времени.
Таким образом, получаем СФЭЗ, реализующую таблицу состояний заданного конечного автомата.