Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Разработка дискретных систем управления-2011.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
27.38 Mб
Скачать

5.2.Теорема Жегалкина

Каждая функция из может быть представлена в виде полинома Жегалкина единственным образом.

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

, s = 0, 1, ..., n.

Доказательство.

Любая функция из Р2 может быть представлена формулой над {x1 & x2, x1x2, 0, 1}, а эта формула после раскрытия всех скобок и приведения подобных членов дает полином Жегалкина. Докажем единственность представления. Рассмотрим функции f(x1, ..., xn) от n переменных. Мы знаем, что всего таких функций, т.е. их таблиц истинности , 2n. Подсчитаем число различных полиномов Жегалкина от n переменных, т.е. число вариаций вида: . Число наборов равно числу всех подмножеств множества { x1, ..., xn }, сюда входит и пустое множество (если s = 0). Число подмножеств множества из n элементов равно 2n , а так как каждый набор входит с коэффициентом , принимающим два значения: 0 или 1, то число всевозможных полиномов будет . Так как каждому полиному соответствует единственная функция, число функций от n переменных равно числу полиномов, то каждой функции будет соответствовать единственный полином.

Определение.

Функция f(x1, ..., xn), полином Жегалкина для которой имеет следующий линейный относительно переменных вид: f = а0 а1х1 а2х2 ... аnхn, называется линейной.

Лемма о нелинейной функции.

Суперпозицией нелинейной функции, отрицания и константы 1 можно получить конъюнкцию.

Доказательство.

Пусть f(x1, ..., xn) – нелинейная функция. Тогда полином Жегалкина содержит для нее слагаемое, в котором присутствует произведение xixj. Будем считать для простоты, что x1x2 в многочлене Жегалкина является этим произведением. Произведя группировку слагаемых, функцию f представим в виде

Функция h0 не есть тождественный нуль, иначе в полиноме Жегалкина отсутствует слагаемое с произведением x1x2. Тогда существует набор (3, …, n) из 0 и 1, для которого h0(3, …, n) = 1. Пусть h1(3, …, n) = a, h2(3, …, n) = b, h3(3, …, n) = c. Тогда

Построим функцию:

где d = abc. Если d = 0, то h(x1, x2) = x1x2. Если d = 1, то h(x1, x2) = x1x2  1 и тогда Лемма доказана.

Функция f(x1, ..., xn) сохраняет константу a  {0, 1}, если f(a, …, a) = a.

Пример 11.

Функция xy сохраняет 0, сохраняет 1. Функция xy сохраняет 1 и не сохраняет 0.

1.Минимизация булевых функций

1.1.Минимизация нормальных форм

Минимальной ДНФ (МДНФ) функции f(x1, ... ,xn) называется ДНФ, реализующая функцию f и содержащая минимальное число символов переменных по сравнению со всеми другими видами ДНФ, реализующими функцию f.

Если для всякого набора = (a1, ..., an) значений переменных условие g( )=1 влечёт , то функция g называется частью функции f (или функция f накрывает функцию g). Если при этом для некоторого набора = (c1, ..., cn) функция g( )=1, то говорят, что функция g накрывает единицу функции f на наборе (или что g накрывает конституенту единицы функции f). Заметим, что конституанта единицы функции f есть часть функции f, накрывающая единственную единицу функции f.

Элементарная конъюнкция K называется импликантом функции f, если для всякого набора =(a1, ..., an) из 0 и 1 условие K( )=1 влечет f( )=1.

Импликант K функции f называется простым, если выражение, получающееся из него выбрасыванием любых множителей, уже не импликант функции f.

Ясно, что всякий импликант функции f есть часть функции f.

Теорема 5.

Всякая функция реализуется дизъюнкцией всех своих простых имликант (ПИ).

Доказательство.

Пусть f(x1, ..., xn) есть функция, а A = K1 v ... v Km – дизъюнкция всех ее простых импликант. Пусть = (a1, ..., an) – произвольный набор длины n из 0 и 1.

Если A( ) = 1, то найдется дизъюнктивное слагаемое Ki ( ) = 1, что влечет f( ) = 1, ибо Ki есть импликант функции f.

Если f( ) = 1, то в СДНФ для функции f найдется элементарная конъюнкция K, равная на этом наборе единице. Один из простых имликантов Kj функции f получается выбрасыванием некоторых множителей из K и потому Kj( ) = 1, а тогда A( ) = 1.

Следовательно, f = A. Теорема доказана.

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

Пусть A и B – произвольные формулы. Из свойств булевых операций вытекают следующие обратимые правила преобразования ДНФ:

1) – полное склеивание (развертывание);

2) – неполное склеивание;

3) – обобщенное склеивание;

4) – поглощение;

5) – идемпотентность ( удаление дублирующих членов).

Теорема Квайна. Если в СДНФ функции f провести все операции неполного склеивания, а затем все операции поглощения и удаления дублирующих членов, то в результате получится сокращения ДНФ функции f.

Доказательство.

Пусть имеем сокращенную ДНФ функции f. Проведем все операции развертывания к каждому простому импликанту для получения недостающих переменных в каждом дизъюнктивном слагаемом сокращенной ДНФ. В полученном выражении из нескольких одинаковых дизъюнктивных слагаемых оставим только по одному экземпляру. В результате получим СДНФ функции f. Теперь, исходя из полученной СДНФ, в обратном порядке проведем операции добавления одинаковых дизъюнктивных слагаемых (с помощью правил идемпотентности), неполного склеивания и поглощения. В итоге получим исходную сокращенную ДНФ.