8.1. Predikátumlogika. A logikai műveletek és a halmazműveletek kapcsolata.

A predikátumlogika esetében formulákkal foglalkozunk, és figyelembe vesszük a kijelentések "belső szerkezetét", amely "a predikátumok felhasználása révén tárul fel" (Szendrei-Tóth 1978: 63).

A logikai műveletek és a halmazműveletek között szoros kapcsolat van. Ennek leírására szükségünk van az igazsághalmaz fogalmára.

Legyen I egy alaphalmaz és F(x):I→{0,1} egy egyváltozós formula. Tekintsük az I alaphalmaznak azt a legbővebb részhalmazát, amelyben az F(x) formula minden értékelése igaz logikai értéket ad. Ezt a részhalmazt az F(x) formula igazsághalmazának nevezzük és IF(x) módon jelöljük.

Az F(x) formula IF(x)⊆I igazsághalmaza az I alaphalmaz azon elemeinek halmaza, amelyekre az F(x) formula igaz. Formálisan:
    IF(x) ⇋ {x∈I | |F(x)|=1}

Megjegyzések:


Példaként legyenek P(x) és Q(x) a tanulók I alaphalmazán értelmezett (atomi) formulák, amelyekben egyváltozós predikátumok fordulnak elő:

P(x) ⇋ "az 'x' tanuló kiváló matematikából";
Q(x) ⇋ "az 'x' tanuló kiváló énekből".

Tekintsük az I alaphalmaznak azokat a legbővebb részhalmazait, amelyekben a P(x), ill. Q(x) formulák minden értékelése igaz logikai értéket ad. Ekkor a P(x), ill. Q(x) formulák igazsághalmazait kapjuk:

IP = {x∈I | |P(x)|=1}⊆I (a matematikából kiváló tanulók halmaza)
IQ = {x∈I | |Q(x)|=1}⊆I (az énekből kiváló tanulók halmaza)

Határozzuk meg ezek után az I alaphalmaznak azokat a legbővebb részhalmazait, amelyekben a P(x), ill. Q(x) formulákból a fontosabb logikai műveletek segítségével képzett összetett formulák minden értékelése igaz logikai értéket ad. Ennek megfelelően értelmezzük a következő igazsághalmazokat:

Az összetett állítások és az igazsághalmazok kapcsolata úgy fejezhető ki, hogy egy F(x) összetett formula az 'x' individuumváltozó egy adott t∈I értékére akkor és csak akkor igaz (|F(t)|=1), ha t∈IF teljesül.

Második példaként tekintsük az I (véges) alaphalmazt, és legyen A⊆I, B⊆I ennek két tetszőleges részhalmaza. Értelmezzük a P(x) és Q(x) (atomi) formulákat a következőképpen:
P(x) ⇋ "x∈A"
Q(x) ⇋ "x∈B"

Ekkor a P(x), ill. Q(x) formulák igazsághalmazai:

IP = {x∈I | |P(x)|=1} = {x∈I | x∈A} = A⊆I
IQ = {x∈I | |Q(x)|=1} = {x∈I | x∈B} = B⊆I

A fontosabb logikai műveletek igazsághalmazai a halmazműveletek definíciói alapján könnyen meghatározhatók:

logikai kifejezés igazsághalmaz
⌝P(x) (negáció) A
P(x)∧Q(x) (konjunkció) A∩B
P(x)∨Q(x) (diszjunkció) AB
P(x)⊃Q(x) (implikáció) (A∩B)A
AB
P(x)≡Q(x) (ekvivalencia) (A∩B)(AB)
(AB)∩(BA)

Emeljük ki, hogy ha a P(x)⊃Q(x) implikáció minden x∈I elem esetén teljesül, az a részhalmaz reláció meghatározása alapján pontosan azt fejezi ki, hogy A⊆B teljesül (azaz az A⊆I halmaz részhalmaza a B⊆I halmaznak).



8.2. Kvantifikáció

Legyen A(x) tetszőleges formula a H alaphalmazon. Vezessük be a következő két logikai szimbólumot, ún. kvantort:

Az univerzális kvantor szoros kapcsolatban áll a konjunkcióval. Ha a 'H' alaphalmaz véges, akkor úgy tekinthetjük, mint az alábbi konjunkciók sorozatát:
   ∀x A(x) = A(x1)∧A(x2)∧...∧A(xn)
