Замкнутый класс булевых функций

Замкнутый класс в теории булевых функций — такое множество функций алгебры логики, замыкание которого относительно операции суперпозиции совпадает с ним самим: . Другими словами, любая функция, которую можно выразить формулой с использованием функций множества , снова входит в это же множество[1].

В 1941 году Эмиль Пост представил полное описание всех замкнутых классов булевых функций[2]. Множество всех замкнутых классов, упорядоченное отношением включения, образует решётку, называемую решёткой Поста[3].

Определение

Через элементарные операции

Говорят, что функция получена при помощи операции суперпозиции функций из множества , если функция может быть получена из функций множества за конечное число шагов при помощью следующих операций:

  1. Перестановка и отождествление переменных;
  2. Подстановка функций и переменных в качестве аргументов другой функции;
  3. Добавление и удаление фиктивных переменных.

Если множество функций замкнуто относительно указанных операций, то оно называется замкнутым классом. В данном определении разрешается функциям иметь ноль аргументов, то есть быть нульарными[4].

В англоязычной литературе и некоторой русскоязычной зачастую используют другое определение, неэквивалентное данному. Замкнутому классу запрещают иметь нульарные функции и убирается требование замкнутости относительно операции удаления переменных. Замкнутые классы в этом определении идентичны замкнутым классам в первом, с точностью до нульарных функций[5].

Через формулы

Пусть дано множество функций положительной арности и множество , , называемое множеством переменных. Булевой формулой глубины 0 над множеством функций и множеством переменных называется однобуквенное слово из одного символа . Булевой формулой глубины , где , называется слово вида , где ― функция, имеющая арность , а ― булевы формулы, глубины меньше . Говорят, что функция задаётся булевой формулой относительно набора переменных (все в этом наборе отличаются и каждая переменная формулы входит в этот набор), если равняется значению этой формулы, после подстановки вместо каждого значения . Тогда говорят, что функция получена при помощи операции суперпозиции функций из множества , если функция может быть задана булевой формулой положительной глубины над множеством функций .

Данное определение эквивалентно второму определению выше (то есть тому, где запрещаются функции нулевой арности). Определение через формулы можно видоизменить для того, чтобы оно соответствовала первому определению (тому, где разрешается удаление фиктивных переменных). Для этого множеству разрешается иметь нульарные функции и вводится понятие фиктивной переменной формулы. Переменная называется фиктивной переменной булевой формулы , если любое изменение значения данной переменной при сохранении значений остальных переменных не меняет значения формулы; в противном случае переменная называется существенной. Тогда при определении того, что функция задаётся формулой относительно набора переменных на этот набор накладывается менее строгое ограничение: требуется не чтобы любая переменная формула обязательно входила в этот набор, а достаточно чтобы любая существенная переменная входила в него, а фиктивные могут и не входить. Формулировка определения того, что функция получена при помощи операции суперпозиции, остаётся без изменений. Такое определение будет эквивалентно определению через элементарные операции с удалением фиктивных переменных[6].

Примеры замкнутых классов

Простейшими замкнутыми классами являются класс всех булевых функций [7] и пустое множество [8]. Некоторые авторы не считают пустое множество замкнутым классом[9]; в таком случае множество всех замкнутых классов булевых функций с отношением включения не образует решётку.

Особо известными замкнутыми классами булевых функций являются следующие 5 классов:

  • Класс функций, сохраняющих константу 0:
    [10].
  • Класс функций, сохраняющих константу 1:
    [10].
  • Класс самодвойственных функций:
    [11].
  • Класс монотонных булевых функций:
    [12].
  • Класс линейных булевых функций:
    [10].

Эти классы так известны, поскольку участвуют в формулировке критерия Поста. Любой замкнутый класс булевых функций, отличный от класса всех функций, вкладывается в хотя бы один из этих пяти классов[13].

