Выполнение любой логической операции сводится к определению истинности или ложности некоторого условия.
Булева алгебра решает математическую задачу в терминах высказываний, и является алгеброй двух значений истинности.
Для двух двоичных переменных (принимающих значения 0 и 1) существует 16 возможных функций. Функции включают только три операции: AND (И) - умножение или конъюнкция, OR (ИЛИ) - сложение или дизъюнкция, и NOT (НЕ) - отрицание или инверсия, которые символически представляются следующим образом: AND: A×B ; OR: A+B ; A̅= NOT A .
Законы булевой алгебры и упрощение логических выражений
Законы (правила) Rules |
Сложение (Addition) Умножение (Multiplication) |
Поглощение Absorption |
A+(A×B)=A A×(A+B)=A |
Аннулирование Annihilator |
A+1=1 A×0=0 |
Ассоциативнось (объединение) Associativity |
(A+B)+C=A+(B+C) (A×B)×C=A×(B×C) |
Коммуникативность (перестановка) Commutativity |
A+B=B+A A×B=B×A |
Дополнения Complement Laws |
A+A̅=1 A̅×A=0 частные случаи: A+A̅B=A+B; AA̅+AB=AA̅+B |
Правило Де Моргана De Morgan Theorem |
(A+B) =A̅×B̅ (A×B) =A̅+B̅ |
Дистрибутивность Distributivity |
A×(B+C)=(A×B)+(A×C) A+(B×C)=(A+B)×(A+C) |
Двойное отрицание (частныйный случай закона коммуникативности) |
A̅ =A |
Тождественность Identity |
A+0=A A×1=A |
Тавтология Idempotence |
A+A=A A×A=A |
Пример упрощения:
Предположим, у нас есть схема, и мы хотим её упростить. Функция этой логической схемы содержит только базовые элементы (И, ИЛИ, НЕ), и мы хотим продолжать использовать только эти базовые элементы. Функция выглядит следующим образом:
F(A, B, C) = (A+B)B̅ + B̅ + BC
Используем закон (правило) диструбутивности (A+B)B̅ = AB̅ + BB̅:
F(A, B, C) = AB̅ + BB̅ + B̅ + BC
Используем один из законов дополнения (BB̅ = 0); затем закон тождественности при сложении (AB̅ + 0 = AB̅):
F(A, B, C) = AB̅ + B̅ + BC
Вынесем общий множитель B̅ за скобки :
F(A, B, C) = B̅(A + 1) + BC
Используем аннулирование сложения (A + 1 = 1), а затем закон тождественности при умножении (B̅ × 1 = B̅):
F(A, B, C) = B̅ + BC
Используем законы дополнения (B̅ + BC = B̅ + C):
F(A, B, C) = B̅ + C
Последнее выражение представляет собой упрощенную функцию. Как вы можете видеть, у нас больше нет входа A, потому что он не нужен для получения конкретных выходных значений, которые дала нам эта схема!
Источник примера: Logic Design - Boolean Algebra and Simplification Theorems
Диаграммы состояний
Следует чётко понимать, что Булева алгебра, не то же самое, что двоичная алгебра. Булева алгебра представляет совершенно иную область математики, в отличие от двоичной системы счисления, являющейся не более чем альтернативной системой обозначения вещественных чисел. Булева математика и двоичная система счисления обе используют 1 и 0. Разница в том, что булевы величины ограничены одним битом (1 или 0) и обозначают истинность или ложность высказывания, тогда как двоичные числа могут состоять из многих битов. Например, двоичному числу 11001000 (двести) нет места в булевом мире.
ПРАКТИЧЕСКОЕ ПРИМЕНЕНИЕ
С помощью устройств, имеющих только два состояния (два разрешённых значения), руководствуясь положениями Булевой алгебры, можно создать схемы, способные выполнять логические и математические операции с двоичными числами (побитовые операции).
Историческая справка
Термин "Булева алгебра" используется в честь Джорджа Буля (George Boole; 1815-1864), английского математика-самоучки, родоначальника раздела математической логики, в котором изучаются логические операции над высказываниями, предполагая, что высказывания могут быть только истинными или ложными.