Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Готовая МетодДискрЗаоч.d oc .doc
Скачиваний:
20
Добавлен:
24.11.2018
Размер:
2.84 Mб
Скачать

Математична логіка

Математична логіка – це аналіз методів міркувань. При цьому в першу чергу досліджуються форми міркувань, а не їхній зміст.

Визначення. Висловленням називається оповідальне речення, про яке можна сказати в даний момент часу, що воно істинне або хибне, але не те й інше одночасно.

Зіставимо кожному висловленню змінну, що має значення істина - 1, якщо воно істинно, і значення хибність - 0, якщо висловлення хибне. Значення істинності складеного висловлення залежить від значень істинності складових його висловлень. Для складання складних висловлень застосовуються логічні зв'язки:

 – логічне додавання (або), диз'юнкція;

 – логічне множення (і), кон’юнкція;

()  логічне заперечення (не).

Якщо P і Q – деякі висловлення, то можна скласти нові висловлення PQ, PQ,P,Q, причому істинність складених висловлень визначається за допомогою таблиць істинності:

P

Q

PQ

P

Q

PQ

P

0

0

0

0

0

0

0

1

1

0

1

0

0

1

1

0

1

1

0

0

1

0

1

1

1

1

1

1

Властивості булевих операцій:

1. Ідемпотентність: AA=A, AA=A.

2. Комутативність: AB=BA, AB=BA.

3. Асоціативність: A(BC)=(AB)C, A(BC)=(AB)C.

4. Дистрибутивність: (C) = ()(C).

(C) = ()(C).

6. Інволюція: .

7. Правила де Моргана:

8. Склеювання:

9. Поглинання: (AB)=A, A(B)=A.

10. Закон протиріччя: .

11. Закон виключеного третього:

12. Дії з нулем і одиницею:

В логіку крім трьох основних булевих операцій для утворення складних висловлень вводять ще дві: імплікація (слідування) – (AB) («якщо A, то B»); еквівалентність – (A  B) або () («якщо і тільки якщо»), що мають таблиці істинності, представлені на малюнку 2.

Л

A

B

AB

A

B

A~B

0

0

1

0

0

1

0

1

1

0

1

0

1

0

0

1

0

0

1

1

1

1

1

1

огічні операції розташовуються в порядку спадання пріоритетів так: , ,   , .

Для кожного складного висловлення можна побудувати таблицю істинності. Якщо складене висловлення залежить від n складових, то в таблиці істинності такого висловлення буде рядків.

Приклад. Побудувати таблицю істинності висловлення, представленого формулою: .

A

B

C

B

(B)C

0

0

0

1

1

0

0

0

1

1

1

1

0

1

0

1

1

0

0

1

1

1

1

1

1

0

0

0

0

1

1

0

1

0

0

1

1

1

0

0

1

0

1

1

1

0

1

1


Визначення. Складене висловлення, що істинне незалежно від значень висловлень, що входять у нього, називається тавтологією, таблиця істинності тавтології містить тільки значення “істинно”, а його функція тотожно дорівнює одиниці. Складене висловлення, що хибне незалежно від значень висловлень, що входять у нього, називається протиріччям.

Щоб перевірити, чи є висловлення тавтологією або протиріччям, треба скласти для неї таблицю істинності з рядків на всіх наборах значень змінних, або ж перевірити за допомогою еквівалентних перетворень.

У численні висловлень формули будуються за наступними правилами:

  • змінна є формула;

  • якщо F і P – формули, то формулами будуть також , , , , , ;

  • інших формул немає.

Визначення. Формули, що представляють ту саму функцію, називаються еквівалентними або рівносильними.

Приклад. Штрих Шеффера: ;

стрілка Пірса: .

Для спрощення формул використовують властивості булевих операцій, а також наступні три тотожності, що дозволяють замінити імплікацію () і еквівалентність () булевими операціями:

13)

14)

15) .

