Добавил:
інстаграм _roman.kob, курсові роботи з тєрєхова в.в. для КІ Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

discrete_mathematics

.pdf
Скачиваний:
201
Добавлен:
31.05.2020
Размер:
3.68 Mб
Скачать

Розділ 6 СЕМАНТИЧНІ ЗАСАДИ ЛОГІКИ ПРЕДИКАТІВ

У попередніх розділах, які стосувались математичної логіки, увагу було зосереджено переважно на синтаксичних аспектах. Тепер детальніше розглянемо семантичні аспекти логіки.

6.1. Класи n-арних і квазіарних функцій

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

Наприклад, розглянемо предикат, що задається виразом

якщо х > y та y > z, то х > z.

Тут вільними змінними є змінні х, y, z. Якщо такий предикат інтерпретується над множиною цілих чисел, то його значення слід обчислювати за наявності значень цих змінних. Нехай х має значення 17, y – 11, z – 3. Це означає, що визначено певний стан

змінних, який записуватимемо у вигляді [х 17, y 11, z 3].

Стан змінних також називають інтерпретацією, оцінкою або

розподілом змінних.

Таким чином, розглянутий предикат є відображенням множини станів змінних у значення істинності. Множину значень істинності позначають Bool = {1, 0} або Bool = {T, F}. Щоб зберегти однотипність позначень з іншими розділами посібника, уживатимемо позначення {1, 0}. Розглядаючи предикат як указану функцію, будемо називати стани змінних даними (з області визначення предиката).

Застосувавши предикат до даного (стану змінних)

[х

17, y

11, z

3],

отримуємо істиннісне значення 1.

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

функція із V у M називають станом змінних, іменованими да ними, квазіарними даними, або просто даними. Множину та-

ких даних позначатимемо D = V M = VM.

Якщо іменами є цілі числа, то квазіарне дане вигляду

[1 a1, 2 a2,… n an]

називатимемо n-арним даним. Такі дані зазвичай позначають у вигляді кортежа (a1, a2,… an). Кортеж є елементом декартового добутку M n. Відповідно квазіарні дані є елементами узагальненого часткового декартового добутку VM.

Уведені позначення дають змогу означити класи n-арних та квазіарних функцій. Функція, визначена на класі n-арних даних, називають n-арною, а функцію, визначену на класі квазіарних даних, – квазіарною.

Спеціальними класами таких функцій є предикати та ординарні функції. Предикат p: M n Bool називають n-арним преди катом, а предикат q: VM Bool квазіарнимпредикатом. Функцію f: M nM називають n-арною ординарною функцією, а функцію g: VM M квазіарною ординарною функцією. Термін

ординарний часто пропускатимемо.

Розглянемо предикат над цілими числами, який задається виразом

якщо х > y та z > t, то х + z > y + t.

Із яких предикатів і функцій побудовано цей предикат? Бачимо, що тут фігурують бінарний предикат > та бінарна функція +. Однак якого типу є функції х+z та y+t ? Оскільки функції визначені над станами змінних, то вони є квазіарними. Ці квазіарні функції отримано підстановкою (суперпозицією) квазіарних функцій розіменування (узяття значення) змінних у бінарну функцію +. Функції розіменування позначатимемо х, y, z, t. Наприклад, на стані

[х

17, y

11, z 3]

значення змінних х, y, z дорівнюють відповідно 17, 11, 3, значення змінної t не визначено. Позначатимемо це таким чином:

х ([х

17, y

11, z

3]) = 17,

y([х

17, y

11, z

3]) = 11,

 

 

223

 

z([х

17, y

11, z 3 ]) = 3,

t([х

17, y

11, z 3]).

Тут символ означає, що значення функції визначено, а сим-

вол – що воно не визначено.

Позначаючи підстановку квазіарних предикатів (функцій) у n- арний предикат як SPn , отримуємо, що предикат х > y подають як SP2 (>,x,y). Відповідно подають також інші предикати. Тут SPn операціянадквазіарнимипредикатами. Їїзадаютьформулою

SP2 ( p, g1,..., gn )(d) = p(g1 (d),..., gn (d)),

де p n-арний предикат, g1,…,gn – квазіарні ординарні функції, d – номінативне дане.

Яким чином побудовано предикат, що заданий виразом

якщо х > y та y > z, то х > z?

Очевидно, що його побудовано із квазіарних предикатів

SP2 (>,x,y), SP2 (>,y,z) та SP2 (>,x,z)

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

