- •Программа по курсу «Дискретная математика» для заочной формы обучения
- •Методика рецензирования контрольной работы.
- •Краткие теоретические сведения
- •Множества и операции над ними
- •Бинарные отношения
- •Отношение эквивалентности
- •Отношение упорядоченности
- •Функции
- •Функции и формулы алгебры логики
- •Двойственные функции и совершенные нормальные формы
- •Принцип двойственности
- •Построение совершенных нормальных форм
- •Полнота и замкнутость систем функций алгебры логики
- •Полные системы функций алгебры логики
- •Важнейшие замкнутые классы
- •Задание к контрольной работе по дискретной математике
- •I. Множества и операции над ними.
- •Варианты контрольных работ Вариант №1
- •Вариант №2
- •Вариант №3
- •Вариант №4
- •Вариант №5
- •Вариант №6
- •Вариант №7
- •Вариант №8
- •Вариант №9
- •Вариант №10
- •Вариант №11
- •Вариант №12
- •Вариант №13
- •Вариант №14
- •Вариант №15
- •Вариант №16
- •Вариант №17
- •Вариант №18
- •Вариант №19
- •Вариант №20
- •Вариант №21
- •Вариант №22
- •Вариант №23
- •Вариант №24
- •Вариант №25
- •Пример решения контрольной работы
- •Список литературы
- •400131, Волгоград, просп. Им. В.И. Ленина, 28
- •400131, Волгоград, ул. Советская, 35
-
Полнота и замкнутость систем функций алгебры логики
-
Полные системы функций алгебры логики
-
Система функций алгебры логики F={f1, f2,…, fs,…} P2 называется полной или функционально полной, если любая функция алгебры логики может быть записана в виде формулы через функции этой системы (или, как говорят, выражена формулой над F).
В соответствии с этим определением системы функций {Ø,&,Ú}, {Ø,&}, {Ø,Ú}, {Ø,®}, а также {¯} и {} являются функционально полными.
Имеются и другие полные системы функций. Определить полноту некоторой системы функций можно с помощью следующей теоремы.
Теорема. О полных системах функций алгебры логики
Пусть имеются две системы функций алгебры логики: F={f1, f2,…, fp,…} и G={g1, g2,…, gr,…}, относительно которых известно, что система F полна и каждая её функция может быть выражена формулой через функции системы G. Тогда система функций G – является полной.
Пример: покажем функциональную полноту следующих систем: (1) G1={,,}, (2) G2={,&,} и (3) G3={1,·,}, где «·» – это обычное умножение.
(1) Известно, что система
функций {Ø,Ú}
является полной. Поскольку «Ú»
имеется в G1, а
«Ø» выражается
формулой
,
то G1 тоже полна.
(2) Известно, что система
функций {Ø,&} является
полной. Поскольку «&» имеется в G2,
а «Ø» выражается
формулой
,
то G2 тоже полна.
(3) Т.к. система {Ø,&}
является полной и х·у = х&у,
а
,
то G3 – полная
система функций. Система G3
играет особую роль в алгебре логики,
т.к. формула, сконструированная из
функций {1,·,} и
скобок, после раскрытия скобок и
несложных алгебраических преобразований
переходит в полином Жегалкина (СПНФ).
Другой важный критерий полноты системы функций алгебры логики связан с понятием замыкания и замкнутого класса.
Пусть М Р2 – некоторое подмножество множества всех функций алгебры логики. Замыканием М называется множество тех истинностных функций, которые могут быть выражены формулой над М.
Замыкание М обозначается [M].
Класс функций М называется функционально замкнутым или просто замкнутым, если его замыкание совпадает с ним самим, т.е. [M] = М.
Определение полной системы функций можно сформулировать в терминах замыканий: система функций М является функционально полной, если её замыкание совпадает с множеством всех функций алгебры логики, т.е. [M]=P2.
-
Важнейшие замкнутые классы
1) Класс функций, сохраняющих ноль. Обозначение: Т0.
Т0={f(x1,x2,…,xn)P2:
f(0,0,…,0)=0}, таким
образом, этот класс состоит из тех
функций алгебры логики, которые на
наборе, состоящем из одних нулей, имеют
значение ноль. Или, что то же самое, в
верхней строке таблицы истинности
значение этих функций равно нулю. И
поскольку, ровно половина всех функций
в верхней строке равны нулю, то число
функций от n переменных,
относящихся к классу Т0, равно
.
Из элементарных функций к этому классу
относятся следующие: 0, х, &, ,
. А такие, как 1,
,
,
не принадлежат классу Т0.
2) Класс функций, сохраняющих единицу. Обозначение: Т1.
Т1={f(x1,x2,…,xn)P2:
f(1,1,…,1)=1}, таким
образом, этот класс состоит из тех
функций алгебры логики, которые на
наборе, состоящем из одних единиц, имеют
значение 1. Или, что то же самое, в нижней
строке таблицы истинности значение
этих функций равно единице. И, поскольку,
ровно половина всех функций в нижней
строке равны единице, то число функций
от n переменных,
относящихся к классу Т1, равно
.
Из элементарных функций к этому классу
относятся следующие: 1, х, &, ,
, .
А такие, как 0,
,
не принадлежат
классу Т1.
3) Класс самодвойственных функций. Обозначение: S.
S={f(x1,x2,…,xn)P2:
f(x1,x2,…,xn)=f *(x1,x2,…,xn)
}, таким образом, этот класс состоит из
тех функций алгебры логики, которые
совпадают с двойственными к ним. Заметим,
что такие функции на противоположных
наборах принимают противоположные
значения, т.к. f(x1,x2,…,xn)=
.
Таблицы истинности этих функций имеют
зеркальную симметрию верхней половины
строк таблицы и инвертированной нижней
половины строк относительно середины
всех строк таблицы. Тем самым,
самодвойственные функции полностью
определяются своими значениями на
первой половине строк таблицы. Число
таких строк для функций от n
переменных равно
=2n-1
и, следовательно, число функций от n
переменных, относящихся к классу S,
равно
.
Из элементарных функций самодвойственными
являются только тождественная функция
х и отрицание
.
Лемма о несамодвойственной функции
Если функция алгебры
логики не принадлежит классу
самодвойственных функций, то всегда
можно указать такую замену её переменных
функциями х и
,
что в результате этой замены будет
получена константа 0 или 1.
4) Класс монотонных функций. Обозначение: М.
Функция f(x1,x2,…,xn)P2
называется монотонной, если для
любых двух наборов =(1,2,…,n)
и =(1,2,…,n)
таких, что i i,
где i=1,2,…,n,
следует f() f().
Про такие наборы говорят, что набор
предшествует
набору , и
обозначают .
Из элементарных функций монотонными
являются 0, 1, тождественная функция х,
, .
А функции
,
, ,
, ,
монотонными не
являются.
Лемма о немонотонной функции
Если функция алгебры
логики не принадлежит классу монотонных
функций, то из неё путем подстановки
констант 0, 1 и функции х на места
переменных можно получить функцию
.
5) Класс линейных функций. Обозначение: L.
L={f(x1,x2,…,xn)P2:
f(x1,x2,…,xn)=c0c1x1c2x2…cnxn,
где c0,c1,c2,…,cn
равны 0 или 1}. Таким образом, этот класс
состоит из тех функций алгебры логики,
которые представимы линейным выражением.
Различные линейные функции от n
переменных отличаются друг от друга
составом слагаемых, входящих в их
линейные выражения. Этот состав
определяется значением коэффициентов:
если соответствующий коэффициент равен
нулю, то слагаемое отсутствует. И так
как число коэффициентов равно n+1,
то число функций от n
переменных, относящихся к классу L,
равно 2n+1.
Из элементарных функций линейными
являются тождественная функция х,
отрицание
,
константы 0 и 1, а также
и .
Лемма о нелинейной функции
Если функция алгебры
логики от n переменных
f(x1,x2,…,xn)
нелинейна, то из неё можно получить
х1& x2
путем подстановки констант 0 или 1 и
функций х и
,
а также, возможно, размещением знака
отрицания над f.
|
|
Т0 |
Т1 |
S |
M |
L |
|
0 |
+ |
– |
– |
+ |
+ |
|
1 |
– |
+ |
– |
+ |
+ |
|
|
– |
– |
+ |
– |
+ |
|
Таблица 8 |
|
||||
Следующая теорема является необходимым и достаточным условием полноты системы функций алгебры логики.
Теорема Поста о полноте
Система функций алгебры логики является полной тогда, и только тогда, когда она целиком не содержится ни в одном из пяти замкнутых классов: Т0, Т1, S, M и L. Иными словами среди функций этой системы обязательно имеются функции, не сохраняющие ноль и единицу, а также несамодвойственная, немонотонная и нелинейная функции.
Следствие 1: из всякой полной в Р2 системы функций можно выделить полную подсистему, содержащую не более четырех функций.
Следствие 2: всякий замкнутый класс функций алгебры логики, не совпадающий с множеством всех функций алгебры логики, содержится по крайней мере в одном из классов Т0, Т1, S, M или L.
В этом смысле классы Т0, Т1, S, M и L являются максимальными или предполными, поскольку добавление к любому из них любой истинностной функции, не принадлежащей классу, приводит к полной системе функций.
Следствие 3: в алгебре логики существует только пять предполных классов: Т0, Т1, S, M и L.
Полная система функций алгебры логики называется базисом в Р2, если никакая её собственная подсистема не является полной. Иными словами базис – это минимальная по числу функций полная система. Важно, что любая из функций алгебры логики записывается формулой через функции базиса.
Используя теорему о полноте, несложно установить, является ли полной заданная система функций и образует ли она базис? Рассмотрим решение этого вопроса на примере.
Пусть имеется система функций: {0, 1, }. Очевидно, что эта система является функционально полной, поскольку полна её собственная подсистема {, }. Понятно также, что исходная система функций не является базисом, т.к. из неё можно удалить функции 0, 1 и и оставшиеся функции все ещё составляют полную систему. Выясним теперь, имеются ли в заданной системе другие полные подсистемы, образующие базис. Для этого составим таблицу принадлежности функций {0, 1, } пяти замкнутым классам.
|
|
Т0 |
Т1 |
S |
M |
L |
|
0 |
+ |
– |
– |
+ |
+ |
|
1 |
– |
+ |
– |
+ |
+ |
|
|
– |
+ |
– |
– |
– |
|
|
+ |
– |
– |
– |
+ |
|
|
– |
– |
+ |
– |
+ |
|
Таблица 9 |
|
||||