Другими важными замкнутыми классами являются:

  • Класс конъюнкций с константами , представляющий собой множество функций вида [14].
  • Класс дизъюнкций с константами , представляющий собой множество функций вида [14].
  • Класс несущественных функций , содержащий только константы, отрицания одного из своих аргументов и селекторы (функции, равные одному из своих аргументов на всех наборах их значений)[15].
  • Класс констант , содержащий только константы[15].
  • Класс функций (m — любое натуральное, большее единицы число), удовлетворяющих условию : для любых m наборов, на которых функция принимает нулевое значение, найдется переменная, также принимающая нулевое значение на всех этих наборах[15].
  • Класс функций, для которых выполнено условие : , где  — одна из переменных функции[16].
  • Класс функций (m — любое натуральное, большее единицы число), удовлетворяющих условию : для любых m наборов, на которых функция принимает единичное значение, найдется переменная, также принимающая единичное значение на всех этих наборах[15].
  • Класс функций, для которых выполнено условие : , где  — одна из переменных функции[16].

Любой замкнутый класс булевых функций является пересечением конечного числа классов , где [17].

Свойства

  • Пересечение любого числа замкнутых классов снова является замкнутым классом[18] (если пустое множество считать замкнутым классом).
  • Объединение замкнутых классов может замкнутым классом не являться (например объединение класса нулей и класса селекторов с отрицаниями не является замкнутым классом, поскольку отрицание нуля даст единицу).
  • Замкнутый класс булевых функций, содержащий не только константы, обязательно содержит все селекторы.
  • Дополнение замкнутого класса булевых функций до множества всех булевых функций может замкнутым классом не являться (если пустое множество не считать замкнутым классом, то дополнение не является замкнутым классом никогда).

Замыкание

Замыканием (относительно суперпозиции) системы функций называется множество всех функций, которые могут быть получены из функций множества при помощи суперпозиции. Замыкание системы функций обозначается .[19]. Замыкание любой системы функций является замкнутым классом. Система функций является замкнутым классом тогда и только тогда, когда [6]. Класс является наименьшим по включению замкнутым классом, включающим . Класс можно получить как пересечение всех замкнутых классов, содержащих .

Замыкание относительно суперпозиции является частым случаем теоретико-множественного замыкания, то есть для него выполнены следующие свойства:

  1. Любое множество является подмножеством своего замыкания: .
  2. Замыкание подмножества является подмножеством замыкания: .
    Следует заметить, что из строгого вложения множеств следует лишь нестрогое вложение их замыканий:
  3. Многократное применение операции замыкания эквивалентно однократному: .

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

, где — множество всех конечных подможеств .[20]

Полные системы функций

Система функций называется полной системой в замкнутом классе , если любую функцию класса можно получить при помощи суперпозиции функций множества . Эквивалентное определение: система полна в , если . Полную систему также называют порождающей системой и говорят, что она порождает класс [21]. Примеры полных систем:

  • В любом замкнутом классе сам класс является полной системой.
  • Система является полной системой в классе всех булевых функций, так как любую функцию можно задать при помощи СДНФ, а [22].
  • Система является полной системой в классе линейных функций, так как любую линейную функцию можно задать при помощи полинома Жегалкина без конъюнкций, а .
  • Система является полной системой в классе монотонных функций, так как любую монотонную функцию можно задать при помощи сокДНФ без отрицаний.

Функция, которая сама по себе образует полную систему в замкнутом классе , называется шефферовой функцией в классе . Штрих Шеффера и Стрелка Пирса являются шефферовыми функциями в классе всех булевых функций. Отрицание функции голосования является шефферовой функцией в классе самодвойственных функций. В классах монотонных функций и линейных функций шефферовых функций нет.

Базис

Полная система функций в замкнутом классе называется базисом в замкнутом классе , если никакая собственная подсистема не является полной в . Таким образом базис — это минимальная по включению полная система класса[11].

Приведённая выше система , полная в классе всех булевых функций, не является базисом, поскольку можно выразить через при помощи законов де-Моргана. Базисами в классе всех булевых функций являются системы и .

Система является базисом в классе линейных функций. Система является базисом в классе монотонных функций.

У любого замкнутого класса булевых функций есть конечный базис. Все базисы всех замкнутых классов имеют не более четырёх функций.

Порядок

Идейно, порядок замкнутого класса есть минимальная арность функций базиса. Существует несколько определений порядка.

