Материал: discrete_mathematics

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Секвенції такого вигляду, тобто ті, що містять формулу, індексовану як 1 та 0, називаються замкненими. Такі суперечливі формули індексуємо знаком ×. Цим самим знаком позначатимемо й замкнені секвенції.

Ми розглянули всі можливі випадки та продемонстрували, що наслідкове твердження не може буди спростовано, тому воно є істинним. Це дає змогу зробити загальні висновки:

1)для перевірки істинності наслідкового твердження можна застосовувати метод доведення від супротивного, який полягає

впошуку суперечності для множин індексованих формул, отриманих у процесі доведення;

2)перетворення індексованих формул відбувається за правилами, індукованими семантичними властивостями операцій; правила мають засновки та висновки;

3)секвенційне доведення (секвенційне виведення) може бути подане у вигляді дерева, його корінь – початкова розмічена секвенція, а переходи задаються секвенційними правилами.

Як сформулювати секвенційні правила? Бачимо, що для кожної логічної операції є два правила: перше задає перетворення формули, яка розмічена 1, друге – формули, яка розмічена 0. Наприклад, для операції диз'юнкції можна записати два такі правила (засновки пишемо над рискою, висновки – під рискою):

1 A, 1B

та

0 A, 0 B

.

1 A B

 

 

0 A B

Ці правила сформульовані для однієї формули, але секвенція може мати також інші формули. Позначимо їх множину як Σ . Загальне правило матиме такий вигляд (ліворуч пишемо назву правила):

1¬

0 A,

,

0¬

1 A,

 

 

.

1A,

0 A,

Аналогічно можна побудувати правила для інших логічних операцій. Отримаємо таку сукупність секвенційних правил:

¬

0 A,

¬

1 A,

 

 

1

 

A,

0

 

A,

1

0

 

 

 

47

 

 

1

 

1 A,

1B,

 

0

0 A, 0 B,

 

 

1 A B,

0 A B,

 

 

 

 

 

1

 

1 A,1 B,

 

 

 

0

0 A,

0 B,

 

 

1 A B,

 

 

 

0 A B,

 

 

 

 

 

 

 

 

1

 

0 A,

1B,

0

1 A, 0 B,

 

1 A B,

 

0 A B,

 

1~

 

0 A, 0 B,

 

1A,1 B,

0~

 

0 A, 1 B,

1A,0 B,

 

 

1 A B,

 

0

A B,

 

 

 

 

 

При виконанні завдань виведення доцільно записувати у зворотному порядку – тобто висновки писати над рискою, а засновки

– під рискою. Іншими словами, складніші формули пишемо над рискою, а простіші – під рискою. Отже, надалі записуватимемо секвенційні правила в такому вигляді:

1

 

1¬A,

 

0

0 ¬A,

 

 

 

 

 

0

A,

 

 

1 A,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

1 A B,

 

0

 

0 A B,

 

 

 

 

1 A, 1B,

 

0

A, 0 B,

 

 

 

 

 

 

 

 

 

 

 

 

 

1

1 A B,

 

0

 

 

 

0 A B,

 

 

1 A,1 B,

 

0

A, Σ 0 B,

 

 

 

 

 

 

1

 

 

 

1 A B,

 

0

 

0 A B,

 

0

A, Σ 1B,

 

 

1 A, 0 B,

 

 

 

 

 

 

 

1~

 

 

 

 

1 A B,

0~

 

 

 

 

0 A B,

0 A, 0 B, 1A,1 B,

0 A, 1 B,

 

 

 

1A,0 B,

Зауваження. Прямий і зворотний записи правил можна трактувати як пряме та зворотне доведення. Тому для зворотного доведення можемо в правилі засновки писати над рискою, а ви-

сновки – під рискою. Прохання звертати на це увагу при побудові доведень.

48

Нижче наведено запис секвенційного виведення розглянутого наслідкового твердження: ←(A B) |= ¬A ¬B:

(1 ¬)

 

 

1 ←( A B), 0¬ A ¬B

 

(0 )

0

A B, 0

¬ A ¬B

 

 

 

(0 )

 

 

0 A, 0 B, 0¬ A ¬B

 

 

 

 

 

 

 

 

A, 0 B, 0

¬ A

 

0 A, 0 B, 0¬B

 

 

( ¬) 0

 

 

 

1

0 A×, 0 B,

1 A×

 

0 A, 0 B×, 1B×

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Приклад 1.18.

 

 

 

×

 

 

×

 

 

 

 

(засновок як висновок):

1. Антецедент як консеквент

A B A. Нагадуємо, що дужки у цій формулі розставляють таким чином: (A (B A)), тобто головною операцією є пер-

ша імплікація. Подаємо формулу як розмічену секвенцію:

0 A B A. Застосовуємо правило 0. Назву правила пишемо ліворучвід риски. Отримуємо

( ) 0 A B A.

0 1 A, 0 B A

Аналізуємо отриману секвенцію 1 A, 0 B A. Тут є лише одна складна формула 0 B A. Індексуємо її знаком * і застосову-

ємо до неї правило 0.

0 A

B A

 

(0 )

.

(0 )

1

A, 0 B A*

 

 

 

 

