русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Булевы функции и операции


Дата добавления: 2015-07-23; просмотров: 761; Нарушение авторских прав


Существуют много видов алгебр логики, в которых произвольная логическая функция представляется как суперпозиция некоторых базисных функций. Например, широко известной является булева система функций: конъюнкция (Ù), дизъюнкция (Ú) и отрицание (`). Эта система функций в качестве базиса была введена английским математиком Булем, с именем которого связа­но начало всей математической логики. Поэтому алгебра логики на основе этих операций называется алгеброй Буля или булевой алгеброй. Рассмотрим свойства булевыхопераций.

Свойства булевых операций

1. Аксиоматические свойства

х • х = х, x Ú x = x,

x •`x = 0, x Ú`x = 1,
х • 0 = 0, x Ú 0 = x,

x • 1 = x, x Ú 1 = 1.

2. Свойства коммутативности

х1 Ú х2 = х2 Ú х1,

х1 • х2 = х2 • х1.

3. Свойства ассоциативности

1 Ú х2) Ú х3 = х1 Ú (х2 Ú х3),

1 • х2) • х3 = х1 • (х2 • х3).

4. Свойства дистрибутивности

1 Ú х2) • х3 = (х1 • х3) Ú (х2 • х3),

1 • х2) Ú х3 = (х1 Ú х3) • (х2 Ú х3).

5. Принцип двойственности (Закон де Моргана)

х1 • х2 = `х1 Ú`х2,

х1 Ú х2 = `х1 •`х2.

6. Закон двойного отрицания: х =`х.

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

2.2.2. Совершенные дизъюнктивная и конъюнктивная нормальные формы

Рассмотрим возможность представления произвольной функции в виде булевой формулы, содержащей только операции дизъюнкции, конъюнкции и отрицания.

Теоремы 1 и 2 доказывают возможность такого представления. Введем некоторые понятия.

Элементарной конъюнкцией(ЭК) называется выражение где все – различны, а r – ранг конъюнкции. Функция-константа единица (Ui = 1) считается конъюнкцией нулевого ран­га.



Элементарной дизъюнкцией (ЭД) называется выражение где все – различны, а r – ранг дизъюнкции. Функция-константа единица (Ui = 0) считается дизъюнкцией нулевого ран­га.

Дизъюнктивной нормальной формой (ДНФ) называется дизъюнкция N = U1 Ú U2 Ú ...Ú Uk элементарных конъюнкций U1, U2, ..., Uk. Совершенная ДНФ – частный случай ДНФ, элементарные конъюнкции которой содержат все переменные и ранг их равен n.

Конъюнктивной нормальной формой (КНФ) называется конъюнкция N = U1 Ù U2 Ù ...Ù Uk элементарных дизъюнкций U1, U2, ..., Uk. Совершенная КНФ – частный случай КНФ, элементарные дизъюнкции которой содержат все переменные и ранг их равен n.

Теорема 1.Произвольную логическую функцию
f(х1, х2, ..., хn) можно представить в виде

(2)

где σi Î {0, 1}, xi0 =`хi, xi1 = xi, σ = (σ1, …, σn) и дизъюнкция берётся по всем n-мерным наборам из нулей и единиц.

Доказательство. Покажем, что левая и правая части соотно­шения (2) совпадают. Подставим в (2) произвольный набор α = (α1, …, αn), где каждое αi Î {0,1}. В левой части по­лучим f(α1, α2, …, αn), а в правой части:

Равенства в правой части вытекают из свойств конъюнкции, дизъ­юнкции и из того, что: хσ = 1 Û х = σ.

Если f(х1, х2,..., хn) ≢ 0, то соотношение (2) можно перепи­сать в форме:

(3)

Эта формула (3) называется совершенной дизъюнктивной нормаль­ной формой (СДНФ) функции f(x1, х2,..., xn).

Следствие.Для произвольной логической функции существует взаимнооднозначное соответствие между ее СДНФ и таблицей истинности:

а) СДНФ содержит ровно столько элементарных конъюнкций, сколько единичных наборов у функции;

б) каждому единичному набору σ = (σ1, …, σn) соответствует элементарная конъюнкция всех переменных функции, в которой для σi = 0переменная хiберется с отрицанием и дляσi = 1–без отрицания.

Рассмотрим построение СДНФ по таблице истинности функ­ции f(x1, х2, ..., xn). Для каждого набора σ = (σ1, …, σn) из единичного множества [1](такого, что f(σ1, …, σn) = 1), составляется выражение ЭК: . Затем эти конъюнкции соединяются знаком дизъ­юнкции.

Пример 1. Построим СДНФ для функции неэкви­ва­лентности f7(x1, х2)=(х1 Å х2). Исходя из единичного мно­жест­ва этой функции [1] = {(0, 1), (1, 0)} формула СДНФ будет иметь вид: FСДНФ = `х1 • х2 Ú х1•`х2.

Теорема 2. Произвольную логическую функцию
f (х1, х2,..., хn) можно представить в виде:

(4)

где σi Î {0, 1}, хi0 = хi, xi1 = xi, σ = (σ1, …, σn)

и конъюнкция берётся по всем n-мерным наборам из нулей и единиц.

Доказательство. Из свойства булевой функции имеем
f (х1, х2,..., хn) = 1, х2, ..., хn). Для функции `f(х1, х2,..., хn) по теореме 1 существует представление в виде

тогда имеем:

что следует из закона де Моргана.

Заметим также, что . Следовательно,

Если f(х1, х2, ..., хn) ≢ 1, то соотношение (4) можно переписать в форме

(5)

Эта форма называется совершенной конъюнктивной нормальной формой (СКНФ).

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

а) СКНФ содержит ровно столько элементарных дизъюнкций, сколько нулевых наборов у функции;

б) каждому нулевому набору σ = (σ1, …, σn) соот­вет­ствует элементарная дизъюнкция всех переменных функции, в которой для σi = 1 переменная хi берется с отрицанием и для σi = 0 – без отрицания.

Рассмотрим построение СКНФ по таблице истинности функ­ции f(x1, х2,..., xn). Для каждого набора σ = (σ1, …, σn) из нулевого множества [0] (такого, что f(σ1, …, σn) = 0), составляется выражение ЭД: . Затем эти дизъюнкции соединяются знаком конъ­юнкции.

Пример 2. Построим СКНФ для функции неэкви­ва­лентности f7(x1, х2) = (х1 Å х2). Исходя из нулевого мно­жества этой функции [0] = {(0, 0), (1, 1)} формула СКНФ будет иметь вид: FСКНФ = (х1 Ú х2) • (`х1 Ú `х2).



<== предыдущая лекция | следующая лекция ==>
Функции двух переменных | Полные системы логических функций


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.474 сек.