В одном из определений сначала определяется порядок функции как количество её существенных переменных. Порядок базиса определяется как максимальный из порядков входящих в него функций. Порядок замкнутого класса определяется как минимальный из порядков его базисов.

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

Если рассматривается суперпозиция с удалениями фиктивных переменных, то оба определения эквивалентны. Если же замкнутому классу разрешается иметь только функции положительной арности, то все классы, имеющие порядок 0 в первом определении, имеют порядок 1 во втором; других отличий нет.

Первое определение используется в терминологии, в которой отождествляются функции, отличающиеся лишь фиктивными переменными. В такой терминологии не имеет смысла рассматривать общее количество аргументов, поэтому в качестве порядка функций рассматривается количество существенных переменных.

Критериальные системы

Система замкнутых подклассов класса называется критериальной в замкнутом классе , если каждый собственный подкласс вкладывается в некоторый класс из [23]. Простейший пример критериальной системы для произвольного класса — множество всех собственных подклассов . Критерий Поста устанавливает, что система классов является критериальной для класса всех булевых функций. Критериальная система класса называется минимальной, если никакая её собственная подсистема не является критериальной в .

Замкнутый класс называется предполным в замкнутом классе , если для любой функции система является полной в . У каждого замкнутого класса булевых функций конечное количество предполных классов, причём оно не больше 5. Для каждого замкнутого класса его собственный замкнутый подкласс можно дополнить до некоторого предполного в .

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

  • Для класса всех булевых функций минимальная критериальная система есть .
  • Для класса всех линейных функций минимальная критериальная система есть .
  • Для класса всех самодвойственных функций минимальная критериальная система есть .

Список замкнутых классов

В 1941 году Эмиль Пост привёл полное описание структуры замкнутых классов двузначной логики. Также Пост установил, что любой замкнутый класс может быть порожден конечным базисом[2].

Список всех замкнутых классов булевой логики представлен в следующей таблице. Таблица разделена на блоки по порядкам классов. Определение порядка класса здесь используется первое (во втором все классы, у которых здесь указан порядок 0, имеют порядок 1). Всего существует 4 класса порядка 0 (или 3 если не считать пустое множество замкнутым классом), 6 классов порядка 1, 20 классов порядков 2, 20 классов порядка 3 и по 8 классов для каждого из порядков больше 3. В столбце "П" указано обозначение Поста[24], в столбце "ЯГК" — обозначение Яблонского, Гаврилова и Кудрявцева[25], в столбце "У" — обозначение Угольникова[9] и в столбце "Л" — обозначение Лау[26].

Название П ЯГК У Л Примеры базисов Предполные классы
Порядок 0
Пустое множество
Нули Пустое множество.
Единицы Пустое множество.
Константы Класс нулей;
Класс единиц.
Порядок 1
Селекторы Пустое множество.
Селекторы с нулями Класс селекторов;
Класс нулей.
Селекторы с единицами Класс селекторов;
Класс единиц.
Селекторы с константами Класс селекторов с нулями;
Класс селекторов с единицами;
Класс констант.
Селекторы с отрицаниями Класс селекторов.
Несущественные функции
Класс селекторов с отрицаниями;
Класс селекторов с константами.
Порядок 2
Булевы функции

Класс функций, сохраняющих 0;
Класс функций, сохраняющих 1;
Класс монотонных функций;
Класс линейных функций;
Класс самодвойственных функций.
Функции, сохраняющие 0
Класс функций, сохраняющих константы;
Класс монотонных функций, сохраняющих 0;
Класс линейных функций, сохраняющих 0;
Класс функций, удовлетворяющих условию ⟨1²⟩.
Функции, сохраняющие 1
Класс функций, сохраняющих константы;
Класс монотонных функций, сохраняющих 1;
Класс линейных функций, сохраняющих 1;
Класс функций, удовлетворяющих условию ⟨0²⟩;
Монотонные функции