1 A, 1B, 0 A

 

 

 

 

 

Остання секвенція є замкненою, оскільки містить формули 1 А та 0 А, тобто секвенція вимагає, щоб А було одночасно істинним і хибним. Такі формули індексуємо знаком ×. Це є суперечністю, тому початкова секвенція не має спростування. Таку замкнену секвенцію позначаємо знаком ×. Остаточно дерево виведення секвенції має вигляд

(0 )

0 A

B

A

.

(0 )

1

A, 0 B A*

 

 

 

1 A ×,

1B, 0 A ×

 

 

 

 

×

Побудувавши таблицю істинності, переконуємось, що початкова формула є тавтологією:

49

A B

B A

AB A

0 0

1

1

0 1

0

1

1 0

1

1

1 1

1

1

2. Комутативність антецедентів (засновків):

A (B C) ~ B (A C).

Формуєморозмічену секвенцію:

0 A (B C) ~ B (A C).

Головною її операцією є еквівалентність ~, тому застосовуємо правило 0 ~.

(0 ~)

 

 

0 A (B C) ~ B (A C)

 

.

 

A (B C),1

B (A C) 1 A (B C),0

B (A C)

0

 

Отримано дві нові секвенції. Розглянемо першу

0 A (B C), 1B (A C).

Доцільно застосувати правило 0 до першої формули, яку індексуємо знаком *. Це саме правило застосовуємо також для другої секвенції:

 

 

(0 )

0 A (B C) *, 1B (A C)

 

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(0 )

1 A, 0 B C* , 1B (A C)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 A, 1B, 0C, 1B (A C)

 

 

 

 

 

 

 

У виведеній

секвенції єдиною

 

складною

 

 

формулою є

1 B (A C), до якої застосуємо правило 1. Це саме правило

застосуємо ще раз до формули 1 A C.

Усі отримані секвенції

будуть замкненими:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(1)

 

 

1 A, 1B, 0C, 1B

(A

C) *

 

 

 

 

 

 

 

.

 

 

 

(1 )

 

 

 

1 A, 1B, 0C, 1 A C *

 

 

 

1 A, 1B×, 0C, 0 B×

 

 

 

 

 

 

 

 

×

 

 

A

,

1

B,

0

C,

A

A,

1

B,

C ,

C

 

 

 

 

 

 

 

1 ×

 

 

 

0 × 1

 

 

0 ×

1 ×

 

 

 

 

 

 

 

 

 

 

 

×

 

 

 

 

 

 

 

 

×

 

 

 

Залишилось розглянути секвенцію

1 A (B C), 0 B (A C).

Двічі застосовуємо правило 0 до позначених формул:

( ) 1 A (B C), 0 B (A C) * .

0 ( ) 1 A (B C), 1B, 0(A C) *

0 1 A (B C)*, 1B, 1 A, 0C

50

Будуємо дерево виведення для останньої отриманої секвенції:

(1)

 

 

1 A (B C)* , 1B, 1 A, 0C

 

 

 

 

 

 

 

 

.

 

A×, 1B, 1 A×, 0C

(1 )

 

1 B C* , 1B, 1 A,

0C

 

 

 

0

 

 

 

 

 

 

 

 

×

B ,

B ,

1

A,

0

C

C

,

1

B,

1

A,

C

 

 

 

 

 

0 ×

1 ×

 

 

 

1 ×

 

 

 

0 ×

 

 

 

 

 

 

 

×

 

 

 

 

 

 

 

 

×

 

 

 

 

 

Усі гілки дерева виведення замкнені, тому початкова формула є тавтологією. Це можна також перевірити за допомогою побудови семантичної таблиці:

A B C

B C

A C

A (B C)

B (A C)

A (B C) ~

~ B (A C)

 

 

 

 

 

 

 

 

 

 

 

0 0 0

1

1

1

1

1

0 0 1

1

1

1

1

1

0 1 0

0

1

1

1

1

0 1 1

1

1

1

1

1

1 0 0

1

0

1

1

1

1 0 1

1

1

1

1

1

1 1 0

0

0

0

0

1

1 1 1

1

1

1

1

1

3. Кон'юнкція антецедентів (засновків):

A B C ~ A B C.

Дужки можна розставити таким чином:

(A (B C)) ~ ((A B) C),

тому головною операцією є еквівалентність. Формуємо розміче-

ну секвенцію та застосовуємо правило 0 ~ . Отримуємо

 

(0 ~)

 

0 A B C ~ A B C

 

.

 

A B C, 1B C 1 A B C, 0

A B C

0

 

Побудуємо дерево виведення окремо для двох зазначених секвенцій. Почнемо з першої секвенції:

(0 )

 

0 A B C* ,

1B C

 

.

(0 )

 

 

1 A, 0 B C*

, 1B C

 

 

 

 

 

 

 

 

1 A, 1B, 0C, 1B C*

 

 

 

 

(1 )

 

 

 

 

 

 

A, 1B, 0C, 0 B

1 A, 1B, 0C, 1C

 

 

 

1

 

 

××

Усі гілки дерева виведення замкнені, тобто секвенція виведена (це позначають A0 A B C* , 1B C). Тепер будуємо дерево виведення для другої секвенції:

51