Правила спрощення формул такі:

  • за допомогою формул 14 і 15 виключити з формули еквівалентність;

  • за допомогою формули 13 виключити імплікацію;

  • за правилами де Моргана опустити заперечення формул до рівня змінних (властивість 7);

  • застосувати тотожності дистрибутивності (властивості 4, 5);

  • привести подібні.

Приклад.

{формули 13, 14} {властивості 4, 5} {властивість 10}{властивості 4, 5}= {властивості 1, 2}= {властивості 9, 12} {властивості 4, 2}= {властивість 12} .

Введемо позначення: . Тоді, якщо позначити через  змінну, що приймає значення 0 або 1, то справедливе співвідношення ( ).

Теорема. Усяку логічну функцію n змінних можна представити у вигляді

,

де диз'юнкція береться по всім тим наборам змінних, при яких f=1.

Це розкладання функції по n змінним називається досконалою диз'юнктивною нормальною формою (ДДНФ) функції f. ДДНФ функції f містить рівно стільки кон’юнкцій, скільки одиниць у таблиці істинності f.

Зауваження. Для нуля не існує ДДНФ: ; для одиниці ДДНФ є: .

Кожна функція  P2 (множини логічних функцій n змінних), причому така, що , має ДДНФ, що будується в такий спосіб: у таблиці істинності виділяють ті рядки, тобто ті набори змінних , для яких . Для кожного позначеного рядка утворюють кон’юнкцію . Складають диз'юнкцію всіх отриманих кон’юнкцій.

Приклад. Побудувати ДДНФ для функції , заданої таблицею істинності.

Розв’язання.

Тут “” відзначені ті набори змінних , для яких , у цих рядках складено елементарні кон’юнкції. ДДНФ для f має вигляд: .

Визначення. Елементарною кон’юнкцією називається кон’юнкція змінних або їхніх заперечень, у яку кожна змінна входить не більш одного разу. Диз'юнкція елементарних кон’юнкцій називається диз'юнктивною нормальною формою (ДНФ).

Приклад. (ДНФ);

(СДНФ)

Різниця між ДНФ і ДДНФ полягає в тому, що в ДДНФ кожна елементарна кон’юнкція містить усі n змінних або їхніх заперечень, у той час як у ДНФ деякі змінні можуть бути відсутні. У той час як для кожної функції ДДНФ існує єдина, ДНФ для тієї ж функції існує зліченна множина.

Диз'юнктивну нормальну форму, у тому числі і досконалу, можна побудувати за допомогою еквівалентних перетворень по наступному алгоритму:

а) виключити “” і “” за допомогою формул 13-15;

б) за допомогою правил подвійного заперечення і де Моргана виключити заперечення над операціями;

в) розкрити дужки і застосувати властивість ідемпотентності, закони виключеного третього і протиріччя;

г) виключити константи по властивостях 12.

Правило побудови ДДНФ по ДНФ. Усяку ДНФ можна привести до ДДНФ розщепленням кон’юнкцій до всіх змінних, тобто елементарні кон’юнкції, у які співмножниками входять не всі змінні, множать на одиниці, представлені у вигляді диз'юнкцій кожної відсутньої змінної і її заперечення (закон «виключеного третього»), і розкривають дужки за законом дистрибутивності 4. Нарешті, виключають повторення доданків.

Приклад. Дану формулу привести до ДНФ і ДДНФ за допомогою еквівалентних перетворень.

.

Розв’язання.

{формули 13, 14} {властивості 4, 5, 1} = = {властивості 4, 5} = {властивість 10} = – отримана ДНФ для функції, представленої формулою .

Приведемо тепер ДНФ до ДДНФ за описаним правилом.

{додамо змінну A у третю кон’юнкцію} { по властивості 4} {властивості 2, 1 приводять до ДДНФ}= .