SP2 (>,'x,'y) & SP2 (>,'y,'z) → SP2 (>,'x,'z).

Приклад 6.1.

1. Обчислити предикат

SP2 (>,'x,'y) & SP2 (>,'y,'z) → SP2 (>,'x,'z).

на номінативному даному d = [х 17, y 11, z 3 ].

Спираючись на означення композицій суперпозиції, обчислюємо спочатку

SP2 (>,'x,'z)(d) = >('x(d),'z(d)) = >(17,3) =1.

За означенням композиції імплікації отримуємо, що

SP2 (>,'x,'z) & SP2 (>,'y,'z)→ SP2 (>,'x,'z)(d ) =1.

2. Обчислити вказаний предикат на номінативному даному d = [х 1, y 11, z 3].

224

Спочатку обчислюємо

SP2 (>,'x,'z)(d) = > ('x(d),'z(d)) = > (1,3) = 0.

Оскільки консеквент хибний, то обчислюємо антицедент. Для цього обчислюємо значення

SP2 (>,'x,'y)(d) = > ('x(d),'y(d)) = > (1,11) = 0,

SP2 (>,'y,'z)(d) = > ('y(d),'z(d)) = > (11,3) =1.

Звідси

SP2 (>,'x,'y) & SP2 (' >,'y,'z)(d ) = 0,

(SP2 (>,'x,'y) & SP2 (' >,'y,'z) → SP2 (>,'x,'z))(d ) =1.

Для функцій вводимо композицію суперпозиції квазіарних ординарних функцій у n-арну функцію:

SFn ( f , g1,..., gn )(d ) = f (g1 (d),..., gn (d)),

де f n-арна функція, g1,…, gn – квазіарні ординарні функції, d – номінативне дане.

Приклад 6.2. Написати композиційну формулу для предиката, що поданий виразом

якщо х > y та z > t, то х + z > y + t,

та обчислити його значення на номінативному даному d = [х 17, y 11, z 5, t 3].

Указаний вираз можна задати композиційною формулою

SP2 (>,'x,'y) & SP2 (' >,'y,'z) → SP2 (>, SF2 (+,'x,'z),SF2 (+,'y,'t).

Обчислюємо

SP2 (>, SF2 (+,'x,'z),SF2 (+,'y,'t)(d) = > (SF2 (+,'x,'z)(d),SF2 (+,'y,'t)(d)) =

=> (+ ('x(d),'z(d)),+ ( y(d))) = > (+(17,5),+ (11,3) => (22,14)) =1.

Це означає, що

SP2 (>,'x,'y) & SP2 (' >,'y,'z) → SP2 (>, SF2 (+,'x,'z),SF2 (+,'y,'t))(d) = 1.

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

225

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

Завдання для самостійної роботи

1. Побудувати композиційні формули для предикатів:

якщо х = y та y = z, то х= z; якщо х > y та z > t, то х × z > y × t.

2. Обчислити значення предикатів, отриманих у попередньому завданні, на таких номінативних даних:

d = [х

17, y

11, z

5, t

3];

 

d = [х

12, y

11, z

55, t

33, v

13].

6.2. Пропозиційні композиції

Пропозиційний рівень розгляду характеризується тим, що тут ми не проникаємо до внутрішньої структури об'єктів дослідження. Hа цьому рівні предикати розглядають як функції вигляду p : A {1, 0},

де A абстрактна множина, тобто її елементи неструктуровані. Предикат p на множині А назвемо істинним, якщо p(d) = 1

для всіх d A.

Для довільних предикатів p, q : A {1, 0} пишемо p Ö q, якщо з умови p(d) = 1 випливає q(d) = 1 для довільних d А.

На пропозиційному рівні засобом утворення складніших висловлень чи предикатів із простіших є логiчнi операцiї (композиції), які не враховують структурованості даних пропозицій ні композиції, або логічні зв'язки. Зазначимо, що на відміну від булевих операцій, які означають на множині булевих значень, тут логічні зв'язки тлумачать як операції над предикатами. Тому ці операції задаємо не таблицями істинності, а значеннями предикатів на довільному d А.

Основними логiчними зв'язками є диз'юнкцiя , кон'юнкцiя

&, iмплiкацiя , заперечення ¬ та еквiваленцiя ~.

226

Указані композиції задамо так (p, q – предикати, d – довільне значення з А):

( p q)(d)

= 1,

якщо p(d) =1 або q(d) =1,

 

0,

якщо p(d) = 0 та

q(d) = 0.

 

 

 

 

( p & q)(d)

= 1,

якщо p(d) =1 та

q(d) =1,

 

0,

якщо p(d) = 0 або q(d) = 0.

( p q)(d) = 1,

якщо p(d) = 0 або q(d) =1,

 

0,

якщо p(d) =1 та

q(d) = 0.

(¬ p)(d)

= 1,

якщо p(d) = 0,

 

 

0,

якщо p(d) =1.

 

 

 

 

 

( p q)(d)

= 1,

якщо p(d) = q(d),

 

0,

якщо p(d) q(d).

 

 

 

 

Укажемо основні властивості пропозиційних композицій.

1)

Комутативність , & та ~:

р q = q p; p & q = q & p; p ~ q = q ~ p.

2)

Асоціативність , & та ~:

(p q) r = p (q r); (p & q) & r = p & (q & R); (p ~ q) ~ r = p ~ (q ~ r).

3) Дистрибутивність відносно & та & відносно :

(p q) & r = (p & r) (q & r); (p & q) r = (p r) & (q r).

4)

Зняття подвійного заперечення: ¬ ¬ p = p.

5)

Ідемпотентність та &: р = p p; p = p & p.

6)