Класс монотонных функций, сохраняющих 0;
Класс монотонных функций, сохраняющих 1;
Класс конъюнкций с константами;
Класс дизъюнкций с константами.
Монотонные функции без единиц
Класс монотонных функций, сохраняющих константы;
Класс конъюнкций с нулями;
Класс монотонных функций, удовлетворяющих условию ⟨1²⟩.
Монотонные функции без нулей
Класс монотонных функций, сохраняющих константы;
Класс конъюнкций с единицами;
Класс монотонных функций, удовлетворяющих условию ⟨0²⟩.
Монотонные функции без констант
Класс монотонных функций, сохраняющих константы и удовлетворяющих условию ⟨0²⟩;
Класс монотонных функций, сохраняющих константы и удовлетворяющих условию ⟨1²⟩.
Конъюнкции с константами Класс конъюнкций с единицами;
Класс конъюнкций с нулями
Класс селекторов с константами.
Конъюнкции с нулями Класс конъюнкций без констант;
Класс селекторов с нулями.
Конъюнкции с единицами Класс конъюнкций без констант;
Класс селекторов с единицами.
Конъюнкции без констант Класс селекторов
Дизъюнкции с константами Класс дизъюнкций с единицами;
Класс дизъюнкций с нулями;
Класс селекторов с константами.
Дизъюнкции с единицами Класс дизъюнкций без констант;
Класс селекторов с единицами.
Дизъюнкции с нулями Класс дизъюнкций без констант;
Класс селекторов с нулями.
Дизъюнкции без констант Класс селекторов.
Линейные функции

