Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ДМ 2012 / +Конспект лекций / ДМ_РБ_Конспект 2010.doc
Скачиваний:
199
Добавлен:
29.02.2016
Размер:
3.56 Mб
Скачать

Формулы. Реализация функций формулами. Равносильные формулы. Принцип двойственности.

Пусть F = {f1,f2,…,f2n} – множество булевых функций. Формулой надFназывается выражение вида:f[F] =f(t1,t2,…,tn),fF,ti– либо переменная, либо формула надF. МножествоF– базис, функцияf– главная (внешняя) функция (операция),ti– подформулы. Обычно для элементарных булевых функций используют инфиксную форму записи. Устанавливают следующий приоритет:, &,,.отрицание или инверсия, & – конъюнкция,дизъюнкция,импликация. Всякой формулеFоднозначно соответствует функцияf. Это соответствие задается алгоритмом интерпретации, который позволяет вычислить значение формулы при заданных значениях переменных. Зная таблицы истинности для функций базиса, можно вычислить таблицы истинности той функции, которую реализует данная формула.

Пример.Задана формулаF1:= (x1&x2)((x1& )(&x2)).

Таблица истинности:

x1

x2

x1 &

& x2

(x1 & )  ( & x2)

x1 & x2

F1

0

0

0

0

0

0

0

0

1

0

1

1

0

1

1

0

1

0

1

0

1

1

1

0

0

0

1

1

Т.о. формула F1реализует дизъюнкцию.

Одна функция может иметь множество реализаций над базисом. Формула, реализующая одну и ту же функцию, называется равносильной. Отношение равносильностей формул является эквивалентностью.

Имеют место следующие равносильности:

1.

2.

3.

4.

5.

6.

7.

8.

9.

10.

Принцип двойственности.Пустьf(x1,…,xn)Pn– булева функция. Тогдаf*(x1,…,xn)(с чертой сверху) =f*(x1,…,xn)называется двойственной функциейf.f** =f.

Дизъюнктивная нормальная форма.

Элементарной конъюнкцией называется такая формула A, которая является конъюнкцией, возможно одночленной, переменных и их отрицаний. Говорят, что формулаAнаходится в дизъюнктивной нормальной форме (ДНФ), если она является дизъюнкцией, возможно одночленной, элементарных конъюнкций. ДНФ:A = x1·x2x1· .

Теоремао приведении формулы к ДНФ.AB, находящаяся в ДНФ, чтоAB.B называется ДНФА.

Доказательство:В качестве доказательства приводят алгоритм построения ДНФ формулыА.

1.С помощью основных равносильностей, которые позволяют устранить операции импликации и эквивалентности, строят. При этомА1не содержит операций импликации и эквивалентности.

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

1);

2);

3);

4);

5);

6);

7);

8)

2.ОтА1переходят кА2, в которой отрицание только перед переменной1)A1A

2)

Полученная А2равносильнаАи состоит из многочисленных конъюнкций и дизъюнкций. КА2применяют формулу дистрибутивности конъюнкции относительно дизъюнкции. ПолучимА3, находящуюся в дизъюнктивной нормальной форме.

Конъюнктивная нормальная форма.

Аназывается элементарной дизъюнкцией, если она состоит из переменных и их отрицаний, связанных операцией дизъюнкции. Говорят, чтоАнаходится в КНФ, если она представляет собой конъюнкцию, возможно одночленную, элементарных дизъюнкций. КНФ:A=x1& (x2) & (x1).

Теоремао приведении к КНФ.ABA, находящаяся в КНФ.B называется КНФА.

Доказательство: Аналогично теореме 1. Применяют обобщенные законы Де Моргана, чтобы привести операции отрицания к переменным. Применяют формулы дистрибутивности дизъюнкции относительно конъюнкции.A3Aи находится в КНФ.

Тема 3. Полиномы Жегалкина. Cуществование и единственность представления булевой функции полиномом Жегалкина (теорема Жегалкина). Теоремы о полноте системы функций алгебры логики. Пять классов булевых функций: линейные функции; функции, сохраняющие нуль; функции, сохраняющие единицу; монотонные функции; самодвойственные функции. Функционально полные системы логических функций. Примеры функционально полных базисов. Минимизация булевых функций.

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

Примером полной системы является так называемый стандартный базис, содержащий дизъюнкцию, коньюнкцию и отрицание: . Полнота этой системы легко доказывается тем, что любая булева функция может быть представлена в виде ДНФ или КНФ. А учитывая, чтои, полными являются даже системыи.

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

где . В частном случае, полином Жегалкина имеет линейный вид:

Булева функция, представимая в виде линейного полинома Жегалкина, называется линейной.

Существует простой способ выражения любой булевой функции над базисом Жегалкина. Этот способ носит название метода неопределённых коэффициентов. Рассмотрим этот метод на примере:

Рассмотрим функцию . В общем виде полином Жегалкина для этой функции имеет вид:

Вычислим все коэффициенты начиная с , последовательно подставляя в полином известные значения функции:

Таким образом, функция имеет вид:

и не является линейной.