Закони де Моргана:

¬ (p q) = p) & (¬ q); ¬(p & q) = p) (¬ q). 7) Зведення та ~ до ¬, та &:

р q = (¬ p) q; p ~ q = (p q) & (q p). 8) Закони поглинання: Р Ö p q; р & q Ö p.

9)Закон (правило) modus ponens: р & (p q) Ö q.

10)Основоположні закони логіки виражають такі істинні предикати:

закон тотожності: p ~ p;

закон виключеного третього: (¬ p) p;

закон суперечливості: ¬ (p &(¬ p)).

227

Завдання для самостійної роботи

1.Виразити композиції & та ~ через композиції ← та .

2.Довести наведені вище основні властивості пропозиційних композицій.

6.3.Композиції квантифікації

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

Тут означимо композиції квантифікації x та x для квазіарних предикатів. Для цього замість абстрактної множини значень А, що розглядалась для пропозиційного випадку, візьмемо множину квазіарних даних VM.

Для квазіарного даного d запис d x a означає нове квазіа-

рне дане, у якому предметне ім'я (змінна) x отримує значення а; для інших змінних залишається те значення, яке вони мали в d.

Предикати x(p) та x(p) позначатимемо xp та xp. Задамо

їх так (p: VM Bool, d VM):

 

 

( xp) (d) = 1,

якщо існує b M : p(d x

b) = 1,

 

0,

якщо P(d x

a) = 0 длявсіх a M.

( xp) (d) = 1,

якщо p(d x

a) = 1 длявсіх a M ,

 

0, якщо існує

b M : p(d x

b) = 0.

Основні властивості композицій x та x:

 

1)

Комутативність однотипних кванторів:

 

 

x уp = у хp;

x уp = у хp.

2)

Закони де Моргана для кванторів:

 

 

хp = х p; ←хp= х p.

 

3)

Неістотність квантифікованих імен:

 

x хp = хp; x хp = хp; x хp = хp; x хp = хp.

4)Закони p Ö хp та хp Ö p.

5)Закон y хp Ö x yp.

6)Закони дистрибутивності кванторів щодо та &:

хp хq = х(p q); хp& xq = х(p & q);

228

х(p&q) Ö хp& xq; хp xq Ö х(p q).

Зауважимо, що назва логікапершогопорядку пов'язана із тим, що квантори застосовують лише до імен компонентів у квазіарних даних (до предметних iмен). Якщо квантори застосовують до предикатів (функцій), то отримуємо логіки другого порядку.

6.4. Алгебричні системи та алгебри предикатів

Семантика логіки предикатів першого порядку задається двома типами алгебр: алгеброю предметних значень (у нашому випадку – алгебричною системою) та алгеброю предикатів.

Алгебричною системою (АС) назвемо об'єкт вигляду

Α= (M , FnM , PrM ),

де M − непорожня множина предметних значень, яку називають носiєм, або основою АС, FnM та PrM − множини n-арних

функцiй і предикатiв, заданих на M.

Нехай Fs та Ps − довільні множини, які відповідно називають множинами функціональних (ФС) і предикатних символів (ПС). Нехай

I Fs : Fs FnM та IPs : Ps PrM

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