ahol az x1, x2, ..., xn elemek az x∈H változó összes lehetséges értékét jelentik.

Emiatt "az univerzális kvantifikáció a konjunkció általánosításaként is felfogható" (Szendrei-Tóth 1978: 70), vagyis ∀x A(x) ≃ A(x1)∧A(x2)∧...∧A(xn)∧...

Az egzisztenciális kvantor szoros kapcsolatban áll a diszjunkcióval. Ha a 'H' alaphalmaz véges, akkor úgy tekinthetjük, mint az alábbi diszjunkciók sorozatát:
   ∃x A(x) = A(x1)∨A(x2)∨...∨A(xn)
ahol az x1, x2, ..., xn elemek az x∈H változó összes lehetséges értékét jelentik.

Emiatt "az egzisztenciális kvantifikáció a diszjunkció általánosításának is tekinthető" (Szendrei-Tóth 1978: 72), vagyis ∃x A(x) ≃ A(x1)∨A(x2)∨...∨A(xn)∨...


Példaként legyenek ismét P(x) és Q(x) a tanulók I alaphalmazán értelmezett alábbi formulák:

P(x) ⇋ "az 'x' tanuló kiváló matematikából";
Q(x) ⇋ "az 'x' tanuló kiváló énekből".

Ekkor az univerzális és egzisztenciális kvantorok segítségével zárt formulákat képezhetünk:

Nézzünk néhány példát összetett logikai kifejezések kvantifikációjára is:


A kvantorok segítségével ún. kategorikus állítások fogalmazhatóak meg. A kategorikus állításokat tartalmazó, két premisszával rendelkező következtetési szabályok az ún. kategorikus szillogizmusok. Például a modus ponens szabály megfelelője a következő:

A(x0) , ∀x (A(x)⊃B(x)) ⊨ B(x0)

Ezt a következtetési sémát "ha az A(x)⊃B(x) implikáció minden x∈H elem esetén teljesül és egy adott x0∈H elemre A(x0) igaz, akkor erre az x0∈H elemre B(x0) is igaz lesz" módon olvashatjuk.

Például ha egy adott 'I' osztályban teljesül a |∀x (P(x)⊃Q(x))|=1 törvény, és ha az osztályban |P("Pisti")|=1 is teljesül, akkor a

    P("Pisti") , ∀x (P(x)⊃Q(x)) ⊨ Q("Pisti")