Класс линейных функций, сохраняющих 0;
Класс линейных функций, сохраняющих 1;
Класс линейных самодвойственных функций;
Класс несущественных функций.
Линейные функции, сохраняющие 0 Класс линейных функций, сохраняющих константы;
Класс селекторов с нулями.
Линейные функции, сохраняющие 1 Класс линейных функций, сохраняющих константы;
Класс селекторов с единицами.
Функции, удовлетворяющие условию ⟨1 Класс монотонных функций, удовлетворяющих условию ⟨1⟩;
Класс функций, сохраняющих константы и удовлетворяющих условию ⟨1⟩.
Функции, удовлетворяющие условию ⟨0 Класс монотонных функций, удовлетворяющих условию ⟨0⟩;
Класс функций, сохраняющих константы и удовлетворяющих условию ⟨0⟩.
Порядок 3
Функции, сохраняющие константы
Класс монотонных функций, сохраняющих константы;
Класс самодвойственных функций, сохраняющих константы;
Класс функций, сохраняющих константы и удовлетворяющих условию ⟨1²⟩;
Класс функций, сохраняющих константы и удовлетворяющих условию ⟨0²⟩.
Линейные самодвойственные функции Класс линейных функций, сохраняющих константы;
Класс селекторов с отрицаниями.
Линейные функции, сохраняющие константы Класс линейных функций, сохраняющих константы;
Класс селекторов с отрицаниями.
Самодвойственные функции
[27] Класс линейных самодвойственных функций;
Класс самодвойственных функций, сохраняющих константы.
Самодвойственные функции, сохраняющие константы [28] Класс монотонных самодвойственных функций;
Класс линейных функций, сохраняющих константы.
Монотонные самодвойственные функции Класс селекторов.
Монотонные функции, удовлетворяющие условию ⟨1 Класс конъюнкций с нулями;
Класс монотонных функций, сохраняющих константы и удовлетворяющих условию ⟨1⟩.
Функции, сохраняющие константы и удовлетворяющие условию ⟨1 Класс монотонных функций, сохраняющих константы и удовлетворяющих условию ⟨1⟩.
Монотонные функции, сохраняющие константы и удовлетворяющие условию ⟨1 Класс конъюнкций с константами.
Монотонные функции, удовлетворяющие условию ⟨0 Класс дизъюнкций с единицами;
Класс монотонных функций, сохраняющих константы и удовлетворяющих условию ⟨0⟩.
Функции, сохраняющие константы и удовлетворяющие условию ⟨0 Класс монотонных функций, сохраняющих константы и удовлетворяющих условию ⟨0⟩.
Монотонные функции, сохраняющие константы и удовлетворяющие условию ⟨0 Класс дизъюнкций с константами.
Функции, удовлетворяющие условию ⟨1²⟩ Класс функций, удовлетворяющих условию ⟨1³⟩;
Класс монотонных функций, удовлетворяющих условию ⟨1²⟩;
Класс функций, сохраняющих константы и удовлетворяющих условию ⟨1²⟩.
Монотонные функции, удовлетворяющие условию ⟨1²⟩ Класс монотонных функций, удовлетворяющих условию ⟨1³⟩;
Класс монотонных функций, сохраняющих константы и удовлетворяющих условию ⟨1²⟩.
Функции, сохраняющие константы и удовлетворяющие условию ⟨1²⟩ Класс функций, сохраняющих константы и удовлетворяющих условию ⟨1³⟩;
Класс монотонных функций, сохраняющих константы и удовлетворяющих условию ⟨1²⟩.
Монотонные функции, сохраняющие константы и удовлетворяющие условию ⟨1²⟩ Класс функций, сохраняющих константы и удовлетворяющих условию ⟨1³⟩;
Класс монотонных самодвойственных функций.
Функции, удовлетворяющие условию ⟨0²⟩ Класс функций, удовлетворяющих условию ⟨0³⟩;
Класс монотонных функций, удовлетворяющих условию ⟨0²⟩;
Класс функций, сохраняющих константы и удовлетворяющих условию ⟨0²⟩.
Монотонные функции, удовлетворяющие условию ⟨0²⟩ Класс монотонных функций, удовлетворяющих условию ⟨0³⟩;
Класс монотонных функций, сохраняющих константы и удовлетворяющих условию ⟨0²⟩.
Функции, сохраняющие константы и удовлетворяющие условию ⟨0²⟩ Класс функций, сохраняющих константы и удовлетворяющих условию ⟨0³⟩;
Класс монотонных функций, сохраняющих константы и удовлетворяющих условию ⟨0²⟩.
Монотонные функции, сохраняющие константы и удовлетворяющие условию ⟨0²⟩ Класс функций, сохраняющих константы и удовлетворяющих условию ⟨0³⟩;
Класс монотонных самодвойственных функций.
Порядок
Функции, удовлетворяющие условию ⟨1ᵐ⟩ [29] Класс функций, удовлетворяющих условию ⟨1m+1⟩;
Класс монотонных функций, удовлетворяющих условию ⟨1ᵐ⟩;
Класс функций, сохраняющих константы и удовлетворяющих условию ⟨1ᵐ⟩.
Монотонные функции, удовлетворяющие условию ⟨1ᵐ⟩ Класс монотонных функций, удовлетворяющих условию ⟨1m+1⟩;
Класс монотонных функций, сохраняющих константы и удовлетворяющих условию ⟨1ᵐ⟩.
Функции, сохраняющие константы и удовлетворяющие условию ⟨1ᵐ⟩ Класс функций, сохраняющих константы и удовлетворяющих условию ⟨1m+1⟩;
Класс монотонных функций, сохраняющих константы и удовлетворяющих условию ⟨1ᵐ⟩.
Монотонные функции, сохраняющие константы и удовлетворяющие условию ⟨1ᵐ⟩ Класс функций, сохраняющих константы и удовлетворяющих условию ⟨1m+1⟩.
Функции, удовлетворяющие условию ⟨0ᵐ⟩ [30] Класс функций, удовлетворяющих условию ⟨0m+1⟩;
Класс монотонных функций, удовлетворяющих условию ⟨0ᵐ⟩;
Класс функций, сохраняющих константы и удовлетворяющих условию ⟨0ᵐ⟩.
Монотонные функции, удовлетворяющие условию ⟨0ᵐ⟩ Класс монотонных функций, удовлетворяющих условию ⟨0m+1⟩;
Класс монотонных функций, сохраняющих константы и удовлетворяющих условию ⟨0ᵐ⟩.
Функции, сохраняющие константы и удовлетворяющие условию ⟨0ᵐ⟩ Класс функций, сохраняющих константы и удовлетворяющих условию ⟨0m+1⟩;
Класс монотонных функций, сохраняющих константы и удовлетворяющих условию ⟨0ᵐ⟩.
Монотонные функции, сохраняющие константы и удовлетворяющие условию ⟨0ᵐ⟩ Класс функций, сохраняющих константы и удовлетворяющих условию ⟨0m+1⟩.

Клоны

