Монотонная булева функцияМонотонная булева функция — булева функция, которая монотонно возрастает (точнее не убывает) по каждому аргументу. Класс всех монотонных булевых функций является одним из пяти предполных классов булевой логики. ОпределениеБулева функция называется монотонной, если из того, что она принимает значение на некотором наборе аргументов , следует, что она принимает значение на всяком наборе аргументов , который получается из набора аргументов путём замены произвольного числа нулей на единицы[1]. Говорят, что набор предшествует набору , ( не больше ), если для всех . Если и , то говорят, что набор строго предшествует набору , . Наборы и называются сравнимыми, если либо . В случае, когда ни одно из этих соотношений не выполняется, наборы называются несравнимыми.
Множество всех монотонных функций алгебры логики обозначается через , а множество всех монотонных булевых функций, зависящих от переменных
Сокращённая ДНФ и КНФЕдиница монотонной функции называется нижней, если на всех наборах меньше неё функция принимает значение .[3] Двойственно, нуль монотонной функции называется верхним, если на всех наборах больше него функция принимает значение . Любая единица монотонной функции больше некоторой нижней единицы; любой ноль монотонной функции меньше некоторого верхнего нуля. Нижних единиц нет только у функции, тождественно равной (потому что у неё вообще нет единиц); верхних нулей нет только у функции, тождественно равной (потому что у неё вообще нет нулей). Монотонная функция полностью определяется множеством своих нижних единиц: она равна на наборах, для которых существует меньшая нижняя единица, и равна на наборах, которые меньше любой нижней единицы. Двойственно, монотонная функция полностью определяется множеством своих верхних нулей: она равна на наборах, для которых существует больший верхний ноль, и равна на наборах, которые больше любого верхнего нуля. Все нижние единицы монотонной функции всегда несравнимы между собой; все верхние нули монотонной функции также несравнимы между собой. Любое множество несравнимых наборов из является множеством нижних единиц некоторой монотонной функции арности , причём только одной. Любое множество несравнимых наборов из является множеством верхних нулей некоторой монотонной функции арности , причём только одной. Таким образом, между монотонными функциями и множествами несравнимых наборов есть взаимо-однозначное соответствие, которое монотонной функции сопоставляет множество нижних единиц (или верхних нулей). Булева функция является монотонной тогда и только тогда, когда её сокращённая ДНФ (КНФ) не содержит отрицаний.[4] Из этого моментально следует, что порождает все монотонные функции. Для её сокращённых ДНФ и КНФ можно указать явные формулы. Обозначим за ― множество нижних единиц , а за — множество верхних нулей. Тогда:
У монотонных функций есть только одна тупиковая ДНФ (КНФ) и она совпадает с сокращённой формой. Поэтому для монотонной функции существует лишь одна простая минимальная ДНФ (КНФ) относительно любого индекса простоты и она совпадает с сокращённой. Класс монотонных функцийМножество всех монотонных булевых функций образует замкнутый класс,[6] предполный в . Таким образом, класс монотонных функций является одним из пяти предполных классов булевой логики. Класс монотонных функций обозначается [7] или [6] (обозначение Поста). В четыре предполных класса: (класс дизъюнкций с константами), (класс конъюнкций с константами), (класс монотонных, сохраняющих 0) и (класс монотонных, сохраняющих 1).[8] Любой собственный подкласс может быть достроен до предполного в .[9] Как и для всех замкнутых классов в , для класса монотонных функций верен аналог малой теоремы Поста: система монотонных функций полна в тогда и только тогда, когда в ней содержится не сохраняющая функция, не сохраняющая функция, не дизъюнкция или константа и не конъюнкция или константа. Функции, тождественно равные и тождественно равные — монотонны. Все монотонные функции, не сохраняющие , исчерпываются функциями, тождественно равными . Таким образом, множество монотонных функций, сохраняющих , это множество монотонных функций без тождественно равных нулю. Аналогично, все монотонные функции, не сохраняющие , исчерпываются функциями, тождественно равными . Таким образом, множество монотонных функций, сохраняющих , это множество монотонных функций без тождественно равных единице. Из этого следует, что в любой порождающей класс монотонных функций системе всегда есть функция, тождественно равная нулю, и функция, тождественно равная единице. Двойственная к монотонной функции тоже монотонна, то есть класс — самодвойственнен. Примеры базисов в : . Минимальное количество функций в базисе — , максимальное — . В нет шефферовой функции. Порядок класса линейных функций равен . Все базисы монотонных функций можно поделить на 2 вида:
Функциям здесь разрешается иметь сколько угодно фиктивных переменных. Для проверки является ли функция конъюнкцией или дизъюнкцией можно посмотреть на её сокДНФ или сокКНФ. Если бы являлась, то они бы были дизъюнкцией или конъюнкцией. Класс монотонных функций имеет счётное число замкнутых подклассов. Монотонная функция является линейной тогда и только тогда, когда она является селектором или тождественной. Лемма о немонотонной функцииЛемма о немонотонной функции. Из немонотонной функции и констант и можно получить отрицание.[10] Эта лемма используется в доказательстве малой теоремы Поста. В различных доказательствах других свойств используются также следующие утверждения о немонотонных функциях:
Второе утверждение следует из первого, а утверждение леммы следует из второго. См. такжеПримечания
Литература
|