Участник:Fad Oleg — различия между версиями
Fad Oleg (обсуждение | вклад) м (→Теоремы о числе функций в базисе) |
Fad Oleg (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
+ | == Представление функции формулой == | ||
+ | |||
+ | {{Определение | ||
+ | |definition= | ||
+ | Если выбрать некоторый набор [[Определение булевой функции|булевых функций]] <tex>A</tex>, то с использованием выбранных функций можно записать некоторые другие булевы функции. Такая запись булевой функции называется '''формулой'''. | ||
+ | }} | ||
+ | Например, если <tex>A = \left\{\land,\neg\right\}</tex>, то функция <tex>a \lor b</tex> представляется в виде <tex>\neg(\neg a \land \neg b)</tex> | ||
+ | |||
+ | ==Тождественные функции. Выражение функций друг через друга.== | ||
+ | |||
+ | {{Определение | ||
+ | |definition = '''Тождественные функции''' — функции, которые при любых одинаковых аргументах принимают равные значения. | ||
+ | }} | ||
+ | |||
+ | Приведение тождественной функции есть '''выражение булевой функции через другие'''. | ||
+ | |||
+ | '''Примеры выражения функций через функции <tex>\{\land, \lor, \lnot \} </tex>.''' | ||
+ | |||
+ | <tex> x \oplus y = \left ( x \land \lnot y \right ) \lor \left ( \lnot x \land y \right ) = \left ( x \lor \lnot y \right ) \land \left ( \lnot x \lor y \right )</tex> | ||
+ | |||
+ | <tex> x \downarrow y = \lnot \left ( x \lor y \right) = \lnot x \land \lnot y</tex> | ||
+ | |||
+ | <tex>\langle x, y, z \rangle = \left ( x \land y \right ) \lor \left ( y \land z \right ) \lor \left ( x \land z \right ) = \left ( x \lor y \right ) \land \left ( y \lor z \right ) \land \left ( x \lor z \right )</tex> | ||
+ | |||
+ | == Подстановка одной функции в другую == | ||
+ | |||
+ | {{Определение | ||
+ | |definition = | ||
+ | '''Подстановкой''' (англ. ''substitution'') функции <tex>g</tex> в функцию <tex>f</tex> называется замена <tex>i</tex>-того аргумента функции <tex>f</tex> значением функции <tex>g</tex>: | ||
+ | |||
+ | <center><tex>h(x_{1}, \ldots, x_{n+m-1}) = f(x_{1}, \ldots, x_{i-1}, g(x_{i}, \ldots, x_{i+m-1}), x_{i+m}, \ldots, x_{n+m-1})</tex></center> | ||
+ | }} | ||
+ | |||
+ | Допускается также не только подстановка одной функции в другую, но и подстановка функции в саму себя. | ||
+ | |||
+ | При подстановке функции <tex>g</tex> вместо <tex>i</tex>-того аргумента функции <tex>f</tex>, результирующая функция <tex>h</tex> будет принимать аргументы, которые можно разделить на следующие блоки: | ||
+ | |||
+ | {| | ||
+ | |1. <tex> x_{1}, \ldots, x_{i-1}</tex> | ||
+ | |{{---}} аргументы функции <tex>f</tex> до подставленного значения функции <tex>g</tex> | ||
+ | |- | ||
+ | |2. <tex> x_{i}, \ldots, x_{i+m-1} </tex> | ||
+ | |{{---}} используются как аргументы для вычисления значения функции <tex>g(y_{1}, \ldots, y_{m})</tex> | ||
+ | |- | ||
+ | |3. <tex> x_{i+m}, \ldots, x_{n+m-1} </tex> | ||
+ | |{{---}} аргументы функции <tex>f</tex> после подставленного значения функции <tex>g</tex> | ||
+ | |} | ||
+ | |||
+ | '''Пример:''' | ||
+ | |||
+ | Исходные функции: | ||
+ | #<tex> f(a,b) = a \vee b </tex> | ||
+ | #<tex> g(a) = \neg a </tex> | ||
+ | |||
+ | <tex> h(a,b) = f(a,g(b)) = a \vee \neg b </tex> {{---}} подстановка функции <tex>g</tex> вместо второго аргумента функции <tex>f</tex>. В данном примере при помощи подстановки мы получили функцию <tex>h(a,b)=a \leftarrow b</tex>. | ||
+ | |||
+ | == Отождествление переменных == | ||
+ | {{Определение | ||
+ | |definition= | ||
+ | '''Отождествлением переменных''' (англ. ''identification of variables'') называется подстановка <tex>i</tex>-того аргумента функции <tex>f</tex> вместо <tex>j</tex>-того аргумента: | ||
+ | |||
+ | <center><tex>h(x_{1}, \ldots, x_{j-1}, x_{j+1}, \ldots, x_{n}) = f(x_{1}, \ldots, x_{i}, \ldots, x_{j-1}, x_{i}, x_{j+1}, \ldots, x_{n})</tex></center> | ||
+ | }} | ||
+ | |||
+ | Таким образом, при отождествлении <tex>c</tex> переменных мы получаем функцию <tex>h</tex> с количеством аргументов <tex>n-c+1</tex>. | ||
+ | |||
+ | '''Пример:''' | ||
+ | |||
+ | <tex> f(a,b) = a \vee b </tex> {{---}} исходная функция | ||
+ | |||
+ | <tex> h(a) = a \vee a </tex> {{---}} функция с отождествленными первым и вторым аргументами | ||
+ | |||
+ | Очевидно, в данном примере мы получили функцию <tex>P_{1}</tex> {{---}} проектор единственного аргумента. | ||
+ | |||
==Стандартный базис== | ==Стандартный базис== | ||
Строка 7: | Строка 81: | ||
}} | }} | ||
− | Если рассматривать множество бинарных булевых функций <tex>P_2(2)</tex>, то для выражения любой булевой функции через стандартный базис достаточно выразить тождественные функции | + | Если рассматривать множество бинарных булевых функций <tex>P_2(2)</tex>, то для выражения любой булевой функции данного множества (кроме стрелки Пирса и штриха Шеффера) через стандартный базис достаточно выразить тождественные функции для эквиваленции, импликации и константы <tex> 0 </tex> с использованием функций, принадлежащих стандартному базису, т. к. все остальные операции можно выразить через данные 3 функции с помощью отрицания: |
<tex> x \leftrightarrow y = \left ( x \rightarrow y \right ) \land \left ( y \rightarrow x \right ) </tex> | <tex> x \leftrightarrow y = \left ( x \rightarrow y \right ) \land \left ( y \rightarrow x \right ) </tex> | ||
Строка 14: | Строка 88: | ||
<tex> 0 = x \land \lnot x </tex> | <tex> 0 = x \land \lnot x </tex> | ||
+ | |||
+ | Функции <tex> \mid \ и \downarrow</tex> являются отрицаниями функций <tex> \land \ и \ \lor</tex> соответственно. | ||
+ | |||
+ | <tex> x \mid y = \lnot \left ( x \land y \right )</tex> | ||
+ | |||
+ | <tex> x \downarrow y = \lnot \left ( x \lor y \right )</tex> | ||
Тождественность функций можно доказать с помощью таблицы истинности. | Тождественность функций можно доказать с помощью таблицы истинности. | ||
Строка 19: | Строка 99: | ||
'''Пример:''' | '''Пример:''' | ||
− | + | Выразим через стандартный базис обратную импликацию <tex> \left (x \leftarrow y \right ) </tex>. | |
<tex>x \leftarrow y = \lnot x \rightarrow \lnot y = x \lor \lnot y </tex> | <tex>x \leftarrow y = \lnot x \rightarrow \lnot y = x \lor \lnot y </tex> | ||
Строка 46: | Строка 126: | ||
==Теоремы о числе функций в базисе== | ==Теоремы о числе функций в базисе== | ||
{{Теорема | {{Теорема | ||
− | |statement = Максимально возможное число булевых функций в базисе — четыре. | + | |statement = Максимально возможное число булевых функций в безызбыточном базисе — четыре. |
|proof = Рассмотрим произвольный безызбыточный базис <tex> X</tex>. Тогда по [[Полные системы функций. Теорема Поста о полной системе функций|теореме Поста]] <tex>X</tex> содержит следующие функции (не обязательно различные): | |proof = Рассмотрим произвольный безызбыточный базис <tex> X</tex>. Тогда по [[Полные системы функций. Теорема Поста о полной системе функций|теореме Поста]] <tex>X</tex> содержит следующие функции (не обязательно различные): | ||
Версия 15:43, 26 июня 2021
Содержание
Представление функции формулой
Определение: |
Если выбрать некоторый набор булевых функций , то с использованием выбранных функций можно записать некоторые другие булевы функции. Такая запись булевой функции называется формулой. |
Например, если
, то функция представляется в видеТождественные функции. Выражение функций друг через друга.
Определение: |
Тождественные функции — функции, которые при любых одинаковых аргументах принимают равные значения. |
Приведение тождественной функции есть выражение булевой функции через другие.
Примеры выражения функций через функции
.
Подстановка одной функции в другую
Определение: |
Подстановкой (англ. substitution) функции | в функцию называется замена -того аргумента функции значением функции :
Допускается также не только подстановка одной функции в другую, но и подстановка функции в саму себя.
При подстановке функции
вместо -того аргумента функции , результирующая функция будет принимать аргументы, которые можно разделить на следующие блоки:1. | — аргументы функции | до подставленного значения функции
2. | — используются как аргументы для вычисления значения функции |
3. | — аргументы функции | после подставленного значения функции
Пример:
Исходные функции:
— подстановка функции вместо второго аргумента функции . В данном примере при помощи подстановки мы получили функцию .
Отождествление переменных
Определение: |
Отождествлением переменных (англ. identification of variables) называется подстановка | -того аргумента функции вместо -того аргумента:
Таким образом, при отождествлении переменных мы получаем функцию с количеством аргументов .
Пример:
— исходная функция
— функция с отождествленными первым и вторым аргументами
Очевидно, в данном примере мы получили функцию
— проектор единственного аргумента.Стандартный базис
Определение: |
Стандартный базис — система булевых функций: |
Если рассматривать множество бинарных булевых функций , то для выражения любой булевой функции данного множества (кроме стрелки Пирса и штриха Шеффера) через стандартный базис достаточно выразить тождественные функции для эквиваленции, импликации и константы с использованием функций, принадлежащих стандартному базису, т. к. все остальные операции можно выразить через данные 3 функции с помощью отрицания:
Функции
являются отрицаниями функций соответственно.
Тождественность функций можно доказать с помощью таблицы истинности.
Пример:
Выразим через стандартный базис обратную импликацию
.
Полнота стандартного базиса
Утверждение: |
Стандартный базис является полной системой булевых функций |
Данное утверждение - следствие теоремы об СДНФ. Если рассмотреть функцию, не равную тождественному нулю, то она представима в виде СДНФ, в которой используются функции стандартного базиса. Способ выражения тождественного нуля через функции стандартного базиса уже был описан выше. |
Замечание:
Следовательно, стандартный базис является избыточным, в то время как безызбыточными являются подмножества системы:
(конъюнктивный базис Буля)
(дизъюнктивный базис Буля)
Теоремы о числе функций в базисе
Теорема: |
Максимально возможное число булевых функций в безызбыточном базисе — четыре. |
Доказательство: |
Рассмотрим произвольный безызбыточный базис теореме Поста содержит следующие функции (не обязательно различные): . Тогда по, где — классы Поста. Значит, так как — безызбыточный базис, а система — полная, тоРассмотрим . Возможны два случая:1. , тогда также не сохраняет единицу и немонотонная, т.е.. Значит, . 2. , тогда несамодвойственная, т.е. . Значит, . |
Теорема: |
Для любого числа найдётся базис , что . |
Доказательство: |
Приведём примеры базисов для каждого :; ; ; ; Докажем, что последняя система является базисом: ; ; ; (доказывается с помощью таблицы истинности). |
Источники
Полные системы булевых функций — Википедия
Категория: Дискретная математика и алгоритмы
Категория: Булевы функции