Слайд 2
![Множество булевых функций F называется полным, если любая булева функция](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-1.jpg)
Множество булевых функций F называется полным,
если любая булева функция может
быть представлена некоторой формулой над F.
Слайд 3
![Пример. Множество функций является полным множеством в силу теоремы о](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-2.jpg)
Пример.
Множество функций
является полным множеством в силу теоремы о представлении любой
булевой функции ДНФ (или КНФ)
Из множества можно удалить конъюнкцию (дизъюнкцию), поскольку & (v) можно выразить по законам де Моргана через ¬ и v (&)
Слайд 4
![Множество, состоящее из единственной функции штриха Шеффера является полным, поскольку](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-3.jpg)
Множество, состоящее из единственной функции штриха Шеффера
является полным, поскольку
Слайд 5
![Множество функций (базис Жегалкина) является полным множеством](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-4.jpg)
Множество функций
(базис Жегалкина)
является полным множеством
Слайд 6
![Полином Жегалкина от n переменных представление булевой функции в виде](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-5.jpg)
Полином Жегалкина от n переменных представление булевой функции в виде
где ,
коэффициенты
полинома индексированы всеми возможными подмножествами множества I
Слайд 7
![Утверждение Полином Жегалкина для любой булевой функции определен однозначно.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-6.jpg)
Утверждение
Полином Жегалкина для любой булевой функции определен однозначно.
Слайд 8
![Пример Пусть f=(1,1,0,0,1,0,1,1) Функция f представляется некоторым полиномом Жегалкина от 3 переменных, т.е.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-7.jpg)
Пример
Пусть f=(1,1,0,0,1,0,1,1)
Функция f представляется некоторым полиномом Жегалкина от 3 переменных,
т.е.
Слайд 9
![](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-8.jpg)
Слайд 10
![](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-9.jpg)
Слайд 11
![1.5 Классы Поста](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-10.jpg)
Слайд 12
![Функцию f называют функцией, сохраняющей константу 0, если f(0,0,…,0) =](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-11.jpg)
Функцию f называют функцией, сохраняющей константу 0, если
f(0,0,…,0) = 0
Функцию
f называют функцией, сохраняющей константу 1, если
f(1,1,…,1) = 1
Множество всех функций, сохраняющих константу 0 обозначим Т0. Множество всех функций, сохраняющих константу 1 -- Т1.
Слайд 13
![Пример. Функция f = (00111101) является функцией, сохраняющей и константу](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-12.jpg)
Пример.
Функция f = (00111101) является функцией, сохраняющей и
константу 0,
и константу 1.
Отрицание не сохраняет ни 0, ни 1.
Слайд 14
![Пусть f(x1, x2, …, xn ) – булева функция. Двойственной](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-13.jpg)
Пусть f(x1, x2, …, xn ) – булева функция. Двойственной к
ней называется функция
f*(x1, x2, …, xn ) ≡ ¬f (¬ x1, ¬ x2, …, ¬ xn ).
Если двойственная функция f* совпадает с исходной функцией f, то такая функция f называется самодвойственной.
Слайд 15
![Функция самодвойственна тогда и только тогда, когда на взаимно противоположных](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-14.jpg)
Функция самодвойственна тогда и только тогда, когда на взаимно противоположных наборах
она принимает взаимно противоположные значения.
Множество всех самодвойственных функций обозначим S
Слайд 16
![Функцию f монотонная, если f(α) ≤ f(β) для всех наборов](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-15.jpg)
Функцию f монотонная, если
f(α) ≤ f(β) для всех наборов значений
переменных таких, что α ≤ β
Множество всех монотонных функций принято обозначать через М
Слайд 17
![Если функция f не является монотонной, то найдутся два таких](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-16.jpg)
Если функция f не является монотонной, то найдутся два таких набора
α, β и индекс i, что
и f(α)=1, f(β)=0,
т.е. эти два набора различаются значениями в точности одной компоненты, а значение функции равно 0 на большем наборе и равно 1 на меньшем
Слайд 18
![Пример. Функция f = (0011) монотонна. Отрицание немонотонная функция](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-17.jpg)
Пример.
Функция f = (0011) монотонна.
Отрицание немонотонная функция
Слайд 19
![Функция f линейная, если f представима в виде полинома Жегалкина](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-18.jpg)
Функция f линейная, если f представима в виде полинома Жегалкина первой
степени, т.е.
Множество всех линейных функций обозначают через L
Слайд 20
![Множества функций Т0, Т1, S , М , L называются классами Поста](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-19.jpg)
Множества функций Т0, Т1, S , М , L называются классами
Поста
Слайд 21
![Пример Штрих Шеффера не принадлежит ни одному из классов Поста.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-20.jpg)
Пример
Штрих Шеффера
не принадлежит ни одному из классов Поста.
Слайд 22
![Все свойства, кроме нелинейности, следуют из таблицы этой функции. Нелинейность](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-21.jpg)
Все свойства, кроме нелинейности, следуют из таблицы этой функции. Нелинейность доказывается
выводом нелинейного полинома Жегалкина для штриха Шеффера
Слайд 23
![Множество булевых функций F называют замкнутым, если любая формула над F представляет некоторую функцию из F](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-22.jpg)
Множество булевых функций F называют замкнутым, если любая формула над F
представляет некоторую функцию из F
Слайд 24
![Множество F булевых функций полное, если замыкание F совпадает с множеством всех булевых функций](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-23.jpg)
Множество F булевых функций полное,
если замыкание F совпадает с множеством
всех булевых функций
Слайд 25
![Теорема. Каждый класс Поста замкнут.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-24.jpg)
Теорема.
Каждый класс Поста замкнут.
Слайд 26
![Нужно показать, что для каждого класса Поста P любая функция](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-25.jpg)
Нужно показать, что для каждого класса Поста P любая функция из
Р, представляемая подстановкой функций из Р принадлежит этому же классу Р.
Слайд 27
![1-2. Замкнутость классов T0 и T1 Пусть f , g1,](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-26.jpg)
1-2. Замкнутость
классов T0 и T1
Пусть f , g1, ..., gn
из класса T0, т.е.
f(0,0,…,0)=0, gi(0)=0
Тогда f(g1(0),… ,gn(0))=0
Следовательно, подстановка функций из T0 содержится в классе T0
Для класса T1 доказательство аналогично.
Слайд 28
![3. Замкнутость класса S Пусть f , g1, ..., gn](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-27.jpg)
3. Замкнутость класса S
Пусть f , g1, ..., gn из класса
S, т.е.
f=f*, gi= gi*
Показать, что f(g1, ..., gn) из S
Слайд 29
![4. Замкнутость класса М Пусть f , g1, ..., gn](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-28.jpg)
4. Замкнутость класса М
Пусть f , g1, ..., gn из класса
M
Показать, что f(g1, ..., gn) из M
Слайд 30
![5. Замкнутость класса L Очевидно, что при подстановке в линейную](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-29.jpg)
5. Замкнутость класса L
Очевидно, что при подстановке в линейную функцию
вместо ее переменных произвольных линейных функций получится снова линейная функция.
Доказана замкнутость каждого класса Поста.
Слайд 31
![Реализация констант 0 и 1 Случай 1 Пусть т.е. Тогда Для получения 0 нужно использовать](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-30.jpg)
Реализация констант 0 и 1
Случай 1
Пусть
т.е.
Тогда
Для получения 0 нужно
использовать
Слайд 32
![Аналогично реализуются константы, если имеется функция](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-31.jpg)
Аналогично реализуются константы, если имеется функция
Слайд 33
![Случай 2 Пусть Тогда найдется такой набор ,что Определим функцию где и Тогда](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-32.jpg)
Случай 2
Пусть Тогда найдется такой набор ,что
Определим функцию
где и
Тогда
Слайд 34
![Реализация отрицания Если функция fM немонотонная, то с использованием констант](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-33.jpg)
Реализация отрицания
Если функция fM немонотонная, то с использованием констант 0
и 1 из нее можно реализовать отрицание
Для немонотонной функции fM найдутся два таких набора α и β и индекс i, что
и f(α)=1, f(β)=0,
Тогда
Слайд 35
![Если немонотонная функция fM не сохраняет 0 и 1, fM(0,...,](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-34.jpg)
Если немонотонная функция fM не сохраняет 0 и 1,
fM(0,...,
0) = 1, fM(1,..., 1) = 0
то
Слайд 36
![Реализация конъюнкции с использованием констант и отрицания Если функция fL](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-35.jpg)
Реализация конъюнкции с использованием констант и отрицания
Если функция fL нелинейная,
то с использованием констант и отрицания из нее можно реализовать конъюнкцию
Слайд 37
![Критерий Поста Множество булевых функций полно тогда и только тогда,](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-36.jpg)
Критерий Поста
Множество булевых функций полно тогда и только тогда, когда оно
не содержится целиком ни в одном из классов Поста.
Слайд 38
![Необходимость. Пусть множество F булевых функций полно. Предположим, что оно](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-37.jpg)
Необходимость.
Пусть множество F булевых функций полно. Предположим, что оно содержится целиком
в одном из классов Поста Всякая суперпозиция над F снова лежала бы в классе Поста.
Существуют функции, не содержащиеся ни в одном из классов Поста, например штрих Шеффера.
Таким образом, нашлась функция, которую нельзя представить в виде суперпозиции над F, что противоречит предположению о полноте F
Слайд 39
![Достаточность Для доказательства полноты множества F, удовлетворяющего условию теоремы, построим](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-38.jpg)
Достаточность
Для доказательства полноты множества F, удовлетворяющего условию теоремы, построим формулы
над F для отрицания и конъюнкции, поскольку множество, образованное этими функциями, полно.
Тогда полным и множество F .
Слайд 40
![По условию теоремы в F найдется хотя бы одна функция](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-39.jpg)
По условию теоремы в F найдется хотя бы одна функция
Если
, то можно реализовать константу 1.
Если , то можно реализовать отрицание.
Слайд 41
![По условию теоремы в F найдется хотя бы одна функция](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-40.jpg)
По условию теоремы в F найдется хотя бы одна функция .
Если , то можно реализовать константу 0.
Если , то можно реализовать отрицание.
Таким образом, могут быть реализованы либо две константы 0 и 1, либо только отрицание, либо константы и отрицание
Слайд 42
![В случае, если из первых двух классов (T0 , T1)](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-41.jpg)
В случае, если из первых двух классов
(T0 , T1) построены
только формулы для констант, с использованием немонотонной функции fм можно реализовать отрицание.
Если реализовано только отрицание, с использованием несамодвойственной функции fS можно реализовать константы.
Слайд 43
![Имея константы и отрицание, из нелинейной функции fL можно реализовать](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-42.jpg)
Имея константы и отрицание, из нелинейной функции fL можно реализовать коньюнкцию.
Таким
образом, отрицание и конъюнкция реализованы формулами над F .
Множество полно.
Слайд 44
![Пример. Проверить на полноту множество булевых функций Для исследования используют](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-43.jpg)
Пример.
Проверить на полноту множество булевых функций
Для исследования используют критериальную таблицу. Строки
таблицы соответствуют функциям исследуемого множества, а столбцы -- классам Поста
Слайд 45
![+](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/311109/slide-44.jpg)