Клоном называется замкнутый класс, содержащий все селекторы[31]. Любой замкнутый класс, содержащий не константную функцию, является клоном. Всего есть 4 замкнутых класса, не являющиеся клонами: пустое множество, класс единиц, класс нулей и класс констант.

Для клонов понятия замыкания, полной системы и базиса несколько отличаются от таковых для замкнутых классов. Замыканием (в смысле клона) системы функций называется минимальный по включению клон, содержащий все функции . Такой клон всегда существует, поскольку его можно найти как пересечение всех клонов, содержащих . Система функций называется полной в клоне , если замыкание (в смысле клона) даёт . Базисом клона называется минимальная по включению полная система функций.

Нетрудно привести примеры, когда понятия базисов для клонов и замкнутых классов не совпадают. Например, для класса селекторов с единицами система является базисом как для замкнутого класса, но не является базисом как для клона, а система является базисом как для клона, но не является базисом как для замкнутого класса.

Клон называется максимальным в клоне , если для любой замыкание (в смысле клона) системы даёт . Это является прямым аналогом понятия предполного класса, для них также верны все замечания про критериальные системы и тд. Конечно, минимальные критериальные системы как для клона и как для класса могут отличаться, однако таких отличий довольно мало и они все будут приведены в таблице клонов.

Для клонов можно дать определение через формулы. Если в определении суперпозиции через формулы убрать требование, что формулы должны иметь положительную глубину, и разрешить глубину 0, то множество функций, которое может быть задано всеми такими формулами над множеством , есть замыкание (в смысле клона) множества .

Таблица клонов булевых функций для порядков больше 1 полностью совпадает с таблицей замкнутых классов, поэтому здесь будет приведена таблица только для клонов порядков 0 и 1. Всего есть 4 клона порядка 0 и 2 клона порядка 1.

Название П ЯГК У Л Примеры базисов Максимальные клоны
Порядок 0
Селекторы
Селекторы с нулями Класс селекторов.
Селекторы с единицами Класс селекторов.
Селекторы с константами Класс селекторов с нулями;
Класс селекторов с единицами.
Порядок 1
Селекторы с отрицаниями Класс селекторов.
Несущественные функции
Класс селекторов с отрицаниями;
Класс селекторов с константами.

Итеративные системы

Сам Эмиль Пост в своей монографии строил свою классификацию для замыкания, отличного от вышерассмотренных. У него также запрещались нульарные функции, но при этом добавление фиктивных переменных было также запрещено. Замкнутые множества относительно такого замыкания он называл итеративными системами[32]. Таблица для них в большинстве систем совпадает с таблицей для замкнутых классов, однако в некоторых случаях всё же не совпадают, а также появляются новые множества. Здесь будут приведены только те итеративные системы, которые отличаются от соответствующих в таблице замкнутых классов, а также новые. Все те классы, что здесь не будут приведены, без изменений переносятся сюда из таблицы замкнутых классов. Далее за обозначена функция , за функция , за функция , за функция , за функция , а за функция . Постом также было использовано второе определение порядка (то есть с учётом фиктивных переменных), и на этот раз в таблице будет использовано именно оно. Существует 10 итеративных систем порядка 1 (9, если не считать пустое множество итеративной системой), 37 итеративных систем порядка 2, 20 итеративных систем порядка 3, и по 8 итеративных систем для каждого из порядков больше 2[33].