következtetés premisszái teljesülnek. Tehát mivel Pisti kiváló matematikából, ebben az 'I' osztályban biztosan teljesül, hogy kiváló énekből is. (Jegyezzük meg, hogy |∀x (P(x)⊃Q(x))|=1 nem logikai törvény, mivel biztosan létezik olyan osztály, amelyben van olyan tanuló (x0∈I), aki kiváló matematikából ((P(x0)|=1), de énekből már nem kiváló ((Q(x0))|=0).



8.3. Alkalmazások

Az alábbi táblázat egy naplórészlet, amely a tanulók jegyeit tartalmazza matematikából, énekből és testnevelésből.

sorszám dátum név tárgy jegy

Értelmezzük a 'datum', 'nev', 'targy' és 'jegy' függvényeket a következőképpen:

datum(i) ⇋ "az 'i'-dik sorban szereplő dátum"
nev(i) ⇋ "az 'i'-dik sorban levő tanuló neve"
targy(i) ⇋ "az 'i'-dik sorban levő tárgy neve"
jegy(i) ⇋ "az 'i'-dik sorban szereplő jegy"

(1) A tanult logikai műveletekkel és a fent definiált függvényekkel olyan logikai kifejezéseket ("nyitott mondatokat") hozhatunk létre, amelyek alapján különböző szempontok szerint információkat kereshetünk a naplóban.

Például az az 'I' igazsághalmaz, amely Kata jegyeit tartalmazza az összes tárgyból, az alábbi logikai kifejezéshez tartozik:
A(j) ⇋ ∃i (nev(i)="Kata" ∧ jegy(i)=j))
IA(j) ⇋ {j∈{1,2,3,4,5} | |A(j)|=1}

Az IA(j) igazsághalmaz elemeit alkotó jegyek és a naplónak azok a sorai, amelyekben a keresett jegyek szerepelnek, az alábbi lekérdezéssel kiírathatók:

sorszám dátum név tárgy jegy

A lekérdezés ... sort eredményezett.

(2) A tanult logikai műveletekkel és a fent definiált függvényekkel olyan összefüggéseket kereshetünk, amelyek alapján adott feltételek (premisszák) fennállásából meghatározott információkra következtethetünk a naplóban.

Például tegyük fel, hogy ha egy tanuló matematikából csak jelest vagy jót kap, akkor mind énekből, mind tesiből csak jelesnél rosszabb jegyet kap (azaz nem jelest).

Ezt az összefüggést a következőképpen fejezhetjük ki:

(a) Először keressük meg azokat a tanulókat, akik matematikából csak jelest vagy jót kaptak:
    A(x) ⇋ ∀i (nev(i)=x ∧ targy(i)="matematika" ⊃. jegy(i)=5 ∨ jegy(i)=4)
A fenti formula igazságértéke egy adott tanuló (x0∈I) és egy adott sor (i0) esetén:

előtag
nev(i0)=x0 ∧ targy(i0)="matematika"
utótag
jegy(i0)=5 ∨ jegy(i0)=4
⊃. A(x0)
0
(az adott sorban vagy nem az adott tanuló szerepel, vagy nem matematika jegy)
0 vagy 1
(bármilyen lehet)
1 lehet 1
1
(az adott sorban a tanuló matematika jegye szerepel)
0
(a tanuló matematika jegye 4-nél rosszabb)
0 0
1
(a tanuló matematika jegye vagy 4, vagy 5)
1 lehet 1

Az A(x) formula igazsághalmaza a "jó matekes" tanulókat adja meg (ti. akik csak jeles vagy jó osztályzatot kaptak matematikából).

Jegyezzük meg, hogy így azokat a tanulókat is megkapjuk, akik matematikából még nem kaptak semmilyen jegyet (és azokat is, akik egy tárgyból sem kaptak még semmilyen jegyet). Ha őket ki akarjuk zárni, akkor a fenti formulát tovább kell szűkítenünk:
A'(x) ⇋ A(x) ∧ ∃i (nev(i)=x ∧ targy(i)="matematika")
Ezzel megköveteljük, hogy legalább egy sorban (∃i) az adott tanulónak (x) szerepeljen valamilyen jegye matematikából.

(b) Ezután keressük meg azokat a tanulókat, akik sem énekből, sem testnevelésből nem kaptak jelest:
        B(x) ⇋ ∀i (nev(i)=x ∧ (targy(i)="ének" ∨ targy(i)="testnevelés") ⊃. ⌝jegy(i)=5)
A fenti formula igazságértéke egy adott tanuló (x0∈I) és egy adott sor (i0) esetén:

előtag
nev(i0)=x0 ∧ (targy(i0)="ének" ∨ targy(i0)="testnevelés")
utótag
⌝jegy(i0)=5
⊃. B(x0)
0
(az adott sorban vagy nem az adott tanuló szerepel, vagy sem ének, sem testnevelés jegy)
0 vagy 1
(bármilyen lehet)
1 lehet 1
1
(az adott sorban a tanuló ének vagy testnevelés jegye szerepel)
0
(a tanuló ének vagy testnevelés jegye jeles)
0 0
1
(a tanuló ének vagy testnevelés jegye rosszabb, mint jeles)
1 lehet 1

A B(x) formula igazsághalmaza a "nem kiváló énekes és tesis" tanulókat adja meg (ti. akik nem kaptak jeles osztályzatot sem énekből, sem testnevelésből).

Jegyezzük meg, hogy így megkapjuk azokat a tanulókat is, akik sem énekből, sem testnevelésből (vagy semmilyen tárgyból) nem kaptak még jegyet. Ha őket ki akarjuk zárni, akkor a fenti formulát tovább kell szűkítenünk:
B'(x) ⇋ B(x) ∧ ∃i (nev(i)=x ∧ (targy(i)="ének" ∨ targy(i)="testnevelés"))
Ezzel megköveteljük, hogy legalább egy sorban (∃i) az adott tanulónak (x) szerepeljen valamilyen jegye vagy énekből, vagy testnevelésből.

(c) Ezután az adott naplórészlet alapján határozzuk meg azokat a tanulókat, akikre A(x), A'(x), ill. B(x), B'(x) teljesül:
IA(x) ⇋ {x∈{Tercsi, Fercsi, ...} | |A(x)|=1}
IA'(x) ⇋ {x∈{Tercsi, Fercsi, ...} | |A'(x)|=1}
IA'(x)⊆IA(x)