Визначення. Елементарною диз'юнкцією називається диз'юнкція змінних або їхніх заперечень, у яку кожна змінна входить не більш одного разу. Кон’юнктивною нормальною формою (КНФ) називається формула, представлена у вигляді кон’юнкції елементарних диз'юнкцій.

Приклад. – кон’юнктивні нормальні форми для функції трьох змінних.

Кожна формула алгебри висловлень має множину різних КНФ.

Визначення. Досконалою кон’юнктивною нормальною формою (ДКНФ) формули алгебри висловлень називається КНФ, у якій:

  • кожен співмножник містить доданками всі змінні, причому кожну тільки один раз із запереченням або без;

  • відсутні повторення співмножників.

За допомогою еквівалентних перетворень будь-яка формула приводиться до КНФ аналогічно її приведенню до ДНФ. В отриманій КНФ до елементарних диз'юнкцій, у які доданками входять не всі змінні, додати нулі, представлені у вигляді кон’юнкцій кожної відсутньої змінної і її заперечення (закон протиріччя), і за допомогою закону дистрибутивності диз'юнкції відносно кон’юнкції (властивість 5) привести ці співмножники до сум першої степені, тобто сум, що не містять добутків. Нарешті, виключити повторення співмножників.

Приклад. – ДКНФ.

У табличному способі розглядаються тільки ті рядки таблиці істинності, де функція приймає значення 0. Кожному такому рядкові відповідає диз'юнкція всіх змінних, причому аргумент, що приймає значення 0, береться без заперечення, а той, що приймає значення 1, – із запереченням. Нарешті, утворюють кон’юнкцію отриманих диз'юнкцій.

Приклад. Привести до ДКНФ формулу

.

Розв’язання.

ДКНФ для функції f має вигляд:

Зауваження. Кожна функція алгебри висловлень має єдину ДКНФ. Функція, що тотожно дорівнює одиниці, не має ДКНФ: . Для нуля ДКНФ існує і має вигляд: .

Алгебра Жегалкіна.

Алгебра Жегалкіна – це алгебра булевих функцій, утворених за допомогою булевої константи 1, булевих змінних та булевих функцій: 1) + − сума за модулем 2, 2) − кон’юнкція.

Властивості операцій в алгебрі Жегалкіна:

1) , ,

2) , ,

3) ,

4) , ,

5) , ,

6) .

У силу повноти системи будь-яку функцію можна надати у вигляді многочлена від своїх змінних, який називається поліномом Жегалкіна. Поліном Жегалкіна має вигляд:

,

(1)

де , .

Зауваження. Добутки, які відрізняються тільки порядком множників, вважають рівними.

Число різних поліномів Жегалкіна від змінних дорівнює , та дорівнює числу різних булевих функцій від змінних. Тому надання булевої функції поліномом Жегалкіна єдине.

Приклад. Виразити у вигляді полінома Жегалкіна.

Розв’язання.

Перший спосіб знаходження полінома – це метод невизначених коефіцієнтів.

Знаходження коефіціентів

0

0

0

,

0

1

1

,

1

0

1

,

1

1

1

,

Звідки, .

Надання функції у вигляді (1) називається також досконалою поліноміальною нормальною формою (ДПНФ).

Тотожні співвідношення для алгебри Жегалкіна:

1) ,

2) ,

3) ,

4) ,

5) .

Алгоритм побудови ДПНФ:

  1. В ДДНФ операцію можна замінити на + ,

  2. В усіх кон’юнкціях можна зробити заміну , а далі, розкрити дужки та привести подібні за правилами , .

В результаті буде побудована ДПНФ.

Приклад. Побудувати многочлен Жегалкіна, для функції, яка задана таблицею.

0

0

0

0

0

0

1

0

0

1

0

0

0

1

1

1

1

0

0

0

1

0

1

1

1

1

0

1

1

1

1

1

Розв’язання.

.

Приклад. Знайти поліном Жегалкіна без застосування ДДНФ.

Розв’язання.

1) ,

2)