Название П Примеры базисов Максимальные итеративные системы
Порядок 1
Пустое множество
Унарный 0 Пустое множество.
Унарная 1 Пустое множество.
Унарные константы Унарный 0;
Унарная 1.
Тождественная функция Пустое множество.
Тождественная функция с унарным 0 Тождественная функция;
Унарный 0.
Тождественная функция с унарным 1 Тожественная функция;
Унарный 1.
Тождественная функция с унарными константами Тождественная функция с унарным 0;
Тождественная функция с унарным 1;
Унарные константы.
Тождественная функция с отрицанием Тождественная функция.
Унарные функции
Тождественная функция с отрицанием;
Тождественная функция с унарными константами.
Порядок 2
Нули Унарный 0.
Единицы Унарная 1.
Константы
Класс нулей;
Класс единиц;
Унарные константы.
Тождественная функция с нулями Тождественная функция с унарным 0;
Класс нулей.
Тождественная функция с единицами Тождественная функция с унарной 1;
Класс единиц.
Тождественная функция с константами
Тождественная функция с нулями;
Тождественная функция с единицами;
Класс констант;
Тождественная функция с унарными константами.
Тождественная функция с отрицанием и константами
Тождественная функция с константами;
Унарные функции.
Селекторы Тождественная функция.
Селекторы с нулями Класс селекторов;
Тождественная функция с нулями.
Селекторы с единицами Класс селекторов;
Тождественная функция с единицами.
Селекторы с константами Класс селекторов с нулями;
Класс селекторов с единицами;
Тождественная функция с константами.
Селекторы с отрицаниями Класс селекторов;
Тождественная функция с отрицаниями.
Несущественные функции
Класс селекторов с отрицаниями;
Класс селекторов с константами;
Тождественная функция с отрицанием и константами.
Конъюнкции без фиктивных переменных и констант Тождественная функция.
Конъюнкции без фиктивных переменных с нулями Конъюнкции без фиктивных переменных и констант;
Тождественная функция с нулями.
Конъюнкции без констант Класс селекторов;
Конъюнкции без фиктивных переменных и констант.
Конъюнкции с нулями Класс конъюнкций без констант;
Класс селекторов с нулями;
Конъюнкции без фиктивных переменных с нулями.
Дизъюнкции без фиктивных переменных и констант Тождественная функция.
Дизъюнкции без фиктивных переменных с единицами Дизъюнкции без фиктивных переменных и констант;
Тождественная функция с единицами
Дизъюнкции без констант Класс селекторов;
Дизъюнкции без фиктивных переменных и констант.
Дизъюнкции с единицами Класс дизъюнкций без констант;
Класс селекторов с единицами
Дизъюнкции без фиктивных переменных с единицами.

Остальные вариации

В книге Яблонского, Гаврилова и Кудрявцева булевы функции понимаются с точности до добавления и удаления фиктивных переменных, то есть функции, сводящиеся друг у другу добавлением/удалением фиктивных переменных считаются равными. Таким образом, по сути там рассматриваются не сами функции, а множества функций, замкнутые относительно операций добавления и удаления фиктивных переменных. Поэтому проблем с различиями разных определений замкнутых классов там нет: добавление и удаление фиктивных переменных не дают новых функций. Отсюда и идёт определение порядка замкнутого класса через количество существенных переменных функций, поскольку учитывать фиктивные переменные становится бессмысленно[34]. Решётка замкнутых классов получается изоморфной решёткам замкнутых классов и для определения с удалением фиктивных переменных, и для определения без нульарных функций[35]. Обозначения классов здесь используются такие же как у Поста, однако из-за того, что некоторые итеративные системы незамкнуты относительно добавления фиктивных переменных, классов становятся меньше. При этом Яблонский, Гаврилов и Кудрявцев для классов, базис как для итеративной системы которых мог породить незамкнутую относительно добавления фиктивных переменных систему, использовали обозначение именно незамкнутой итеративной системы. Из-за этого у них нет классов с обозначениями , а также [36]. Данная терминология (с понимаем функций с точностью до фиктивных переменных) нередко используется в русской литературе[37]. Также в литературе встречается такое, что автор понимает функции и замкнутые классы в обычном смысле и решает использовать обозначения Поста, но так, как они используются у Яблонского, Гаврилова и Кудрявцева. Благодаря этому, определённое множество может быть обозначено не так, как у Поста; например множество селекторов, обозначенное у Поста как , у них обозначается как [38].

Бериш рассматривает клоны и замкнутые классы (в его терминологии полуклоны), которым разрешается иметь нульарные функции, но при этом нельзя удалять фиктивные переменные. В определении через формулы это соответствует определению без упоминания фиктивных переменных с тем изменением, что разрешается иметь нульарные функции. Решётки замкнутых классов и клонов Бериша уже не изоморфны решёткам через первые два определения[39][40].

