Введем понятие степени:
$$Х^{\alpha } \\ =Х, если \ \alpha =1; \\ =\overline Х, если \ \alpha = 0.$$Рассмотрим конъюнкцию вида:
$$Х_{1}^{\alpha 1} * Х_{2}^{\alpha 2} * Х_{3}^{\alpha 3} \dots Х_{n} ^{\alpha n}$$Существует 2n наборов вида $$< \alpha _{1}, \alpha _{2}, \dots \alpha _{n} >.$$ Поставим в соответствие каждой конъюнкции (*) номер набора i и образуем дизъюнкцию всех конъюнкций:
$$\vee _{i\in A}(Х_{1}^{\alpha 1} * Х_{2}^{\alpha 2} * Х_{3}^{\alpha 3} \dots Х_{n}^{\alpha n} )$$
Теорема (без доказательства):
Любая ФАЛ, зависящая от ' n ' аргументов, может быть представлена в форме:
$$F(Х_{1}, Х_{2},\dots Х_{i}\dots Х_{n})= \vee Х_{1}^{\alpha 1} * Х_{2}^{\alpha 2}\dots Х_{i}^{\alpha i} F(\alpha _{1}, \alpha _{2}, \dots \alpha _{i}, X_{i+1},\dots X_{n})$$
Из этой теоремы вытекает ряд важных следствий:
Примечание:
i=n, то каноническая форма функции носит название совершенной ДНФ (Пример: ДНФ
$$f(Х_{1}, Х_{2}, Х_{3})= Х_{1} \vee \overline Х_{2} Х_{3} \vee \overline Х_{1}Х_{2} Х_{3}$$
Пример:
$$f(Х_{1}, Х_{2}, Х_{3})= \overline Х_{1}Х_{2} \overline Х_{3} \vee Х_{1}Х_{2} Х_{3}$$
В ДНФ в каждый член любая переменная входит в прямом виде или с отрицанием.
Аналогичная теорема справедлива и для представления функции в конъюнктивной нормальной форме (
$$f(Х_{1}, Х_{2},\dots , Х_{n})=( Х_{1}^{\alpha 1} \vee Х_{2}^{\alpha 2} \vee \dots \vee Х_{i}^{\alpha i}) f(\alpha _{1}, \alpha _{2}, \dots \alpha _{i}, X_{i+1}\dots X_{n})$$
или при представлении в совершенной
$$f(Х_{1}, Х_{2},…, Х_{n})=( Х_{1}^{\alpha 1} \vee Х_{2}^{\alpha 2} \vee Х_{3}^{\alpha 3}\vee \dots \vee Х_{n}^{\alpha n})$$
где: означает, что конъюнкции берутся по тем наборам, на которых
f(Х_{1}, Х_{2}, ... Х_{n})=0.
Дадим на основании этих теорем правило перехода от табличной формы функции к
Переход от табличной формы функции к
f(Х_{1}, Х_{2}, ... Х_{n})=1.Х_{i} имеет значение ' 1 ', то этот множитель пишется в прямом виде, если ' 0 ', то с отрицанием.Пример:
$$f(Х_{1}, Х_{2})= \overline Х_{1}Х_{2} \vee Х_{1} \overline Х_{2}\vee Х_{1}Х_{2}$$
X_{1}
|
Х_{2}
|
f(Х_{1}, Х_{2})
|
|---|---|---|
0 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
Правило перехода от табличной формы задания функции к
f(Х_{1}, Х_{2}, ... Х_{n})=0.Х_{i} имеет значение ' 0 ', то остается без изменений. Если ' 1 ', то с отрицанием.Пример:
$$f(Х_{1}, Х_{2})= (Х_{1} \vee \overline Х_{2}) (\overline Х_{1} \vee \overline Х\_{2} )$$
X_{1}
|
Х_{2}
|
f(Х_{1}, Х_{2})
|
|---|---|---|
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
Пример:
X_{1}
|
Х_{2}
|
Х_{3}
|
f(Х_{1}, Х_{2}, Х_{3})
|
|---|---|---|---|
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
$$СДНФ f(Х_{1}, Х_{2}, Х_{3})= \overline Х_{1} \overline Х_{2}Х_{3} \vee \overline Х_{1}Х_{2}Х_{3} \vee Х_{1}\overline Х_{2}\overline Х_{3} \vee Х_{1}Х_{2}\overline Х_{3} \vee Х_{1}Х_{2}Х_{3}$$
$$СКНФ f(Х_{1}, Х_{2}, Х_{3})= (Х_{1} \vee Х_{2} \vee Х_{3}) (Х_{1} \vee \overline Х_{2} \vee Х_{3}) (\overline Х_{1} \vee Х_{2} \vee \overline Х_{3})$$
Рассмотрим способ получения
Из таблицы 2.1 с помощью способа записи функции по нулям следует, что
$$f(Х_{1}, Х_{2})= Х_{1}\vee Х_{2}$$
X_{1}
|
Х_{2}
|
f(Х_{1}, Х_{2})
|
|---|---|---|
0 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
Итак, имеем две формы одной и той же функции:
$$f(Х_{1}, Х_{2})= \overline Х_{1}Х_{2}\vee Х_{1}\overline Х_{2}\vee Х_{1}Х_{2} =Х_{1}\vee Х_{2}$$
Итак, видно, что общее число членов в этих двух формах равно сумме нулей и единиц функции, то есть равно 2n.
Если в исходной форме функции, записанной в z членов, то в другой ее форме (т.е. (2n- z).
Поскольку в функцию мы включаем дизъюнктивные или конъюнктивные члены и берем их по наборам, на которых функция или обращается в ' 0 ', или в ' 1 ', то для перехода от одной формы задания функции к другой нужно выписать все недостающие члены и поставить над каждой переменной отрицание, а также заменить знаки конъюнкции на дизъюнкцию и обратно.
$$f(Х_{1}, Х_{2})= Х_{1}\vee Х_{2}$$
$$f(Х_{1}, Х_{2})_{СДНФ}= \overline Х_{1}Х_{2}\vee Х_{1}\overline Х_{2}\vee Х_{1}Х_{2}$$
т.е. получили
Практический смысл перехода заключается в том, что можно определить, реализация какой формы потребует меньший объем оборудования.
Было отмечено, что техническая (физическая) задача синтеза произвольного устройства сводится к математической задаче построения произвольной ФАЛ.
Естественно возникает вопрос, какое количество связок необходимо, чтобы построить произвольную ФАЛ. Ответ на этот вопрос не однозначен. Мы видим, что, например, с помощью только функции f_{0} (константа 0 ), f_{15} (константа 1 ) произвольную ФАЛ построить нельзя. Нельзя ее построить и с помощью только 1, |.
Есть также f_{8} – f_{14} –
Технически синтез устройства означает, что нужно иметь некоторый набор элементов, ФАЛ которых образуют базис, чтобы можно было построить реальное устройство.
Однако, как было отмечено, задача синтеза ФАЛ –
Покажем на примере, что
$$f(Х_{1}, Х_{2})= Х_{1}Х_{2}\vee Х_{1}\overline Х_{2}\vee \overline Х_{1}\overline Х_{2} =Х_{1}\vee \overline Х_{1} \overline Х_{2}$$
на основании полного склеивания по Х_{2} мы видим, что запись стала короче, т.к. содержит меньшее число связок и букв. Физически это означает, что устройство, которое реализует эквивалентную, но более простую функцию, будет иметь в своем составе меньшее количество оборудования, а следовательно, будет работать надежнее.
Итак, задача синтеза устройства должна быть дополнена задачей уменьшения оборудования в нем. С математической точки зрения это задача построения минимальной ФАЛ.
Под минимальной ФАЛ понимается такая форма, в которой содержится меньшее количество букв и членов, чем в ее исходной форме.
Речь идет именно о буквах, а не о переменных, так в функции:
$$f(Х_{1}, Х_{2})= Х_{1}Х_{2}\vee Х_{1}\overline Х_{2}\vee \overline Х_{1}Х_{2}$$ имеется 6 букв и только 2 переменных.
Видно, что если какое-либо элементарное произведение входит в функцию, то при добавлении к нему новых сомножителей, полученное произведение так же будет входить в функцию.
Пример: если Х_{1}Х_{2} входит в функцию от любого числа аргументов ( >2 ), то в нее войдет, например, произведение Х_{1}Х_{2}Х_{3}.
Это можно показать так:
$$f(Х_{1}, Х_{2})= Х_{1}Х_{2}\vee \varphi (Х_{1}Х_{2})= Х_{1}Х_{2} (\overline Х_{3}\vee Х_{3})\vee \varphi (Х_{1}Х_{2})= Х_{1} Х_{2} Х_{3} \vee \overline Х_{1} Х_{2} Х_{3} \vee \varphi (Х_{1}Х_{2})=Х_{1} Х_{2} Х_{3} \vee \psi (Х_{1} Х_{2} Х_{3})$$
Дадим ряд определений:
Например, Х_{1} Х_{2} Х_{3} – элементарное произведение, т.к. в него входят различные буквы Х_{1} Х_{2} Х_{3}.
Обычно
Например, Х_{1} Х_{2} Х_{3} Х_{4}, где Х_{1}, Х_{1} Х_{2}, Х_{1} Х_{2} Х_{3} – некоторые собственные части.
F, то говорят, что $$\phi$$ является F (т.е. нулей у Например, $$Х_{1} \vee Х_{1} Х_{2} Х_{3} \vee Х_{1}Х_{3}=f$$: здесь $$Х_{1}$$ - простая
Определение. Если на каком-либо наборе f принимает значение а_{1}, а $$\phi$$ – значение а_{2}, то говорят, что f своим значением а_{1} покрывает значение а_{2} функции $$\phi.$$
При
Смысл построения Сок. ДНФ заключается в том, что в нее входят такие элементарные произведения, которые своими единицами покрывают не одну единицу исходной функции, а несколько.
Так, каждое элементарное произведение, входящее в
Например:
$$f(Х_{1}, Х_{2})= Х_{1}Х_{2}\vee Х_{1}\overline Х_{2}\vee \overline Х_{1}\overline Х_{2}$$
1 1 1
Эти единицы функции могут быть накрыты более короткими произведениями: Х_{1} накрывает две единицы: $$Х_{1}Х_{2}$$ и $$Х_{1}\overline Х_{2}$$ и $$\overline Х_{2}$$, которое накрывает также две единицы: $$Х_{1}\overline Х_{2}$$ и $$\overline Х_{1}\overline Х_{2}$$, т.е.
$$f(Х_{1}, Х_{2})= Х_{1}\vee \overline Х_{2}$$
ТЕОРЕМА (без док-ва):
Любая ФАЛ может быть представлена единственным образом в Сок. ДНФ, т.е. записана в виде дизъюнкции простых
Сокращенная форма не означает, что эта форма является минимальной. Однако для практической реализации эта форма более удобна, чем совершенная.
Рассмотрим метод получения Сок. ДНФ, предложенный Квайном. Этот метод, и, в частности, теорема Квайна в явном и неявном виде входит практически во все методы
Исходная форма функции – совершенная ДНФ.
ТЕОРЕМА Квайна:
Если в
Покажем, что, применяя операцию неполного склеивания, получим все простые
Пусть $$\overline Х_{1}Х_{2}$$ – простая
$$\overline Х_{1}Х_{2} (Х_{3}\vee \overline Х_{3})=\overline Х_{1} Х_{2} Х_{3} \vee \overline Х_{1} Х_{2} \overline Х_{3}$$
получатся после многократного применения этой операции дизъюнкции
В эту форму, вообще говоря, могут входить несколько одинаковых членов, т.к. разные простые
По отношению к
Пример:
$$f(Х_{1}, Х_{2})= Х_1\overline Х_{2}\vee \overline Х_{1}Х_{2}\vee \overline Х_{1}\overline Х_{2} = Х_1\overline Х_{2}\vee \overline Х_{1}\ или\ \overline Х_{1}Х_{2}\vee \overline Х_{2}$$
Таким образом после выполнения операции неполного склеивания получится не только дизъюнкция простых
Если теперь провести все операции поглощения, то в полученной форме функции f останутся только простые
Тогда x=y*z, где z – простая f, т.к. в нее входит x. Но z будет поглощать х, поэтому х не может входить в f. Это и доказывает теорему Квайна.
Замечание: Заметим, что теорема Квайна применяется по отношению к функции
Порядок получения Сок. ДНФ может быть следующим:
(n-1) Пример 1:
$$f(Х_{1}, Х_{2})= Х_{1}Х_{2}\vee Х_{1}\overline Х_{2}\vee \overline Х_{1}\overline Х_{2}$$
Если применим операцию полного склеивания, то получим:
или
$$f(Х_{1}, Х_{2})= Х_{1}\vee \overline Х_{1}\overline Х_{2}$$
или
$$f(Х_{1}, Х_{2})= Х_{1}Х_{2}\vee \overline Х_{2}$$
т.е. у нас нет возможности далее провести операцию.
Применим теперь операцию неполного склеивания:
$$f(Х_{1}, Х_{2})= Х_{1}\vee Х_{1}Х_{2}\vee Х_{1}\overline Х_{2}\vee \overline Х_{1}\overline Х_{2}\vee \overline Х_{2} = Х_{1}\vee \overline Х_{2}\vee Х_{1}Х_{2}\vee Х_{1}\overline Х_{2}\vee \overline Х_{1}\overline Х_{2}$$
Простые
Конституенты единицы: $$Х_{1}Х_{2},$$ $$Х_{1}\overline Х_{2},$$ $$\overline Х_{1}\overline Х_{2} $$
Теперь можем провести операции поглощения:
$$Х_{1}$$ поглощает: $$Х_{1},$$ $$Х_{1}Х_{2},$$ $$Х_{1}\overline Х_{2}$$
$$\overline Х_{2} $$ поглощает: $$\overline Х_{2} ,$$ $$Х_{1}\overline Х_{2},$$ $$\overline Х_{1} \overline Х_{2} $$
Т.е.
$$f(Х_{1}, Х_{2})= Х_{1}\vee \overline Х_{2}$$ в данном случае она – минимальная форма.
Пример 2:
Пусть задана:
$$f(Х_{1}, Х_{2}, Х_{3})= Х_{1}\overline Х_{3} \vee \overline Х_{1}\overline Х_{2} \vee \overline Х_{1}\overline Х_{2} Х_{3}$$
Получим
$$f= Х_{1}\overline Х_{3} (\overline Х_{2} \vee Х_{2})\vee \overline Х_{1}\overline Х_{2} (Х_{3}\vee \overline Х_{3})\vee \overline Х_{1}Х_{2} \overline Х_{3} = Х_{1}Х_{2} \overline Х_{3} \vee Х_{1}\overline Х_{2} \overline Х_{3} \vee \overline Х_{1}\overline Х_{2} Х_{3} \vee \overline Х_{1}\overline Х_{2} \overline Х_{3} \vee \overline Х_{1}\overline Х_{2} Х_{3} = Х_{1}Х_{2} \overline Х_{3} \vee Х_{1}\overline Х_{2} \overline Х_{3} \vee \overline Х_{1}\overline Х_{2} Х_{3} \vee \overline Х_{1}\overline Х_{2} \overline Х_{3}$$
Теперь, имея
$$f(X_{1},X_{2},X_{3})=\overline X_{1}\overline X_{2}X_{3}\vee \overline X_{2}\overline X_{3}\vee X_{1}\overline X_{3}$$
Пример 3:
$$\overline f(Х_{1}, Х_{2}, Х_{3})=\overline Х_{1}Х_{2} Х_{3}\vee \overline Х_{1}\overline Х_{2} Х_{3}\vee Х_{1}\overline Х_{2} \overline Х_{3}\vee \overline Х_{1}\overline Х_{2} \overline Х_{3} \vee Х_{1}Х_{2} \overline Х_{3} = \overline Х_{1}Х_{3} \vee \overline Х_{2}\overline Х_{3} \vee \overline Х_{1}\overline Х_{2}\vee Х_{1}\overline Х_{3}$$
Склеиваются два произведения, содержащие число переменных с отрицанием, отличающихся на единицу и расположенных соответствующим образом.
Обычно произведение, содержащее ' n ' букв, называется минтермом ' n '-
Определение: Тупиковой ДНФ называется дизъюнкция простых
Этот метод
Иногда в Сок. ДНФ содержатся лишние
$$f(Х_{1}, Х_{2}, Х_{3})= Х_{1}Х_{3} \vee \overline Х_{2}Х_{3} \vee \overline Х_{1}\overline Х_{2 }$$
\overline Х_{2}Х_{3} может быть исключена. Ни одной операции склеивания и поглощения к этой форме применить нельзя, т.к. это Сок. ДНФ, т.е. дизъюнкция простых Х_{1}:
$$f= Х_{1}Х_{3} \vee \overline Х_{2}Х_{3} (Х_{1}\vee \overline Х_{1}) \vee \overline Х_{1}\overline Х_{2} = Х_{1}Х_{3} \vee Х_{1}\overline Х_{2} Х_{3} \vee \overline Х_{1}\overline Х_{2} Х_{3} \vee \overline Х_{1}\overline Х_{2}$$
Т.к. $$Х_{1}Х_{3}$$ покрывает $$Х_{1}\overline Х_{2}Х_{3}$$
и $$\overline Х_{1}\overline Х_{2}$$ покрывает $$\overline Х_{1}\overline Х_{2}Х_{3}$$, то $$f= Х_{1}Х_{3} \vee \overline Х_{1}\overline Х_{2}$$
ТЕОРЕМА:
Всякая минимальная ДНФ является тупиковой. Обратное утверждение не справедливо. Доказательство очевидно.
Из этой теоремы вытекает важное следствие: Для того чтобы найти минимальную ДНФ, нужно найти все тупиковые формы и среди них взять минимальную.
Существует несколько различных способов отыскания тупиковых форм.
Введем понятие степени:
$$Х^{\alpha } \\ =Х, если \ \alpha =1; \\ =\overline Х, если \ \alpha = 0.$$Рассмотрим конъюнкцию вида:
$$Х_{1}^{\alpha 1} * Х_{2}^{\alpha 2} * Х_{3}^{\alpha 3} \dots Х_{n} ^{\alpha n}$$Существует 2n наборов вида $$< \alpha _{1}, \alpha _{2}, \dots \alpha _{n} >.$$ Поставим в соответствие каждой конъюнкции (*) номер набора i и образуем дизъюнкцию всех конъюнкций:
$$\vee _{i\in A}(Х_{1}^{\alpha 1} * Х_{2}^{\alpha 2} * Х_{3}^{\alpha 3} \dots Х_{n}^{\alpha n} )$$
Теорема (без доказательства):
Любая ФАЛ, зависящая от ' n ' аргументов, может быть представлена в форме:
$$F(Х_{1}, Х_{2},\dots Х_{i}\dots Х_{n})= \vee Х_{1}^{\alpha 1} * Х_{2}^{\alpha 2}\dots Х_{i}^{\alpha i} F(\alpha _{1}, \alpha _{2}, \dots \alpha _{i}, X_{i+1},\dots X_{n})$$
Из этой теоремы вытекает ряд важных следствий:
Примечание:
i=n, то каноническая форма функции носит название совершенной ДНФ (Пример: ДНФ
$$f(Х_{1}, Х_{2}, Х_{3})= Х_{1} \vee \overline Х_{2} Х_{3} \vee \overline Х_{1}Х_{2} Х_{3}$$
Пример:
$$f(Х_{1}, Х_{2}, Х_{3})= \overline Х_{1}Х_{2} \overline Х_{3} \vee Х_{1}Х_{2} Х_{3}$$
В ДНФ в каждый член любая переменная входит в прямом виде или с отрицанием.
Аналогичная теорема справедлива и для представления функции в конъюнктивной нормальной форме (
$$f(Х_{1}, Х_{2},\dots , Х_{n})=( Х_{1}^{\alpha 1} \vee Х_{2}^{\alpha 2} \vee \dots \vee Х_{i}^{\alpha i}) f(\alpha _{1}, \alpha _{2}, \dots \alpha _{i}, X_{i+1}\dots X_{n})$$
или при представлении в совершенной
$$f(Х_{1}, Х_{2},…, Х_{n})=( Х_{1}^{\alpha 1} \vee Х_{2}^{\alpha 2} \vee Х_{3}^{\alpha 3}\vee \dots \vee Х_{n}^{\alpha n})$$
где: означает, что конъюнкции берутся по тем наборам, на которых
f(Х_{1}, Х_{2}, ... Х_{n})=0.
Дадим на основании этих теорем правило перехода от табличной формы функции к
Переход от табличной формы функции к
f(Х_{1}, Х_{2}, ... Х_{n})=1.Х_{i} имеет значение ' 1 ', то этот множитель пишется в прямом виде, если ' 0 ', то с отрицанием.Пример:
$$f(Х_{1}, Х_{2})= \overline Х_{1}Х_{2} \vee Х_{1} \overline Х_{2}\vee Х_{1}Х_{2}$$
X_{1}
|
Х_{2}
|
f(Х_{1}, Х_{2})
|
|---|---|---|
0 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
Правило перехода от табличной формы задания функции к
f(Х_{1}, Х_{2}, ... Х_{n})=0.Х_{i} имеет значение ' 0 ', то остается без изменений. Если ' 1 ', то с отрицанием.Пример:
$$f(Х_{1}, Х_{2})= (Х_{1} \vee \overline Х_{2}) (\overline Х_{1} \vee \overline Х\_{2} )$$
X_{1}
|
Х_{2}
|
f(Х_{1}, Х_{2})
|
|---|---|---|
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
Пример:
X_{1}
|
Х_{2}
|
Х_{3}
|
f(Х_{1}, Х_{2}, Х_{3})
|
|---|---|---|---|
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
$$СДНФ f(Х_{1}, Х_{2}, Х_{3})= \overline Х_{1} \overline Х_{2}Х_{3} \vee \overline Х_{1}Х_{2}Х_{3} \vee Х_{1}\overline Х_{2}\overline Х_{3} \vee Х_{1}Х_{2}\overline Х_{3} \vee Х_{1}Х_{2}Х_{3}$$
$$СКНФ f(Х_{1}, Х_{2}, Х_{3})= (Х_{1} \vee Х_{2} \vee Х_{3}) (Х_{1} \vee \overline Х_{2} \vee Х_{3}) (\overline Х_{1} \vee Х_{2} \vee \overline Х_{3})$$
Рассмотрим способ получения
Из таблицы 2.1 с помощью способа записи функции по нулям следует, что
$$f(Х_{1}, Х_{2})= Х_{1}\vee Х_{2}$$
X_{1}
|
Х_{2}
|
f(Х_{1}, Х_{2})
|
|---|---|---|
0 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
Итак, имеем две формы одной и той же функции:
$$f(Х_{1}, Х_{2})= \overline Х_{1}Х_{2}\vee Х_{1}\overline Х_{2}\vee Х_{1}Х_{2} =Х_{1}\vee Х_{2}$$
Итак, видно, что общее число членов в этих двух формах равно сумме нулей и единиц функции, то есть равно 2n.
Если в исходной форме функции, записанной в z членов, то в другой ее форме (т.е. (2n- z).
Поскольку в функцию мы включаем дизъюнктивные или конъюнктивные члены и берем их по наборам, на которых функция или обращается в ' 0 ', или в ' 1 ', то для перехода от одной формы задания функции к другой нужно выписать все недостающие члены и поставить над каждой переменной отрицание, а также заменить знаки конъюнкции на дизъюнкцию и обратно.
$$f(Х_{1}, Х_{2})= Х_{1}\vee Х_{2}$$
$$f(Х_{1}, Х_{2})_{СДНФ}= \overline Х_{1}Х_{2}\vee Х_{1}\overline Х_{2}\vee Х_{1}Х_{2}$$
т.е. получили
Практический смысл перехода заключается в том, что можно определить, реализация какой формы потребует меньший объем оборудования.
Было отмечено, что техническая (физическая) задача синтеза произвольного устройства сводится к математической задаче построения произвольной ФАЛ.
Естественно возникает вопрос, какое количество связок необходимо, чтобы построить произвольную ФАЛ. Ответ на этот вопрос не однозначен. Мы видим, что, например, с помощью только функции f_{0} (константа 0 ), f_{15} (константа 1 ) произвольную ФАЛ построить нельзя. Нельзя ее построить и с помощью только 1, |.
Есть также f_{8} – f_{14} –
Технически синтез устройства означает, что нужно иметь некоторый набор элементов, ФАЛ которых образуют базис, чтобы можно было построить реальное устройство.
Однако, как было отмечено, задача синтеза ФАЛ –
Покажем на примере, что
$$f(Х_{1}, Х_{2})= Х_{1}Х_{2}\vee Х_{1}\overline Х_{2}\vee \overline Х_{1}\overline Х_{2} =Х_{1}\vee \overline Х_{1} \overline Х_{2}$$
на основании полного склеивания по Х_{2} мы видим, что запись стала короче, т.к. содержит меньшее число связок и букв. Физически это означает, что устройство, которое реализует эквивалентную, но более простую функцию, будет иметь в своем составе меньшее количество оборудования, а следовательно, будет работать надежнее.
Итак, задача синтеза устройства должна быть дополнена задачей уменьшения оборудования в нем. С математической точки зрения это задача построения минимальной ФАЛ.
Под минимальной ФАЛ понимается такая форма, в которой содержится меньшее количество букв и членов, чем в ее исходной форме.
Речь идет именно о буквах, а не о переменных, так в функции:
$$f(Х_{1}, Х_{2})= Х_{1}Х_{2}\vee Х_{1}\overline Х_{2}\vee \overline Х_{1}Х_{2}$$ имеется 6 букв и только 2 переменных.
Видно, что если какое-либо элементарное произведение входит в функцию, то при добавлении к нему новых сомножителей, полученное произведение так же будет входить в функцию.
Пример: если Х_{1}Х_{2} входит в функцию от любого числа аргументов ( >2 ), то в нее войдет, например, произведение Х_{1}Х_{2}Х_{3}.
Это можно показать так:
$$f(Х_{1}, Х_{2})= Х_{1}Х_{2}\vee \varphi (Х_{1}Х_{2})= Х_{1}Х_{2} (\overline Х_{3}\vee Х_{3})\vee \varphi (Х_{1}Х_{2})= Х_{1} Х_{2} Х_{3} \vee \overline Х_{1} Х_{2} Х_{3} \vee \varphi (Х_{1}Х_{2})=Х_{1} Х_{2} Х_{3} \vee \psi (Х_{1} Х_{2} Х_{3})$$
Дадим ряд определений:
Например, Х_{1} Х_{2} Х_{3} – элементарное произведение, т.к. в него входят различные буквы Х_{1} Х_{2} Х_{3}.
Обычно
Например, Х_{1} Х_{2} Х_{3} Х_{4}, где Х_{1}, Х_{1} Х_{2}, Х_{1} Х_{2} Х_{3} – некоторые собственные части.
F, то говорят, что $$\phi$$ является F (т.е. нулей у Например, $$Х_{1} \vee Х_{1} Х_{2} Х_{3} \vee Х_{1}Х_{3}=f$$: здесь $$Х_{1}$$ - простая
Определение. Если на каком-либо наборе f принимает значение а_{1}, а $$\phi$$ – значение а_{2}, то говорят, что f своим значением а_{1} покрывает значение а_{2} функции $$\phi.$$
При
Смысл построения Сок. ДНФ заключается в том, что в нее входят такие элементарные произведения, которые своими единицами покрывают не одну единицу исходной функции, а несколько.
Так, каждое элементарное произведение, входящее в
Например:
$$f(Х_{1}, Х_{2})= Х_{1}Х_{2}\vee Х_{1}\overline Х_{2}\vee \overline Х_{1}\overline Х_{2}$$
1 1 1
Эти единицы функции могут быть накрыты более короткими произведениями: Х_{1} накрывает две единицы: $$Х_{1}Х_{2}$$ и $$Х_{1}\overline Х_{2}$$ и $$\overline Х_{2}$$, которое накрывает также две единицы: $$Х_{1}\overline Х_{2}$$ и $$\overline Х_{1}\overline Х_{2}$$, т.е.
$$f(Х_{1}, Х_{2})= Х_{1}\vee \overline Х_{2}$$
ТЕОРЕМА (без док-ва):
Любая ФАЛ может быть представлена единственным образом в Сок. ДНФ, т.е. записана в виде дизъюнкции простых
Сокращенная форма не означает, что эта форма является минимальной. Однако для практической реализации эта форма более удобна, чем совершенная.
Рассмотрим метод получения Сок. ДНФ, предложенный Квайном. Этот метод, и, в частности, теорема Квайна в явном и неявном виде входит практически во все методы
Исходная форма функции – совершенная ДНФ.
ТЕОРЕМА Квайна:
Если в
Покажем, что, применяя операцию неполного склеивания, получим все простые
Пусть $$\overline Х_{1}Х_{2}$$ – простая
$$\overline Х_{1}Х_{2} (Х_{3}\vee \overline Х_{3})=\overline Х_{1} Х_{2} Х_{3} \vee \overline Х_{1} Х_{2} \overline Х_{3}$$
получатся после многократного применения этой операции дизъюнкции
В эту форму, вообще говоря, могут входить несколько одинаковых членов, т.к. разные простые
По отношению к
Пример:
$$f(Х_{1}, Х_{2})= Х_1\overline Х_{2}\vee \overline Х_{1}Х_{2}\vee \overline Х_{1}\overline Х_{2} = Х_1\overline Х_{2}\vee \overline Х_{1}\ или\ \overline Х_{1}Х_{2}\vee \overline Х_{2}$$
Таким образом после выполнения операции неполного склеивания получится не только дизъюнкция простых
Если теперь провести все операции поглощения, то в полученной форме функции f останутся только простые
Тогда x=y*z, где z – простая f, т.к. в нее входит x. Но z будет поглощать х, поэтому х не может входить в f. Это и доказывает теорему Квайна.
Замечание: Заметим, что теорема Квайна применяется по отношению к функции
Порядок получения Сок. ДНФ может быть следующим:
(n-1) Пример 1:
$$f(Х_{1}, Х_{2})= Х_{1}Х_{2}\vee Х_{1}\overline Х_{2}\vee \overline Х_{1}\overline Х_{2}$$
Если применим операцию полного склеивания, то получим:
или
$$f(Х_{1}, Х_{2})= Х_{1}\vee \overline Х_{1}\overline Х_{2}$$
или
$$f(Х_{1}, Х_{2})= Х_{1}Х_{2}\vee \overline Х_{2}$$
т.е. у нас нет возможности далее провести операцию.
Применим теперь операцию неполного склеивания:
$$f(Х_{1}, Х_{2})= Х_{1}\vee Х_{1}Х_{2}\vee Х_{1}\overline Х_{2}\vee \overline Х_{1}\overline Х_{2}\vee \overline Х_{2} = Х_{1}\vee \overline Х_{2}\vee Х_{1}Х_{2}\vee Х_{1}\overline Х_{2}\vee \overline Х_{1}\overline Х_{2}$$
Простые
Конституенты единицы: $$Х_{1}Х_{2},$$ $$Х_{1}\overline Х_{2},$$ $$\overline Х_{1}\overline Х_{2} $$
Теперь можем провести операции поглощения:
$$Х_{1}$$ поглощает: $$Х_{1},$$ $$Х_{1}Х_{2},$$ $$Х_{1}\overline Х_{2}$$
$$\overline Х_{2} $$ поглощает: $$\overline Х_{2} ,$$ $$Х_{1}\overline Х_{2},$$ $$\overline Х_{1} \overline Х_{2} $$
Т.е.
$$f(Х_{1}, Х_{2})= Х_{1}\vee \overline Х_{2}$$ в данном случае она – минимальная форма.
Пример 2:
Пусть задана:
$$f(Х_{1}, Х_{2}, Х_{3})= Х_{1}\overline Х_{3} \vee \overline Х_{1}\overline Х_{2} \vee \overline Х_{1}\overline Х_{2} Х_{3}$$
Получим
$$f= Х_{1}\overline Х_{3} (\overline Х_{2} \vee Х_{2})\vee \overline Х_{1}\overline Х_{2} (Х_{3}\vee \overline Х_{3})\vee \overline Х_{1}Х_{2} \overline Х_{3} = Х_{1}Х_{2} \overline Х_{3} \vee Х_{1}\overline Х_{2} \overline Х_{3} \vee \overline Х_{1}\overline Х_{2} Х_{3} \vee \overline Х_{1}\overline Х_{2} \overline Х_{3} \vee \overline Х_{1}\overline Х_{2} Х_{3} = Х_{1}Х_{2} \overline Х_{3} \vee Х_{1}\overline Х_{2} \overline Х_{3} \vee \overline Х_{1}\overline Х_{2} Х_{3} \vee \overline Х_{1}\overline Х_{2} \overline Х_{3}$$
Теперь, имея
$$f(X_{1},X_{2},X_{3})=\overline X_{1}\overline X_{2}X_{3}\vee \overline X_{2}\overline X_{3}\vee X_{1}\overline X_{3}$$
Пример 3:
$$\overline f(Х_{1}, Х_{2}, Х_{3})=\overline Х_{1}Х_{2} Х_{3}\vee \overline Х_{1}\overline Х_{2} Х_{3}\vee Х_{1}\overline Х_{2} \overline Х_{3}\vee \overline Х_{1}\overline Х_{2} \overline Х_{3} \vee Х_{1}Х_{2} \overline Х_{3} = \overline Х_{1}Х_{3} \vee \overline Х_{2}\overline Х_{3} \vee \overline Х_{1}\overline Х_{2}\vee Х_{1}\overline Х_{3}$$
Склеиваются два произведения, содержащие число переменных с отрицанием, отличающихся на единицу и расположенных соответствующим образом.
Обычно произведение, содержащее ' n ' букв, называется минтермом ' n '-
Определение: Тупиковой ДНФ называется дизъюнкция простых
Этот метод
Иногда в Сок. ДНФ содержатся лишние
$$f(Х_{1}, Х_{2}, Х_{3})= Х_{1}Х_{3} \vee \overline Х_{2}Х_{3} \vee \overline Х_{1}\overline Х_{2 }$$
\overline Х_{2}Х_{3} может быть исключена. Ни одной операции склеивания и поглощения к этой форме применить нельзя, т.к. это Сок. ДНФ, т.е. дизъюнкция простых Х_{1}:
$$f= Х_{1}Х_{3} \vee \overline Х_{2}Х_{3} (Х_{1}\vee \overline Х_{1}) \vee \overline Х_{1}\overline Х_{2} = Х_{1}Х_{3} \vee Х_{1}\overline Х_{2} Х_{3} \vee \overline Х_{1}\overline Х_{2} Х_{3} \vee \overline Х_{1}\overline Х_{2}$$
Т.к. $$Х_{1}Х_{3}$$ покрывает $$Х_{1}\overline Х_{2}Х_{3}$$
и $$\overline Х_{1}\overline Х_{2}$$ покрывает $$\overline Х_{1}\overline Х_{2}Х_{3}$$, то $$f= Х_{1}Х_{3} \vee \overline Х_{1}\overline Х_{2}$$
ТЕОРЕМА:
Всякая минимальная ДНФ является тупиковой. Обратное утверждение не справедливо. Доказательство очевидно.
Из этой теоремы вытекает важное следствие: Для того чтобы найти минимальную ДНФ, нужно найти все тупиковые формы и среди них взять минимальную.
Существует несколько различных способов отыскания тупиковых форм.
Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.