A = (M, IFs, IPs).

Для кожного F Fs функцію f FnM таку, що I Fs (F)= f, назвемо значенням ФС F за інтерпретації I Fs на АС

A = (M, I Fs, IPs)

і позначатимемо цю функцію FA. Предикат p PrM такий, що IPs(P) = p, назвемо значенням ПС P при інтерпретації IPs на АС A та позначимо цей предикат PA. Функцію FA називають базовою, а предикат PA – базовим предикатом. Якщо функція FA є функцієюконстантою на A, то ФС F називають константнимсимволом.

Зауважимо, що за інтерпретації функціонального чи предикатного символу арність отриманої функції чи предиката доpівнює арності відповідного символу.

229

Алгебричні системи задають властивості предметних значень за допомогою n-арних функцiй і предикатiв, заданих на M. Однак основними класами предикатів і функцій є класи квазіарних ординарних предикатів та функцій, які позначимо відповідно

FnQM = VM M та PrQM = VM Bool.

Їхні властивості задаються за допомогою композицій квазіарних предикатів і функцій. Для мов першого порядку достатньо поняття алгебри квазіарних предикатів, а саме: кортеж

A1 = (PrQ M, ¬, , &, →, ~, x , x)

називають алгеброю квазіарних предикатів першого порядку.

Яким чином пов'язані алгебрична система та алгебра предикатів? Фактично – через третю алгебру, основними операціями якої є суперпозиції в n-арні функції і предикати. Ця алгебра відіграє допоміжну роль, тому тут не розглядатимемо її детально.

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

Завдання для самостійної роботи

1.Виразити композицію x через композиції ¬ та х.

2.Довести наведені вище основні властивості композицій x та x.

6.5.Мови першого порядку та їх інтерпретації

Уведені раніше алгебри (алгебрична система предметних значень та алгебра квазіарних предикатів) фактично визначають мову логіки предикатів першого порядку, або просто мову пер

шого порядку.

Сигнатура мови (множини символів) складається з таких типів символiв:

предметнi імена (змiннi) x, y, z,... з деякої множини V;

функцiональнi символи f0, f1, f2,... заданої арностi з деякої

множини Fs;

предикатнi символи p0, p1, p2,... заданої арностi з деякої множини Ps;

230

символи логiчних операцiй (композицій) ¬, та ;

символ рівності = предметних значень.

У множиніFs може виділятися підмножина константних символів Сп Fs. Символ рівності = завжди інтерпретуємо як предикат рівності, причому таку рівність трактуємо як тотожність.

Символи ¬, , , = і предметнi імена назвемо базовими логiчними символами. Функцiональнi та предикатнi символи, окрім =, назвемо нелогiчними символами. Множини Fs та Ps утворюють сигнатуру мови першого порядку.

Основними конструкціями мови першого порядку є терми та формули. Терми використовують для позначення, назви об'- єктів предметної області, формули для запису тверджень про такі об'єкти.

Індуктивне означення терму таке:

1)кожне предметне ім'я та кожна константа є термом; такі терми назвемо атомарними;

2)якщо t1,..., tn терми, F n-арний функцiональний сим-

вол, то F(t1...tn) терм.

Атомарною формулою називають вираз вигляду P(t1...tn), де P n-арний предикатний символ, t1,..., tn терми.

Індуктивне визначення формули таке:

1)кожна атомарна формула є формулою;

2)якщо Φ та Ψ − формули, то (¬ Φ) та (Φ Ψ) формули;

3)якщо Φ − формула, x предметне iм'я, то ( xΦ) формула. Дужки можна опускати, ураховуючи пріоритет операцій та їх

асоціативність. Пріоритет символів логічних зв'язок вважаємо нижчим за пріоритет предикатних символів, а пріоритет предикатних символів – нижчим за пріоритет функціональних символів. Квантори мають вищий пріоритет ніж бінарні логічні зв'язки. Для бінарних функціональних і предикатних символів зазвичай застосовуємо інфіксну форму запису. Те саме – для атомарних формул. Для формул вигляду ¬ (t1= t2) уживатимемо скоро-

чення t1 t2.

Вирази Φ&Ψ, Φ → Ψ та Φ ~ Ψ вважаємо вiдповiдно скороченнями формул

¬ (¬ Φ ¬ Ψ), ¬ Φ Ψ та ¬ (¬ (¬ Φ Ψ) ¬ (¬ Ψ Φ)).

231

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]