Примечания

  1. Марченков, 2000, с. 9.
  2. 1 2 Пост, 1941.
  3. Лау, 2006, с. 2.
  4. Подколзин, с. 6-7.
  5. Лау, 2006, с. 1.
  6. 1 2 Подколзин, с. 6.
  7. Яблонский, 1986, с. 33.
  8. Лау, 2006, с. 97.
  9. 1 2 Угольников, 1988, с. 84-85.
  10. 1 2 3 Марченков, 2000, с. 15.
  11. 1 2 Марченков, 2000, с. 11.
  12. Марченков, 2000, с. 13.
  13. Яблонский, 1986, с. 40-41.
  14. 1 2 Марченков, 2000, с. 19.
  15. 1 2 3 4 Марченков, 2000, с. 29.
  16. 1 2 Марченков, 2000, с. 19-20.
  17. Марченков, 2000, с. 29-30,41.
  18. Яблонский, Гаврилов, Кудрявцев, 1966, с. 19.
  19. Подколзин2, с. 5.
  20. Лау, 2006, с. 45-47,97.
  21. Марченков, 2000, с. 10.
  22. Алексеев, Поспелов, с. 6.
  23. Буевич, Подколзина, 2007, с. 193.
  24. Пост, 1941, с. 101.
  25. Яблонский, Гаврилов, Кудрявцев, 1966, с. 101,112.
  26. Лау, 2006, с. 148.
  27. отрицание функции голосования
  28. функция голосования
  29. — равна , если как минимум аргументов равно , иначе
  30. — равна , если как минимум аргументов равно , иначе
  31. Жук, 2011, с. 115.
  32. Пост, 1941, с. 10-15.
  33. Пост, 1941, с. 94-95.
  34. Яблонский, Гаврилов, Кудрявцев, 1966, с. 11.
  35. Яблонский, Гаврилов, Кудрявцев, 1966, с. 101.
  36. Яблонский, Гаврилов, Кудрявцев, 1966, с. 8.
  37. Марченков, 2000, с. 8.
  38. Жук, 2011, с. 123.
  39. Бериш, 2011, с. 7-8.
  40. Бериш, 2015, с. 1-2.

Литература

  • Яблонский С. В. Введение в дискретную математику. — М.: Наука, 1986.
  • Марченков С. С. Замкнутые классы булевых функций. — М.: Физматлит, 2000.
  • Гаврилов Г. П., Сапоженко А. А. Сборник задач по дискретной математике. — М.: Наука. — 1969
  • Алексеев В. Б., Поспелов А. Д. Дискретная математика (курс лекций, II семестр). Дата обращения: 24 августа 2025.
  • Ахметова Н.А., Усманова З.М.Дискретная математика, функции алгебры логики.
  • Яблонский С. В., Гаврилов Г. П., Кудрявцев В. Б. Функции алгебры логики и классы Поста / под ред. В. В. Донченко. — М.: Наука, 1966. — 120 с. — 10 000 экз.
  • Угольников, А. Б. О замкнутых классах Поста // Изв. вузов. Матем. : журнал. — М.: Soviet Math. (Iz. VUZ), 1988. — 16 февраля (т. 32, вып. 7). — С. 79-88.
  • Lau, D. Function Algebras on Finite Sets: A Basic Course on Many-Valued Logic and Clone Theory (англ.). — Springer, 2006. — 668 p.
  • Post E. L. The Two-Valued Iterative Systems Of Mathematical Logic. — 1941.
  • Подколзин А. С. 1 лекция курса «Теория дискретных функций». http://intsys.msu.ru. Дата обращения: 4 мая 2024.
  • Подколзин А. С. 2 лекция курса «Теория дискретных функций». http://intsys.msu.ru. Дата обращения: 23 августа 2025.
  • Буевич В. А., Подколзина М. А. Критерий полноты S-множеств детерминированных функций // Математические вопросы кибернетики : журнал. — М.: ФИЗМАТЛИТ, 2007. — Вып. 16. — С. 191-238.
  • Жук Д .Н. Предикатный метод построения решетки Поста // Дискретная математика : журнал. — М., 2011. — Т. 23, вып. 2. — С. 115–128.
  • Behrisch M. A note on clones with nullary operations (англ.) // MATH-AL. — 2011.
  • Behrisch M. Galois theory for semiclones (англ.). — 2015.