СОДЕРЖАНИЕ
1.4. Декартово произведение множеств
1.5.1. Определение бинарного отношения
1.5.2. Способы задания бинарного отношения
1.5.3. Свойства бинарных отношений
1.5.4. Отношения эквивалентности
1.7. Контрольные вопросы и упражнения
2.1.1. Логические высказывания
2.1.2. Основные логические операции
2.2.1. Булевы функции и операции
2.2.2. Совершенные дизъюнктивная и конъюнктивная нормальные формы
2.3. Полные системы логических функций
Класс функций, сохраняющих ноль
Класс функций, сохраняющих единицу
Класс самодвойственных функций
2.4.3. Минимизация днф методом Квайна
2.6. Контрольные вопросы и упражнения
3.1.2. Ориентированные и неориентированные графы
3.1.4. Частичные графы и подграфы
3.1.6. Изоморфизм. Плоские графы
3.2. Отношения на множествах и графы
3.3. Матрицы смежности и инциденций графа
3.5.1. Степени неориентированных графов
3.5.2. Степени ориентированных графов
3.6.1. Характеристики расстояний в графах
3.6.2. Характеристические числа графов
3.7.2 . Базисные циклы и разрезающие множества
Свойства базисных циклов и разрежающих множеств
3.7.3. Цикломатическая матрица и матрица разрезов
Составление цикломатической матрицы
3.8. Задача определения путей в графах
3.8.1. Определение путей в графе
3.8.2. Алгоритм определения кратчайших путей
Функция g2(х) =x определяет логическую операцию –повторениепеременнойx, а функция g3(х) =x определяет логическую операцию –отрицаниепеременнойx.
g1(х) иg4(х) по сути являются не функциями, а константами 0 и 1.
f2= х1 х2 – конъюнкция или логическое умножение
f8= х1x2 – дизъюнкция или логическое сложение.
f10 = х1 х2 – эквивалентность;
f7= х1х2– неэквивалентность;
f12= х2х1– функция следования (импликации) х1;
f14= х1х2 – функция следования (импликации) х2;
f3= х1х2 – функция запрета х1;
f5= х2х1 – функции запрета х2;
f9= х1x2– функция (стрелка) Пирса;
f15= х1| х2 – функция (штрих) Шеффера.
Причем, функции f2, f8, f10, f12, f14 определены ранее как основные логические функции (табл. 2.1).
Функции f3, f5, f7, f9, f15 являются производными от них:
f3=f14или х1х2 = х1 х2,
f5=f12или х2х1 = х2 х1,
f7=f10или х1
х2 = х1 х2,
f9=f8или х1x2 = х1 х2.
f15=f2 или х1| х2 = х1 х2
Остальные 6 функций, по сути, не являются функциями от двух переменных. Функции f4,f6,f11,f13 зависят существенно только от одной переменной:
f4(х1, х2) = х1, f6(х1, х2) = x2,
f11(х1, х2) =х2, f13(х1, х2) =х1.
Функции f1,f16 не зависят ни от одной переменной и являются функциями – константами:
f1(х1, х2) = 0, f16(х1, х2) = 1.
Замечание. Операция неэквивалентности (х1х2), определяющая функциюf7(х1, х2), имеет и другие названия. В математической логике она известна еще как операция «исключающее или», а в двоичной алгебре – как операция «сложение по модулю два».
Исходя из рассмотренных элементарных функций, можно построить формулы для более сложных функций трех и более числа переменных.
Пример.ФормулаF= ((х1х2) •х2)х3 определяет функцию трех переменныхf(х1, х2, х3 ).
Таким образом, суперпозиция элементарных функций позволяет получить другие логические функции конечного или бесконечного числа переменных. Совокупность всех возможных логических функций образует множество, которое обозначим P2.
Существуют много видов алгебр логики, в которых произвольная логическая функция представляется как суперпозиция некоторых базисных функций. Например, широко известной является булева система функций: конъюнкция (), дизъюнкция () и отрицание ( ). Эта система функций в качестве базиса была введена английским математиком Булем, с именем которого связано начало всей математической логики. Поэтому алгебра логики на основе этих операций называется алгеброй Буля илибулевой алгеброй. Рассмотрим свойства булевых операций.
1. Аксиоматические свойства
х • х = х, x x = x,
x •x = 0, x x = 1, х • 0 = 0, x 0 = x,
x • 1 = x, x 1 = 1.
2. Свойства коммутативности
х1 х2 = х2 х1,
х1 • х2 = х2 • х1.
3. Свойства ассоциативности
(х1 х2) х3 = х1 (х2 х3),
(х1 • х2) • х3 = х1 • (х2 • х3).
4. Свойства дистрибутивности
(х1 х2) • х3 = (х1 • х3) (х2 • х3),
(х1 • х2) х3 = (х1 х3) • (х2 х3).
5. Принцип двойственности (Закон де Моргана)
х1
• х2
= х1
х2,
х
1
х2
= х1
•х2.
6. Закон двойного отрицания: х =х.
В булевой алгебре любая логическая функция может быть представлена булевой формулой в виде совершенной дизъюнктивной формы (СДНФ). Причем, как будет показано ниже, представление произвольной логической функции в виде СДНФ является единственным.
Рассмотрим возможность представления произвольной функции в виде булевой формулы, содержащей только операции дизъюнкции, конъюнкции и отрицания.
Теоремы 1 и 2 доказывают возможность такого представления. Введем некоторые понятия.
Элементарной
конъюнкцией (ЭК) называется выражение
где
все
–
различны, аr–ранг
конъюнкции. Функция-константа единица
(Ui=
1) считается конъюнкцией нулевого ранга.
Элементарной
дизъюнкцией
(ЭД) называется выражение
где все
–
различны, а r
– ранг
дизъюнкции.
Функция-константа единица (Ui
=
0) считается дизъюнкцией нулевого ранга.
Дизъюнктивной нормальной формой(ДНФ) называется дизъюнкция N =U1 U2 ...Ukэлементарных конъюнкцийU1,U2, ...,Uk. Совершенная ДНФ – частный случай ДНФ, элементарные конъюнкции которой содержат все переменные и ранг их равенn.
Конъюнктивной нормальной формой (КНФ) называется конъюнкция N = U1 U2 ... Uk элементарных дизъюнкций U1, U2, ..., Uk. Совершенная КНФ – частный случай КНФ, элементарные дизъюнкции которой содержат все переменные и ранг их равен n.
Теорема 1. Произвольную логическую функцию f(х1, х2, ..., хn) можно представить в виде
(2)
где σi {0, 1}, xi0 =хi, xi1 = xi, σ = (σ1, …, σn) и дизъюнкция берётся по всем n-мерным наборам из нулей и единиц.
Доказательство. Покажем, что левая и правая части соотношения (2) совпадают. Подставим в (2) произвольный набор α = (α1, …, αn), где каждое αi {0,1}. В левой части получим f(α1, α2, …, αn), а в правой части:
Равенства
в правой части вытекают из свойств
конъюнкции, дизъюнкции и из того,
что: хσ
= 1
х = σ.
Если f(х1, х2,..., хn)≢0, то соотношение (2) можно переписать в форме:
(3)
Эта формула (3) называется совершенной дизъюнктивной нормальной формой (СДНФ) функции f(x1, х2,..., xn).
Следствие. Для произвольной логической функции существует взаимнооднозначное соответствие между ее СДНФ и таблицей истинности:
а) СДНФ содержит ровно столько элементарных конъюнкций, сколько единичных наборов у функции;
б) каждому единичному набору σ = (σ1, …, σn) соответствует элементарная конъюнкция всех переменных функции, в которой для σi= 0 переменная хi берется с отрицанием и для σi= 1 – без отрицания.
Рассмотрим
построение СДНФ по таблице истинности
функции f(x1,
х2, ...,xn).
Для каждого набора σ = (σ1, …, σn)
из единичного множества [1] (такого,
чтоf(σ1, …, σn)
= 1), составляется выражение ЭК:
.
Затем эти конъюнкции соединяются знаком
дизъюнкции.
Пример 1. Построим СДНФ для функции неэквивалентности f7(x1, х2)=(х1 х2). Исходя из единичного множества этой функции [1] = {(0, 1), (1, 0)} формула СДНФ будет иметь вид: FСДНФ = х1 • х2 х1•х2.
Теорема 2. Произвольную логическую функцию f (х1, х2,..., хn) можно представить в виде:
(4)
где
σi
{0, 1}, хi0
=
хi,
xi1
= xi,
σ = (σ1,
…, σn)
и конъюнкция берётся по всем n-мерным наборам из нулей и единиц.
Доказательство.
Из свойства булевой функции имеем
f
(х1,
х2,...,
хn)
=
(х1,
х2,
..., хn).
Для функции f(х1,
х2,...,
хn)
по теореме 1 существует представление
в виде
тогда имеем:
что следует из закона де Моргана.
Заметим также, что
.
Следовательно,