Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
KP ATP-131 / Курсовая работа. Попов А.А..doc
Скачиваний:
31
Добавлен:
31.05.2015
Размер:
185 Кб
Скачать
☆

Булева алгебра

Булевой алгеброй называется непустое множество A с двумя бинарными операциями  (аналог конъюнкции),  (аналог дизъюнкции), унарной операцией  (аналог отрицания) и двумя выделенными элементами: 0 (или Ложь) и 1 (или Истина).

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

  1. x ∧ y = y ∧ x

  2. x  y = y  x

  3. x  y = y  x

  4. x ∧ (y ∧ z) = (x ∧ y) ∧ z

  5. x  (y  z) = (x  y)  z

  6. x  (y  z) = (x  y)  z

  7. x  (y ∧ z) = (x  y) ∧ (x  z)

  8. x ∧ (y  z) = (x ∧ y)  (x ∧ z)

  9. ¬¬x = x

  10. ¬(x ∧ y) = ¬x  ¬y

  11. ¬(x  y) = ¬x ∧ ¬y

  12. x ∧ x = x

  13. x ∧ ¬x = 0

  14. x ∧ 0 = 0

  15. x ∧ 1 = x

  16. x  x = x

  17. x  ¬x = 1

  18. x  0 = x

  19. x  1 = 1

  20. x  y = (x ∧ ¬y)  (¬x ∧ y)

  21. x  y = ¬x  y

  22. x  y = (x ∧ y)  (¬x ∧ ¬y)

Булева функция

Булева функция  от n аргументов — в дискретной математике — отображение Bn → B, где B = {0,1} — булево множество.

Булева функция задаётся конечным набором значений, что позволяет представить её в виде таблицы истинности, например:

x1

x2

…

xn-1

xn

f(x1,x2,…,xn)

0

0

…

0

0

0

0

0

…

0

1

0

0

0

…

1

0

1

0

0

…

1

1

0

1

1

…

0

0

1

1

1

…

0

1

0

1

1

…

1

0

0

1

1

…

1

1

0

Конъюнкти́вная норма́льная фо́рма (КНФ) в булевой логике — нормальная форма, в которой булева формула имеет вид конъюнкции дизъюнкций литералов.

Совершенная конъюнктивная нормальная форма (СКНФ) — это такая КНФ, которая удовлетворяет трём условиям:

  • в ней нет одинаковых элементарных дизъюнкций

  • в каждой дизъюнкции нет одинаковых пропозициональных переменных

  • каждая элементарная дизъюнкция содержит каждую пропозициональную букву из входящих в данную КНФ пропозициональных букв.

Дизъюнктивная нормальная форма (ДНФ) в булевой логике — нормальная форма, в которой булева формула имеет вид дизъюнкции конъюнкций литералов. 

Совершенная дизъюнктивная нормальная форма (СДНФ) — это такая ДНФ, которая удовлетворяет трём условиям:

  • в ней нет одинаковых элементарных конъюнкций

  • в каждой конъюнкции нет одинаковых пропозициональных букв

  • каждая элементарная конъюнкция содержит каждую пропозициональную букву из входящих в данную ДНФ пропозициональных букв, причём в одинаковом порядке.

Для любой функции алгебры логики существует своя СДНФ, причём единственная.

Практическая часть

Пусть кнопки управления будут иксами, а движение колёс – игреками:

x1 – кнопка «Вперёд»;

x2 – кнопка «Назад»;

x3 – кнопка «Вращение по часовой стрелке»;

y1 – левое колесо вращается вперёд;

y2 – левое колесо вращается назад;

y3 – правое колесо вращается вперёд;

y4 – правое колесо вращается назад;

y5 – переднее колесо вращается вперёд;

y6 – переднее колесо вращается назад.

При нажатии кнопки «Вперёд» (x1), левое колесо вращается вперёд (y1), правое колесо вращается вперёд (y3), переднее колесо вращается вперёд (y5) – платформа едет вперёд.

При нажатии кнопки «Назад» (x2), левое колесо вращается назад (y2), правое колесо вращается назад (y4), переднее колесо вращается назад (y6) – платформа едет назад.

При нажатии кнопки «Вращение по часовой стрелке» (x3), левое колесо вращается вперёд (y1), правое колесо вращается назад (y4), переднее колесо вращается вперёд (y5) – платформа вращается по часовой стрелки.

Составим таблицу истинности:

x1

x2

x3

y1

y2

y3

y4

y5

y6

0

0

0

0

0

0

0

0

0

0

0

1

1

0

0

1

1

0

0

1

0

0

1

0

1

0

1

0

1

1

0

0

0

0

0

0

1

0

0

1

0

1

0

1

0

1

0

1

0

0

0

0

0

0

1

1

0

0

0

0

0

0

0

1

1

1

0

0

0

0

0

0

Используя таблицу истинности, составим СДНФ и приведём их к ПФ с минимальным количеством операций:

y1 = x1 ᴧ ¬x2 ᴧ ¬x3 v ¬x1 ᴧ ¬x2 ᴧ x3 = ¬x2 ᴧ (x1 ᴧ ¬x3 v ¬x1 ᴧ x3) = ¬x2 ᴧ (x1 ∆ x3);

y2 = ¬x1 ᴧ x2 ᴧ ¬x3;

y3 = x1 ᴧ ¬x2 ᴧ ¬x3;

y4 = ¬x1 ᴧ x2 ᴧ ¬x3 v ¬x1 ᴧ ¬x2 ᴧ x3 = ¬x1 ᴧ (x2 ᴧ ¬x3 v ¬x2 ᴧ x3) = ¬x1 ᴧ (x2 ∆ x3);

y5 = x1 ᴧ ¬x2 ᴧ ¬x3 v ¬x1 ᴧ ¬x2 ᴧ x3 = ¬x2 ᴧ (x1 ᴧ ¬x3 v ¬x1 ᴧ x3) = ¬x2 ᴧ (x1 ∆ x3);

y6 = ¬x1 ᴧ x2 ᴧ ¬x3.

А теперь построим таблицу истинности для каждой формулы:

y3(x1,x2,x3)

x1

x2

x3

¬x2

¬x3

x1 ᴧ ¬x2

y1

0

0

0

1

1

0

0

0

0

1

1

0

0

0

0

1

0

0

1

0

0

0

1

1

0

0

0

0

1

0

0

1

1

1

1

1

0

1

1

0

1

0

1

1

0

0

1

0

0

1

1

1

0

0

0

0

y4(x1,x2,x3)

x1

x2

x3

¬x1

x2 ∆ x3

y2

0

0

0

1

0

0

0

0

1

1

1

1

0

1

0

1

1

1

0

1

1

1

0

0

1

0

0

0

0

0

1

0

1

0

1

0

1

1

0

0

1

0

1

1

1

0

0

0

y1,5(x1,x2,x3)

x1

x2

x3

¬x2

x1 ∆ x3

y3,5

0

0

0

1

0

0

0

0

1

1

1

1

0

1

0

0

0

0

0

1

1

0

1

0

1

0

0

1

1

1

1

0

1

1

0

0

1

1

0

0

1

0

1

1

1

0

0

0

y2,6(x1,x2,x3)

x1

x2

x3

¬x1

¬x3

¬x1 ᴧ x2

y4,6

0

0

0

1

1

0

0

0

0

1

1

0

0

0

0

1

0

1

1

1

1

0

1

1

1

0

1

0

1

0

0

0

1

0

0

1

0

1

0

0

0

0

1

1

0

0

1

0

0

1

1

1

0

0

0

0

Заметим, что игреки получились такие же, как и в первой таблице истинности.