Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Полные системы операций. Алгебра Жегалкина
Система операций å называется полной, если любая логическая операция может быть представлена формулой над å. Так как всякая формула может быть представлена приведенной формулой, то система å 0 = {Ù, Ú, Система å сводится к å *, обозначается å ®å *, если все операции системы å * представимы формулами над системой å. Если å * полна, то и å полна. Последнее утверждение даёт один из способов доказательства полноты системы операций – сведение её к известной полной системе, например к å 0. То есть полной будет система å, через операции которой можно выразить конъюнкцию, дизъюнкцию и отрицание. Так в силу законов де Моргана, полными будут и системы å 1 = {Ù, Алгебра над множеством логических функций с двумя операциями Ù и Å называется алгеброй Жегалкина. В алгебре Жегалкина выполняются следующие соотношения:
а также ассоциативность, коммутативность, идемпотентность конъюнкции и свойства констант. Задание. Доказать полноту системы å 5 = {Ù, Å }. Решение. Сведем систему å 5 к полной системе å 0.
Если в произвольной формуле алгебры Жегалкина, реализующей булеву функцию f, раскрыть скобки и произвести все возможные упрощения, то получится формула, имеющая вид суммы произведений, то есть полинома по mod 2. Такая формула называется полиномом Жегалкина для данной функции. Линейной называется функция, полином Жегалкина которой линеен. Сводимость к полной системе операций является необходимым условием полноты системы операций. Необходимое и достаточное условие полноты системы операций формулируется в терминах булевых функций. Система булевых функций F называется полной, если любая функция может быть реализована формулой над F. Замыканием множества F (обозначается [F]) называется множество всех булевых функций, реализуемых формулами над F. Класс функций называется замкнутым, если [F] = F. Примеры замкнутых классов. 1. Класс функций, сохраняющих 0.
2. Класс функций, сохраняющих 1.
3. Класс самодвойственных функций.
4. Класс монотонных функций.
5. Класс линейных функций.
Принадлежность некоторых функций этим классам оформим в виде таблицы.
Замкнутые классы попарно различны, не пусты и не совпадают с Теорема 6.1 (Поста). Система булевых функций полна тогда и только тогда, когда она содержит хотя бы одну функцию, не сохраняющую 0, хотя бы одну функцию, не сохраняющую 1, хотя бы одну несамодвойственную функцию, хотя бы одну немонотонную функцию и хотя бы одну нелинейную функцию. Доказательство. Необходимость. Предположим противное, т.е. система булевых функций F полна ([F] = Достаточность. Пусть система булевых функций F содержит хотя бы по одной функции, не принадлежащих каждому из замкнутых классов. Т.е. $ F¢ = 1) Проведем вначале построение вспомогательных формул над F¢. Реализуем константы 0 и 1, которые будут использоваться в формуле для конъюнкции. Для реализации 1 воспользуемся функцией a) b) Константа 0 строится аналогично с использованием функции 2) Для построения формулы, реализующей функцию отрицания, воспользуемся немонотонной функцией 3) Для построения формулы, реализующей конъюнкцию, будем использовать нелинейную функцию
Такое представление корректно, так как
|