logo search
622221s_i_622231 версия 2 / 622231 / очн 622231 / СИСТООХИПИ 622231 / МУ_ПЗ_СИСТООХИПИ_защ

Булева алгебра

Математический аппарат, описывающий действия дискретных устройств, базируется на алгебре логики, или, как ее еще называют по имени автора английского математика Джорджа Буля (1815 - 1864 гг.), булевой алгебре. В практических целях первым применил его американский ученый Клод Шеннон в 1938 г. при исследовании электрических цепей с контактными выключателями.

Булева алгебра оперирует двоичными переменными, которые условно обозначаются как 0 и 1 и подчиняются условиям: x=1, еслиx0, иx=0, еслиx1. В ее основе лежит понятие переключательной, или булевой, функции видаf(x1,x2,...,xn) относительно аргументовx1,x2,...,xn, которая, как и ее аргументы, может принимать только два значения — 0 и 1. Как частный случай, двоичные переменные могут постоянно сохранять одно из значений — 0 либо 1. Логическая функция может быть задана словесно, алгебраическим выражением и таблицей, которая называется таблицей истинности.

Действия над двоичными переменными производятся по правилам логических операций. Между обычной, привычной нам алгеброй и алгеброй логики имеются существенные различия в отношении количества и характера операций, а также законов, которым они подчиняются.

Простейших логических операций три: отрицание (инверсия, операция НЕ), логическое умножение (конъюнкция, операция И) и логическое сложение (дизъюнкция, операция ИЛИ). Более сложные логические преобразования можно свести к указанным операциям.

Операция отрицания выполняется над одной переменной и характеризуется следующими свойствами: функция y=1 при аргументеx=0 иy=0, еслиx=1. Обозначается отрицание чертой над переменной, с которой производится операция:(игрек равен не икс). Соответственно .

Операция логического умножения (конъюнкция) для двух переменных характеризуется табл. 1.2 и обозначается следующим образом: 00=0; 01=0; 10=0; 11=1, т. е. нулевое значение хотя бы одного из аргументов обеспечивает нулевой результат операции. Операция может быть распространена на большее число переменных.

Таблица 1.2

x1

x2

y

0

0

1

1

0

1

0

1

0

0

0

1

Операцию логического сложения (дизъюнкции) определяет табл. 1.3. Обозначают ее таким способом: , либо. Первый способ предпочтителен, так как позволяет отличать логическое сложение от арифметического. Для двух переменных т. е. равенство хотя бы одного аргумента логической единице определяет единичное значение всей функции.

Таблица 1.3

x1

x2

y

0

0

1

1

0

1

0

1

0

1

1

1

Дизъюнкция, как и конъюнкция, может осуществляться с многими переменными.

Совокупность различных значений переменных называют набором. Булева функция nаргументов может иметь доN=2nнаборов. Поскольку функция принимает только два значения, общее число булевых функцийnаргументов . Таким образом, функция одного аргумента может иметь четыре значения: у=x; у=; у=1 (константа 1); у=0 (константа 0).

Два аргумента дают 16 значений функции (табл. 1.4).

Таблица 1.4

Аргументы

Функция

Название

функции

x1...0

x2...0

0

1

1

0

1

1

0

0

0

0

y=0

Константа 0

0

0

0

1

y=x1x2

Конъюнкция, операция И

0

0

1

0

Запрет по x2

0

0

1

1

y=x1

Тождественность

(тавтология) x1

0

1

0

0

Запрет по x1

0

1

0

1

y=x2

Тождественность

(тавтология) x2

0

1

1

0

Исключающее ИЛИ

(сумма по модулю 2)

0

1

1

1

Дизъюнкция, операция ИЛИ

1

0

0

0

Стрелка Пирса

(операция ИЛИ-НЕ)

1

0

0

1

Равнозначность,

эквивалентность

1

0

1

0

Инверсия x2

1

0

1

1

Импликация от x2 к x1

1

1

0

0

y=x1

Инверсия x1

1

1

0

1

Импликация от x1 к x2

1

1

1

0

Штрих Шеффера

(операция И-НЕ)

1

1

1

1

y=1

Константа 1

Булева алгебра базируется на нескольких аксиомах, из которых выводят основные законы для преобразований с двоичными переменными. Обоснованность выбора этих аксиом подтверждается таблицами истинности для рассмотренных операций. Каждая аксиома представлена в двух видах, что вытекает из принципа дуальности (двойственности) логических операций, согласно которому операции конъюнкции и дизъюнкции допускают взаимную замену, если одновременно поменять логическую 1 на 0, 0 на 1, знак на, ана.

Аксиомы операции отрицания:

Аксиомы операций конъюнкции и дизъюнкции:

  1. 0 1 = 1; (а); (б)

  2. 1 0 = 01 = 0; (а); (б)

  3. 1 1 = 1; (а); (б)

Аксиома 16 не имеет аналога в двоичной арифметике, где 1+1=10 (здесь цифры и знаки имеют обычный арифметический смысл).

Законы булевой алгебры вытекают из аксиом и также имеют две формы выражения: для конъюнкции и дизъюнкции. Здесь они приводятся без доказательств. Их правильность легко проверить по таблицам истинности либо путем подстановки 0 и 1 вместо соответствующих значений переменных.

  1. Переместительный закон

x1 x2=x2 x1; (а) ; (б)

  1. Сочетательный закон

x1(x2x3) = (x1x2)x3 = x1x2x3; (а)

. (б)

  1. Закон повторения (тавтологии)

x x = x; (а) . (б)

  1. Закон обращения: если x1 = x2, то .

  2. Закон двойной инверсии .

  3. Закон нулевого множества

x 0 = 0; (а) . (б)

  1. Закон универсального множества

x 1 = x; (а)(б)

  1. Закон дополнительности

;(а).(б)

  1. Распределительный закон

(а)

(б)

  1. Закон поглощения

(а)(б)

  1. Закон склеивания

(а) (б)

  1. Закон инверсии (закон Де Моргана)

(а)(б)

или после инвертирования левых и правых частей

(в)(г)