IB(x) ⇋ {x∈{Tercsi, Fercsi, ...} | |B(x)|=1}
IB'(x) ⇋ {x∈{Tercsi, Fercsi, ...} | |B'(x)|=1}
IB'(x)⊆IB(x)

sorszám dátum név tárgy jegy

A lekérdezés ... sort eredményezett.

A lekérdezések eredményeinek összesítése:

Matematikából még nem kaptak jegyet (|A(x)|=1, |A'(x)|=0): {...}⊆IA(x)
Matematikából csak jelest vagy jót kaptak (|A(x)|=1, |A'(x)|=1): {...}⊆IA(x)∩IA'(x)
Matematikából nem csak jelest vagy jót kaptak (|A(x)|=0, |A'(x)|=0): {...}

Sem énekből, sem testnevelésből még nem kaptak jegyet (|B(x)|=1, |B'(x)|=0): {...}⊆IB(x)
Énekből és testnevelésből csak jelesnél rosszabbat kaptak (|B(x)|=1, |B'(x)|=1): {...}⊆IB(x)∩IB'(x)
Énekből vagy testnevelésből kaptak jelest (|B(x)|=0, |B'(x)|=0): {...}

(d) Ha a feladatban vizsgált összefüggés igaz, akkor az alábbi következtetések közül legalább az egyik teljesül:
    |∀x (A'(x) ⊃ B'(x))|=1 ⇔ IA'(x)⊆IB'(x)
    |∀x (A'(x) ⊃ B(x))|=1 ⇔ IA'(x)⊆IB(x)
    |∀x (A(x) ⊃ B'(x))|=1 ⇔ IA(x)⊆IB'(x)
    |∀x (A(x) ⊃ B(x))|=1 ⇔ IA(x)⊆IB(x)
A lekérdezések eredménye alapján a fenti következtetések egyértelműen eldönthetők: a megadott naplórészletben ... következtetés teljesül.
(Megjegyzés: érdemes többször frissíteni az oldalt (CTRL R vagy F5), utána újra lefuttatni a lekérdezéseket, és ellenőrizni a kapott következtetéseket!)

A legáltalánosabb eset az, amikor |∀x (A(x) ⊃ B'(x))|=1 teljesül. Ekkor fennállnak az alábbi összefüggések:
IA'(x)⊆ IA(x)⊆ IB'(x)⊆ IB(x)
Vegyük észre, hogy ebben az esetben mind a négy lehetséges következtetés igaz.
Ezzel szemben a legspeciálisabb eset az, amikor kizárólag a |∀x (A'(x) ⊃ B(x))|=1 következtetés teljesül (és a többi összefüggés nem áll fenn).

Fogalmazzuk meg végül természetes nyelven is a fentieket. Ha a feladatban vizsgált összefüggés igaz, akkor minden olyan 'x' tanulóra,
– akire A'(x) teljesül (azaz csak jelest vagy jót kapott matematikából) és/vagy akire A(x) teljesül (azaz csak jelest vagy jót kapott matematikából, vagy matematikából még nem kapott osztályzatot),
– egyszersmind B'(x) is teljesül (azaz csak jelesnél rosszabb jegyet kapott mind énekből, mind testnevelésből), és/vagy B(x) is teljesül (azaz csak jelesnél rosszabb jegyet kapott mind énekből, mind testnevelésből, vagy énekből, ill. testnevelésből még nem kapott jegyet).
Leegyszerűsítve: Ha a vizsgált összefüggés igaz, akkor az adott osztályban a "jó matekes" (vagy matekből még nem értékelt) tanulók nem kiválók sem énekből, sem testnevelésből (vagy esetleg még nem értékelték őket egyikből vagy másikból).

Gyakorló feladatok

(→ következő témakörök)



Boda István, 2021-23.