Консультация № 200926
23.05.2021, 15:19
0.00 руб.
0 2 2
Здравствуйте, уважаемые эксперты! Прошу вас ответить на следующий вопрос:
Найти число самодвойственных функций от n переменных.

Обсуждение

давно
Мастер-Эксперт
17387
18345
23.05.2021, 18:33
общий
это ответ
Здравствуйте, r-tatiana-1903!

В прикреплённом файле находится заимствованное мной отсюда: Ссылка >> доказательство теоремы, дающей ответ на Ваш вопрос.
Прикрепленные файлы:
Безымянный.png
Об авторе:
Facta loquuntur.
давно
Студент
405049
133
23.05.2021, 18:41
общий
это ответ
Для булевой функции с N аргументами можно получить 2N различных комбинаций аргументов, т.к. каждый аргумент независимо от других принимает 2 значения (0 или 1), а таких аргументов у нас N.

Что касается самодвойственных функций, то их свойство можно сформулировать так: если в этой функции изменить значения всех аргументов на противоположные, то значение функции также поменяется на противоположное.

Поскольку у каждой комбинации из N значений (например, у набора 00101) есть только одна противоположная комбинация (в данном случае 11010), то все 2N возможных комбинаций аргументов можно поделить на две группы по принципу: если в первую группу помещаем некую комбинацию, то противоположную ей комбинацию помещаем во вторую группу. В результате в каждой такой группе будет по 2N-1 комбинаций.

Тогда если возьмем и в первой группе для каждого набора аргументов присвоим какое-нибудь значение функции, то для каждого набора аргументов во второй группе функции присвоится значение автоматически (т.к. для каждого набора в этой группе следует установить значение функции, противоположное значению функции для соответствующего набора аргументов, противоположного данному)

Таким образом, у нас, как бы, есть лишь 2N-1 независимых наборов аргументов. "Независимых" в том смысле, что для каждого такого набора можно присваивать значение функции произвольно, независимо от значения функции для других наборов аргументов.

Теперь обратим внимание на колонку значений функции. Если у нас K наборов аргументов, то в таблице для значений функции приводится K значений для данных наборов. Другой набор значений в столбце - другая функция.

В столбце мы можем установить 2K различных комбинаций значений функции - 0 или 1 в каждой строке (для каждой комбинации аргументов) независимо от других строк.

Поскольку это число K, т.е. количество строк (комбинаций аргументв) нам известно, т.е. K=2N-1, мы получаем количество всевозможных самодвойственных функций:

2K=2 в степени 2N-1.

ОТВЕТ: 2 в степени 2N-1


Форма ответа