- •Часть 1.
- •Оглавление
- •1. Модели дискретных структур. Комбинационные схемы
- •1.1. Введение
- •1.2. Функции алгебры логики
- •Коммутативность
- •Ассоциативность
- •Дистрибутивность
- •1.3. Булева алгебра. Функциональная полнота
- •Свойства алгебры Жегалкина
- •1.4. Минимизация функции алгебры логики
- •1.5. Функции k-значной логики
- •1.6. Основные понятия трехзначной логики
- •1.7. Представление k-значных функций в виде нормальных форм
- •1.8. Двоичное кодирование переменных и функций трехзначной логики
- •1.9. Программная реализация логических функций и автоматов
- •2. Формальные языки и грамматики
- •2.1. Введение в теорию формальных языков и грамматик
- •2.2. Выводы цепочек формального языка. Деревья ксг
- •2.3. Основные понятия теории формальных языков и грамматик
- •2.4. Приведение грамматик
- •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. Элементная база синтеза комбинационных схем
- •3.11. Структурный синтез автомата
- •4. Отдельные вопросы теории вычислительных процессов
- •4.1. Автоматы с магазинной памятью
- •4.2. Комбинационные схемы обнаружения ошибок
- •4.3. Пространство сообщений. Коды обнаружения и исправления ошибок
- •Контрольные вопросы
1.2. Функции алгебры логики
Рассмотрим множество векторов X = {<x1... xn>}. Будем предполагать, что координаты этих векторов могут принимать значения 0 или 1. Таким образом, множество X состоит из 2n векторов. Произведем отображение множества X в множество Y = {0, 1} [1].
Определение. Функцией алгебры логики называется функция, дающая однозначное отображение X в Y.
Определение. Если две функции алгебры логики f1(x1... xn) и
f2( x1... xn) принимают на всех наборах значений аргументов одинаковые значения, то их называют равными
Определение. Функция f(x1... xn) существенно зависит от аргумента xi , если имеет место соотношение : f(x1... xi-1 , 0, xi+1 ... xn) f(x1... xi-1 , 1, xi+1 ... xn) . В противном случае xi - фиктивный аргумент.
Теорема 1. Число различных функций алгебры логики, зависящих от n аргументов конечно и равно 2n.
Приведем иллюстрацию сказанного на основе анализа таблицы:
Таблица 1.6
-
x1, x2,..., xn
f(x1, x2,..., xn )
00...00
a1
00...01
a2
00...10
a3
...
...
11...11
a2n
Как показывает таблица, задавая тот или иной конкретный двоичный набор аргументов, задается одна из возможных функций алгебры логики, принимающая значение 0 или 1. Различное число таких наборов равно 2n. Следовательно, число функций будет равно 2n.
Рассмотрим геометрическую интерпретацию области определения функции алгебры логики. Сопоставим наборам аргументов алгебры логики точки n-мерного пространства. Тогда множество 2n таких наборов определит множество вершин n- мерного единичного куба. Таким образом, множество вершин n- мерного единичного куба есть область определения функций алгебры логики. Пусть вершина А соответствует набору
( х1 = 1, х2 = 1, х3 = 1 ), а вершина B - набору ( х1 = 1, х2 = 1, х3 = 0 ).
Тогда графически это может быть представлено следующим рисунком:
X3
A
0 X2
B
X1
Рис. 1.1. Геометрическая интерпретация области определения логических функций
Рассмотрим основные функции, которые играют основную роль в построении функций алгебры логики и ее приложениях:
1. f = X.
2. f = X
3. f = 0.
4. f = 1.
5. f = X v Y.
6. f = X Y.
7. f = X Y (равенство, эквивалентность).
8. f = X Y (импликация).
9. f = X Y (стрелка Пирса, функция Вебба).
10. f = X | Y (штрих Шеффера).
11. f = X Y (сложение по модулю 2).
Эти одиннадцать функций алгебры логики позволяют строить новые функции, при этом используется два подхода: - подстановка в функцию новой функции вместо аргументов и переобозначение аргументов.
Определение. Функция, полученная из f1 ... fk путем применения возможно многократно указанных двух подходов называется суперпозицией функций f1 ... fk.
Пример. Представить в виде таблицы функцию
f (X1,X2 ) = { ( X1 X2 ) v (X1 X2 ) } = X1 | X2.
Решение.
X1 |
X2 |
X1 X2 |
X1 X2 |
X1 | X2. |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
Пример. Показать, что
X1 X2 = X1 v X2 на основе построения и сравнения функций по таблицам истинности.
Решение.
X1 |
X2 |
X1 X2 |
X1 |
X1 v X2 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
Аналогично можно показать, что сложение по модулю 2:
X1 X2 = ( (X1 v X2) & (X1 v X2 ) ).
А функция эквивалентности: X Y = (X1 v X2) & (X1 v X2 ), т.е. эти 2 функции связанны отношением отрицания.
(X1 ) = X.
X1 & X2 = (X1 v X2).
X1 v X2 = (X1 & X2).
Рассмотрим свойства конъюнкции, дизъюнкции и отрицания.