Алгебра логики
description
Transcript of Алгебра логики
Алгебра логики
Основные понятия
Введение
Буль (Boole) Джордж (2.11.1815, Линкольн, — 8.12.1864, Баллинтемпл близ Корка), английский математик и логик. Не имея специального математического образования, в 1849 стал профессором математики в Куинс-колледже в Корке (Ирландия), где преподавал до конца жизни. Б. почти в равной мере интересовали логика, математический анализ, теория вероятностей, этика Б. Спинозы, философские работы Аристотеля и Цицерона.
Высказывание
Высказывание – любое утверждение, рассматриваемое только с точки зрения его истинности или ложностиПростое – значение его истинности не
зависит от значений истинности других высказываний
Сложное – значение его истинности зависит от других высказываний
0 и 1
Эрнст Шрёдер (нем. Ernst Schröder, 25 ноября1841, Мангейм — 16 июня 1902, Карлсруэ) — немецкий математик и логик.
Известному немецкому математику и логику Эрнесту Шредеру пришло в голову предложить в качестве знака для обозначения ложного суждения цифру 0, что, конечно, привело к обозначению истины цифрой 1.
Булева переменная
M={0,1}, где 0 – ложь, 1 – истина. Обычно булевские обозначаются маленькими латинскими буквами.
Двоичной, булевой функцией от набора двоичных переменных называется функция, результатом которой могут быть только значения 0 и 1.
Таблицы истинности
x G1 G2 G3 G4
0 0 0 1 1
1 0 1 0 1
Операции
Функция - это однозначное отображение, преобразование набора аргументов из области определения в значение из области значений.
Унарная операция - операция над одним операндом
Бинарная операция – операция над двумя операндами
Основные функции
Инверсия Логическое «НЕТ», «НЕ»
x f (x)
0 1
1 0
f (x)=
Основные функции
Конъюнкция Логическое «И»
Обозначение: &, ·,
x y f (x, y)
0 0 0
0 1 0
1 0 0
1 1 1
yxyxf ,
Основные функции Дизъюнкция
Логическое «ИЛИ» Обозначение: +,
x y f (x, y)
0 0 0
0 1 1
1 0 1
1 1 1
f (x, y)=(0111)
yxyxf ,
Дополнительные функции
Импликация «если»-«то»
x y f (x, y)
0 0 1
0 1 0
1 0 1
1 1 1
f (x, y)=(1011)
yxyxyxf ,
Дополнительные функции Эквивалентность,
равнозначность. Записывается, как x ~ y, логическое равенство.
x y f (x, y)
0 0 1
0 1 0
1 0 0
1 1 1
f (x, y)=(1001)
yxyxf ,
Дополнительные функции Сложение по модулю два,
неравнозначность. Записывается, как xy, или ¬( x y) XOR (eXclusive OR)
x y f (x, y)
0 0 0
0 1 1
1 0 1
1 1 0
f (x, y)=(0110)
yxyxyxf ~,
Дополнительные функции Стрелка Пирса, функция
Вебба, логическое «или-не».Записывается, как xy
x y f (x, y)
0 0 1
0 1 0
1 0 0
1 1 0
f (x, y)=(1000)
yxyxyxf ,
Дополнительные функции Штрих Шеффера
(И-НЕ) – ‘
x y f (x, y)
0 0 1
0 1 1
1 0 1
1 1 0
f (x, y)=(1110)
yxyxyxf |),(
Приоритет операций
1. Инверсия
2. Штрих Шеффера
3. Стрелка Пирса
4. Конъюнкция
5. Дизъюнкция
6. Сложение по модулю 2
7. Импликация
8. Эквивалентность
Равносильность
Две формулы алгебры логики A и B называются равносильными, если они принимают одинаковые логические значения на любом наборе значений входящих в формулы элементарных высказываний.
Равносильность формул обозначают знаком , а запись AB означает, что формулы A и B равносильными.
Равносильность
Формула A называется тождественно ложной, если она принимает значение 0 при всех значениях входящих в нее переменных.
Например, xx. если формулы A и B равносильны, то
формула A~B - тавтология, и обратно, если формула A~B - тавтология, то формулы A и B равносильны.
Основные равносильности
Закон тождества: x=xЗакон идемпотентности (повторное
применение не даёт ничего нового). x 1 = ∧ x, x 1 = 1, ∨ x 0 = 0, ∧ x 0 = ∨ x, Закон противоречия: x ∧ x=0Закон исключенного третьего: x∨x =1
x x x x x x
Основные равносильности
Закон снятия двойного отрицания
Закон поглощения
xyxxxyxx
Докажем один из законов поглощения
Рассмотрим формулу Ax(yx). Если в этой формуле x=1 то, очевидно, yx=1
и тогда x(yx)=1 как конъюнкция двух истинных высказываний.
Пусть теперь в формуле x=0. Но тогда по определению операции конъюнкции будет ложной конъюнкция x(yx).
Итак, во всех случаях значения формулы A совпадают со значениями x, а поэтому Ax.
Свойства функций
yxyx yxyx
x~y(xy)(yx); xyxy; Правила де Моргана:
Доказательство 1
Так как при одинаковых логических значениях x и у истинными являются формулы x~y, xy, yx, то истинной будет и конъюнкция (xy)(yx).
Следовательно, в этом случае обе части равносильности имеют одинаковые истинные значения.
Пусть теперь x и у имеют различные логические значения. Тогда будут ложными эквивалентность x~y и одна из двух импликаций xy или yx. По при этом будет ложной и конъюнкция (xy)(yx).
Основные законы
Свойство дистрибутивности
zyzxzyxzyzxzyx
Свойство коммутативности
xyyxxyyx Свойство ассоциативности
)()()()( zyxzyxzyxzyx
Булевские функции
Функции, принимающие значений 1 и 0, и каждый n их аргументов принимает значение 1 и 0. Записывается, как y = f(x1, x2,…, xn), x1∈{0,1}, x2∈{0,1},…, xn∈{0,1}, y∈{0,1}.
Теорема: для n существует ровно различных функций n – переменных.
Это есть мощность функции n переменных.
n22
Суперпозиция функций
Суперпозицией булевых функций f0 и f1, ..., fn называется функция
f(x1,...,xm)=f0(g1(x1,...,xm),...,gk(x1,...,xm)), где каждая из функций gi(x1, ...,xm) либо совпадает с одной из переменных (тождественная функция), либо – с одной из функций f1,...,fn.
Пример суперпозиции
f(x,y) = ¬(x & y) суперпозиция функций ¬ и &
g(x,y) = x Е (x Ъ y)суперпозиция функций Е и Ъ
h(x,y,z) = (x & y) Е z суперпозиция функций Е и &.
Функциональная полнота
Набор функций алгебры логики называется функционально полным, или просто полным, если любую функцию алгебры логики можно представить, как суперпозицию функций этого набора.
Конституэнта единицы
Конституэнта 1 — это логическая функция, дающая значение 1 на единственном наборе входных значений, связывает все переменные, представленные в прямой или инверсной формах, знаком конъюнкции.
.0,
,1,
еслиx
еслиxx
nnnn xxxxxx 21
1 22121 ,,,,
Конституэнта нуля
Дизъюнктивный терм (или макстерм, или конституэнта нуля) – терм, связывающий все переменные, представленные в прямой или инверсной форме, знаком дизъюнкции. Любой дизъюнктивный терм равен нулю только на одном наборе переменных.
00=1; 01=0; 10=0; 11=1.Таким образом, ху=1 тогда и только тогда, когда х = у.
nnnn xxxxxx 21
1 22121 ,,,,
Дизъюнктивная нормальная форма (ДНФ)
Конъюнкти! вная норма! льная фо! рма (КНФ)
Переход от ДНФ к КНФ и наоборот
Переход от ДНФ к СДНФ
Переход от КНФ к СКНФ
Лемма
Любая логическая функция f(x1, x2, …, xn) может быть представлена в виде дизъюнкции 2п дизъюнктных слагаемых, причем дизъюнкция берется по всевозможным наборам из En. Этот факт будем записывать следующим образом:
(*) где дизъюнкция проводится по
всевозможным наборам (s1, s2, …, sп) из Еп.
Теорема
Если булева функция не равна тождественному нулю, то ее можно представить в виде СДНФ по ее таблице истинности следующим образом: берем только те наборы переменных (х1,х2, …,хn), для которых f(х1,х2, …,хn)=1, и составляем простую конъюнкцию для этого набора так: если хi = 0, то берем в этой конъюнкции !хi, если хi = 1, то берем хi. Составляя дизъюнкцию этих простых конъюнкций, придем к СДНФ.
Следствие
Любую логическую (булеву) функцию можно выразить через три логические функции: конъюнкцию, дизъюнкцию и отрицание
Нахождение формулы по таблице истинности
0
1
1
0
f (x, y)
11
01
10
00
yx
yx yx
yxyxyxf ,
Нахождение формулы по таблице истинности
0
1
1
0
f (x, y)
11
01
10
00
yx
yx
yx
yxyxyxf ,
Теорема
По аналогии с представлением любой функции (не равной тождественному нулю) в виде СДНФ можно функцию (не равную тождественной 1) представить в виде СКНФ: простая дизъюнкция составляется для тех наборов переменных (х1, х2, …, хп), для которых f(x1, x2,…, xn) = 0, причем если хi = 1, то в этой дизъюнкции берем !хi, если же хi = 0, то берем хi.
Штрих Шеффера
— отрицание
— дизъюнкция
— конъюнкция
Стрелка Пирса
Через стрелку Пирса могут быть выражены все другие логические операции:
¬x ≡ x↓xx & y ≡ (x↓x) ↓ (y↓y)x ∨ y ≡ (x↓y) ↓ (x↓y)Системы из одной функции принято
называть универсальным базисом.
Классы ФАЛ
Класс функций, сохраняющих константу 0 – K0: f(0,0,…,0)=0 Класс функций, сохраняющих константу 1 – K1: f (1 ,1,...,1)=1 Класс самодвойственных функций – V: функции f*(x1,x2,…,xn) двойственная
для (K) f(x1,x2,…,xn), если имеет место равенство
Функция самодвойственная, если
Другими словами самодвойственная функция на противоположных друг другу наборах значений аргументов принимает противоположные значения.
Класс линейных функций – L: f(x1,x2,…,xn)=С0⊕С1*x1 ⊕ … ⊕ Cnxn, где С – константы
Класс монотонных функций – M:
Класс симметричных функций – S: функция называется симметричной, если ее значение не меняется при любой перестановке аргументов.
f(0,1,0)=f(1,0,0)=f(0,0,1)
Теорема Поста (теорема о пяти «нет»)
Название Обозначение Не сохранимость
константы 0 Не сохранимость
константы 1 Не
самодвойственность Не
линейность Не
монотонность Конст. 0 0 * * Конст. 1 1 * * Отриц. ¬ * * *
Конъюн. & * * Дизъюн. v * * Имплик. → * * * *
Эквивал. ∼ * * *
Сумма по мод. 2 ⊕ * * *
Штрих Шеффера
| * * * * *
Стрелка Пирса
↓ * * * * *
Базисы
Система функций S1={¬,&,v} образует базис. Для приведения булевой функции к виду содержащему лишь связки из базиса S1 могут быть полезны следующие эквивалентности: X→Y=¬XvY X↔Y=(Xv¬Y)(¬XvY) X⊕Y=¬XYvX¬Y X|Y=¬Xv¬Y X↓Y=¬X&¬Y
Базисы
Система S2={¬,&} образует базис. Произвольную функцию можно сначала привести к виду, содержащему связки из S1, а затем использовать соотношение XvY=¬(¬X&¬Y).
Система S3={¬,v} образует базис. Произвольную функцию можно сначала привести к виду, содержащему связки из S1, а затем использовать соотношение X&Y=¬(¬Xv¬Y).
Базисы
Система S4={1,&,⊕} образует базис. Произвольную функцию можно сначала привести к виду, содержащему связки из S1 а затем использовать соотношения: ¬X=1⊕X XvY=X⊕Y ⊕ X&Y
Система S5={|} образует базис. Произвольную функцию можно сначала привести к виду, содержащему связки из S2 а затем использовать соотношения: X&Y=¬(¬X|¬Y) ¬X=X|X
Базисы
Система S6={↓} образует базис. Произвольную функцию можно сначала привести к виду, содержащему связки из S3 а затем использовать соотношения: XvY=¬(¬X|¬Y) ¬X=X↓X
Система S7={→,0} образует базис.