108
VILNIAUS UNIVERSITETAS Julius Andrikonis Gintaras Skersys Diskrečioji matematika Pratybų medžiaga Vilnius, 2014

Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Embed Size (px)

Citation preview

Page 1: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

VILNIAUS UNIVERSITETAS

Julius AndrikonisGintaras Skersys

Diskrečioji matematikaPratybų medžiaga

Vilnius, 2014

Page 2: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios
Page 3: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Turinys

Turinys 2

1 Matematinės logikos pradmenys 3Uždaviniai pratyboms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3Uždaviniai savarankiškam darbui . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7Uždavinių savarankiškam darbui sprendimai ir atsakymai . . . . . . . . . . . . . . . . 8

2 Matematinės logikos formulių pertvarkymas 10Uždaviniai pratyboms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10Uždaviniai savarankiškam darbui . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14Uždavinių savarankiškam darbui sprendimai ir atsakymai . . . . . . . . . . . . . . . . 15

3 Aibių algebra 17Uždaviniai pratyboms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17Uždaviniai savarankiškam darbui . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22Uždavinių savarankiškam darbui sprendimai ir atsakymai . . . . . . . . . . . . . . . . 23

4 Funkcijos 26Uždaviniai pratyboms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26Uždaviniai savarankiškam darbui . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29Uždavinių savarankiškam darbui sprendimai ir atsakymai . . . . . . . . . . . . . . . . 30

5 Sąryšiai 31Uždaviniai pratyboms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31Uždaviniai savarankiškam darbui . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37Uždavinių savarankiškam darbui sprendimai ir atsakymai . . . . . . . . . . . . . . . . 38

6 Ekvivalenčios aibės 40Uždaviniai pratyboms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40Uždaviniai savarankiškam darbui . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43Uždavinių savarankiškam darbui sprendimai ir atsakymai . . . . . . . . . . . . . . . . 44

7 Teiginių logikos normalinės formos 45Uždaviniai pratyboms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45Uždaviniai savarankiškam darbui . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52Uždavinių savarankiškam darbui sprendimai ir atsakymai . . . . . . . . . . . . . . . . 53

8 Kontaktinės schemos. Teiginių logikos samprotavimai. 56Uždaviniai pratyboms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56Uždaviniai savarankiškam darbui . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61Uždavinių savarankiškam darbui sprendimai ir atsakymai . . . . . . . . . . . . . . . . 63

9 Predikatų logika 68Uždaviniai pratyboms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68Uždaviniai savarankiškam darbui . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73Uždavinių savarankiškam darbui sprendimai ir atsakymai . . . . . . . . . . . . . . . . 74

1

Page 4: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

10 Turing’o mašina 76Uždaviniai pratyboms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76Uždaviniai savarankiškam darbui . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80Uždavinių savarankiškam darbui sprendimai ir atsakymai . . . . . . . . . . . . . . . . 81

11 Abėcėlinis kodavimas. Duomenų spaudimas. 85Uždaviniai pratyboms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85Uždaviniai savarankiškam darbui . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88Uždavinių savarankiškam darbui sprendimai ir atsakymai . . . . . . . . . . . . . . . . 89

12 Klaidas taisantys kodai 91Uždaviniai pratyboms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91Uždaviniai savarankiškam darbui . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97Uždavinių savarankiškam darbui sprendimai ir atsakymai . . . . . . . . . . . . . . . . 98

13 Kriptografija 103Uždaviniai pratyboms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

Page 5: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

1 pratybos

Matematinės logikos pradmenys

Uždaviniai pratybomsVisų pirma uždavinius išspręsti pabandykite patys. Tik tada, kai išsprendžiate, arba kai pama-tote, kad patiems išspręsti nepavyks, pažiūrite pateiktą sprendimą.

Uždavinys 1.1. Turime teiginius:

• p — Lauke lyja,

• q — Lauke sninga,

• r — Lauke šalta,

• s — Lauke tamsu.

1. Išreikškite sakinius kintamaisiais p, q, r ir s:

(a) Jei lauke lyja arba sninga, tai lauke šalta.(b) Jei lauke nelyja, bet šalta, tai lauke arba tamsu, arba sninga.

2. Pasakykite šias formules žodžiu:

(a) ¬r→(s ∧ (p→¬q)

),

(b) ¬(¬s ∨ ¬r)→ p.

Sprendimas:

1. (a) (p ∨ q)→ r,(b) (¬p ∧ r)→ (s⊕ q).

2. (a) Jei lauke nešalta, tai lauke tamsu ir iš to, kad lauke lyja, išplaukia, kad lauke nes-ninga. Galimas ir toks variantas: Jei lauke nešalta, tai lauke tamsu ir jei lyja, tainesninga.

(b) Jei netiesa, kad lauke netamsu arba lauke nešalta, tai lauke lyja.

Uždavinys 1.2. Sudarykite formulių teisingumo reikšmių lenteles. Nustatykite, ar šios formulėsyra tapačiai teisingos, įvykdomos, tapačiai klaidingos.

1.((p→ q) ∨ (p⊕ r)

)↔(p | (q ∧ r)

);

2.(¬p⊕ q

)∧(q→ (¬p ∧ r)

)∧(p ∨ q

).

Sprendimas:

3

Page 6: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

1. Sudarome formulės teisingumo reikšmių lentelę. Lentelėje formulę žymėsime Q(p, q, r).

p q r p→ q p⊕ r (p→ q) ∨ (p⊕ r) q ∧ r p | (q ∧ r) Q(p, q, r)t t t t k t t k kt t k t t t k t tt k t k k k k t kt k k k t t k t tk t t t t t t t tk t k t k t k t tk k t t t t k t tk k k t k t k t t

Pagal paskutinįjį lentelės stulpelį tikriname, ar formulė tapačiai teisinga, įvykdoma, ta-pačiai klaidinga. Formulė nėra tapačiai teisinga, nes yra interpretacijų, su kuriomis jiklaidinga (kitaip sakant, ji teisinga ne su visomis interpetacijomis). Ji yra įvykdoma, nesyra interpretacijų, su kuriomis ji teisinga. Taip pat ši formulė nėra tapačiai klaidinga, nesyra įvykdoma.

2. Sudarome formulės teisingumo reikšmių lentelę, kurioje formulę žymėsime R(p, q, r).

p q r ¬p ¬p⊕ q ¬p ∧ r q→ (¬p ∧ r) p ∨ q R(p, q, r)t t t k t k k t kt t k k t k k t kt k t k k k t t kt k k k k k t t kk t t t k t t t kk t k t k k k t kk k t t t t t k kk k k t t k t k k

Formulė nėra tapačiai teisinga, nes yra interpretacijų, su kuriomis ji klaidinga (kitaip sa-kant, ji teisinga ne su visomis interpetacijomis). Ji nėra įvykdoma, nes nėra interpretacijų,su kuriomis ji teisinga (kitaip sakant, ji klaidinga su visomis interpretacijomis), todėl šiformulė yra tapačiai klaidinga.

Uždavinys 1.3. Pašalinkite konstantas ir suprastinkite formules. Konstanta gali likti tik tuoatveju, jei formulė yra tapačiai klaidinga arba tapačiai teisinga.

1. p ∧ t p ∨ t p→ t t→ p p | t p↔ t p⊕ tp ∧ k p ∨ k p→ k k→ p p | k p↔ k p⊕ k

2.((t→ p)→ t

)∨((p ∨ q

)→(k ∧ (q | t)

))Sprendimas:

1. Sudarome teisingumo reikšmių lenteles ir bandome atspėti kuo paprastesnes ekvivalenčiasformules.

p p ∧ t p ∧ k p ∨ t p ∨ k p→ t p→ k t→ p k→ p ¬pt t k t t t k t t kk k k t k t t k t t

p p | t p | k p↔ t p↔ k p⊕ t p⊕ k ¬pt k t t k k t kk t t k t t k t

Atsakymai yra:p ∧ t ∼ p p→ t ∼ t p | t ∼ ¬p p⊕ t ∼ ¬pp ∧ k ∼ k p→ k ∼ ¬p p | k ∼ t p⊕ k ∼ pp ∨ t ∼ t t→ p ∼ p p↔ t ∼ pp ∨ k ∼ p k→ p ∼ t p↔ k ∼ ¬p

4

Page 7: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Pastabos:• Šiuos logikos dėsnius jūs naudosite prastindami formules, todėl juos reikės mokėti. Bet

nebūtina jų mokytis atmintinai — užtenka žinoti, kaip juos galima gauti. O gauti juos,kaip matėme, labai paprasta — sudarome nedidukę teisingumo reikšmių lentelę ir iškartmatome, kam ši formulė ekvivalenti.

• Turėkite omenyje, kad visos šiame uždavinyje nagrinėtos loginės operacijos, išskyrus imp-likaciją, yra komutatyvios, t. y. sukeitus narius vietomis, rezultatas bus tas pats. Todėl,pavyzdžiui, mes skaičiavome tik p∧t reikšmę, ir neskaičiavome t∧p, nes p∧t ∼ t∧p, todėlp∧ t ir t∧p reikšmės visada sutampa. Taigi, gautus logikos dėsnius (aišku, išskyrus tuos,į kuriuos įeina implikacija) galima naudoti ir sukeitus juose narius vietomis, pavyzdžiui,t ∧ p ∼ p, k↔ p ∼ ¬p ir panašiai.

• Svarbu suprasti, kad šie logikos dėsniai, kaip ir visi kiti logikos dėsniai, lieka teisingi,įstačius į juos vietoj kintamųjų bet kokias formules. Pavyzdžiui, p ∨ t ∼ t reiškia, kadP ∨ t ∼ t, kur P yra bet kokia formulė, t. y., pavyzdžiui, q ∨ t ∼ t, (p | q) ∨ t ∼ t ir t.t…

2. Pasinaudosime pirmos uždavinio dalies rezultatais:

((t→ p)→ t

)∨((p ∨ q

)→(k ∧ (q | t)

))∼ (p→ t) ∨

((p ∨ q)→ (k ∧ ¬q)

)∼

∼ t ∨((p ∨ q)→ k

)∼ t ∨ ¬(p ∨ q) ∼ t

Tą patį galėjome gauti greičiau, pastebėję, kad iš karto galime pasinaudoti tuo, kad p→t ∼t, p ∧ k ∼ k ir p ∨ t ∼ t:

((t→ p)→ t

)∨((p ∨ q

)→(k ∧ (q | t)

))∼ t ∨

((p ∨ q)→ k

)∼ t

Pastaba: Tokio tipo užduotyse (kur reikia suprastinti formules, į kurias įeina loginės kons-tantos) patartina visų pirma pašalinti visas konstantas, ir tik tada prastinti, naudojant kituslogikos dėsnius. Iš tikrųjų šalindami konstantas, tuo pačiu galime pašalinti ir didelę dalį for-mulių, todėl jų prastinti nebereikės. Pavyzdžiui, (p↔ q)∨ (p→ t) ∼ (p↔ q)∨ t ∼ t, todėl šiojeformulėje nėra prasmės šalinti ekvivalencijos, nes ji ir taip dingsta. Bet kol visų konstantųnepašalinsime, tol nežinosime, ar verta šalinti ekvivalenciją. Todėl, pakartosiu, patartina visųpirma pašalinti visas konstantas.

Uždavinys 1.4. Nustatykite, ar formulės yra ekvivalenčios.

1. p ∨ q ∧ r ir p ∨ (q ∧ r);

2. p ∨ q ∧ r ir (p ∨ q) ∧ r;

3. ¬p ∧ q ir ¬(p ∧ q);

4. p ∧ ¬q ir p ∧ (¬q).

Sprendimas:

1. Šios formulės yra ekvivalenčios, nes abiejose konjunkcija yra atliekama prieš disjunkiciją.Iš tiesų pirmoji yra gauta iš antrosios praleidus nebūtinus skliaustus.

2. Pirmojoje formulėje dėl loginių operacijų prioritetų pirma atliekama konjunkcija, o poto tik disjunkcija, taigi p ∨ q ∧ r ∼ p ∨ (q ∧ r). Kita vertus, antrojoje dėl skliaustųpirma atliekama disjunkcija, o tik po to konjunkcija. Tiesa, tai, kad formulių užrašainesutampa, dar nereiškia, kad formulės nėra ekvivalenčios. Tačiau norint tuo įsitikinti,užtenka rasti bent vieną interpretaciją, su kuria viena formulė būtų teisinga, o kita ne.Iš tiesų, pavyzdžiui, kai p = t, q = t, o r = k, pirmoji formulė yra teisinga (p ∨ q ∧ r =t∨ (t∧k) = t∨k = t), o antroji formulė yra klaidinga ((p∨ q)∧ r = (t∨ t)∧k = t∧k = k).Taigi formulės nėra ekvivalenčios.

5

Page 8: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

3. Pirmojoje formulėje neigimas atliekamas prieš konjunkciją, nes jo prioritetas aukštesnis,taigi ¬p∧q ∼ (¬p)∧q. Antrojoje skliaustai reikalauja, kad pirma būtų atlikta konjunkcija,o tik po to neigimas. Be to, jeigu p = t ir q = k, tada pirmoji formulė yra klaidinga(¬p ∧ q = (¬t) ∧ k = k ∧ k = k), o antroji teisinga (¬(p ∧ q) = ¬(t ∧ k) = ¬k = t). Taigiformulės nėra ekvivalenčios.

4. Abiejose formulėse neigimas atliekamas prieš konjunkcija, taigi šios dvi formulės yra ekvi-valenčios.

Pastaba: Nors loginėms operacijoms ir nustatyti prioritetai, tačiau geriau vis dėl to formulėse vidiniųskliaustų nepraleisti. Juk užrašymas p ∨ (q ∧ r) yra žymiai aiškesnis už p ∨ q ∧ r nors abu reiškia tąpačią formulę. Dažniausiai rašant formules praleidžiami išoriniai skliaustai (vietoje (p ∧ q) rašomap ∧ q), skliaustai besikartojančiose asociatyviose operacijose (vietoje p ∧ (q ∧ r) rašoma p ∧ q ∧ r) irskliaustai, išskiriantys neigimą (vietoje (¬p) ∧ q rašoma ¬p ∧ q).

Uždavinys 1.5. Užrašykite duotųjų sakinių neiginius (įkėlus neiginio ženklą į skliaustus):

1. Durys atsivėrė, ir katė išėjo lauk.

2. Jei knyga plona, tai aš ją skaitysiu.

3. Arba išlaikysiu diskrečiosios matematikos egzaminą, arba mesiu mokslus.

Sprendimas:

1. Pažymėkime teiginius:

• p — Durys atsivėrė,• q — Katė išėjo lauk.

Tada sakinį galime užrašyti formule p ∧ q. Jos neiginys bus:

¬(p ∧ q) ∼ ¬p ∨ ¬q

Todėl duoto sakinio neiginys bus: Durys neatsivėrė, arba katė neišėjo lauk.

2. Pažymėkime teiginius:

• p — Knyga yra plona,• q — Aš ją skaitysiu.

Tada sakinį galime užrašyti formule p→ q. Jos neiginys bus

¬(p→ q) ∼ ¬(¬p ∨ q) ∼ ¬(¬p) ∧ ¬q ∼ p ∧ ¬q

Todėl duoto sakinio neiginys bus: Nors knyga ir plona, bet aš jos neskaitysiu.

3. Pažymėkime teiginius:

• p — Išlaikysiu diskrečiosios matematikos egzaminą,• q — Mesiu mokslus.

Tada sakinį galime užrašyti formule p⊕ q. Jos neiginys bus:

¬(p⊕ q) ∼ ¬¬(p↔ q) ∼ p↔ q

Todėl duoto sakinio neiginys bus: Išlaikysiu diskrečiosios matematikos egzaminą tada irtik tada, kai mesiu mokslus. Arba laiko atžvilgiu teisingiau: Mesiu mokslus tada ir tiktada, jei išlaikysiu diskrečiosios matematikos egzaminą.

6

Page 9: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Uždaviniai savarankiškam darbuiUždavinys 1.6. Sudarykite formulių teisingumo reikšmių lenteles ir nustatykite, ar šios formu-lės yra tapačiai teisingos, įvykdomos, tapačiai klaidingos:

1. p→(q→ (p ∧ q)

);

2. (p⊕ r) ∧ (p↔ q);

3. (p→ q)→((p→ (q→ r)

)→ (p→ r)

);

4.(p→ (q | r)

)∧ ¬(r→ (p→¬q)

);

5. (p→ r)→(

(q→ r)→((p ∨ q)→ r

)).

Uždavinys 1.7. Pašalinkite konstantas ir suprastinkite formules. Konstanta gali likti tik tuoatveju, jei formulė yra tapačiai klaidinga arba tapačiai teisinga.

1. (t→ p) ∨((q | k) ∧ (k→ r)

);

2. (p→ t) ∨(p→ (k ∧ p)

);

3.(p→ (q→ k)

)→((p | t)→ (t→ r)

);

4. (p→ t) ∧((q ∨ k)→ (t | r)

).

Uždavinys 1.8. Užrašykite duotųjų sakinių neiginius (įkėlus neiginio ženklą į skliaustus):

1. Jei vakare šals arba lis, tai aš niekur neisiu ir žiūrėsiu televizorių.

2. Jei egzaminas bus sunkus arba aš suklysiu, tai neišlaikysiu ir negausiu stipendijos.

7

Page 10: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Uždavinių savarankiškam darbui sprendimai ir atsakymai

Uždavinio 1.6 sprendimas ir atsakymai:

1. Formulės teisingumo reikšmių lentelė:

p q p ∧ q q→ (p ∧ q) p→(q→ (p ∧ q)

)t t t t tt k k t tk t k k tk k k t t

Formulė tapačiai teisinga, įvykdoma, ne tapačiai klaidinga.

2. Formulės teisingumo reikšmių lentelė:

p q r p⊕ r p↔ q (p⊕ r) ∧ (p↔ q)t t t k t kt t k t t tt k t k k kt k k t k kk t t t k kk t k k k kk k t t t tk k k k t k

Formulė nėra tapačiai teisinga, įvykdoma, ne tapačiai klaidinga;

3. Formulės teisingumo reikšmių lentelė (lentelėje formulę žymėsime Q(p, q, r)):

p q r p→ q q→ r p→ (q→ r) p→ r(p→ (q→ r)

)→ (p→ r) Q(p, q, r)

t t t t t t t t tt t k t k k k t tt k t k t t t t tt k k k t t k k tk t t t t t t t tk t k t k t t t tk k t t t t t t tk k k t t t t t t

Formulė tapačiai teisinga, įvykdoma, ne tapačiai klaidinga;

4. Formulės teisingumo reikšmių lentelė (lentelėje formulę p→ (q | r) žymėsime P (p, q, r),formulę r→ (p→ ¬q) žymėsime Q(p, q, r), o formulę

(p→ (q | r)

)∧ ¬

(r→ (p→ ¬q)

)∼

P (p, q, r) ∧ ¬Q(p, q, r) žymėsime R(p, q, r)):

p q r q | r P (p, q, r) ¬q p→¬q Q(p, q, r) ¬Q(p, q, r) R(p, q, r)t t t k k k k k t kt t k t t k k t k kt k t t t t t t k kt k k t t t t t k kk t t k t k t t k kk t k t t k t t k kk k t t t t t t k kk k k t t t t t k k

Formulė nėra tapačiai teisinga, nėra įvykdoma, taigi tapačiai klaidinga;

8

Page 11: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

5. Formulės teisingumo reikšmių lentelė (lentelėje formulę žymėsime Q(p, q, r)):

p q r p→ r q→ r p ∨ q (p ∨ q)→ r (q→ r)→((p ∨ q)→ r

)Q(p, q, r)

t t t t t t t t tt t k k k t k t tt k t t t t t t tt k k k t t k k tk t t t t t t t tk t k t k t k t tk k t t t k t t tk k k t t k t t t

Formulė tapačiai teisinga, įvykdoma, ne tapačiai klaidinga.

Uždavinio 1.7 sprendimas ir atsakymai:

1. (t→ p) ∨((q | k) ∧ (k→ r)

)∼ p ∨ (t ∧ t) ∼ p ∨ t ∼ t;

2. (p→ t) ∨(p→ (k ∧ p)

)∼ t ∨ (p→ k) ∼ t ∨ ¬p ∼ t;

3. (p→ (q→ k)

)→((p | t)→ (t→ r)

)∼ (p→¬q)→ (¬p→ r) ∼ ¬(p→¬q) ∨ (¬p→ r) ∼

∼ ¬(¬p ∨ ¬q) ∨ (p ∨ r) ∼ (p ∧ q) ∨ p ∨ r ∼ p ∨ r

4. (p→ t)∧((q ∨ k)→ (t | r)

)∼ t∧ (q→¬r) ∼ q→¬r ∼ ¬q ∨¬r. Beje, ši formulė ekvivalenti

formulei q | r.

Uždavinio 1.8 sprendimas ir atsakymai:

1. Pažymėkime teiginius:

• p — Vakare šals,• q — Vakare lis,• r — Aš niekur neisiu,• s — Aš žiūrėsiu televizorių.

Tada:

¬((p ∨ q)→ (r ∧ s)

)∼ ¬

(¬(p ∨ q) ∨ (r ∧ s)

)∼ (p ∨ q) ∧ ¬(r ∧ s) ∼ (p ∨ q) ∧ (¬r ∨ ¬s)

Todėl duoto sakinio neiginys bus: Vakare šals arba lis, bet aš kur nors eisiu arba nežiūrėsiutelevizoriaus.

2. Pažymėkime teiginius:

• p — Vakare šals,• q — Vakare lis,• r — Aš niekur neisiu,• s — Aš žiūrėsiu televizorių.

Tada:

¬((p ∨ q)→ (r ∧ s)

)∼ ¬

(¬(p ∨ q) ∨ (r ∧ s)

)∼ (p ∨ q) ∧ ¬(r ∧ s) ∼ (p ∨ q) ∧ (¬r ∨ ¬s)

Todėl duoto sakinio neiginys bus: Egzaminas bus sunkus arba aš suklysiu, bet aš išlaikysiuarba gausiu stipendiją.

9

Page 12: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

2 pratybos

Matematinės logikos formulių per-tvarkymas

Uždaviniai pratybomsVisų pirma uždavinius išspręsti pabandykite patys. Tik tada, kai išsprendžiate, arba kai pama-tote, kad patiems išspręsti nepavyks, pažiūrite pateiktą sprendimą.

Uždavinys 2.1. Įkelkite neigimą į skliaustus ir suprastinkite formules:

1. ¬(

(¬p ∨ ¬q) ∧(q ∨ ¬(p ∧ r)

));

2. ¬((p | q)→ (p⊕ q)

).

Sprendimas:

1.

¬(

(¬p∨¬q)∧(q ∨¬(p∧ r)

))∼ ¬(¬p∨¬q)∨¬

(q ∨¬(p∧ r)

)∼ (p∧ q)∨

(¬q ∧ (p∧ r)

)∼

∼ (p∧ q)∨ (¬q ∧ p∧ r) ∗∼ p∧(q ∨ (¬q ∧ r)

) ∗∗∼ p∧((q ∨¬q)∧ (q ∨ r)

)∼ p∧

(t∧ (q ∨ r)

)∼

∼ p ∧ (q ∨ r)

Vietoje, pažymėtoje ∗, taikomas distributyvumo dėsnis — kintamasis p iškeliamas priešskliaustus. Vietoje, pažymėtoje ∗∗, distributyvumo dėsnis taikomas į kitą pusę: kintamasisq įkeliamas į skliaustus.

2.¬((p | q)→ (p⊕ q)

)∼ ¬

(¬(p ∧ q)→¬(p↔ q)

)∼ ¬

((p ∧ q) ∨ ¬(p↔ q)

)∼

∼ ¬(

(p ∧ q) ∨ ¬((p→ q) ∧ (q→ p)

))∼ ¬

((p ∧ q) ∨ ¬

((¬p ∨ q) ∧ (¬q ∨ p)

))∼

∼ ¬(p ∧ q) ∧((¬p ∨ q) ∧ (¬q ∨ p)

)∼ (¬p ∨ ¬q) ∧ (¬p ∨ q) ∧ (¬q ∨ p) ∗∼

∗∼(¬p ∨ (¬q ∧ q)

)∧ (¬q ∨ p) ∼ (¬p ∨ k) ∧ (¬q ∨ p) ∼ ¬p ∧ (¬q ∨ p) ∗∗∼

∗∗∼ (¬p ∧ ¬q) ∨ (¬p ∧ p) ∼ (¬p ∧ ¬q) ∨ k ∼ ¬p ∧ ¬q

Vietoje, pažymėtoje ∗, taikomas distributyvumo dėsnis — formulė ¬p iškeliama priešskliaustus. Vietoje, pažymėtoje ∗∗, distributyvumo dėsnis taikomas į kitą pusę: formulė¬p įkeliama į skliaustus.

Uždavinys 2.2. Įrodykite šiuos ekvivalentumus, naudodamiesi logikos dėsniais:

1. p ∼ (p ∧ ¬q ∧ ¬r) ∨ (p ∧ q ∧ r) ∨ (p ∧ q ∧ ¬r) ∨ (p ∧ ¬q ∧ r),

2. (¬p→¬q)→((q ∧ r)→ (p ∧ r)

)∼ t.

10

Page 13: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Sprendimas:

1.(p ∧ ¬q ∧ ¬r) ∨ (p ∧ q ∧ r) ∨ (p ∧ q ∧ ¬r) ∨ (p ∧ ¬q ∧ r) ∗∼

∗∼ p∧((¬q ∧¬r)∨ (q ∧ r)∨ (q ∧¬r)∨ (¬q ∧ r)

) ∗∗∼ p∧((q ∧ (r ∨¬r)

)∨(¬q ∧ (¬r ∨ r)

))∼

∼ p ∧((q ∧ t) ∨ (¬q ∧ t)

)∼ p ∧ (q ∨ ¬q) ∼ p ∧ t ∼ p

Vietoje, pažymėtoje ∗, taikomas distributyvumo dėsnis — kintamasis p iškeliamas iš visųketurių skliaustų. Vietoje, pažymėtoje ∗∗, distributyvumo dėsnis taikomas du kartus: išantrųjų ir trečiųjų skliaustų iškeliamas kintamasis q, o iš pirmųjų ir ketvirtųjų — ¬q.

2.(¬p→¬q)→

((q ∧ r)→ (p ∧ r)

)∼ ¬(p ∨ ¬q) ∨

(¬(q ∧ r) ∨ (p ∧ r)

)∼

∼ (¬p ∧ q) ∨ ¬q ∨ ¬r ∨ (p ∧ r)) ∗∼ ((¬p ∨ ¬q) ∧ (q ∨ ¬q)

)∨((¬r ∨ p) ∧ (¬r ∨ r)

)∼

∼((¬p ∨ ¬q) ∧ t

)∨((¬r ∨ p) ∧ t

)∼ ¬p ∨ ¬q ∨ ¬r ∨ p ∗∗∼ (¬p ∨ p) ∨ ¬q ∨ ¬r ∼

∼ t ∨ ¬q ∨ ¬r ∼ t

Vietoje, pažymėtoje ∗, du kartus taikomas distributyvumo dėstins: ¬q įkeliamas į pir-muosius skliaustus, o ¬r — į antruosius. Vietoje, pažymėtoje ∗∗, disjunkcijos elementaisukeičiami vietomis ir sugrupuojami.

Uždavinys 2.3. Suprastinkite formules:

1. (p→ q) ∧ (p→¬q);

2. (p⊕ q)⊕ (¬p⊕ ¬q).

Sprendimas:

Pastaba: Užduotyse, kuriose reikia pertvarkyti ar suprastinti loginę formulę, paprastai veiksmusatliekame ta pačia eilės tvarka, kaip ir sudarydami normaliąsias formas (žr. mokymo priemonėsskyrių apie normaliųjų formų sudarymą): visų pirma pašaliname visas logines operacijas, išskyrusneigimą, konjunkciją ir disjunkciją, paskui įkeliame neiginius į skliaustus, taikydami De Morganodėsnius, ir tada naudojame distributyvumo dėsnius.Atkreipkite dėmesį į tai, kad neverta įkėlinėti neiginių į skliaustus tol, kol nepašalintos visos loginėsoperacijos, išskyrus neigimą, konjunkciją ir disjunkciją, nes šalinant tas operacijas, kai kurie neiginiaigali išsiprastinti. Pavyzdžiui, ¬(p ∧ q)→ p ∼ ¬¬(p ∧ q) ∨ p ∼ (p ∧ q) ∨ p –– neiginys išsiprastino. Jeibūtume įkėlę neiginį į skliaustus prieš pašalindami implikaciją, tai pašalinę implikaciją, dar kartąbūtume turėję įkelti neiginį į skliaustus.

1.(p→ q) ∧ (p→¬q) ∼ (¬p ∨ q) ∧ (¬p ∨ ¬q) ∗∼ ¬p ∨ (q ∧ ¬q) ∼ ¬p ∨ k ∼ ¬p

Vietoje, pažymėtoje ∗, taikomas distributyvumo dėstins: ¬p iškeliamas prieš skliaustus.

2.(p⊕ q)⊕ (¬p⊕ ¬q) ∼ ¬(p↔ q)⊕ ¬(¬p↔¬q) ∼ ¬

(¬(p↔ q)↔¬(¬p↔¬q)

)∼

∼ ¬((¬(p↔ q)→¬(¬p↔¬q)

)∧(¬(¬p↔¬q)→¬(p↔ q)

))∼

∼ ¬((

(p↔ q) ∨ ¬(¬p↔¬q))∧((¬p↔¬q) ∨ ¬(p↔ q)

))∼

∼ ¬((p↔ q) ∨ ¬(¬p↔¬q)

)∨ ¬((¬p↔¬q) ∨ ¬(p↔ q)

)∼

Pažymėkime kairiąją disjunkcijos pusę F , o dešiniąją — G ir suprastinkime jas atskirai:

F = ¬((p↔ q) ∨ ¬(¬p↔¬q)

)∼

∼ ¬((

(p→ q) ∧ (q→ p))∨ ¬((¬p→¬q) ∧ (¬q→¬p)

))∼

11

Page 14: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

∼ ¬((

(¬p ∨ q) ∧ (¬q ∨ p))∨ ¬((p ∨ ¬q) ∧ (q ∨ ¬p)

))∼

∼ ¬((¬p ∨ q) ∧ (¬q ∨ p)

)∧((p ∨ ¬q) ∧ (q ∨ ¬p)

)∼

∼(¬(¬p ∨ q) ∨ ¬(¬q ∨ p)

)∧((p ∨ ¬q) ∧ (q ∨ ¬p)

)∼

∼((p ∧ ¬q) ∨ (q ∧ ¬p)

)∧((p ∨ ¬q) ∧ (q ∨ ¬p)

) ∗∼∗∼((p ∨ (q ∧ ¬p)

)∧(¬q ∨ (q ∧ ¬p)

))∧((p ∨ ¬q) ∧ (q ∨ ¬p)

) ∗∗∼∗∗∼((

(p ∨ q) ∧ (p ∨ ¬p))∧((¬q ∨ q) ∧ (¬q ∨ ¬p)

))∧((p ∨ ¬q) ∧ (q ∨ ¬p)

) ∗∗∗∼∗∗∗∼ (p ∨ q) ∧ (p ∨ ¬p) ∧ (¬q ∨ q) ∧ (¬q ∨ ¬p) ∧ (p ∨ ¬q) ∧ (q ∨ ¬p) ∼

∼ (p ∨ q) ∧ t ∧ t ∧ (¬q ∨ ¬p) ∧ (p ∨ ¬q) ∧ (q ∨ ¬p) †∼†∼ (p ∨ q) ∧ (p ∨ ¬q) ∧ (¬p ∨ ¬q) ∧ (¬p ∨ q) ††∼

(p ∨ (q ∧ ¬q)

)∧(¬p ∨ (¬q ∧ q)

)∼

∼ (p ∨ k) ∧ (¬p ∨ k) ∼ p ∧ ¬p ∼ k

Pirmiausia pašaliname visas logines operacijas, išskyrus neigimą, konjunkciją ir disjunkciją.Po to įkeliame neigimą į skliaustus. Vietoje, pažymėtoje ∗, taikomas distributyvumo dės-nis: pirmuosiuose didžiuosiuose skliaustuose antrieji mažieji skliaustai įkeliami į pirmuo-sius mažuosius skliaustus. Vietoje, pažymėtoje ∗∗ pirmuosiuose didžiuosiuose skliaustuosevėl du kartus taikomas distributyvumo dėsnis: pirmajame didžiųjų skliaustų konjunkcijosoperande kintamasis p įkeliamas į skliaustus, o antrajame — į skliaustus įkeliama formulė¬q. Vietoje, pažymėtoje ∗∗∗, pašalinami nereikalingi skliaustai. Kadangi konjunkcijosoperacija yra asociatyvi (nėra svarbu kuria tvarka atliksime konjunkciją), todėl skliaus-tai, kurie nurodo konjunkcijų atlikimo tvarką nėra būtini. Vietoje, pažymėtoje † be to,kad suprastiname konstantas, dar ir pertvarkome skliaustų tvarką ir keliuose skliaustuosesukeičiame elementus vietomis. Vietoje, pažymėtoje ††, ir vėl du kartus taikomas distri-butyvumo dėsnis, tik šį kartą į priešingą pusę: iš pirmųjų dviejų skliaustų iškeliamas p, oiš paskutiniųjų dviejų — ¬p.Antroji formulė — G — suprastinama analogiškai, todėl viso to atskirai nekomentuosime,tik atitinkamose vietose sudėsime tas pačias žymes.

G = ¬((¬p↔¬q) ∨ ¬(p↔ q)

)∼

∼ ¬((

(¬p→¬q) ∧ (¬q→¬p))∨ ¬((p→ q) ∧ (q→ p)

))∼

∼ ¬((

(p ∨ ¬q) ∧ (q ∨ ¬p))∨ ¬((¬p ∨ q) ∧ (¬q ∨ p)

))∼

∼ ¬((p ∨ ¬q) ∧ (q ∨ ¬p)

)∧((¬p ∨ q) ∧ (¬q ∨ p)

)∼

∼(¬(p ∨ ¬q) ∨ ¬(q ∨ ¬p)

)∧((¬p ∨ q) ∧ (¬q ∨ p)

)∼

∼((¬p ∧ q) ∨ (¬q ∧ p)

)∧((¬p ∨ q) ∧ (¬q ∨ p)

) ∗∼∗∼((¬p ∨ (¬q ∧ p)

)∧(q ∨ (¬q ∧ p)

))∧((¬p ∨ q) ∧ (¬q ∨ p)

) ∗∗∼∗∗∼((

(¬p ∨ ¬q) ∧ (¬p ∨ p))∧((q ∨ ¬q) ∧ (q ∨ p)

))∧((¬p ∨ q) ∧ (¬q ∨ p)

) ∗∗∗∼∗∗∗∼ (¬p ∨ ¬q) ∧ (¬p ∨ p) ∧ (q ∨ ¬q) ∧ (q ∨ p) ∧ (¬p ∨ q) ∧ (¬q ∨ p) ∼

∼ (¬p ∨ ¬q) ∧ t ∧ t ∧ (q ∨ p) ∧ (¬p ∨ q) ∧ (¬q ∨ p) †∼†∼ (¬p ∨ ¬q) ∧ (¬p ∨ q) ∧ (p ∨ q) ∧ (p ∨ ¬q) ††∼

(¬p ∨ (¬q ∧ q)

)∧(p ∨ (q ∧ ¬q)

)∼

∼ (¬p ∨ k) ∧ (p ∨ k) ∼ ¬p ∧ p ∼ k

Dabar belieka tik šias dvi dalis sudėti:

¬((p↔ q) ∨ ¬(¬p↔¬q)

)∨ ¬((¬p↔¬q) ∨ ¬(p↔ q)

)∼ F ∨G ∼ k ∨ k ∼ k

12

Page 15: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Taigi, (p⊕ q)⊕ (¬p⊕ ¬q) ∼ k.Dažniausiai naudojami logikos dėsniai skirti operuoti neigimais, konjunkcijomis ir disjunk-cijomis. Todėl natūralu, kad siūlomas formulių pertvarkymo metodas yra paremtas tuo,kad visų pirma formulėse visos loginės operacijos išreiškiamos naudojant neigimą, kon-junkciją ir disjunkciją. Tada taikomi įvairūs šioms operacijoms skirti logikos dėsniai, kuriebuvo pateikti paskaitų ir pratybų metu. Kita vertus, toks kelias tikrai nėra vienintelis.Viena iš to priežasčių — paskaitų ir pratybų metu pateiktas logikos dėsnių sąrašas nėrabaigtinis. Jų galima išvesti ir daugiau. Pavyzdžiui, šiuo atveju užtektų pastebėti, kadgriežtoji disjunkcija, kitaip dar vadinama sudėtimi moduliu du (beje, kaip ir algebrinėsudėtis), yra komutatyvi (p⊕ q ∼ q⊕ p) ir asociatyvi ((p⊕ q)⊕ r ∼ p⊕ (q⊕ r)) operacija.Tuo įsitikinti galima, pavyzdžiui, naudojant teisingumo lentelę arba ekvivalenčiais pertvar-kymais, naudojant jau žinomus logikos dėsnius. Parodysime tik sudėties komutatyvumą(asociatyvumą paliksime savarankiškam darbui):

p⊕ q ∼ ¬(p↔ q) ∼ ¬((p→ q) ∧ (q→ p)

)∼ ¬

((q→ p) ∧ (p→ q)

)∼ ¬(q↔ p) ∼ q ⊕ p

Naudojant šias savybes duotąją formulę suprastinti yra žymiai paprasčiau:

(p⊕ q)⊕ (¬p⊕¬q) ∼ p⊕(q ⊕ (¬p⊕¬q)

)∼ p⊕

((q ⊕¬p)⊕¬q

)∼ p⊕

((¬p⊕ q)⊕¬q

)∼

∼(p⊕ (¬p⊕ q)

)⊕ ¬q ∼

((p⊕ ¬p)⊕ q

)⊕ ¬q ∼ (p⊕ ¬p)⊕ (q ⊕ ¬q) ∼ t⊕ t ∼ k

Pagaliau pastebėkime, kad tokį rezultatą galima buvo numanyti. Iš tiesų, griežtoji disjunk-cija (sudėtis moduliu 2) turi tokią sąvybę — jeigu kintamųjų reikšmės sutampa, griežtosiosdisjunkcijos rezultatas yra k (t⊕ t ∼ k ir k⊕k ∼ k). Jeigu kintamųjų reikšmės nesutampa,griežtosios disjunkcijos rezultatas yra t (t ⊕ k ∼ t ir k ⊕ t ∼ t). Jeigu p ir q reikšmėssutampa, tada tiek p⊕ q ∼ k, tiek ¬p⊕¬q ∼ k, o visos formulės rezultatas yra k⊕ k ∼ k.Jeigu p ir q reikšmės yra priešingos, tada p ⊕ q ∼ t ir ¬p ⊕ ¬q ∼ t, todėl visos formulėsrezultatas ir vėl yra t⊕ t ∼ k. Taigi, nepriklausomai nuo interpretacijos formulės reikšmėyra k, kitaip sakant, ši formulė yra tapačiai klaidinga.Nors samprotavimas, naudojant teisingumo lentelę netiktų tuo atveju, jeigu uždaviniosąlygoje būtų prašoma naudoti logikos dėsnius, tačiau jį vis tiek galima naudoti, norintpasitikrinti uždavinio atsakymą.

Pastaba: Ypatingą dėmesį atkreipkite į skliaustus, stenkitės jų nepamiršti. Geriau jų rašyti per daug,negu per mažai. Iš tikrųjų, tai yra dažna studentų darbų klaida: kurioje nors vietoje pametamiskliaustai, ir nuo tos vietos sprendimas tampa neteisingu. Paprasčiausias pavyzdys:

(p ∧ q) ∨ r ∼ (p ∨ r) ∧ (q ∨ r)

Pažiūrėkime, ką gautume, jei pamirštume skliaustus:

(p ∧ q) ∨ r 6∼ p ∨ r ∧ q ∨ r ∼ p ∨ (r ∧ q) ∨ r∗∼ p ∨ r

Vietoje, pažymėtoje ∗, buvo pritaikytas absorbavimo dėsnis. Gavome neteisingą atsakymą.

13

Page 16: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Uždaviniai savarankiškam darbuiUždavinys 2.4. Įkelkite neigimą į skliaustus ir suprastinkite šias formules:

1. ¬(p ∨ (q ∧ p)

);

2. ¬(p ∧

(q ∨

(¬p ∨ (p ∧ ¬p)

)));

Uždavinys 2.5. Suprastinkite formules:

1. (p↔ q)↔ p;

2.(p→ (q→ r)

)→((p→ q)→ (p→ r)

).

Uždavinys 2.6. Įrodykite šiuos ekvivalentumus, naudodamiesi logikos dėsniais:

1. Griežtos disjunkcijos asociatyvumą: (p⊕ q)⊕ r ∼ p⊕ (q ⊕ r);

2. (p→¬q) ∧ (p→¬r) ∼ ¬(p ∧ (q ∨ r)

);

3. p→ (q ∨ r) ∼ ¬q→ (¬p ∨ r);

4. ¬p↔ q ∼ ¬q↔ p.

14

Page 17: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Uždavinių savarankiškam darbui sprendimai ir atsakymai

Uždavinio 2.4 sprendimas ir atsakymai:

1. ¬(p ∨ (q ∧ p)

)∼ ¬p ∧ (¬q ∨ ¬p) ∼ ¬p;

Pastaba: Beje, šiuo atveju galima būtų pirma suprastinti formulę. Naudojant absorbcijos dėsnį,p ∨ (q ∧ p) ∼ p, taigi atsakymą gauname netgi nekeldami neigimo į skliaustus.

2.

¬(p∧(q∨(¬p∨(p∧¬p)

)))∼ ¬p∨

(¬q∧

(p∧(¬p∨p)

))∼ ¬p∨

(¬q∧(p∧t

)∼ ¬p∨(¬q∧p) ∼

∼ (¬p ∨ ¬q) ∧ (¬p ∨ p) ∼ (¬p ∨ ¬q) ∧ t ∼ ¬p ∨ ¬q

Be to, formulė ¬p ∨ ¬q ekvivalenti formulei p | q.

Uždavinio 2.5 sprendimas ir atsakymai:

1.(p↔ q)↔ p ∼

((p→ q) ∧ (q→ p)

)↔ p ∼

((¬p ∨ q) ∧ (¬q ∨ p)

)↔ p ∼

∼((

(¬p ∨ q) ∧ (¬q ∨ p))→ p

)∧(p→

((¬p ∨ q) ∧ (¬q ∨ p)

))∼

∼(¬((¬p ∨ q) ∧ (¬q ∨ p)

)∨ p)∧(¬p ∨

((¬p ∨ q) ∧ (¬q ∨ p)

))∼

∼((

(p ∧ ¬q) ∨ (q ∧ ¬p))∨ p)∧((¬p ∨ ¬p ∨ q) ∧ (¬p ∨ ¬q ∨ p)

)∼

∼((p∧¬q)∨p∨(q∧¬p)

)∧(¬p∨q)∧t ∼

(p∨(q∧¬p)

)∧(¬p∨q) ∼

((p∨q)∧(p∨¬p)

)∧(¬p∨q) ∼

∼ (p ∨ q) ∧ t ∧ (¬p ∨ q) ∼ (p ∨ q) ∧ (¬p ∨ q) ∼ (p ∧ ¬p) ∨ q ∼ k ∨ q ∼ q

2. (p→ (q→ r)

)→((p→ q)→ (p→ r)

)∼ ¬

(p→ (q→ r)

)∨((p→ q)→ (p→ r)

)∼

∼ ¬(¬p ∨ (q→ r)

)∨(¬(p→ q) ∨ (p→ r)

)∼ ¬

(¬p ∨ (¬q ∨ r)

)∨(¬(¬p ∨ q) ∨ (¬p ∨ r)

)∼

¬(¬p ∨ ¬q ∨ r) ∨ ¬(¬p ∨ q) ∨ ¬p ∨ r ∼ (p ∧ q ∧ ¬r) ∨ (p ∧ ¬q) ∨ ¬p ∨ r ∼

∼((

(p∧q∧¬r)∨p)∧((p∧q∧¬r)∨¬q

))∨¬p∨r ∼

(p∧(p∨¬q)∧(q∨¬q)∧(¬r∨¬q)

)∨¬p∨r ∼

∼(p∧ t∧ (¬r∨¬q)

)∨¬p∨ r ∼

(p∧ (¬r∨¬q)

)∨¬p∨ r ∼

((p∨¬p)∧ (¬r∨¬q∨¬p)

)∨ r ∼

∼(t ∧ (¬r ∨ ¬q ∨ ¬p)

)∨ r ∼ ¬r ∨ ¬q ∨ ¬p ∨ r ∼ ¬r ∨ r ∨ ¬q ∨ ¬p ∼ t ∨ ¬q ∨ ¬p ∼ t

Uždavinio 2.6 sprendimas:

1.

(p⊕q)⊕r ∼ ¬(¬(p↔q)↔r

)∼ ¬

(¬((p→q)∧(q→p)

)↔r)∼ ¬

(¬((¬p∨q)∧(¬q∨p)

)↔r)∼

∼ ¬((¬((¬p ∨ q) ∧ (¬q ∨ p)

)→ r

)∧(r→¬

((¬p ∨ q) ∧ (¬q ∨ p)

)))∼

∼ ¬(((

(¬p ∨ q) ∧ (¬q ∨ p))∨ r)∧(¬r ∨ ¬

((¬p ∨ q) ∧ (¬q ∨ p)

)))∼

∼ ¬((

(¬p ∨ q ∨ r) ∧ (¬q ∨ p ∨ r))∧(¬r ∨ (p ∧ ¬q) ∨ (q ∧ ¬p)

))∼

∼ ¬(

(¬p ∨ q ∨ r) ∧ (¬q ∨ p ∨ r) ∧((

(¬r ∨ p) ∧ (¬r ∨ ¬q))∨ (q ∧ ¬p)

))∼

15

Page 18: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

∼ ¬(

(¬p ∨ q ∨ r) ∧ (¬q ∨ p ∨ r) ∧((¬r ∨ p ∨ (q ∧ ¬p)

)∧(¬r ∨ ¬q ∨ (q ∧ ¬p)

)))∼

∼ ¬((¬p ∨ q ∨ r) ∧ (¬q ∨ p ∨ r) ∧ (¬r ∨ p ∨ q) ∧ (¬r ∨ ¬q ∨ ¬p)

)∼

∼ ¬((¬p ∨ q ∨ r) ∧ (¬p ∨ ¬q ∨ ¬r) ∧ (p ∨ ¬q ∨ r) ∧ (p ∨ q ∨ ¬r)

)∼

∼ ¬((¬p ∨

((q ∨ r) ∧ (¬q ∨ ¬r)

))∧(p ∨

((¬q ∨ r) ∧ (q ∨ ¬r)

)))∼

∼ ¬((

p→((q ∨ r) ∧ (¬q ∨ ¬r)

))∧(¬((¬q ∨ r) ∧ (q ∨ ¬r)

)→ p

))∼

∼ ¬((

p→¬((¬q ∧ ¬r) ∨ (q ∧ r)

))∧(¬((q→ r) ∧ (r→ q)

)→ p

))∼

∼ ¬((

p→¬((¬q ∨ r) ∧ (¬r ∨ q)

))∧(¬(q↔ r)→ p

))∼

∼ ¬((

p→¬((q→ r)∧ (r→ q)

))∧((q⊕ r)→ p

))∼ ¬

((p→¬(q↔ r)

)∧((q⊕ r)→ p

))∼

∼ ¬((p→ (q ⊕ r)

)∧((q ⊕ r)→ p

))∼ ¬

(p↔ (q ⊕ r)

)∼ p⊕ (q ⊕ r)

Šiame įrodyme panaudoti keli papildomi logikos dėsniai. Visų pirma:

p ∨ (q ∧ ¬p) ∼ (p ∨ q) ∧ (p ∨ ¬p) ∼ (p ∨ q) ∧ t ∼ p ∨ q

Taip pat:

(¬q∧¬r)∨(q∧r) ∼(¬q∨(q∧r)

)∧(¬r∨(q∧r)

)∼ (¬q∨q)∧(¬q∨r)∧(¬r∨q)∧(¬r∨r) ∼

∼ t ∧ (¬q ∨ r) ∧ (¬r ∨ q) ∧ t ∼ (¬q ∨ r) ∧ (¬r ∨ q)

2. (p→¬q)∧(p→¬r) ∼ (¬p∨¬q)∧(¬p∨¬r) ∼ ¬p∨(¬q∧¬r) ∼ ¬p∨¬(q∨r) ∼ ¬(p∧(q∨r)

)3. ¬q→ (¬p ∨ r) ∼ q ∨ (¬p ∨ r) ∼ q ∨ ¬p ∨ r ∼ ¬p ∨ q ∨ r ∼ ¬p ∨ (q ∨ r) ∼ p→ (q ∨ r)

4.¬p↔ q ∼ (¬p→ q) ∧ (q→¬p) ∼ (p ∨ q) ∧ (¬q ∨ ¬p) ∼ (q ∨ p) ∧ (¬p ∨ ¬q) ∼

∼ (¬q→ p) ∧ (p→¬q) ∼ ¬q↔ p

16

Page 19: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

3 pratybos

Aibių algebra

Uždaviniai pratybomsVisų pirma uždavinius išspręsti pabandykite patys. Tik tada, kai išsprendžiate, arba kai pama-tote, kad patiems išspręsti nepavyks, pažiūrite pateiktą sprendimą.

Pratybose N žymi natūraliųjų skaičių aibę, N = {0, 1, 2, 3, . . . } (atkreipkite dėmesį, kad0 ∈ N), Z žymi sveikųjų skaičių aibę, Z = {. . . ,−2,−1, 0, 1, 2, . . . }, Q žymi racionalių skaičiųaibę, o R žymi realių skaičių aibę.

Uždavinys 3.1. Nustatykite:

1. ar lygios šios aibės: {0, 1}, {1, 0} ir {0, 0, 1};

2. ar lygios šios šeimos: {0, 1}, {1, 0} ir {0, 0, 1};

3. ar lygios šios sekos (vektoriai): (0, 1), (1, 0) ir (0, 0, 1).

Sprendimas:

1. Kadangi aibėse nėra svarbi nei elementų tvarka, nei vienodų elementų kiekis, vadinasivisos nurodytos aibės yra lygios ir susideda iš dviejų elementų: 1 ir 0.

2. Šeimose elementų tvarka nėra svarbi, tačiau vienodų elementų kiekis svarbus. Todėl šeimos{0, 1} ir {1, 0} yra lygios, tačiau {0, 0, 1} nėra lygi nė vienai iš pirmųjų dviejų, nes joje 0pasikartoja du kartus.

3. Sekose svarbus ne tik vienodų elementų kiekis, bet ir elementų tvarka. Todėl visos tryssekos yra skirtingos ir nėra tarpusavyje lygios.

Uždavinys 3.2. Duota aibė A. Raskite |A| ir |P(A)|, kur P(A) — aibės A poaibių aibė.

1. A = {1, 2, 3, 4}, raskite P(A);

2. A = {10, 20, 30, . . . , 100};

3. A — visų triženklių natūraliųjų skaičių aibė.

Sprendimas:

1. Užrašas |A| reiškia aibės galią (baigtinėse aibėse — elementų skaičių). Taigi, |A| = 4.Poaibių aibės galia apskaičiuojama pagal formulę 2|A|, taigi P(A) = 24 = 16:

P(A) ={∅, {1}, {2}, {3}, {4}, {1, 2}, {1, 3}, {1, 4}, {2, 3}, {2, 4}, {3, 4},

{1, 2, 3}, {1, 2, 4}, {1, 3, 4}, {2, 3, 4}, {1, 2, 3, 4}}

2. |A| = 10, P(A) = 210 = 1024.

17

Page 20: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

3. Mažiausias triženklis natūralusis skaičius yra 100, didžiausias — 999. Taigi, viso yra999 − 100 + 1 = 900 triženklių natūraliųjų skaičių. Taigi, |A| = 900, P(A) = 2900 ≈8,45 · 10270.

Uždavinys 3.3. Aibė A = {1, 2}. Raskite P(A)×A.Sprendimas: Kadangi P(A) =

{∅, {1}, {2}, {1, 2}

}, tai:

P(A)×A ={(

∅, 1),(∅, 2

),({1}, 1

),({1}, 2

),({2}, 1

),({2}, 2

),({1, 2}, 1

),({1, 2}, 2

)}Pastaba: Aibę P(A) trumpiau galima užrašyti taip:

{∅, {1}, {2}, A

}. Analogiškai galima užrašyti

ir aibės P(A)×A elementus. Pavyzdžiui, vietoj({1, 2}, 1

)galima rašyti

(A, 1).

Uždavinys 3.4. Duotas aibes užrašykite pavidalu{x : S(x)

}.

1. {1, 3, 5, 7, . . . },

2. {1, 6, 11, 16, . . . , 96},

3. {2, 3, 5, 7, 11, 13, 17, 19, 23, 29, . . . , 997}.

Sprendimas:

1. {x : x — nelyginis natūralusis skaičius} = {x : x = 2k + 1, k > 0, k –– sveikasis skaičius}.Šią aibę taip pat galima užrašyti ir taip: {2k + 1 : k ∈ N}.

2. {x : x = 5k + 1, 0 6 k 6 19, k –– sveikasis skaičius}. Šią aibę taip pat galima užrašyti irtaip: {5k + 1 : 0 6 k 6 19, k ∈ N}.

3. {x : x –– pirminis skaičius, mažesnis už 1000}.

Uždavinys 3.5. Tegu aibė A = {y : x = y + z, x, z ∈ X}, kur aibė X = {1, 2}. Išvardinkitevisus aibės A elementus.Sprendimas: Turime y = x− z, kur x, z ∈ X. Imame visas galimas x ir z reikšmes ir apskaičiuo-jame y reikšmes:

x z y1 1 01 2 −12 1 12 2 0

Taigi, A = {−1, 0, 1}.

Pastabos:• Aibės elementų išvardijimo tvarka reikšmės neturi, pavyzdžiui, atsakymą galime užrašyti ir

taip: A = {0,−1, 1}, ir bet kokia kita eilės tvarka.• Aibė neturi pasikartojančių elementų, t. y. visi elementai į aibę įeina tik po vieną kartą. Todėl

nulį, nors spręsdami ir gauname du kartus, aibėje rašome tik vieną kartą.

Uždavinys 3.6. Duotos aibės A = {1, 2, 3, 4} ir B = {3, 4, 5}. Raskite aibes A ∪ B, A ∩ B,A \B, B \A, A ir B. Laikykite, kad universali aibė yra N.Sprendimas: A ∪ B = {1, 2, 3, 4, 5}, A ∩ B = {3, 4}, A \ B = {1, 2}, B \ A = {5}, A ={0} ∪ {x : x ∈ N, x > 5} = {0, 5, 6, 7, . . . }, B = {0, 1, 2} ∪ {x : x ∈ N, x > 6} = N \ {3, 4, 5} ={0, 1, 2, 6, 7, 8, 9, . . . }.

Uždavinys 3.7. Pavaizduokite aibę (A ∪ C) \B Veno diagrama (Oilerio skrituliais).Sprendimas: Vertikaliai užbrūkšniuota sritis yra A∪C, horizontaliai — B, o atsakymas nuspal-vintas pilkai.

18

Page 21: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

B C

A

Uždavinys 3.8. Duota Veno diagrama:

B C

A

Užrašykite formule aibę, kuri diagramoje nuspalvinta pilkai.Sprendimas: (B \A) ∪ (A ∩ C).

Uždavinys 3.9. Įrodykite lygybę (A \ B) ∪ (B \ A) = (A ∪ B) \ (A ∩ B) naudodamiesi Venodiagramomis.Sprendimas: Lygybės kairiosios pusės Veno diagrama:

A BČia vertikaliai užbrūkšniuota sritis yra A \B, horizontaliai –– B \A, o visa aibė nuspalvinta

pilkai. Lygybės dešiniosios pusės Veno diagrama:

A B

19

Page 22: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Čia vertikaliai užbrūkšniuota sritis yra A∪B, horizontaliai — A∩B, o visa aibė nuspalvintapilkai. Matome, kad abiem atvejais nuspalvinta ta pati sritis, todėl duotos aibės yra lygios.

Uždavinys 3.10. Įrodykite lygybes samprotaudami ir naudodamiesi aibių operacijų apibrėži-mais:

1. A \B = A ∪B;

2. (A ∩B) \ C = (A \ C) ∩ (B \ C);

3. (A ∪B) \ (B ∪ C) = (A \B) \ C.

Sprendimas:

1. Pirmiausia parodysime, kad A \B ⊆ A ∪ B. Tarkime, x ∈ A \B. Pagal papildinioapibrėžimą x /∈ A \ B, t. y. ¬(x ∈ A \ B). Pagal aibių skirtumo apibrėžimą gauname,kad ¬(x ∈ A ir x /∈ B). Pritaikę De Morgano dėsnį, gauname ¬(x ∈ A) arba ¬(x /∈ B),t.y. x /∈ A arba x ∈ B. Vėl pagal papildinio apibrėžimą gauname, kad x ∈ A arba x ∈ B.Pagal aibių sąjungos apibrėžimą x ∈ A ∪B. Taigi, A \B ⊆ A ∪B.Į kitą pusę parodome lygiai tais pačiais samprotavimais, tik iš kito galo. Pradėję nuo to,kad x ∈ A ∪B, parodome, kad tokiu atveju x ∈ A \B. Todėl A \B ⊇ A ∪B.Taip įrodėme reikiamą lygybę.

2. Parodykime, kad (A∩B) \C ⊆ (A \C)∩ (B \C). Tarkime, x ∈ (A∩B) \C. Tada pagalaibių skirtumo apibrėžimą x ∈ (A ∩ B) ir x /∈ C. Pagal sankirtos apibrėžimą turime,kad x ∈ A ir x ∈ B ir x /∈ C. Pritaikę konjunkcijos idempotencijos dėsnį iš matematinėslogikos gauname x ∈ A ir x ∈ B ir x /∈ C ir x /∈ C, o pritaikę konjunkcijos komutatyvumodėsnį gauname x ∈ A ir x /∈ C ir x ∈ B ir x /∈ C. Taigi, pagal aibių skirtumo apibrėžimąturime, kad x ∈ A \ C ir x ∈ B \ C. Galiausiai pagal sankirtos apibrėžimą seka, kadx ∈ (A \ C) ∩ (B \ C).Ir vėl, kad (A \C)∩ (B \C) ⊆ (A∩B) \C gauname šį įrodymą perrašę iš kito galo ir taipįrodome lygybę.

3. Parodykime, kad (A∪B)\(B∪C) ⊆ (A\B)\C. Tarkime, x ∈ (A∪B)\(B∪C). Tada pagalaibių skirtumo apibrėžimą x ∈ A∪B ir x /∈ B∪C, kitaip sakant, x ∈ A∪B ir ¬(x ∈ B∪C).Pritaikę sąjungos apibrėžimą, gauname (x ∈ A arba x ∈ B) ir ¬(x ∈ B arba x ∈ C),taigi pagal de Morgano dėsnį turime (x ∈ A arba x ∈ B) ir ¬(x ∈ B) ir ¬(x ∈ C),kitaip sakant, (x ∈ A arba x ∈ B) ir x /∈ B ir x /∈ C. Įkėlę x /∈ B į skliaustus pagaldistributyvumo dėsnį, gauname

((x ∈ A ir x /∈ B) arba (x ∈ B ir x /∈ B)

)ir x /∈ C.

Pritaikę aibių skirtumo apibrėžimą, turime (x ∈ A\B arba x ∈ B\B) ir x /∈ C. Akivaizdu,kad B \ B = ∅. Taigi, pritaikę sąjungos apibrėžimą gauname x ∈ (A \ B) ∪ ∅ ir x /∈ C,kitaip sakant x ∈ (A \ B) ir x /∈ C. Belieka pritaikyti aibių skirtumo apibrėžimą ir gautix ∈ (A \B) \ C.Šį įrodymą perrašę iš kito galo parodysime, kad (A \B) \C ⊆ (A ∪B) \ (B ∪C), o kartuir įrodysime lygybę.

Uždavinys 3.11. Suprastinkite reiškinius naudodamiesi aibių algebros dėsniais:

1.(A ∪

((C \B) ∩∅

))∩ (A ∪ U);

2. A ∪B ∪ (A ∩B).

Čia ir toliau U žymi universalią aibę. A,B,C ⊆ U .Sprendimas:

1.(A ∪

((C \B) ∩∅

))∩ (A ∪ U) = (A ∪∅) ∩ U = A ∩ U = A.

2. A ∪B ∪ (A ∩B) = (A ∩B) ∪ (A ∩B) = (A ∩B) ∪ (A ∩B) = A ∩ (B ∪B) = A ∩ U = A.

Uždavinys 3.12. Įrodykite lygybes naudodamiesi aibių algebros dėsniais:

20

Page 23: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

1. (U ∩A) ∪ (B ∩A) = A,

2. (∅ ∪A) ∩ (B ∪A) = A.

Sprendimas:

1. (U∩A)∪(B∩A) ∗= (A∩U)∪(A∩B) ∗∗= A∩(U∪B) = A∩U = A. Vietoje, pažymėtoje ∗, dukartus taikomas komutatyvumo dėsnis. Vietoje, pažymėtoje ∗∗, taikomas distributyvumodėsnis.

2. Įrodymas analogiškas pirmosios uždavinio dalies lygybės įrodymui. Bet galima ir pa-prasčiau. Ši lygybė iškart išplaukia iš pirmosios uždavinio dalies lygybės pagal dualumoprincipą.

Uždavinys 3.13. Pasinaudoję dualumo principu, raskite lygybei (A∩U)∩ (∅∪A) = ∅ dualiąlygybę.Sprendimas: (A ∪∅) ∪ (U ∩A) = U .

21

Page 24: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Uždaviniai savarankiškam darbuiUždavinys 3.14. Duotos aibės A ir B. Raskite A×B.

1. A ={∅, {1, 2, 3},N

}, B = {π, e};

2. A = {(1, 2), (0,−3)}, B = {(−1, 0, 1)}.

Uždavinys 3.15. Duotas aibes užrašykite pavidalu{x : S(x)

}.

1. {. . . ,−12,−9,−6,−3, 0, 3, 6, 9, 12, . . . };

2. {3, 5, 9, 11, 15, 17, . . . };

3. {8, 88, 888, 8888, . . . }.

Uždavinys 3.16. Pavaizduokite nurodytas aibes Veno diagramomis:

1. (A ∩ C) \ (B ∩ C),

2. (A ∪ C) \ (B ∩ C),

3. (A ∩B \ C) \ (C ∪B).

Uždavinys 3.17. Įrodykite lygybes naudodamiesi Veno diagramomis:

1. A \ (B ∪ C) = (A \B) ∩ (A \ C),

2. A \ (A \B) = A ∩B.

Uždavinys 3.18. Įrodykite lygybes samprotaudami ir naudodamiesi aibių operacijų apibrėži-mais:

1. (A \B) ∪ (B \A) = (A ∪B) \ (A ∩B),

2. A \ (B ∪ C) = (A \B) ∩ (A \ C),

3. A \ (A \B) = A ∩B.

Uždavinys 3.19. Suprastinkite reiškinius naudodamiesi aibių algebros dėsniais:

1.((A ∪B) \ (A ∪∅)

)\B,

2. (U ∩A) ∪ (B ∩A),

3. (A ∪B) ∩ (A ∪B).

Uždavinys 3.20. Įrodykite lygybes naudodamiesi aibių algebros dėsniais:

1. (B ∩ U) ∩ (A ∪∅) = A ∪B,

2. (B ∪∅) ∪ (A ∩ U) = A ∩B.

Uždavinys 3.21. Pasinaudoję dualumo principu, raskite nurodytai lygybei dualią lygybę.

(A ∩B) ∪ (A ∩B) ∪ (A ∩B) ∪ (A ∩B) = U

22

Page 25: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Uždavinių savarankiškam darbui sprendimai ir atsakymai

Uždavinio 3.14 atsakymai:

1. A×B ={

(∅, π), (∅, e), ({1, 2, 3}, π), ({1, 2, 3}, e), (N, π), (N, e)};

2. A×B ={(

(1, 2), (−1, 0, 1)),((0,−3), (−1, 0, 1)

)}.

Uždavinio 3.15 atsakymai:

1. {x : x = 3k, k ∈ Z}. Šią aibę galima būtų užrašyti ir taip {±3k : k ∈ N}, nors toks užrašasneatitinka uždavinio sąlygoje prašomos formos.

2. {x : x = 6k + 3 arba x = 6k + 5, k ∈ N}. Vėl gi, griežtai nesilaikant sąlygoje prašomosformos, galima būtų rašyti taip: {6k + 3 : k ∈ N} ∪ {6k + 5 : k ∈ N}.

3. {x : x — natūralus skaičius, kurio visi skaitmenys yra aštuonetai}. Galima būtų užrašytiir labiau matematine forma, pavyzdžiui:{

x : x =k∑i=0

(8 · 10i), k ∈ N

}

Uždavinio 3.16 sprendimas ir atsakymai:

1. Vertikaliai užbrūkšniuota sritis yra A∩C, horizontaliai — B∩C, o atsakymas nuspalvintaspilkai:

B C

A

2. Vertikaliai užbrūkšniuota sritis yra A∪C, horizontaliai — B∩C, o atsakymas nuspalvintaspilkai.

B C

A

23

Page 26: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

3. Pirmiausia pavaizduokime aibę A ∩B \ C (brėžinys kairėje). Istrižai užbrūkšniuota sritisyra B \ C. Visa kas jai nepriklauso yra aibė B \ C, kuri užbrūkšniuota horizontaliai.Vertikaliai užbrūkšniuota aibė A. Aibė A ∩B \ C nuspalvinta pilkai.Brėžinyje dešinėje vertikaliai užbrūkšniuota sritis yra A∩B \ C, horizontaliai — C ∪B, oatsakymas nuspalvintas pilkai.

B C

A

B C

A

Uždavinio 3.17 sprendimas:

1. Kairiajame brėžinyje pilkai nuspalvinta aibė A\(B∪C). Aibė A užbrūkšniuota vertikaliai,o aibė B ∪ C — horizontaliai.Dešiniajame brėžinyje pilkai nuspalvinta aibė (A\B)∩ (A\C). Aibė A\B užbrūkšniuotavertikaliai, o aibė A \ C — horizontaliai.

B C

A

B C

A

Matome, kad pilkai nuspalvinti plotai sutampa.

2. Kairiajame brėžinyje pilkai nuspalvinta aibė A\(A\B). Aibė A užbrūkšniuota vertikaliai,o aibė A \B — horizontaliai.Dešiniajame brėžinyje pilkai nuspalvinta aibė A ∩B. Aibė A užbrūkšniuota vertikaliai, oaibė B — horizontaliai.

A B A B

24

Page 27: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Matome, kad pilkai nuspalvinti plotai sutampa.

Uždavinio 3.18 sprendimas:

1. Visų pirma, parodysime, kad (A \ B) ∪ (B \ A) ⊆ (A ∪ B) \ (A ∩ B). Imkime kokį norsx ∈ (A \ B) ∪ (B \ A). Pagal aibių sąjungos apibrėžimą, x ∈ (A \ B) arba x ∈ (B \ A).Pagal aibių skirtumo apibrėžimą (x ∈ A ir x /∈ B) arba (x ∈ B ir x /∈ A).Pasinaudokime logikos dėsniais. Pažymėkime raide p teiginį x ∈ A, o raide q teiginįx ∈ B. Tada teiginys x /∈ A bus ¬p, o x /∈ B bus ¬q. Gauname formulę (p∧¬q)∨ (q∧¬p).Pertvarkome ją naudodami logikos dėsnius:

(p ∧ ¬q) ∨ (q ∧ ¬p) ∗∼(p ∨ (q ∧ ¬p)

)∧(¬q ∨ (q ∧ ¬p)

) ∗∗∼∗∗∼((p∨q)∧(p∨¬p)

)∧((¬q∨q)∧(¬q∨¬p)

)∼ (p∨q)∧t∧t∧(¬q∨¬p) ∼ (p∨q)∧(¬q∨¬p) ∼

∼ (p ∨ q) ∧ ¬(q ∧ p)Vietoje, pažymėtoje ∗, taikomas distributyvumo dėsnis: antrieji skliaustai įkeliami į pir-muosius. Vietoje, pažymėtoje ∗∗, distributyvumo dėsnis taikomas du kartus: pirmuosedidžiuosiuose skliaustuose į skliaustus įkeliamas p, o antruose — ¬q. Taigi, jei su kurianors kintamųjų p ir q interpretacija formulė (p ∧ ¬q) ∨ (q ∧ ¬p) yra teisinga, tai formulė(p ∨ q) ∧ ¬(q ∧ p) su šia interpretacija irgi yra teisinga.Kadangi žinome, kad (x ∈ A ir x /∈ B) arba (x ∈ B ir x /∈ A) yra teisingas teiginys, tai(x ∈ A arba x ∈ B) ir netiesa, kad (x ∈ B ir x ∈ A) irgi yra teisingas teiginys. Pagalsąjungos ir sankirtos apibrėžimus tada gauname, kad x ∈ A∪B ir netiesa, kad x ∈ A∩B,o tai reiškia, kad x ∈ A ∪ B ir x /∈ A ∩ B. Pagal aibių skirtumo apibrėžimą turime, kadx ∈ (A ∪B) \ (A ∩B), ką ir reikėjo gauti. Todėl (A \B) ∪ (B \A) ⊆ (A ∪B) \ (A ∩B).Kad parodytume, kad (A \B)∪ (B \A) ⊇ (A∪B) \ (A∩B), naudojame lygiai tuos pačiussamprotavimus, tik iš kito galo: padarę prielaidą, kad x ∈ (A∪B)\(A∩B), gauname, kad(x ∈ A arba x ∈ B) ir netiesa, kad (x ∈ B ir x ∈ A), iš ko, pasinaudoję tuo, kad formulės(p ∨ q) ∧ ¬(q ∧ p) ir (p ∧ ¬q) ∨ (q ∧ ¬p) yra ekvivalenčios (tai jau įrodėme), gauname, kad(x ∈ A ir x /∈ B) arba (x ∈ B ir x /∈ A), kas mums ir duoda, kad x ∈ (A \ B) ∪ (B \ A).Taigi, (A \B) ∪ (B \A) ⊇ (A ∪B) \ (A ∩B).Iš šių dviejų įrodymo dalių ir seka, kad (A \B) ∪ (B \A) = (A ∪B) \ (A ∩B).

2. Kombinuodami matematinės logikos žymėjimus ir aibių operacijų apibrėžimus gaunametokį samprotavimą:

x ∈ A\(B∪C) ∼ x ∈ A∧x /∈ B∪C ∼ x ∈ A∧¬(x ∈ B∨x ∈ C) ∼ x ∈ A∧x /∈ B∧x /∈ C ∼

∼ x ∈ A ∧ x /∈ B ∧ x ∈ A ∧ x /∈ C ∼ x ∈ A \B ∧ x ∈ A \ C ∼ x ∈ (A \B) ∩ (A \ C)

3.

x ∈ A\(A\B) ∼ x ∈ A∧x /∈ A\B ∼ x ∈ A∧¬(x ∈ A∧x /∈ B) ∼ x ∈ A∧(x /∈ A∨x ∈ B) ∼

∼ (x ∈ A ∧ x /∈ A) ∨ (x ∈ A ∧ x ∈ B) ∼ k ∨ (x ∈ A ∩B) ∼ x ∈ A ∩B

Uždavinio 3.19 sprendimas ir atsakymai:

1.((A ∪ B) \ (A ∪ ∅)

)\ B =

((A ∪ B) \ A

)\ B = (B \ A) \ B = ∅. Iš tikrųjų, naudojant

Veno diagramas lengva įsitikinti, kad (A ∪B) \A = B \A ir (B \A) \B = ∅.

2. (U ∩A) ∪ (B ∩A) = (U ∪B) ∩A = U ∩A = A.

3. (A ∪B) ∩ (A ∪B) = A ∪ (B ∩B) = A ∪∅ = A.

Uždavinio 3.20 sprendimas:

1. (B ∩ U) ∩ (A ∪∅) = B ∩A = A ∪B

2. Seka iš pirmosios dalies pagal dualumo principą.

Uždavinio 3.21 atsakymas: (A ∪B) ∩ (A ∪B) ∩ (A ∪B) ∩ (A ∪B) = ∅.

25

Page 28: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

4 pratybos

Funkcijos

Uždaviniai pratybomsVisų pirma uždavinius išspręsti pabandykite patys. Tik tada, kai išsprendžiate, arba kai pama-tote, kad patiems išspręsti nepavyks, pažiūrite pateiktą sprendimą.

Uždavinys 4.1. Nustatykite, ar atitiktis F tarp aibių A ir B yra funkcinė, jei:

1. A = B = {1, 2, 3, 4, 5}, F ={

(1, 2), (2, 4), (3, 5), (4, 1), (5, 3), (5, 5)}.

2. A = B = N, F ={

(x, x− 1) : x ∈ N \ {0}}.

3. A = B = Z, F ={

(x, 5) : x ∈ Z}.

Sprendimas:

1. Atitiktis nėra funkcinė, nes skaičių 5 ∈ A atitinka du aibės B elementai: 3 ir 5. Kitaipsakant (5, 3) ∈ F ir (5, 5) ∈ F .

2. Atitiktis F ={

(1, 0), (2, 1), (3, 2), . . .}. Ji nėra funkcinė, nes nėra aibės B elemento, kuris

atitiktų skaičių 0 ∈ A.

3. Atitiktis F ={. . . , (−2, 5), (−1, 5), (0, 5), (1, 5), (2, 5), . . .

}. Kadangi visi aibės A elemen-

tai turi atitiktį aibėje B, o taip pat nėra aibės A elemento, kuris turėtų dvi atitiktis, todėlF yra funkcinė atitiktis.

Uždavinys 4.2. Nustatykite, ar grafikais pateiktos atitiktys tarp realių skaičių aibių yra funk-cinės?

1.

x1

y

1

2.

x1

y

1

3.

x1

y

1

4.

x1

y

1

5.

x1

y

1

6.

x1

y

1

Sprendimas:

26

Page 29: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

1. Ši atitiktis yra funkcinė, nes kiekvieną realų skaičių x atitinka kuris nors y ir nėra tokiox-o, kurį atitiktų du y-kai.

2. Ši atitiktis nėra funkcinė, nes, pavyzdžiui, skaičių 1 atitinka net trys y-kai.

3. Ši atitiktis nėra funkcinė, nes neigiami x-ai neturi jiems atitinkančių y-kų.

4. Ši atitiktis yra funkcinė.

5. Ši atitiktis yra funkcinė.

6. Ši atitiktis nėra funkcinė, nes x > 2 ir x < −2 neturi jiems atitinkančių y-kų. Be to,pavyzdžiui, skaičių 1 atitinka be galo daug y-kų. Iš tiesų užtektų paminėti vieną iš šiųpriežasčių.

Uždavinys 4.3. Nustatykite, ar funkcija f : A→ B yra injekcija, siurjekcija, bijekcija.

1. A yra visų pilnamečių Lietuvos piliečių aibė, B — galiojančių Lietuvos Respublikos pasųaibė, f(x) = y, jeigu y-kas yra piliečio x pasas.

2. A yra visų dienų, pradedant 1990 m. sausio 1 d. ir baigiant šiandiena aibė, o B yra aibė,sudaryta iš žmonių (gimusių 1990 m. ir vėliau) aibių. Jei f(x) = y, tai y yra aibė visųžmonių, gimusių dieną x.

Sprendimas:

1. Du skirtingi žmonės visada turi du skirtingus pasus. Todėl ši funkcija yra injekcija. Be to,kiekvieno lietuviško paso savininkas yra Lietuvos pilietis, taigi ši funkcija yra siurjekcija.Todėl ji yra bijekcija.

2. Kiekvieną dieną gimsta vis nauji žmonės. Jeigu turime dvi skirtingas dienas, tai ir perjas gimusių žmonių aibės skirsis. Taigi, funkcija yra injekcija. Kita vertus ne kiekvienaižmonių aibei galima parinkti dieną x taip, kad ji būtų visų tos aibės žmonių gimimo diena.Iš tiesų, užtenka paimti du žmones, kurių gimimo dienos yra skirtingos. Jie sudarys aibęA tokią, kad f−1(A) = ∅. Taigi funkcija, nėra siurjekcija. Todėj ji nėra bijekcija.

Pastaba: Matematika yra puikus ir plačiai naudojamas įrankis modeliuoti įvairias realaus gyvenimosituacijas. Kita vertus, realiame gyvenime yra gausu išimčių ir atskirų atvejų. Žinoma, tai taippat galima modeliuoti, tačiau modelio tikslumo didinimas dažniausiai patį modelį ir juo paremtusskaičiavimus daro sudėtingesniais.Panašiai yra ir su šiais „realaus gyvenimo“ uždaviniais. Pavyzdžiui, sprendžiant 1 variantą galėtųkilti natūralus klausimas — ar gali pilnametis Lietuvos pilietis neturėti paso? Tikriausiai gali, jei-gu nekeliauja į užsienį, neturi mokėjimo kortelės, nesinaudoja mobiliuoju telefonu, nebendrauja suvalstybinėmis institucijomis ir panašiai… Tokiu atveju atitiktis f apskritai nebūtų funkcija. Tačiaupateikiant uždavinio sprendimą buvo remtasi prielaida, kad visi pilnamečiai Lietuvos piliečiai pasąturi.Tokių panašių prielaidų šiame uždavinyje reikia padaryti ir daugiau: ar asmens tapatybės kortelėyra tas pats, kas pasas, ar kai žmogus pameta pasą, vis dar galima sakyti, kad jis jį turi ir t.t…Taigi šiame uždavinyje (kaip ir absoliučioje daugumoje matematikos uždavinių) žymiai svarbesnisyra samprotavimas jį sprenžiant, o ne vienoks ar kitoks atsakymas.

Uždavinys 4.4. Tegu f : A → B yra funkcija, A′ ⊆ A, o B′ ⊆ B. Raskite aibės A′ vaizdąf(A′), funkcijos f reikšmių sritį Rf ⊆ B, aibės B′ pirmavaizdį f−1(B′). Nustatykite, ar funkcijaf yra injekcija, siurjekcija, bijekcija.

1. A = B = N, f(x) = x+ 1, A′ = B′ = {0, 1, 2, 3}.

2. A = Z× Z = Z2, B = Z, f(x, y) = x2 + 2y, A′ ={

(1,−2), (−3, 2), (3, 4)}, B′ = {0, 1}.

3. A = B = R, f(x) = [x], čia [x] yra skaičiaus sveikoji dalis, tai yra, didžiausias sveikasisskaičius y toks, kad y 6 x. A′ = B′ = [−0,5; 1,3].

4. A = B = P(M), kur M = {a, b, c}, P(M) –– aibės M poaibių aibė, f(x) = x, kur x yraaibės x papildinys iki aibės M , A′ =

{{a}, {c, a}

}, B′ =

{{c},M

}.

27

Page 30: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

5. A = B = Z, f(x) ={x2, kai x > 13x, kitais atvejais , A′ = B′ = {−2,−1, 0, 1, 2}.

6. A = Q, B = R, f(x) = x, A′ = {0; 23 ; 3,(16)}, B′ = {−2, 3

7 , π}. Čia Q žymi racionaliųjųskaičių aibę.

Sprendimas:

1. f(A′) = {1, 2, 3, 4},Rf = {1, 2, 3, 4, 5, 6, . . . } = N \ {0} = B \ {0},f−1(B′) = {0, 1, 2}.Yra injekcija, nėra siurjekcija (nes Rf 6= B), nėra bijekcija.

2. f(A′) = {−3, 13, 17},Rf = Z = B,f−1(B′) = f−1(0) ∪ f−1(1), kurf−1(0) =

{(x, y) : x2 + 2y = 0

}=

={

(x, y) : x ∈ Z, x –– lyginis, y = −x2

2}

=={

(x,−x2

2 ) : x = 2k, k ∈ Z}

=={

(0, 0), (2,−2), (−2,−2), (4,−8), (−4,−8), . . . }f−1(1) =

{(x, y) : x2 + 2y = 1

}=

={

(x, y) : x ∈ Z, x –– nelyginis, y = 1−x2

2}

=={

(x, 1−x2

2 ) : x = 2k + 1, k ∈ Z}

=={

(1, 0), (−1, 0), (3,−4), (−3,−4), . . .}

Nėra injekcija, yra siurjekcija (nes Rf = B), nėra bijekcija.

3. f(A′) = {−1, 0, 1},Rf = Z,f−1(B′) = f−1(0)∪f−1(1), nes tik sveikieji skaičiai turi savo pirmvaizdžius. Čia f−1(0) =[0; 1), o f−1(1) = [1; 2), taigi f−1(B′) = [0; 2).Nėra injekcija, nėra siurjekcija (nes Rf 6= B), nėra bijekcija.

4. P(M) ={∅, {a}, {b}, {c}, {a, b}, {a, c}, {b, c},M

},

f(A′) ={{b, c}, {b}

}, nes f

({a})

= {a} = {b, c}, f({c, a}

)= {c, a} = {b},

Rf = P(M) = B,f−1(B′) = f−1({c}) ∪ f−1(M) =

{{a, b}

}∪ {∅} =

{{a, b},∅

}.

Yra injekcija, yra siurjekcija (nes Rf = B), yra bijekcija.

5. f(A′) = {−6,−3, 0, 1, 4},Rf = {−3x : x ∈ N} ∪ {x2 : x ∈ N} = {. . . ,−12,−9,−6,−3, 0, 1, 4, 9, 16, . . . },f−1(B′) = {0, 1}, nes f−1(0) = {0}, o f−1(1) = 1. Taškai −2, −1 ir 2 pirmvaizdžių neturi.Yra injekcija, nėra siurjekcija (nes Rf 6= B), nėra bijekcija.

6. f(A′) = {0; 23 ; 3,(16)},

Rf = Q,f−1(B′) = {−2, 3

7}.Yra injekcija, nėra siurjekcija (nes Rf 6= B), nėra bijekcija.

28

Page 31: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Uždaviniai savarankiškam darbuiUždavinys 4.5. Nustatykite, ar atitiktis F tarp aibių A ir B yra funkcinė, jei:

1. A = B = R, F ={

(±x2, x) : x ∈ R}.

2. A = B = Q, F ={

(xy ,x−1y−1 ) : x ∈ Z, y ∈ N \ {0, 1}

}.

3. A = B = Z, F ={

(2x, 3x) : x ∈ Z}.

4. A = B = R, F ={

(x, sin x) : x ∈ R}.

Uždavinys 4.6. Tegu f : A → B yra funkcija, A′ ⊆ A, o B′ ⊆ B. Raskite aibės A′ vaizdąf(A′), funkcijos f reikšmių sritį Rf ⊆ B, aibės B′ pirmavaizdį f−1(B′). Nustatykite, ar funkcijaf yra injekcija, siurjekcija, bijekcija.

1. A = B = N, f(x) = x2, A′ = B′ = {0, 1, 2, 3}.

2. A = B = R, f(x) ={

ln x, kai x > 13− 2x− x2, kitais atvejais , A′ = {0, 1, 2}, B′ = {−1, 0, 1}.

3. A = B = R, f(x) ={ √

x, kai x > 0−√−x, kitais atvejais , A′ = {−π,−2, 9}, B′ = {−3,−1,

√2, 4}.

4. A = Z2, B = N, f(x) = x2 + y2, A′ ={

(−2,−3), (3,−1), (0, 0), (2, 4)}, B′ = {0, 1, 2}.

29

Page 32: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Uždavinių savarankiškam darbui sprendimai ir atsakymai

Uždavinio 4.5 sprendimas ir atsakymai:

1. Atitiktis nėra funkcinė, nes, pavyzdžiui, (1; 1) ∈ F ir (1,−1) ∈ F .

2. Iš pirmo žvilgsnio atrodytų, kad nėra aibės B elementų, kurie atitiktų sveikuosius aibėsA skaičius. Juk, pavyzdžiui, 2 = 2

1 , o skaičius 2−11−1 = 1

0 neegzistuoja. Kita vertus, 2 = 42 ,

taigi ( 42 ,

31 ) = (2, 3) ∈ F . Lygiai taip pat 2 = 6

3 , o ( 63 ,

52 ) = (2, 2,5) ∈ F . Taigi, atitiktis

nėra funkcinė.

3. Atitiktis nėra funkcinė, nes nėra aibės B elementų, kurie atitiktų nelyginius aibės A ele-mentus. Pavyzdžiui, nėra tokio y, kad (1, y) ∈ F .

4. Atitiktis funkcinė.

Uždavinio 4.6 sprendimas ir atsakymai:

1. f(A′) = {0, 1, 4, 9},Rf = {x : x = n2, n ∈ N} = {n2, n ∈ N} = {0, 1, 4, 9, 16, 25, . . . },f−1(B′) = {0, 1}.Yra injekcija, nėra siurjekcija, nėra bijekcija.A′ = {0, 1, 2}, B′ = {−1, 0, 1}

2. f(A′) = {0, ln 2, 3}.Funkcija 3 − 2x − x2 maksimumą pasiekia, kai x = −1. Taigi, kai x < 1, funkcijosreikšmių sritis yra (−∞, 4]. Funkcijos ln x, kai x > 1, reikšmių sritis yra [0,∞). Taigi,Rf = (−∞, 4] ∪ [0,∞) = (−∞,∞) = R.Išsprendę kvadratines ir logaritmines lygtis ir atmetę nereikalingas šaknis, gausime, kadf−1(−1) = {−1−

√5}, f0(0) = {−3, 1}, o f−1(1) = {−1±

√3, e}. Taigi,

f−1(B′) = f−1(−1) ∪ f−1(0) ∪ f−1(1) = {−1−√

5,−3,−1±√

3, 1, e}

Nėra injekcija, yra siurjekcija, nėra bijekcija.

3. f(A′) = {−√π,−√

2, 3},Rf = R,f−1(B′) = {−9,−1, 2, 16}.Yra injekcija, yra siurjekcija, yra bijekcija.

4. f(A′) = {0, 10, 13, 20},Rf =

{x2 + y2 : x, y ∈ Z

}. Tiksliau užrašyti nelabai išeina. Visais atvejais Rf 6= N, nes,

pavyzdžiui, f−1(3) = ∅. Norint tai parodyti, galima bandyti perrinkti visas galimybes.02 = 0, 12 = (−1)2 = 1, 22 = (−2)2 = 4, taigi pora, kurios kvadratų suma yra 3 gali būtisudaryta tik iš −1, 0 ir 1, nes 2 ir −2 kvadratas jau viršija 3. Iš tiesų užtenka perrinktitik poras iš 0 ir 1, o jų yra keturios. f(0, 0) = 0, f(0, 1) = 1, f(1, 0) = 1, f(1, 1) = 2.Prie šio samprotavimo pridėję ir simetriškus −1 atvejus gauname, kad f−1(0) =

{(0, 0)

},

f−1(1) ={

(−1, 0), (0,−1), (0, 1), (1, 0)}, o f−1(2) =

{(−1,−1), (−1, 1), (1,−1), (1, 1)

}.

Taigi,f−1(B′) = f−1(0) ∪ f−1(1) ∪ f−1(2) =

={

(−1,−1), (−1, 0), (0,−1), (0, 0), (0, 1), (−1, 1), (1,−1), (1, 0), (1, 1)}

Nėra injekcija, nėra siurjekcija, nėra bijekcija.

30

Page 33: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

5 pratybos

Sąryšiai

Uždaviniai pratybomsUždavinys 5.1. Aibėje A = {2, 3, 4, 6, 9} apibrėžtas sąryšis a ir b yra tarpusavyje pirminiai(t.y. a ir b neturi bendrų daliklių, didesnių už 1). Išrašykite šio sąryšio elementus. Užrašykitesąryšio matricą. Ar sąryšis refleksyvus, antirefleksyvus, simetrinis, antisimetrinis, tranzityvus,ekvivalentumo, negriežtos tvarkos, griežtos tvarkos? Jei sąryšis yra tvarkos, ar tai yra tiesinėstvarkos sąryšis, t.y. ar aibė A yra visiškai sutvarkyta? Jei sąryšis yra ekvivalentumo, raskiteekvivalentumo klases.Sprendimas: Pažymėkime šį sąryšį R. Tada

R ={

(2, 3), (2, 9), (3, 2), (3, 4), (4, 3), (4, 9), (9, 2), (9, 4)}

Sąryšio R matrica M bus tokia (sunumeruojame jos eilutes ir stulpelius aibės A elementais):

2 3 4 6 92 0 1 0 0 13 1 0 1 0 04 0 1 0 0 16 0 0 0 0 09 1 0 1 0 0

Prisiminkime, kad žymėjimas aRb reiškia, kad (a, b) ∈ R.

• Refleksyvumas. Ar aRa kiekvienam a ∈ A? T.y., ar a yra tarpusavyje pirminis su savimipačiu kiekvienam a ∈ A? Ne, pavyzdžiui, 2 ir 2 nėra tarpusavyje pirminiai. Tai matometaip pat ir iš to, kad ne visi matricos M pagrindinės įstrižainės elementai lygūs 1.

• Antirefleksyvumas. Ar neegzistuoja a ∈ A tokio, kad aRa? T.y., ar neegzistuoja a ∈ Atokio, kad a būtų tarpusavyje pirminis su savimi pačiu? Neegzistuoja. Yra antirefleksyvus.Tai matome taip pat ir iš to, kad visi matricos M pagrindinės įstrižainės elementai lygūs0.

• Simetriškumas. Ar visiems a, b ∈ A teisinga, kad aRb→ bRa? T.y., ar visiems a, b ∈ A išto, kad a ir b yra tarpusavyje pirminiai, išplaukia, kad ir b ir a yra tarpusavyje pirminiai?Taip. Tai matome taip pat ir iš to, kad jei kažkur matricoje M yra 1, tai simetriškaipagrindinės įstrižainės atžvilgiu taip pat būtinai yra 1, pavyzdžiui, matricos M elementas(3, 4) yra 1, tai (4, 3) irgi yra 1, ir t.t…

• Antisimetriškumas. Konspektuose pateikti keli ekvivalentiški antisimetriškumo apibrėži-mai. Naudosimės, pavyzdžiui, tokiu: ar visiems a, b ∈ A, a 6= b teisinga kad aRb→¬(bRa)?T.y., ar visiems skirtingiems a, b ∈ A iš to, kad a ir b yra tarpusavyje pirminiai, išplaukia,kad b ir a nėra tarpusavyje pirminiai? Ne, pavyzdžiui, 2 ir 3 yra tarpusavyje pirminiai, o3 ir 2 irgi yra tarpusavyje pirminiai. Tai matome taip pat ir iš to, kad jei kažkur matri-coje M yra 1, tai simetriškai pagrindinės įstrižainės atžvilgiu nebūtinai yra 0, pavyzdžiui,matricos M elementas (2, 3) yra 1, bet (3, 2) nėra 0.

31

Page 34: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

• Tranzityvumas. Ar visiems a, b, c ∈ A teisinga kad (aRb ∧ bRc)→ aRc? T.y. ar visiemsa, b, c ∈ A iš to, kad a ir b yra tarpusavyje pirminiai bei b ir c yra tarpusavyje pirminiai,išplaukia, kad a ir c yra tarpusavyje pirminiai? Ne, pavyzdžiui, 2 ir 3 yra tarpusavyjepirminiai, 3 ir 4 yra tarpusavyje pirminiai, bet 2 ir 4 nėra tarpusavyje pirminiai.

• Šis sąryšis nėra ekvivalentumo (nes ne tranzityvus), nėra nei griežtos, nei negriežtos tvarkos(nes ne tranzityvus).

Pastaba: Tarkime, norime nustatyti kurią nors sąryšio savybę (pavyzdžiui, refleksyvumą). Kad taiatliktume, prisimename tos savybės apibrėžimą (pavyzdžiui, aRa kiekvienam a ∈ A) ir perfor-muluojame jį tam konkrečiam sąryšiui (pavyzdžiui, ar a yra tarpusavyje pirminis su savimi pačiukiekvienam a ∈ A?). Tada ir bandome nuspręsti, ar ta savybė yra patenkinta. Pastebėkime, kadvisų mūsų nagrinėjamų saryšių savybių apibrėžimų struktūra yra tokia: visiems a ∈ A (arba visiemsa, b ar a, b, c) turi būti patenkinta kažkokia sąlyga (pavyzdžiui, visiems a ∈ A turi būti patenkintasąlyga aRa).

1. Kad parodytume, kad sąryšio savybė nepatenkinta, užtenka pateikti vieną pavyzdį tokio ele-mento a (arba elementų rinkinio a, b ar a, b, c), kuriam tos savybės sąlyga nepatenkinta (pa-vyzdžiui, a = 2: skaičius 2 nėra tarpusavyje pirminis su savimi pačiu).

2. Jei norime parodyti, kad sąryšio savybė patenkinta, reikia parodyti, kad savybės sąlyga yrapatenkinta visiems aibės A elementams a (arba elementų rinkiniams a, b ar a, b, c), t.y., neuž-tenka pateikti vieno elemento (ar elementų rinkinio) pavyzdžio, kuriam sąlyga galioja, kad jigaliotų visiems elementams (ar jų rinkiniams). Pavyzdžiui, jei norėtume parodyti, kad sąryšisrefleksyvus, reiktų parodyti, kad a yra tarpusavyje pirminis su savimi pačiu kiekvienam a ∈ A.

Uždavinys 5.2. Ar sąryšis R, apibrėžtas aibėje A, yra refleksyvus, antirefleksyvus, simetrinis,antisimetrinis, tranzityvus, ekvivalentumo, negriežtos tvarkos, griežtos tvarkos? Jei sąryšis yratvarkos, ar tai yra tiesinės tvarkos sąryšis, t.y. ar aibė A yra visiškai sutvarkyta? Jei sąryšis yraekvivalentumo, raskite ekvivalentumo klases.

1. Sąryšis žmonių aibėje A: aRb tada ir tik tada, kai a ir b yra vienmečiai. Laikysime, kadvienmečiai reiškia gimę tais pačiais metais. Pavyzdžiui, Joną, gimusį 2000 metų sausį, irPetrą, gimusį 2000 metų gruodį, laikysime vienmečiais.

2. Sąryšis aibėje A = N \ {0}: aRb tada ir tik tada, kai a | b (t.y. a dalija b be liekanos, arba,kitaip tariant, a yra b daliklis, b yra a kartotinis, b dalijasi iš a be liekanos). Pavyzdžiui,3 dalija 6, o 4 nedalija 6, ir 6 nedalija 3.

3. Sąryšis aibės D poaibių aibėje A = P(D), kur D –– bet kokia aibė, |D| > 2: BRC tadair tik tada, kai B ⊂ C (aibė B yra aibės C tikrasis poaibis, t.y. B ⊆ C ir B 6= C).

4. Sąryšis automobilių aibėje: aRb tada ir tik tada, kai a ir b valstybiniai numeriai sutampa.

5. Sąryšis aibėje N: aRb tada ir tik tada, kai a+ b = 10.

Sprendimas:

Pastaba: Remtis sąryšioR matrica M nustatydami sąryšioR savybes mes galime tik tada, kai galimeją sudaryti. Šiame uždavinyje aibė A yra pernelyg didelė, kad galėtume sudaryti matricą M , todėlremtis turėsime tik apibrėžimais.

1. • Refleksyvumas. Ar kiekvienas žmogus a yra vienmetis su pačiu savimi? Taip.• Antirefleksyvumas. Ar neegzistuoja žmogaus, kuris yra vienmetis su pačiu savimi?

Egzistuoja, pavyzdžiui, aš. Sąryšis nėra antirefleksyvus.• Simetriškumas. Ar visiems žmonėms a ir b iš to, kad a su b yra vienmečiai, išplaukia,

kad ir b su a yra vienmečiai? Taip.• Antisimetriškumas. Ar visiems skirtingiems žmonėms a ir b iš to, kad a ir b yra

vienmečiai, išplaukia, kad b ir a nėra vienmečiai? Ne. Kaip pavyzdį galėtume pateiktibet kuriuos du vienmečius žmones. Kad ir Joną ir Petrą, minimus uždavinio sąlygoje.

• Tranzityvumas. Ar visiems žmonėms a, b ir c iš to, kad a ir b yra vienmečiai bei b irc yra vienmečiai, išplaukia, kad a ir c yra vienmečiai? Taip, nes tokiu atveju jie visiyra vienmečiai.

32

Page 35: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

• Sąryšis yra ekvivalentumo. Ekvivalentumo klasės yra aibės žmonių, gimusių n-taisiaismetais, kur n kinta nuo pirmojo žmogaus atsiradimo metų iki šių metų (t. y. ekvi-valentumo klasės yra tokios aibės: …, aibė žmonių gimusių 1999 metais, aibė žmoniųgimusių 2000 metais, aibė žmonių gimusių 2001 metais,…).

• Sąryšis nėra nei griežtos, nei negriežtos tvarkos (nes ne antisimetrinis).

2. • Refleksyvumas. Ar a | a kiekvienam a ∈ A? Taip.• Antirefleksyvumas. Ar neegzistuoja a ∈ A tokio, kad a | a? Egzistuoja, pavyzdžiui,

1 | 1. Sąryšis nėra antirefleksyvus.• Simetriškumas. Ar visiems a, b ∈ A iš to, kad a | b, išplaukia, kad ir b | a? Ne,

pavyzdžiui, jei a = 3, o b = 6.• Antisimetriškumas. Ar visiems skirtingiems a, b ∈ A iš to, kad a | b, išplaukia, kad¬(b | a)? Taip, nes jei a | b ir a 6= b, tai a < b, todėl negali būti b | a. Beje, sveikųjųskaičių aibėje Z\{0} šis sąryšis nėra antisimetrinis, nes, pavyzdžiui, ir 5 |−5, ir −5 |5.Matome, kad sąryšio savybės priklauso ne tik nuo jo apibrėžimo, bet ir nuo aibės,kurioje jis apibrėžtas.

• Tranzityvumas. Ar visiems a, b, c ∈ A iš to, kad a |b bei b |c, išplaukia, kad a |c? Taip,nes jei a | b, tai galime užrašyti, kad b = at, kur t yra kažkoks nenulinis natūralusisskaičius. Taip pat ir sąlygą b | c galime užrašyti c = bk, k ∈ N \ {0}. Todėl c = a(tk),t.y., a | c.

• Sąryšis nėra ekvivalentumo (nes nėra simetrinis).• Sąryšis yra negriežtos tvarkos, nėra griežtos tvarkos (nes nėra antirefleksyvus). SąryšisR nėra tiesinės tvarkos sąryšis, kartu aibė A su šiuo tvarkos sąryšiu nėra visiškaisutvarkyta, nes, pavyzdžiui, elementai 3 ir 5 nėra palyginami (nei 3 dalija 5, nei 5dalija 3).

3. Pagal sąlygą, aibėje D yra bent du elementai, taigi D = {a, b, . . . }. Tokiu atveju, A =P(D) =

{∅, {a}, {b}, . . . , {a, b}, . . .

}.

• Refleksyvumas. Ar B ⊂ B kiekvienam B ∈ P(D)? Ne. Pavyzdžiui, {a} 6⊂ {a}.• Antirefleksyvumas. Ar neegzistuoja B ∈ P(D) tokio, kad B ⊂ B? Neegzistuoja, nesB ⊂ B reiškia, kad B 6= B, o to būti negali. Sąryšis yra antirefleksyvus.

• Simetriškumas. Ar visiems B,C ∈ P(D) iš to, kad B ⊂ C, išplaukia, kad ir C ⊂ B?Ne. Pavyzdžiui, {a} ⊂ {a, b}, bet {a, b} 6⊂ {a}.

• Antisimetriškumas. Ar visiems skirtingiems B,C ∈ P(D) iš to, kad B ⊂ C, išplau-kia, kad C 6⊂ B? Taip. Nes jei B ⊂ C, tai aibėje C yra bent vienas elementas,nepriklausantis aibei B, todėl C 6⊂ B. Taigi, šis sąryšis yra antisimetrinis.

• Tranzityvumas. Ar visiems B,C,E ∈ P(D) iš to, kad B ⊂ C bei C ⊂ E, išplaukia,kad B ⊂ E? Taip. Nes B ⊂ C reiškia, kad visi aibės B elementai priklauso ir aibei C,kurios visi elementai savo ruožtu priklauso aibei E, todėl aibė B yra aibės E poaibis.Be to, B ⊂ C taip pat reiškia, kad aibėje C yra bent vienas elementas, nepriklausantisaibei B, todėl aibėje E taip pat yra bent vienas elementas, nepriklausantis aibei B,ir aibė B yra aibės E tikrasis poaibis.

• Šis sąryšis nėra ekvivalentumo, nes nėra simetrinis.• Šis sąryšis nėra negriežtos tvarkos (nes nėra refleksyvus), bet yra griežtos tvarkos.

Sąryšis R nėra tiesinės tvarkos sąryšis, kartu aibė A = P(D) su šiuo tvarkos sąryšiunėra visiškai sutvarkyta. Kodėl? AibėjeD yra bent du elementai. Imkime bet kuriuosdu skirtingus jos elementus, tarkime, a ir b. Tada poaibiai {a} ir {b} nėra palyginami.

4. • Refleksyvumas. Ar kiekvieno automobilio valstybiniai numeriai sutampa su jo pačionumeriais? Taip.

• Antirefleksyvumas. Ar kiekvieno automobilio valstybiniai numeriai nesutampa su jopačio numeriais? Ne. Pavyzdžiui, automobilio su numeriu OVJ031 numeriai sutampasu jo pačio numeriais.

33

Page 36: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

• Simetriškumas. Ar visiems automobiliams a ir b teisinga, kad jei a ir b numeriaisutampa, tai sutaps ir b ir a numeriai? Taip. Sąryšis simetriškas.

• Antisimetriškumas. Naudokime kitą apibrėžimą, nei anksčiau. Ar visiems automo-biliams a ir b iš to, kad sutampa a ir b numeris ir iš to, kad sutampa b ir a numerisseka, kad a ir b yra tas pats automobilis? Iš tiesų, nėra dviejų skirtingų automobiliųsu vienodais valstyviniais numeriais. Taigi, net iš to, kad aRb seka, kad a = b. Taigisąryšis antisimetrinis.

• Tranzityvumas. Ar visiems automobiliams a, b ir c, iš to, kad a ir b turi tą patį numerįir iš to, kad b ir c turi tą patį numerį seka, kad a ir c turi tą patį numerį? Taip. Jukjei a ir b turi tą patį numerį, tai a = b. Jei b ir c turi tą patį numerį, tai b = c. Todėla = c, o automobiliai a ir c turi tą patį valstybinį numerį.

• Šis sąryšis yra ekvivalentumo. Ekvivalentumo klasės — aibės, kurias sudaro tik povieną automobilį. Kiek automobilių, tiek bus ir ekvivalentumo klasių.

• Šis sąryšis yra negriežtos tvarkos, bet nėra griežtos tvarkos (nes nėra antirefleksyvus).Sąryšis R nėra tiesinės tvarkos sąryšis, kartu visų automobilių aibė su šiuo tvarkossąryšiu nėra visiškai sutvarkyta. Iš tiesų sąryšio atžvilgiu negalima palyginti jokiųdviejų automobilių.

5. • Refleksyvumas. Ar bet kokiam natūraliajam skaičiui a + a = 10? Ne. Pavyzdžiui,3 + 3 6= 10.

• Antirefleksyvumas. Ar bet kokiam natūraliajam skaičiui netiesa, kad a+a = 10? Ne.Pavyzdžiui (ir tai vienintelis pavyzdys) 5 + 5 = 10.

• Simetriškumas. Ar iš to, kad a + b = 10, seka, kad b + a = 10? Taip. Juk sudėtiesoperacija yra komutatyvi. Tiksliau sakant, sumos rezultatas nesikeičia nuo to, kaddėmenys sukeičiami vietomis.

• Antisimetriškumas. Ar tiesa, kad bet kuriems dviems skirtingiems a ir b, jeigu a+b =10, tai b+ a 6= 10? Ne. Pavyzdžiui, 6 + 4 = 10 ir 4 + 6 = 10.

• Tranzityvumas. Ar iš to, kad a + b = 10 ir b + c = 10 seka, kad a + c = 10? Ne.Pavyzdžiui, 2 + 8 = 10, 8 + 2 = 10, tačiau 2 + 2 6= 10.

• Šis sąryšis nėra ekvivalentumo, nes nėra refleksyvus.• Šis sąryšis nėra nei negriežtos tvarkos, nei griežtos tvarkos, nes nėra tranzityvus.

Uždavinys 5.3. Krepšinio varžybos. Apibrėžkime sąryšius RL ir RŽ varžybose dalyvaujančiųkomandų aibėje tokiu būdu: aRLb tada ir tik tada, kai komanda a laimėjo prieš komandą b.Tuo tarpu aRŽ b tada ir tik tada, kai komanda a žaidė su komanda b.

1. Varžybose dalyvavo šešios komandos. Kiekviena iš jų sužaidė po vienerias rungtynes sukiekviena iš likusių komandų. Varžybų nugalėtoja skelbiama komanda, kuri iškovojo dau-giausiai pergalių (jei kelios komandos iškovojo po vienodą pergalių skaičių, aukštesnę vie-tą užėmė komanda, kurios bendras visų rungtynių įmestų ir praleistų taškų skirtumasdidžiausias). Rezultatai pateikiami lentelėje:

Pant. Lok. Pem. Erel. Vilk. Lūš. P. Sk. V.Panteros 75:69 73:71 77:64 85:67 94:81 5 404:352 +52 ILokiai 69:75 89:76 86:88 110:83 82:64 3 436:386 +50 IIPempės 71:73 76:89 88:63 91:78 93:71 3 419:374 +45 IIIEreliai 64:77 88:86 63:88 86:67 95:74 3 396:392 +4 IVVilkai 67:85 83:110 78:91 67:86 81:75 1 376:447 -71 VLūšys 81:94 64:82 71:93 74:95 75:81 0 365:445 -80 VI

2. Varžybose dalyvavo aštuonios komandos, kurios buvo padalintos į dvi grupes. Kiekvienojegrupėje kiekviena komanda žaidė su kiekviena po vieną kartą. Iš grupės į kitą etapą išėjopo dvi daugiausiai pergalių iškovojusias komandas (jei kelios komandos iškovojo po vienodąpergalių skaičių, aukštesnę vietą grupėje užėmė komanda, kurios bendras visų rungtyniųįmestų ir praleistų taškų skirtumas didžiausias). Pusfinalių nugalėtojai kovėsi finale dėlčempionų vardo. Rezultatai pateikiami lentelėse:

34

Page 37: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

A Beržai Ąžuolai Klevai Guobos Perg. Skirt VietaBeržai 87:84 95:96 107:89 2 289:269 +20 IĄžuolai 84:87 76:79 85:70 1 245:236 +9 IIIKlevai 96:95 79:76 88:91 2 263:262 +1 IIGuobos 89:107 70:85 91:88 1 250:280 -30 IV

B Uosiai Kaštonai Gluosniai Pušys Perg. Skirt. VietaUosiai 81:66 82:70 85:68 3 248:204 +44 I

Kaštonai 66:81 73:78 96:79 1 235:238 -3 IIGluosniai 70:82 78:73 73:88 1 221:243 -22 IV

Pušys 68:85 79:96 88:73 1 235:254 -19 III

Beržai 74Kaštonai 111Uosiai 79Klevai 69

Kaštonai 91Uosiai 86

Sprendimas:

1. Pradėkime nuo sąryšio RL.

• Refleksyvumas. Ar kiekviena iš komandų yra laimėjusi prieš save? Ne. Pavyzdžiui,Panteros nėra laimėjusios prieš Panteras.

• Antirefleksyvumas. Ar kiekviena iš komandų nėra laimėjusi prieš save? Taip. Ko-manda varžybose prieš save pačią nežaidžia, taigi ir laimėti negali.

• Simetriškumas. Ar iš to, kad komanda A yra laimėjusi prieš komandą B seka tai,kad komanda B yra laimėjusi prieš komandą A? Ne. Iš tiesų Lokiai prieš Pempesyra laimėję, o Pempės prieš Lokius — ne.

• Antisimetriškumas. Ar bet kurioms dviems skritingoms komandoms teisinga, kadjeigu A laimėjo prieš B, tai B nelaimėjo prieš A? Taip. Juk varžybose kiekvienakomandų pora susitiko tik kartą, taigi jeigu rungtynes laimėjo vienas iš varžovų, taikitas pralošė, t.y. nelaimėjo. Sąryšis antisimetrinis.

• Tranzityvumas. Ar tiesa, kad jeigu A komanda laimėjo prieš B, o B komanda priešC, tai ir A komanda laimėjo prieš C? Ne. Iš tiesų varžybose būna visokių situacijų.Pavyzdžiui, Lokiai laimėjo prieš Pempes, Pempės laimėjo prieš Erelius, bet Lokiaiprieš Erelius nelaimėjo, o pralošė.

• Šis sąryšis nėra ekvivalentumo, nes nėra simetrinis. Be to jis ir ne tranzityvus.• Šis sąryšis nėra nei negriežtos tvarkos, nei griežtos tvarkos, nes nėra tranzityvus.

Dabar pereikime prie sąryšio RŽ .

• Refleksyvumas. Ar kiekviena iš komandų yra žaidusi prieš save? Ne. Pavyzdžiui,Panteros nėra žaidusios su Panteromis.

• Antirefleksyvumas. Ar nėra tokios komandos, kuri būtų žaidusi prieš save? Nėra,taigi sąryšis antirefleksyvus.

• Simetriškumas. Ar iš to, kad komanda A yra žaidusi su komanda B seka tai, kadkomanda B yra žaidusi su komanda A? Taip, taigi sąryšis simetrinis.

• Antisimetriškumas. Ar bet kurioms dviems skirtingoms komandoms teisinga, kadjeigu komanda A žaidė su B, tai B nežaidė su A? Ne. Pavyzdžiui, Vilkai žaidė suLūšimis, taigi ir Lūšys su Vilkais žaidė.

• Tranzityvumas. Ar tiesa, kad jeigu A komanda žaidė su B, o B komanda su C, taiir A komanda žaidė su C? Ne. Pavyzdžiui, Vilkai su Lūšimis žaidė, Lūšys su Vilkaisžaidė, tačiau Vilkai su Vilkais nėra žaidę.

35

Page 38: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Pastaba: Atkreipkite dėmesį, kad jeigu sąryšis yra simetrinis ir antirefleksyvus, tai jisnegali tuo pačiu būti ir tranzityvus, nebent jis yra tuščias. Tai įrodyti galime prieštarosmetodu. Tarkime turime simetrinį, antirefleksyvų ir tranzityvų netuščią sąryšį R. Taigiegzistuoja du elementai a ir b tokie, kad aRb. Beje, a 6= b, nes sąryšis antirefleksyvus.Kadangi sąryšis simetrinis, tai iš to kad aRb seka, kad bRa. Dėl sąryšio tranzityvumo išto, kad aRb ir bRa, galime daryti išvadą, kad aRa, o tai prieštarauja tam, kad sąryšisyra antirefleksyvus.Šiame atsakyme pateiktas pavyzdys tėra šio įrodymo demonstracija. Iš tiesų, kai kuriosiš šių sąvybių yra susijusios. Pavyzdžiui, nagrinėjant sąryšį aibėje A, kuriam teisinga, kadkiekvienas aibės A elementas yra sąryšyje su bent vienu kitu aibės A elementu, galimateigti, kad jei šis sąryšis tranzityvus ir simetrinis, tai jis refleksyvus.

• Šis sąryšis nėra ekvivalentumo, nes nėra tranzityvus. Be to, jis nėra refleksyvus.• Šis sąryšis nėra nei negriežtos tvarkos, nei griežtos tvarkos, nes nėra antisimetrinis.

Be to, taip pat nėra tranzityvus.

2. Šio uždavinio sprendimas panašus į praeitą variantą, todėl detaliau nagrinėsime tik tasvietas, kurios skiriasi. Pradėkime nuo sąryšio RL.

• Refleksyvumas. Sąryšis nerefleksyvus.• Antirefleksyvumas. Sąryšis antirefleksyvus.• Simetriškumas. Sąryšis nesimetrinis.• Antisimetriškumas. Ar bet kurioms dviems skritingoms komandoms teisinga, kad

jeigu A laimėjo prieš B, tai B nelaimėjo prieš A? Ne. Finale susitiko dvi B grupėskomandos: Uosiai ir Kaštonai. Nors Uosiai šventė pergalę grupės varžybose, tačiaufinale buvo stipresni Kaštonai.

• Tranzityvumas. Sąryšis netranzityvus. Pavyzdžiu galėtų būti Ąžuolų, Guobų ir Klevųtarpusavio rungtynių rezultatai A grupėje. Alternatyvus pavyzdys galėtų būti toks:B grupėje Gluosniai laimėjo prieš Kaštonus, Kaštonai pusfinalyje įveikė Beržus, tačiauGluosniai nėra įveikę Beržų, nes šios komantos varžybose tiesiog nežaidė. Iš tiesųužtektų pateikti vieną iš šių pavyzdžių.

• Šis sąryšis nėra ekvivalentumo, nes nėra simetrinis. Be to jis ir ne tranzityvus.• Šis sąryšis nėra nei negriežtos tvarkos, nei griežtos tvarkos, nes nėra antisimetrinis.

Be to, taip pat nėra tranzityvus.

Dabar pereikime prie sąryšio RŽ .

• Refleksyvumas. Sąryšis nerefleksyvus.• Antirefleksyvumas. Sąryšis antirefleksyvus.• Simetriškumas. Sąryšis simetrinis.• Antisimetriškumas. Sąryšis nėra antisimetrinis.• Tranzityvumas. Ar tiesa, kad jeigu A komanda žaidė su B, o B komanda su C, tai

ir A komanda žaidė su C? Ne. Pavyzdžiui, Klevai su Uosiais žaidė, Uosiai žaidė suPušimis, tačiau Klevai su Pušimis nėra žaidę.

• Šis sąryšis nėra ekvivalentumo, nes nėra tranzityvus.• Šis sąryšis nėra nei negriežtos tvarkos, nei griežtos tvarkos, nes nėra antisimetrinis.

Be to, taip pat nėra tranzityvus.

36

Page 39: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Uždaviniai savarankiškam darbuiUždavinys 5.4. Ar sąryšis R, apibrėžtas aibėje A, yra refleksyvus, antirefleksyvus, simetrinis,antisimetrinis, tranzityvus, ekvivalentumo, negriežtos tvarkos, griežtos tvarkos? Jei sąryšis yratvarkos, ar tai yra tiesinės tvarkos sąryšis, t.y. ar aibė A yra visiškai sutvarkyta? Jei sąryšis yraekvivalentumo, raskite ekvivalentumo klases.

1. Sąryšis žmonių aibėje A: aRb tada ir tik tada, kai a ir b turi tą patį senelį arba tą pačiąsenelę.

2. Sąryšis sveikųjų skaičių aibėje A = Z: aRb tada ir tik tada, kai a = |b|.

3. Sąryšis žmonių aibėje A: aRb tada ir tik tada, kai a sveria daugiau už b.

4. Sąryšis sveikųjų skaičių aibėje A = Z: aRb tada ir tik tada, kai a = b+ 1.

5. Sąryšis aibėje A = R\{0}: aRb tada ir tik tada, kai ab > 0 (čia R— realiųjų skaičių aibė).

37

Page 40: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Uždavinių savarankiškam darbui sprendimai ir atsakymai

Uždavinio 5.4 sprendimas ir atsakymai:

1. (a) Refleksyvumas. Ar kiekvienas žmogus a turi tą patį senelį arba tą pačią senelę kaipir jis pats? Taip.

(b) Antirefleksyvumas. Ar neegzistuoja žmogaus, kuris turi tą patį senelį arba tą pačiąsenelę kaip ir jis pats? Egzistuoja, pavyzdžiui, aš. Sąryšis nėra antirefleksyvus.

(c) Simetriškumas. Ar visiems žmonėms a ir b iš to, kad a ir b turi tą patį senelį arba tąpačią senelę, išplaukia, kad ir b ir a turi tą patį senelį arba tą pačią senelę? Taip.

(d) Antisimetriškumas. Ar visiems skirtingiems žmonėms a ir b iš to, kad a ir b turi tąpatį senelį arba tą pačią senelę, išplaukia, kad b ir a neturi nei to paties senelio, neitos pačios senelės? Ne. Pavyzdžiui, paimkime bet kuriuos du žmones, turinčius tąpatį senelį arba tą pačią senelę (brolius/seseris ar pusbrolius/pusseseres).

(e) Tranzityvumas. Ar visiems žmonėms a, b ir c iš to, kad a ir b turi tą patį senelį arbatą pačią senelę bei b ir c turi tą patį senelį arba tą pačią senelę, išplaukia, kad a irc turi tą patį senelį arba tą pačią senelę? Ne, nes, pavyzdžiui, jei a ir b turi tą patįsenelį, ir b ir c turi tą patį senelį, tai tie žmogaus b seneliai gali būti skirtingi (iš tėvoir iš motinos pusės), todėl a ir c gali neturėti to paties senelio.

(f) Sąryšis nėra ekvivalentumo, nes nėra tranzityvus.(g) Sąryšis nėra nei griežtos, nei negriežtos tvarkos, nes nėra tranzityvus.

2. (a) Refleksyvumas. Ar a = |a| kiekvienam a ∈ Z? Ne, pavyzdžiui, −1 6= | − 1|. Sąryšisnėra refleksyvus.

(b) Antirefleksyvumas. Ar neegzistuoja a ∈ Z tokio, kad a = |a|? Egzistuoja, pavyzdžiui,1 = |1|. Sąryšis nėra antirefleksyvus.

(c) Simetriškumas. Ar visiems a, b ∈ Z iš to, kad a = |b|, išplaukia, kad ir b = |a|? Ne,pavyzdžiui, jei a = 1, o b = −1.

(d) Antisimetriškumas. Ar visiems skirtingiems a, b ∈ Z iš to, kad a = |b|, išplaukia, kadb 6= |a|? Taip, nes iš to, kad a ir b yra skirtingi ir a = |b|, išplaukia, kad a = −b irb < 0, todėl b 6= |a|.

(e) Tranzityvumas. Ar visiems a, b, c ∈ Z iš to, kad a = |b| bei b = |c|, išplaukia, kada = |c|? Taip, nes iš to, kad b = |c|, išplaukia, kad b > 0, todėl a = |b| = b = |c|.

(f) Sąryšis nėra ekvivalentumo (nes nėra refleksyvus).(g) Sąryšis nėra nei griežtos (nes nėra antirefleksyvus), nei negriežtos tvarkos (nes nėra

refleksyvus).

3. (a) Refleksyvumas. Ar kiekvienas žmogus sveria daugiau už jį patį? Ne. Pavyzdžiuitinka bet kuris žmogus. Sąryšis nėra refleksyvus.

(b) Antirefleksyvumas. Ar kiekvienas žmogus nesveria daugiau, negu jis pats? Taip.Jeigu žmogaus svoris x, tada netiesa, kad x > x. Sąryšis antirefleksyvus.

(c) Simetriškumas. Ar visiems žmonėms teisinga, kad jeigu a sveria daugiau už b, taib sveria daugiau už a? Ne. Pavyzdžiui tinka bet kokie du (skirtingai sveriantys)žmonės. Sąryšis ne simetriškas.

(d) Antisimetriškumas. Ar visiems skirtingiems žmonėms, jei a sveria daugiau už b, tai bnesveria daugiau už a. Taip. Sąryšis antisimetrinis.

(e) Tranzityvumas. Ar visiems žmonėms a, b, c iš to, kad a sveria daugiau už b bei bsveria daugiau už c, išplaukia, kad a sveria daugiau už c? Taip. Sąryšis tranzityvus.

(f) Sąryšis nėra ekvivalentumo (nes nėra refleksyvus).(g) Sąryšis nėra negriežtos tvarkos (nes nėra refleksyvus), bet yra griežtos tvarkos. Žmo-

nių aibė su šiuo sąryšiu yra visiškai sutvarkyta, nes bet kurių dviejų skirtingų žmoniųsvoriai skiriasi — vienas yra sunkesnis už kitą.

38

Page 41: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

4. (a) Refleksyvumas. Ar a = a + 1 kiekvienam a ∈ Z? Ne, pavyzdžiui, 1 6= 1 + 1 = 2.Sąryšis nėra refleksyvus.

(b) Antirefleksyvumas. Ar neegzistuoja a ∈ Z tokio, kad a = a + 1? Neegzistuoja, neslygtis a = a+ 1 šaknų neturi. Sąryšis antirefleksyvus.

(c) Simetriškumas. Ar visiems a, b ∈ Z iš to, kad a = b+ 1, išplaukia, kad ir b = a+ 1?Ne, pavyzdžiui, jei a = 2, o b = 1.

(d) Antisimetriškumas. Ar visiems skirtingiems a, b ∈ Z iš to, kad a = b + 1, išplaukia,kad b 6= a+ 1? Taip, nes iš to, kad a = b+ 1 seka, kad b = a− 1 6= a+ 1.

(e) Tranzityvumas. Ar visiems a, b, c ∈ Z iš to, kad a = b + 1 bei b = c + 1, išplaukia,kad a = c+ 1? Ne, pavyzdžiui, a = 3, b = 2, c = 1.

(f) Sąryšis nėra ekvivalentumo (nes nėra refleksyvus).(g) Sąryšis nėra nei griežtos, nei negriežtos tvarkos (nes nėra tranzityvus).

5. (a) Refleksyvumas. Ar a · a > 0 kiekvienam a ∈ R \ {0}? Taip, nes a · a = a2, o kiekvienonenulinio skaičiaus kvadratas yra teigiamas. Sąryšis refleksyvus.

(b) Antirefleksyvumas. Ar neegzistuoja a ∈ R \ {0} tokio, kad a · a > 0? Egzistuoja,pavyzdžiui, 1 · 1 = 1 > 0. Sąryšis nėra antirefleksyvus.

(c) Simetriškumas. Ar visiems a, b ∈ R \ {0} iš to, kad ab > 0, išplaukia, kad ir ba > 0?Taip, nes daugyba yra komutatyvi.

(d) Antisimetriškumas. Ar visiems skirtingiems a, b ∈ R\{0} iš to, kad ab > 0, išplaukia,kad netiesa, kad ba > 0? Ne, pavyzdžiui kai a = 1, o b = 2.

(e) Tranzityvumas. Ar visiems a, b, c ∈ Z iš to, kad ab > 0 bei bc > 0, išplaukia, kadac > 0? Taip. Jei ab > 0, vadinasi arba abu a ir b teigiami, arba jie abu neigiami.Kadangi bc > 0, vadinasi c ženklas yra toks pats. Taigi, ac > 0.

(f) Sąryšis yra ekvivalentumo Ekvivalentumo klasės yra dvi — visi teigiami realieji skai-čiai, ir visi neigiami realieji skaičiai.

(g) Sąryšis nėra nei griežtos, nei negriežtos tvarkos (nes nėra antisimetrinis).

39

Page 42: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

6 pratybos

Ekvivalenčios aibės

Uždaviniai pratybomsUždavinys 6.1. Nustatykite ar duota aibė A yra skaičioji

1. A — pirminių skaičių aibė.

2. A = P1 ∪ P2 ∪ P3 ∪ . . . , kur P1 = {2, 3, 5, 7, 11, 13, . . . } yra pirminių skaičių aibė, P2 ={22, 32, 52, 72, 112, 132, . . . } — pirminių skaičių kvadratų aibė ir t.t... Tokiu atveju aibėPi = {2i, 3i, 5i, 7i, 11i, 13i, . . . } yra pirminių skaičių i-tųjų laipsnių aibė.

3. Dekarto koordinačių sistemoje vertikaliai pradedant x = 0 ir horizontaliai pradedant y = 0kas 1 nubrėžtos tiesės (žiūrėti brėžinį). A — šių tiesių visų susikirtimo taškų aibė.

x1

y

1

4. A — visų adresų Vilniuje aibė. Laikykite, kad kiekvienas adresas sudarytas iš gatvėspavadinimo, namo ir buto numerio.

5. A — visų įmanomų Pascal programavimo kalbos kintamųjų vardų aibė.

6. A — visų lietuvių kalbos žodžių aibė.

7. A — visų įmanomų begalinių didėjančių natūraliųjų skaičių sekų aibė. T.y., tokių sekųa1, a2, a3, . . . , kur ai ∈ N visiems i ∈ N−, be to, ai < aj , visiems i, j ∈ N−, kai i < j.

Sprendimas:

1. A ⊂ N, o bet kuris skaičios aibės poaibis yra numeruojamoji aibė. Kadangi A nėrabaigtinė, vadinasi ji yra skaičioji.

2. Iš tiesų Pi ⊂ N visiems i, taigi visos šios aibės yra skaičiosios. Pažymėkime P ={P1,P2, . . . }. Ši aibė yra skaičioji sistema. Taigi, A yra skaičiosios sistemos skaičiųjųaibių sąjunga. O tai yra skaičioji aibė.

3. Aibę A būtų galima apibrėžti ir taip: {(x, y) : x, y ∈ Z}. Kitaip sakant, tai yra dviejųsveikųjų skaičių aibių Dekarto sandauga. Kadangi sveikųjų skaičių aibė yra skaičioji, todėlir aibė A yra skaičioji.

40

Page 43: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

4. Į adresų aibę galima žiūrėti kaip į gatvių pavadinimų ir dviejų natūraliųjų skaičių aibiųDekarto sandaugos poaibį (ne visose gatvėse yra vienodai namų ir nevisuose namuosevienodai butų). Kaip ten bebūtų, gatvių skaičius yra baigtinis. Lygiai taip pat baigti-nės yra skirtingų namų ir būtų numerių aibės. Taigi ir adresų aibė yra baigtinė (taiginumeruojamoji, bet ne skaičioji).

5. Paskalio kintamųjų vardai turi prasidėti lotyniška raide arba pabraukimu (_), o susidėtigali iš lotyniškų raidžių, skaitmenų ir pabraukimų. Taigi, A yra visų žodžių abėcėlėje,susidedančioje iš lotyniškų raidžių, skaitmenų ir pabraukimo, aibės poaibis. Kadangi šiabėcėlė yra baigtinė, taigi visų jos žodžių aibė yra skaičioji, o visų jos žodžių aibės poaibisA yra numeruojamoji aibė. Tačiau aibė A nėra baigtinė, taigi yra skaičioji.

6. Visų lietuvių kalbos žodžių aibė yra poaibis visų žodžių abėcėlėje, sudarytoje iš lietuviškųsimbolių, aibės. Taigi, aibė A yra numeruojamoji. Kita vertus, lietuvių kalbos žodžiaiyra kaupiami ir aiškinami žodynuose (pavyzdžiui, Dabartinės lietuvių kalbos žodynas),taigi jų skaičius yra baigtinis. Net ir pridėjus visas visų žodžių formas (kurių taip pat yrabaigtinis kiekis) gautume didelę, tačiau baigtinę (o ne skaičiąją) aibę.

7. Ši aibė nėra skaičioji. Įrodymas galėtų būti panašus į įrodymą, kad visų atviro intervalo(0, 1) realiųjų skaičių aibė nėra skaičioji.Tarkime priešingai, kad aibė A yra skaičioji, taigi įmanoma sunumeruoti visus jos elemen-tus (skaičių sekas) ir užrašyti pradedant pirmuoju numerių didėjimo tvarka:

1: a11, a

12, a

13, . . .

2: a21, a

22, a

23, . . .

3: a31, a

32, a

33, . . .

. . . . . .

Sudarykime dar vieną seką b1, b2, b3, . . . tokiu būdu: b1 = a11 + 1, o bi = max(bi−1, a

ii) + 1

visiems i > 2. Čia max yra maksimumo funkcija:

max(a, b) ={a, jei a > b,b, priešingu atveju.

Tokiu atveju, visiems i sekos elementai bi ∈ N. Be to, bi < bj visiems i, j ∈ N−, jeigui < j. Juk kiekvienas iš elementų bent vienetu didesnis už prieš tai buvusįjį. Taigi, šiseka turėtų turėti kokį nors numerį ir būti užrašyta auksčiau pateiktame sąraše. Tačiauto būti negali, nes ji skiriasi nuo visų sąraše užrašytųjų sekų. Iš tiesų, kiekvienam i galimateigti, kad bi 6= aii, nes bi yra bent vienetu didesnis už aii. Taigi, gavome seką, kuri nebuvosunumeruota ir kartu prieštarą tam, kad įmanoma sunumeruoti visus aibės A elementus.Kitaip sakant, parodėme, kad aibė A nėra skaičioji.

Uždavinys 6.2. Apibrėžkite bijekciją tarp šių aibių:

1. Lyginių sveikųjų skaičių aibės Z2 = {. . . ,−4,−2, 0, 2, 4, . . . } ir natūraliųjų skaičių aibėsN = {0, 1, 2, 3, . . . }.

2. Realiųjų skaičių aibės R ir realių skaičių intervalo (0,∞).

3. Natūraliųjų skaičių aibės N ir natūraliųjų skaičių, nesidalijančių iš 3, aibės A = {n ∈ N :n 6= 3k, k ∈ N}.

4. Natūraliųjų skaičių 3 kartotinių aibės N3 = {3, 6, 9, 12 . . . } ir sveikųjų nelyginių skaičiųaibės Zn = {. . . ,−3,−1, 1, 3, . . . }.

5. Realių teigiamų skaičių aibės R+ = (0,∞) ir realių skaičių intervalo (0, 1).

6. Fibonači skaičių aibės F ir natūraliųjų skaičių kvadratų aibės N2 = {0, 1, 4, 9, . . . }. Fibo-nači skaičius apibrėžkime taip: F = {f1, f2, f3, . . . }, kur f1 = 1, f2 = 2, o fi = fi−2 +fi−1visiems i > 3.

Sprendimas: Atkreipkite dėmesį, kad šiuose sprendimuose pateikti atsakymai yra ne vieninteliaiteisingi. Bijekcijas tarp dviejų aibių paprastai įmanoma gauti įvairiais būdais.

41

Page 44: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

1. f(x) ={x, jei x > 0,−x− 1, jei x < 0.

2. Rodiklinė funkcija, pavyzdžiui f(x) = ex. Apskritai tinka visos funkcijos f(x) = ax irf(x) = a−x, kur a ∈ R, a > 0 ir a 6= 1.

3. Nesunku pastebėti, kad aibė A = {1, 2, 4, 5, 7, 8, 10, 11, . . . } yra sąjunga dviejų aibių:A1 = {1, 4, 7, 10, . . . } = {1 + 3k : k ∈ N} ir A2 = {2, 5, 8, 11, . . . } = {2 + 3k : k ∈ N}.Atvaizduokime lyginius natūraliuosius skaičius į aibę A1, o nelyginius — į A2. Kad būtųlengviau, iš pradžių lyginius (atitinkamai, nelyginius) skaičius atvaizduokime į natūraliųskaičių aibę N = {0, 1, 2, . . . }, o tada pastaruosius atvaizduosime į A1 (atitinkamai A2)naudodami formulę 1 + 3k (atitinkamai 2 + 3k). Lyginiai natūralieji skaičiai į aibę Natvaizduojami funkcija n

2 , nelyginiai — n−12 . Įstatome į formules vietoj k ir gauname:

f(n) ={

1 + 3n2 , jei n lyginis,

2 + 3(n−1)2 , jei n nelyginis.

4. Sveikųjų nelyginių skaičių aibė sudaryta iš teigiamų ir neigiamų skaičių. Pažymėkimeteigiamų nelyginių skaičių aibę Z+

n = {1, 3, 5, . . . }, o neigiamų nelyginių skaičių aibęZ−n = {−1,−3,−5, . . . }. Į dvi dalis padalinkime ir aibę N3: kas antrą jos elementą dėkimeį vieną dalį, o kas antrą į kitą. Tegul N1

3 = {3, 9, 15, . . . }, o N23 = {6, 12, 18, . . . }. Dabar

pasirinkime, kurią aibės N3 dalį atvaizduosime į kurią aibės Zn dalį. Pavyzdžiui, apibrėž-kime bijekciją tarp aibių N1

3 ir Z+n bei tarp N2

3 ir Z−n . Prieš tai aibės N3 dalis atvaizduokimetiesiog į aibę N.Aibę N1

3 atvaizduoti į aibę N galima funkcija n−36 . Norint aibę N atvaizduoti į Z+

n tinkafunkcija 2n + 1. Belieka šias dvi funkcija sukombinuoti į vieną: 2n−3

6 + 1. Analogiškaiaibę N2

3 atvaizduoti į aibę N galima funkcija n6 − 1. Norint aibę N atvaizduoti į Z−n tinka

funkcija −2n−1. Belieka šias dvi funkcija sukombinuoti į vieną: −2(n6−1)−1. Suprastinusgautuosius reiškinius, gausime tokį rezultatą:

f(n) ={

n3 , jei n nedalus iš 6,1− n

3 , jei n dalus iš 6.

5. Šią bijekciją galima parašyti dviem žingsniais: visų pirma, atvaizduokime aibę R+ į aibęR. Po to pastarąją atvaizduokime į intervalą (0, 1). Pirmajam žingsniui puikiai tinkalogaritmas. Pagrindas nėra svarbus, svarbu, kad būtų teigiamas ir nelygus 1. Antrajamžingsniui tiktų arktangentas (arba, žinoma, arkkotangentas), tik, reikia jį kiek pakoreguoti.Visų pirma, arktangento reikšmių aibė yra (−π2 ,

π2 ). Šio intervalo plotis lygus π, o kad

būtų 1, kaip ir intervalo (0, 1) plotis, funkciją reikia dalinti iš π. Be to, intervalą reikiapastumti per 1

2 į dešinę, taigi šį skaičių reikia pridėti prie funkcijos rezultato. Taigi, antrojožingsnio funkcija bus arctg x

π + 12 . Belieka apjungti abu žingsnius į vieną galutinę funkciją:

f(x) = arctg(log2 x)π

+ 12

Tarp tinkamų atsakymų yra ir tokia funkcija: f(x) = a−x, kur a > 1, arba f(x) = ax, kur0 < a < 1.

6. Tegul Φ(n) bus funkcija, parodanti Fibonači skaičiaus n numerį. Pavyzdžiui, Φ(1) = 1, oΦ(8) = 5. Ši funkcija yra bijekcija tarp aibės F ir N−, nes kiekvienas Fibonači skaičiusturi tik vieną numerį, jokie du skirtingi skaičiai neturi to paties numerio ir visus numeriusatitinka lygiai vienas Fibonači skaičius. Tokiu atveju ieškomoji bijekcija bus:

f(n) =(Φ(n)− 1

)2

42

Page 45: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Uždaviniai savarankiškam darbuiUždavinys 6.3. Apibrėžkite bijekciją tarp šių aibių:

1. Aibės N ir aibės {5, 6, 7, 8, 9, . . . } = {x ∈ N : x > 5}.

2. Realių skaičių intervalų [0, 1) ir ( 14 ,

12 ].

3. Aibės R ir realių skaičių intervalo (0, 1).

4. Realių skaičių intervalo (−1, 1) ir aibės R.

43

Page 46: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Uždavinių savarankiškam darbui sprendimai ir atsakymai

Uždavinio 6.3 sprendimas ir atsakymai:

1. Užtenka pastebėti, kad norint gauti aibę {5, 6, 7, 8, 9, . . . } natūraliųjų skaičių aibę reikia„pastumti“ per penkias pozicijas. Tam tinka funkcija f(x) = x+ 5.

2. Pirmiausia, norint atvaizduoti intervalą [0, 1) į ( 14 ,

12 ] jį reikia „apversti“. Pritaikę funkciją

f(x) = −x iš intervalo [0, 1) gausime intervalą (−1, 0]. Pastebėkime, kad šio intervaloplotis yra 1, o intervalo ( 1

4 ,12 ] — tik 1

4 . Norėdami suvienodinti pločius, padalinkime iš 4.Taigi, funkcija f(x) = −x4 intervalą [0, 1) atvaizduosime į (− 1

4 , 0]. Beliko tik „pastumti“šį intervalą per 1

2 . Rezultatas f(x) = 12 −

x4 arba f(x) = 2−x

4 .

3. Realių skaičių aibę į baigtinio pločio intervalą atvaizduoti gali trigonometrinės funkcijostokios kaip arctg x arba arcctg x. Paprasčiausias sin x ar cosx tam netinka, nes gautasisatvaizdis nebus injekcija. Tačiau, funkcijos arctg x reikšmių sritis yra (−π2 ; π2 ). Gautojointervalo plotis yra π, o reikia gauti 1 pločio intervalą. Funkcijos rezultatą padalinus išπ gausime tinkamą plotį: (− 1

2 ,12 ). Belieka šį intervalą „pastumti“ per 1

2 . Rezultatas:f(x) = arctg x

π + 12 .

Galimi ir kiti variantai: f(x) = arcctg xπ arba, pavyzdžiui:

f(x) =

12 · 2

x, kai x < 0,12 ·

12x + 1

2 , kai x > 0,12 , kai x = 0.

4. Šį kartą reikia baigtinio pločio intervalą atvaizduoti į visą realių skaičių aibę. Pasinau-dokime funkcija tg x. Ši funkcija bijektyviai į realių skaičių aibę atvaizduotų, pavyzdžiui,intervalą (−π2 ; π2 ). Tuo tarpu šiuo atveju reikia atvaizduoti intervalą (−1; 1). Taigi šįintervalą reikia „praplėsti“ padauginant iš π

2 . Rezultatas — f(x) = tg xπ2 .

Šiuo atveju neabejotinai tinka ir funkcija ctg x: f(x) = ctg (x+1)π2 .

44

Page 47: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

7 pratybos

Teiginių logikos normalinės formos

Uždaviniai pratybomsUždavinys 7.1. Raskite formulės (p | q)↔ (¬q | r):

1. TNDF (tobulą normaliąją disjunkcinę formą),

2. TNKF (tobulą normaliąją konjunkcinę formą),

naudodamiesi teisingumo reikšmių lentele.Sprendimas:

1. Visų pirma sudarome formulės teisingumo reikšmių lentelę ir pažymime interpretacijas(lentelės eilutes), su kuriomis formulė įgyja reikšmę t:

p q r p | q ¬q ¬q | r (p | q)↔ (¬q | r)t t t k k t kt t k k k t kt k t t t k kt k k t t t tk t t t k t tk t k t k t tk k t t t k kk k k t t t t

Iš kiekvienos pažymėtos eilutės gauname po elementarią konjunkciją ir jas sujungiamedisjunkcijomis. Elementarią konjunkciją gauname, t keisdami atitinkamu kintamuoju, o k–– atitinkamo kintamojo neiginiu. Pavyzdžiui, pirmoje nuspalvintoje eilutėje p = t, q = k,r = k. Todėl šią eilutę atitiks elementari konjunkcija p ∧ ¬q ∧ ¬r. Tokiu būdu gaunameduotos formulės NDF, kuri yra tobula, nes į kiekvieną elementarią konjunkciją po vienąkartą įeina visi kintamieji:

(p | q)↔ (¬q | r) ∼ (p ∧ ¬q ∧ ¬r) ∨ (¬p ∧ q ∧ r) ∨ (¬p ∧ q ∧ ¬r) ∨ (¬p ∧ ¬q ∧ ¬r)

2. Teisingumo reikšmių lentelė bus ta pati, tik dabar joje pažymime interpretacijas (lentelėseilutes), su kuriomis formulė įgyja reikšmę k.

p q r p | q ¬q ¬q | r (p | q)↔ (¬q | r)t t t k k t kt t k k k t kt k t t t k kt k k t t t tk t t t k t tk t k t k t tk k t t t k kk k k t t t t

45

Page 48: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Darome atvirkščiai, negu darėme, skaičiuodami TNDF: iš kiekvienos pažymėtos eilutėsgauname po elementarią disjunkciją ir jas sujungiame konjunkcijomis. Elementarią dis-junkciją gauname, t keisdami atitinkamo kintamojo neiginiu, o k –– atitinkamu kintamuo-ju. Pavyzdžiui, paskutinėje nuspalvintoje eilutėje p = k, q = k, r = t. Todėl šią eilutęatitiks elementari disjunkcija p ∨ q ∨ ¬r. Tokiu būdu gauname duotos formulės TNKF:

(p | q)↔ (¬q | r) ∼ (¬p ∨ ¬q ∨ ¬r) ∧ (¬p ∨ ¬q ∨ r) ∧ (¬p ∨ q ∨ ¬r) ∧ (p ∨ q ∨ ¬r)

Uždavinys 7.2. Raskite formulių TNDF, naudodamiesi logikos dėsniais:

1. (p | q)↔ (¬q | r),

2.((p ∧ q)→¬r

)∧(r→¬(¬q→¬p)

).

Sprendimas:

1. Visų pirma konstruojame NDF:

(a) Pašaliname visas operacijas, išskyrus ¬, ∧ ir ∨:

(p|q)↔(¬q |r) ∼ ¬(p∧q)↔¬(¬q∧r) ∼(¬(p∧q)→¬(¬q∧r)

)∧(¬(¬q∧r)→¬(p∧q)

)∼

∼((p ∧ q) ∨ ¬(¬q ∧ r)

)∧((¬q ∧ r) ∨ ¬(p ∧ q)

)(b) Įkeliame neigimą į skliaustus:(

(p∧q)∨¬(¬q∧r))∧((¬q∧r)∨¬(p∧q)

)∼((p∧q)∨q∨¬r

)∧((¬q∧r)∨¬p∨¬q

) ∗∼∗∼ (q ∨ ¬r) ∧ (¬p ∨ ¬q)

Vietoje, pažymėtoje ∗, du kartus taikomas absorbavimo dėsnis: (p ∧ q) ∨ q ∼ q ir(¬q ∧ r) ∨ ¬q ∼ ¬q.

(c) Taikome distributyvumo dėsnius. Galime taikyti abu distributyvumo dėsnius:• p ∧ (q ∨ r) ∼ (p ∧ q) ∨ (p ∧ r) ir• p ∨ (q ∧ r) ∼ (p ∨ q) ∧ (p ∨ r).

Pirmąjį dėsnį taikome iš kairės į dešinę, o antrąjį atvirkščiai –– iš dešinės į kairę.Abiem atvejais gauname reikiamą pavidalą — elementarias konjunkcijas, sujungtasdisjunkcijomis. Atkreipkite dėmesį, kad antrąjį distributyvumo dėsnį (iškėlimo išabiejų skliaustų) galime taikyti tik tuo atveju, kai kas nors kartojasi. Pavyzdžiui, jeikintamasis p yra abiejuose skliaustuose p∨q ir p∨r, jį galime iškelti ir gauti p∨(q∧r).Mūsų atveju niekas nesikartoja, todėl taikome pirmąjį distributyvumo dėsnį — visąantruosiuose skliaustuose esantį reiškinį įkeliame į pirmuosius skliaustus:

(q ∨ ¬r) ∧ (¬p ∨ ¬q) ∼(q ∧ (¬p ∨ ¬q)

)∨(¬r ∧ (¬p ∨ ¬q)

) ∗∼∗∼ (q ∧ ¬p) ∨ (q ∧ ¬q) ∨ (¬r ∧ ¬p) ∨ (¬r ∧ ¬q) ∼ (q ∧ ¬p) ∨ (¬r ∧ ¬p) ∨ (¬r ∧ ¬q)

Vietoje, pažymėtoje ∗, pirmasis distributyvumo dėsnis taikomas du kartus: pirmuo-siuose didžiuosiuose skliaustuose į mažuosius skliaustus įkeliamas q, o antruosiuose— ¬r.

Gavę NDF, konstruojame TNDF, prijungdami fiktyvius kintamuosius prie elementariųkonjunkcijų, naudodami logikos dėsnį F ∼ (F ∧ p)∨ (F ∧¬p), kur F –– bet kokia formulė,o p –– trūkstamas kintamasis:

(q ∧ ¬p) ∨ (¬r ∧ ¬p) ∨ (¬r ∧ ¬q) ∼ (¬p ∧ q) ∨ (¬p ∧ ¬r) ∨ (¬q ∧ ¬r) ∼

∼ (¬p∧q∧r)∨(¬p∧q∧¬r)∨(¬p∧q∧¬r)∨(¬p∧¬q∧¬r)∨(p∧¬q∧¬r)∨(¬p∧¬q∧¬r) ∗∼∗∼ (¬p ∧ q ∧ r) ∨ (¬p ∧ q ∧ ¬r) ∨ (¬p ∧ ¬q ∧ ¬r) ∨ (p ∧ ¬q ∧ ¬r)

Vietoje, pažymėtoje ∗, išbraukiame pasikartojančius narius.Matome, jog gavome tą pačią TNDF, kaip ir 7.1 uždavinio 1 dalyje.

46

Page 49: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

2. Konstruojame NDF:

(a) Pašaliname visas operacijas, išskyrus ¬, ∧ ir ∨:((p ∧ q)→¬r

)∧(r→¬(¬q→¬p)

)∼(¬(p ∧ q) ∨ ¬r

)∧(¬r ∨ ¬(¬q→¬p)

)∼

∼(¬(p ∧ q) ∨ ¬r

)∧(¬r ∨ ¬(q ∨ ¬p)

)(b) Įkeliame neigimą į skliaustus:(

¬(p ∧ q) ∨ ¬r)∧(¬r ∨ ¬(q ∨ ¬p)

)∼(¬p ∨ ¬q ∨ ¬r

)∧(¬r ∨ (¬q ∧ p)

)(c) Taikome distributyvumo dėsnius:(

¬p ∨ ¬q ∨ ¬r)∧(¬r ∨ (¬q ∧ p)

) ∗∼ ¬r ∨ ((¬p ∨ ¬q) ∧ ¬q ∧ p) ∗∗∼ ¬r ∨ (¬q ∧ p)

Vietoje, pažymėtoje ∗, taikomas distributyvumo — ¬r iškeliamas prieš skliaustus.Vietoje, pažymėtoje ∗∗, taikomas absorbavimo dėsnis.

Gavę NDF, konstruojame TNDF:

¬r ∨ (¬q ∧ p) ∼

∼ (p∧ q∧¬r)∨ (p∧¬q∧¬r)∨ (¬p∧ q∧¬r)∨ (¬p∧¬q∧¬r)∨ (p∧¬q∧ r)∨ (p∧¬q∧¬r) ∗∼∗∼ (p ∧ q ∧ ¬r) ∨ (p ∧ ¬q ∧ ¬r) ∨ (¬p ∧ q ∧ ¬r) ∨ (¬p ∧ ¬q ∧ ¬r) ∨ (p ∧ ¬q ∧ r)

Vietoje, pažymėtoje ∗, išbraukiame pasikartojančius narius.

Uždavinys 7.3. Raskite formulių TNKF, naudodamiesi logikos dėsniais:

1. ¬(p ∧ (q ∨ r)

)→((p ∧ q) ∨ r

),

2. (p↔ q)↔ r.

Sprendimas:

1. Visų pirma konstruojame NKF:

(a) Pašaliname visas operacijas, išskyrus ¬, ∧ ir ∨:

¬(p ∧ (q ∨ r)

)→((p ∧ q) ∨ r

)∼(p ∧ (q ∨ r)

)∨((p ∧ q) ∨ r

)(b) Įkeliame neigimą į skliaustus. Nieko daryti nereikia, nes formulėje nėra neigimo prieš

skliaustus.(c) Taikome distributyvumo dėsnius. Vėl galime taikyti abu distributyvumo dėsnius:

• p ∧ (q ∨ r) ∼ (p ∧ q) ∨ (p ∧ r) ir• p ∨ (q ∧ r) ∼ (p ∨ q) ∧ (p ∨ r).

Tik dabar juos taikome į kitą pusę, t.y., pirmąjį — iš dešinės į kairę, o antrąjį — iškairės į dešinę. Pirmąjį galime taikyti tik tuo atveju, kai kas nors kartojasi. Pavyz-džiui, jei kintamasis p kartojasi, jį galima iškelti. Pritaikykime antrąjį distributyvumodėsnį antruosiuose didžiuosiuose skliaustuose, t.y., įkelkime r į skliaustus:(p∧ (q∨ r)

)∨((p∧ q)∨ r

)∼(p∧ (q∨ r)

)∨((p∨ r)∧ (q∨ r)

) ∗∼ (p∨ (p∨ r))∧ (q∨ r) ∼

∼ (p ∨ p ∨ r) ∧ (q ∨ r) ∼ (p ∨ r) ∧ (q ∨ r)Vietoje, pažymėtoje ∗, taikome pirmąjį distributyvumo dėsnį — iškeliame q ∨ r priešskliaustus.

Gavome NKF. Analogiškai TNDF atvejui, konstruojame TNKF:

(p ∨ r) ∧ (q ∨ r) ∼ (p ∨ q ∨ r) ∧ (p ∨ ¬q ∨ r) ∧ (p ∨ q ∨ r) ∧ (¬p ∨ q ∨ r) ∗∼∗∼ (p ∨ q ∨ r) ∧ (p ∨ ¬q ∨ r) ∧ (¬p ∨ q ∨ r)

Vietoje, pažymėtoje ∗, išbraukiame pasikartojančius narius.

47

Page 50: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Pastabos:• Pažiūrėkime, kaip atrodytų trečiasis žingsnis, jei taikytume tik antrąjį distributyvumo

dėsnį. Įkelkime r į skliaustus:(p ∧ (q ∨ r)

)∨((p ∧ q) ∨ r

)∼(p ∧ (q ∨ r)

)∨((p ∨ r) ∧ (q ∨ r)

) ∗∼

∗∼(

p ∨((p ∨ r) ∧ (q ∨ r)

))∧(

(q ∨ r) ∨((p ∨ r) ∧ (q ∨ r)

)) ∗∗∼

∗∗∼(p ∨ (p ∨ r)

)∧(p ∨ (q ∨ r)

)∧((q ∨ r) ∨ (p ∨ r)

)∧((q ∨ r) ∨ (q ∨ r)

)∼

∼ (p∨p∨r)∧(p∨q∨r)∧(q∨r∨p∨r)∧(q∨r∨q∨r) ∼ (p∨r)∧(p∨q∨r)∧(p∨q∨r)∧(q∨r) ∼

∼ (p ∨ r) ∧ (p ∨ q ∨ r) ∧ (q ∨ r) ∗∗∗∼ (p ∨ r) ∧ (q ∨ r)Vietoje, pažymėtoje ∗, taikome distributyvumo dėsnį — antruosius didžiuosius skliaustusįkeliame į pirmuosius. Vietoje, pažymėtoje ∗∗, distributyvumo dėsnį taikome du kartus— pirmuosiuose didžiuosiuose skliaustuose į skliaustus įkeliame p, o antruosiuose — q∨r.Vietoje, pažymėtoje ∗∗∗, taikome absorbavimo dėsnį.Matome, kad gavome tą patį rezultatą, bet skaičiavimai buvo žymiai sudėtingesni. Taigi,pirmojo distributyvumo dėsnio galime ir netaikyti, užtenka antrojo, bet pirmojo dėsniotaikymas kai kuriais atvejais gali palengvinti skaičiavimus.

• Ar galime pasakyti, kokia bus šios formulės TNDF? Į TNKF įeina trys elementariosdisjunkcijos, todėl ši formulė su trimis interpretacijomis įgyja reikšmę k. Su likusiomispenkiomis interpretacijomis ji įgyja reikšmę t, todėl į jos TNDF įeina 5 elementarios kon-junkcijos. Užrašykime jos TNDF. Į TNKF įeinančios elementarios disjunkcijos atitinkašias tris interpretacijas: p = k, q = k, r = k; p = k, q = t, r = k ir p = t, q = k, r = k.Taigi iš likusių penkių interpretacijų (p = t, q = t, r = t; p = t, q = t, r = k; p = t,q = k, r = t; p = k, q = t, r = t ir p = k, q = k, r = t) reikia gauti po elementariąkonjunkciją, todėl formulės TNDF yra:

(p ∧ q ∧ r) ∨ (p ∧ q ∧ ¬r) ∨ (p ∧ ¬q ∧ r) ∨ (¬p ∧ q ∧ r) ∨ (¬p ∧ ¬q ∧ r)

2. Konstruojame NKF:

(a) Pašaliname visas operacijas, išskyrus ¬, ∧ ir ∨:

(p↔ q)↔ r ∼((p→ q) ∧ (q→ p)

)↔ r ∼

((¬p ∨ q) ∧ (¬q ∨ p)

)↔ r ∼

∼((

(¬p ∨ q) ∧ (¬q ∨ p))→ r

)∧(r→

((¬p ∨ q) ∧ (¬q ∨ p)

))∼

∼(¬((¬p ∨ q) ∧ (¬q ∨ p)

)∨ r)∧(¬r ∨

((¬p ∨ q) ∧ (¬q ∨ p)

))∼

(b) Įkeliame neigimą į skliaustus:(¬((¬p ∨ q) ∧ (¬q ∨ p)

)∨ r)∧(¬r ∨

((¬p ∨ q) ∧ (¬q ∨ p)

))∼

∼(¬(¬p ∨ q) ∨ ¬(¬q ∨ p) ∨ r

)∧(¬r ∨

((¬p ∨ q) ∧ (¬q ∨ p)

))∼

∼(

(p ∧ ¬q) ∨ (q ∧ ¬p) ∨ r)∧(¬r ∨

((¬p ∨ q) ∧ (¬q ∨ p)

))(c) Taikome distributyvumo dėsnius:(

(p ∧ ¬q) ∨ (q ∧ ¬p) ∨ r)∧(¬r ∨

((¬p ∨ q) ∧ (¬q ∨ p)

)) ∗∼∗∼(

(p ∧ ¬q) ∨((q ∨ r) ∧ (¬p ∨ r)

))∧ (¬r ∨ ¬p ∨ q) ∧ (¬r ∨ ¬q ∨ p) ∗∗∼

∗∗∼((p ∧ ¬q) ∨ q ∨ r

)∧((p ∧ ¬q) ∨ ¬p ∨ r

)∧ (¬r ∨ ¬p ∨ q) ∧ (¬r ∨ ¬q ∨ p) ∗∗∗∼

∗∗∗∼((

(p∨q)∧(¬q∨q))∨r)∧((

(p∨¬p)∧(¬q∨¬p))∨r)∧(¬r∨¬p∨q)∧(¬r∨¬q∨p) ∼

∼ (p ∨ q ∨ r) ∧ (¬q ∨ ¬p ∨ r) ∧ (¬r ∨ ¬p ∨ q) ∧ (¬r ∨ ¬q ∨ p) †∼

48

Page 51: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

†∼ (p ∨ q ∨ r) ∧ (¬p ∨ ¬q ∨ r) ∧ (¬p ∨ q ∨ ¬r) ∧ (p ∨ ¬q ∨ ¬r)Vietoje, pažymėtoje ∗, du kartus taikome distributyvumo dėsnį — pirmuosiuose di-džiuosiuose skliaustuose r įkeliame į antruosius mažuosius skliaustus, o antruosiuo-se didžiuosiuose skliaustuose ¬r įkeliame į skliaustus. Antruosiuose didžiuosiuoseskliaustuose lieka konjunkcija, tarp didžiųjų skliaustų taip pat yra konjunkcija, taigiantrieji didieji skliaustai yra nebūtini. Juose gauname dvi elementariąsias disjunk-cijas, taigi tolesnių pertvarkymų reikia tik pirmuosiuose didžiuosiuose skliaustuose.Vietoje, pažymėtoje ∗∗, taikome distributyvumo dėsnį — p∧¬q įkeliame į skliaustus.Vietoje, pažymėtoje ∗∗∗, distributyvumo dėsnį taikome du kartus — pirmuosiuoseskliaustuose q įkeliame į mažuosius skliaustus, antruosiuose skliaustuose ¬p įkeliameį mažuosius skliaustus. Vietoje, pažymėtoje †, paprasčiausiai sukeičiame kintamuo-sius vietomis kiekvienoje elementarioje disjunkcijoje taip, kad kintamųjų vardai būtųišdėstyti pagal abėcėlę.

Bandydami surasti NKF gavome iš karto TNKF, taigi daugiau nieko daryti nereikia.

Uždavinys 7.4. Duota formulės NDF. Nustatykite jos TNKF (žr. antrąją pastabą 48 pusla-pyje):

1. p ∨ (q ∧ r),

2. p ∨ ¬q ∨ ¬r.

Sprendimas:

1. Pirmiausia reikia užrašyti formulės TNDF:

p∨ (q∧r) ∼ (p∧q∧r)∨ (p∧q∧¬r)∨ (p∧¬q∧r)∨ (p∧¬q∧¬r)∨ (p∧q∧r)∨ (¬p∧q∧r) ∼

∼ (p ∧ q ∧ r) ∨ (p ∧ q ∧ ¬r) ∨ (p ∧ ¬q ∧ r) ∨ (p ∧ ¬q ∧ ¬r) ∨ (¬p ∧ q ∧ r)Taigi, ši formulė yra klaidinga su trimis interpretacijomis: p = k, q = t, r = k; p = k,q = k, r = t ir p = k, q = k, r = k. Belieka užrašyti po elementariąją konjunkciją šiomsinterpretacijoms:

(p ∨ ¬q ∨ r) ∧ (p ∨ q ∨ ¬r) ∧ (p ∨ q ∨ r)

2. Ši forma yra NDF iš trijų elementariųjų konjunkcijų, kurių kiekviena susideda iš vienokintamojo arba jo neiginio. Kita vertus, tai kartu yra ir TNKF iš vienos elementariosiosdisjunkcijos, turinčios tris kintamuosius arba jų neiginius. Taigi uždavinys išspręstas netjo nesprendžiant.

Uždavinys 7.5. Duota formulės NKF. Nustatykite jos TNDF:

1. (p ∨ q ∨ r) ∧ (¬p ∨ ¬q ∨ r) ∧ (¬p ∨ q ∨ ¬r) ∧ (p ∨ ¬q ∨ ¬r),

2. p ∧ q ∧ (¬p ∨ ¬q).

Sprendimas:

1. Duotoji formulė yra TNKF, pagal kurią galima spręsti, kad formulė klaidinga su keturiomisinterpretacijomis: p = k, q = k, r = k; p = t, q = t, r = k; p = t, q = k, r = t ir p = k,q = t, r = t. Vadinasi su likusiomis keturiomis ji yra teisinga: p = t, q = t, r = t; p = t,q = k, r = k; p = k, q = t, r = k ir p = k, q = k, r = t. Belieka užrašyti po elementariąkonjunkciją kiekvienai iš šių interpretacijų:

(p ∧ q ∧ r) ∨ (p ∧ ¬q ∧ ¬r) ∨ (¬p ∧ q ∧ ¬r) ∨ (¬p ∧ ¬q ∧ r)

2. Pirmiausia raskime formulės TNKF:

p ∧ q ∧ (¬p ∨ ¬q) ∼ (p ∨ q) ∧ (p ∨ ¬q) ∧ (p ∨ q) ∧ (¬p ∨ q) ∧ (¬p ∨ ¬q) ∼

∼ (p ∨ q) ∧ (p ∨ ¬q) ∧ (¬p ∨ q) ∧ (¬p ∨ ¬q)Ši formulė klaidinga su visomis keturiomis interpretacijomis. Taigi, ji yra tapačiai klaidin-ga, o tapačiai klaidingos formulės TNDF neturi.

49

Page 52: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Uždavinys 7.6. Nustatykite, kurie loginiai kintamieji esminiai, kurie fiktyvūs duotoje formu-lėje. Užrašykite ekvivalenčią formulę, kurioje būtų tik esminiai kintamieji.

1. Formulė duota teisingumo reikšmių lentele:

p q r Q(p, q, r)t t t kt t k tt k t kt k k tk t t kk t k kk k t kk k k k

2. Q(p, q, r) :=(q | (p⊕ p)

)→¬r

Sprendimas:

1. Imame tas interpretacijų poras, kuriose skiriasi tik tikrinamo kintamojo reikšmė, o kitųkintamųjų reikšmės lieka tos pačios. Jei rasime bent vieną tokią interpretacijų porą, sukuria keičiasi ir formulės reikšmė, tai kintamasis bus esminis, o jei ne, tai fiktyvus.Patikrinkime, ar kintamasis p yra esminis. Reikės patikrinti 1 ir 5, 2 ir 6, 3 ir 7, 4 ir 8interpretacijų poras. Su 1 ir 5 interpretacijomis formulė įgyja tą pačią reikšmę — k, su2 ir 6 interpretacijomis formulė įgyja skirtingas reikšmes — t ir k. To ir užtenka, kadgalėtume tvirtinti, kad kintamasis p yra esminis, likusių porų galime ir nebetikrinti.Tokiu pat būdu nustatome, kad q — fiktyvus. Tai gauname, patikrinę visas eilučių poras(1 ir 3, 2 ir 4, 5 ir 7, 6 ir 8), kurios skiriasi tik kintamoje q reikšme. Formulės reikšmė nėvienoje iš šių porų nesikeičia.Taip pat nustatome, kad r — esminis (1 ir 2 eilutės).Kad užrašytume ekvivalenčią formulę, kurioje būtų tik esminiai kintamieji, nutrinamenereikalingus stulpelius su fiktyviais kintamaisiais (t.y. kintamojo q stulpelį), iš besikar-tojančių eilučių paliekame tik po vieną, ir gauname tokią teisingumo reikšmių lentelę:

p r Q(p, r)t t kt k tk t kk k k

Pagal ją galima užrašyti formulės TNDF, TNKF, arba šiaip atspėti formulę. Šiuo atvejunesunku pastebėti, kad formulė bus ¬(p→ r). Jos TNDF (iš lentelės) būtų (p ∧ ¬r), oTNKF — (¬p∨¬r)∧ (p∨¬r)∧ (p∨ r) (atsakymui užtenka nurodyti bet kurią iš šių trijųformulių).

2. Sudarome teisingumo reikšmių lentelę:

p q r p⊕ p q | (p⊕ p) ¬r(q | (p⊕ p)

)→¬r

t t t k t k kt t k k t t tt k t k t k kt k k k t t tk t t k t k kk t k k t t tk k t k t k kk k k k t t t

• p — fiktyvus kintamasis (pagal 1 ir 5, 2 ir 6, 3 ir 7 bei 4 ir 8 eilučių poras).

50

Page 53: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

• q — fiktyvus kintamasis (pagal 1 ir 3, 2 ir 4, 5 ir 7 bei 6 ir 8 eilučių poras).• r — esminis kintamasis (1 ir 2 eilutės).

Išbraukę fiktyvius kintamuosius gauname tokią teisingumo reikšmių lentelę:

r Q(r)t kk t

Formulė bus ¬r.

Pastaba: Prieš bandant nustatyti, ar kintamieji esminiai, galima bandyti duotą formulę suprastinti.Jei prastinimo metu formulėje nelieka kurių nors kintamųjų, galime drąsiai tvirtinti (aišku, jei tiknepadarėm klaidų prastindami), kad jie buvo fiktyvūs. Bet apie likusius kintamuosius nieko pasakytinegalime. Galbūt jų irgi neliktų prastinant toliau. Taigi, suprastinus formulę, likusių kintamųjųfiktyvumą vis tiek reikia tikrinti pagal apibrėžimą.Pavyzdžiui, pastebėję, kad p⊕p ∼ k (tuo galime įsitikinti, sudarę teisingumo reikšmių lentelę), duotąformulę galime suprastinti:(

q | (p⊕ p))→¬r ∼ (q | k)→¬r ∼ t→¬r ∼ ¬r

Kadangi gavome ekvivalenčią formulę, kurioje kintamųjų p ir q nebeliko, vadinasi jie yra fiktyvūspradinėje formulėje. Kad nustatytume, ar likęs kintamasis r yra esminis, sudarome teisingumoreikšmių lentelę:

r ¬r

t kk t

Ir patikriname pagal apibrėžimą: r yra esminis, nes 1 ir 2 eilutėse skiriasi vien tik kintamojo rreikšmė, o formulės reikšmė irgi skiriasi.

51

Page 54: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Uždaviniai savarankiškam darbuiUždavinys 7.7. Raskite duotųjų formulių TNDF ir TNKF, dviem būdais: naudodamiesi tei-singumo reikšmių lentele ir naudodamiesi logikos dėsniais. Taip pat pagal formulės TNDFužrašykite jos TNKF ir atvirkščiai.

1. (p→ q) ∨ (¬p ∧ r),

2. (¬p→¬q)→((q ∧ r)→ (p ∧ r)

),

3. ¬((p ∧ q)→ p

)∨(p ∧ (q ∨ r)

),

4. (r→ p)→(¬(q ∨ r)→ p

).

Uždavinys 7.8. Nustatykite, kurie loginiai kintamieji esminiai, kurie fiktyvūs duotose formu-lėse. Užrašykite ekvivalenčias formules, kuriose būtų tik esminiai kintamieji.

1. (q ∧ p) ∨ (¬q ∧ r),

2. (p ∧ q) ∨ p,

3.((p | r)→ p

)∧ q.

52

Page 55: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Uždavinių savarankiškam darbui sprendimai ir atsakymai

Uždavinio 7.7 sprendimas ir atsakymai:

1. Čia ir toliau pažymėtos interpretacijos, skirtos užrašyti TNDF. Nepažymėtos interpreta-cijos skirtos TNKF.

p q r p→ q ¬p ¬p ∧ r (p→ q) ∨ (¬p ∧ r)t t t t k k tt t k t k k tt k t k k k kt k k k k k kk t t t t t tk t k t t k tk k t t t t tk k k t t k t

TNDF: (p∧q∧r)∨ (p∧q∧¬r)∨ (¬p∧q∧r)∨ (¬p∧q∧¬r)∨ (¬p∧¬q∧r)∨ (¬p∧¬q∧¬r).TNKF: (¬p ∨ q ∨ r) ∧ (¬p ∨ q ∨ ¬r).

(p→ q) ∨ (¬p ∧ r) ∼ ¬p ∨ q ∨ (¬p ∧ r) ∼ ¬p ∨ (¬p ∧ r) ∨ q ∼ ¬p ∨ q

Gautoji formulė yra ir NDF, ir NKF. Belieka tik prirašyti trūkstamus narius. TNDF:

¬p ∨ q ∼

∼ (¬p ∧ q ∧ r) ∨ (¬p ∧ q ∧ ¬r) ∨ (¬p ∧ ¬q ∧ r) ∨ (¬p ∧ ¬q ∧ ¬r)∨

∨(p ∧ q ∧ r) ∨ (p ∧ q ∧ ¬r) ∨ (¬p ∧ q ∧ r) ∨ (¬p ∧ q ∧ ¬r) ∼

(p ∧ q ∧ r) ∨ (p ∧ q ∧ ¬r) ∨ (¬p ∧ q ∧ r) ∨ (¬p ∧ q ∧ ¬r) ∨ (¬p ∧ ¬q ∧ r) ∨ (¬p ∧ ¬q ∧ ¬r)

TNKF:¬p ∨ q ∼ (¬p ∨ q ∨ r) ∧ (¬p ∨ q ∨ ¬r)

2. Tegu Q(p, q, r) = (¬p→¬q)→((q ∧ r)→ (p ∧ r)

).

p q r ¬p ¬q ¬p→¬q q ∧ r p ∧ r (q ∧ r)→ (p ∧ r) Q(p, q, r)t t t k k t t t t tt t k k k t k k t tt k t k t t k t t tt k k k t t k k t tk t t t k k t k k tk t k t k k k k t tk k t t t t k k t tk k k t t t k k t t

TNDF: (p ∧ q ∧ r) ∨ (p ∧ q ∧ ¬r) ∨ (p ∧ ¬q ∧ r) ∨ (p ∧ ¬q ∧ ¬r) ∨ (¬p ∧ q ∧ r) ∨ (¬p ∧ q ∧¬r) ∨ (¬p ∧ ¬q ∧ r) ∨ (¬p ∧ ¬q ∧ ¬r).TNKF: nėra, nes formulė tapačiai teisinga.

(¬p→¬q)→((q∧r)→(p∧r)

)∼ ¬(p∨¬q)∨

(¬(q∧r)∨(p∧r)

)∼ (¬p∧q)∨¬q∨¬r∨(p∧r) ∼

∼((¬p ∨ ¬q) ∧ (q ∨ ¬q)

)∨((¬r ∨ p) ∧ (¬r ∨ r)

)∼ ¬p ∨ ¬q ∨ ¬r ∨ p ∼ t ∼

∼ (p ∧ q ∧ r) ∨ (p ∧ q ∧ ¬r) ∨ (p ∧ ¬q ∧ r) ∨ (p ∧ ¬q ∧ ¬r)∨

∨(¬p ∧ q ∧ r) ∨ (¬p ∧ q ∧ ¬r) ∨ (¬p ∧ ¬q ∧ r) ∨ (¬p ∧ ¬q ∧ ¬r)

3. Tegu Q(p, q, r) = ¬((p ∧ q)→ p

)∨(p ∧ (q ∨ r)

).

53

Page 56: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

p q r p ∧ q (p ∧ q)→ p ¬((p ∧ q)→ p

)q ∨ r p ∧ (q ∨ r) Q(p, q, r)

t t t t t k t t tt t k t t k t t tt k t k t k t t tt k k k t k k k kk t t k t k t k kk t k k t k t k kk k t k t k t k kk k k k t k k k k

TNDF: (p ∧ q ∧ r) ∨ (p ∧ q ∧ ¬r) ∨ (p ∧ ¬q ∧ r).TNKF: (p ∨ q ∨ r) ∧ (p ∨ q ∨ ¬r) ∧ (p ∨ ¬q ∨ r) ∧ (p ∨ ¬q ∨ ¬r) ∧ (¬p ∨ q ∨ r).

¬((p∧q)→p

)∨(p∧(q∨r)

)∼ ¬

(¬(p∧q)∨p

)∨(p∧(q∨r)

)∼ ¬(¬p∨¬q∨p)∨

(p∧(q∨r)

)∼

∼ ¬t ∨(p ∧ (q ∨ r)

)∼ k ∨

(p ∧ (q ∨ r)

)∼ p ∧ (q ∨ r)

Gavome NKF. Siekiant gauti TNKF beliko tik prirašyti trūkstamus narius:

p∧ (q∨r) ∼ (p∨q∨r)∧ (p∨q∨¬r)∧ (p∨¬q∨r)∧ (p∨¬q∨¬r)∧ (p∨q∨r)∧ (¬p∨q∨r))∼

∼ (p ∨ q ∨ r) ∧ (p ∨ q ∨ ¬r) ∧ (p ∨ ¬q ∨ r) ∧ (p ∨ ¬q ∨ ¬r) ∧ (¬p ∨ q ∨ r))

Norint gauti NDF o po to TNDF, pirmiausia reikia pritaikyti distributyvumo dėsnį:

p ∧ (q ∨ r) ∼ (p ∧ q) ∨ (p ∧ r) ∼ (p ∧ q ∧ r) ∨ (p ∧ q ∧ ¬r) ∨ (p ∧ q ∧ r) ∨ (p ∧ ¬q ∧ r) ∼

∼ (p ∧ q ∧ r) ∨ (p ∧ q ∧ ¬r) ∨ (p ∧ ¬q ∧ r)

4. Teisingumo lentelė:

p q r r→ p q ∨ r ¬(q ∨ r) ¬(q ∨ r)→ p (r→ p)→(¬(q ∨ r)→ p

)t t t t t k t tt t k t t k t tt k t t t k t tt k k t k t t tk t t k t k t tk t k t t k t tk k t k t k t tk k k t k t k k

TNDF: (p∧q∧r)∨(p∧q∧¬r)∨(p∧¬q∧r)∨(p∧¬q∧¬r)∨(¬p∧q∧r)∨(¬p∧q∧¬r)∨(¬p∧¬q∧r).TNKF: p ∨ q ∨ r.

(r→ p)→(¬(q∨ r)→ p

)∼ ¬(¬r∨ p)∨ q∨ r∨ p ∼ (r∧¬p)∨ r∨ q∨ p ∼ r∨ q∨ p ∼ p∨ q∨ r

Gavome NDF ir kartu TNKF. Norėdami gauti TNDF turime prirašyti trūkstamus narius:

p ∨ q ∨ r ∼

∼ (p ∧ q ∧ r) ∨ (p ∧ q ∧ ¬r) ∨ (p ∧ ¬q ∧ r) ∨ (p ∧ ¬q ∧ ¬r)∨

∨(p ∧ q ∧ r) ∨ (p ∧ q ∧ ¬r) ∨ (¬p ∧ q ∧ r) ∨ (¬p ∧ q ∧ ¬r)∨

∨(p ∧ q ∧ r) ∨ (p ∧ ¬q ∧ r) ∨ (¬p ∧ q ∧ r) ∨ (¬p ∧ ¬q ∧ r) ∼

∼ (p∧q∧r)∨(p∧q∧¬r)∨(p∧¬q∧r)∨(p∧¬q∧¬r)∨(¬p∧q∧r)∨(¬p∧q∧¬r)∨(¬p∧¬q∧r)

Uždavinio 7.8 sprendimas ir atsakymai:

1. Sudarykime formulės teisingumo lentelę:

54

Page 57: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

p q r q ∧ p ¬q ¬q ∧ r (q ∧ p) ∨ (¬q ∧ r)t t t t k k tt t k t k k tt k t k t t tt k k k t k kk t t k k k kk t k k k k kk k t k t t tk k k k t k k

• p — esminis kintamasis (1 ir 5 eilutės).• q — esminis kintamasis (2 ir 4 eilutės).• r — esminis kintamasis (3 ir 4 eilutės).

Taigi, visi kintamieji esminiai.

2. Pagal absorbcijos dėsnį turime, kad (p ∧ q) ∨ p ∼ p. Taigi, kintamasis q yra fiktyvus.Įsitikinti, kad p esminis galima pagal formulės Q(p) = p teisingumo lentelę:

p Q(p)t tk k

Taigi, esminis tik kintamasis p.

3. Sudarykime formulės teisingumo lentelę:

p q r p | r (p | r)→ p((p | r)→ p

)∧ q

t t t k t tt t k t t tt k t k t kt k k t t kk t t t k kk t k t k kk k t t k kk k k t k k

• p — esminis kintamasis (1 ir 5 eilutės).• q — esminis kintamasis (1 ir 3 eilutės).• r — fiktyvus kintamasis (pagal 1 ir 2, 3 ir 4, 5 ir 6 bei 7 ir 8 eilučių poras).

Taigi, p ir q esminiai kintamieji, o r — fiktyvus.Šį uždavinį galima spręsti ir pirmiausia prastinant formulę:(

(p | r)→ p)∧ q ∼

(¬(p ∧ r)→ p

)∧ q ∼

((p ∧ r) ∨ p

)∧ q ∼ p ∧ q

Taigi, r kintamasis yra fiktyvus, o įsitikinti, kad p ir q esminiai užtenka žymiai mažesnėsteisingumo lentelės:

p q p ∧ qt t tt k kk t kk k k

55

Page 58: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

8 pratybos

Kontaktinės schemos.Teiginių logikos samprotavimai.

Uždaviniai pratybomsUždavinys 8.1. Nubrėžkite formulės (p⊕ q)→ (¬p ∧ r) kontaktinę schemą.Sprendimas: Prisiminkime, kad mokame nubrėžti kontaktinę schemą tik formulei, kurioje yratik konjunkcija, disjunkcija, ir neigimai prie kintamųjų. Tada konjunkciją atitinka nuosekluskontaktinių elementų jungimas, o disjunkciją — lygiagretus. Todėl iš pradžių reikia pertvarkytiformulę: pašalinti kitas operacijas ir įkelti neigimą į skliaustus.

(p⊕ q)→ (¬p∧ r) ∼ ¬(p↔ q)→ (¬p∧ r) ∼ (p↔ q)∨ (¬p∧ r) ∼((p→ q)∧ (q→ p)

)∨ (¬p∧ r) ∼

∼((¬p ∨ q) ∧ (¬q ∨ p)

)∨ (¬p ∧ r)

O dabar galime nubrėžti kontaktinę schemą:¬p

q

¬q

p

¬p r

Uždavinys 8.2. Suprastinkite kontaktinę schemą, laikydami, kad paprastesnė yra ta schema,kuri turi mažiau kontaktinių elementų.

x

x

¬y

y

¬z

¬y

z

Sprendimas: Kad galėtume suprastinti, užrašome formulę, atitinkančią duotąją schemą, ją su-prastiname, ir nubrėžiame suprastintos formulės schemą.

x ∨((x ∨ ¬y) ∧ (y ∨ ¬z)

)∨ ¬y ∨ z ∗∼ (x ∨ ¬y) ∨

((x ∨ ¬y) ∧ (y ∨ ¬z)

)∨ z ∗∗∼

∗∗∼ (x ∨ ¬y) ∨ z ∼ x ∨ ¬y ∨ zVietoje, pažymėtoje ∗, tiesiog pergrupuojame disjunkcijos elementus. Vietoje, pažymėtoje ∗∗,taikome absorbavimo dėsnį. Taigi, suprastinta kontaktinė schema bus tokia:

56

Page 59: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

x

¬y

z

Pastaba: Šią formulę galima prastinti ir įvairiais kitais būdais, pavyzdžiui, galima pirmiausia įkelti ¬yį didžiuosius skliaustus (taikant distributyvumo dėsnį). Kadangi vienuose mažuosiuose skliaustuoseyra y, o kituose ¬y, galima tikėtis, kad jie susiprastins su įkeltuoju ¬y.

x∨((x∨¬y)∧(y∨¬z)

)∨¬y∨z ∼ x∨

((x∨¬y∨¬y)∧(y∨¬z∨¬y)

)∨z ∼ x∨

((x∨¬y)∧(¬z∨t)

)∨z ∼

∼ x ∨((x ∨ ¬y) ∧ t

)∨ z ∼ x ∨ (x ∨ ¬y) ∨ z ∼ x ∨ x ∨ ¬y ∨ z ∼ x ∨ ¬y ∨ z

Uždavinys 8.3. Ar pagrįsti samprotavimai? Ar jie tinkami?

1. p→ q ∴ ¬p→¬q,

2. p→ q, q→ r, p,¬r ∴ ¬p ∧ q,

3. p ∧ q ∴ p ∨ q.

Sprendimas:

1. Patikriname, ar su visomis interpretacijomis, su kuriomis prielaida teisinga, teisinga irišvada:

p q p→q ¬p ¬q ¬p→¬qt t t k k tt k k k t tk t t t k kk k t t t t

Teisingumo lentelėje apibraukta samprotavimo prielaida, o paskutiniame stulpelyje patei-kiama išvada. Pažymėtos tos interpretacijos, su kuriomis prielaida teisinga. Kaip matome,tokių interpretacijų yra trys. Su dviejomis iš jų teisinga ir išvada, tačiau kai p = k, o q = t,tokiu atveju prielaida teisinga, o išvada ne. Taigi samprotavimas nėra pagrįstas. Kita ver-tus, prielaida ne visada yra klaidinga, taigi samprotavimas tinkamas.

2. Ir vėl susidarome teisingumo lentelę:

p q r p→q q→r ¬r ¬p ¬p ∧ qt t t t t k k kt t k t k t k kt k t k t k k kt k k k t t k k!k t t t t k t tk t k t k t t tk k t t t k t kk k k t t t t k

Kaip ir praeitame variante, apibrauktos samprotavimo prielaidos. Kaip matome, nėratokios interpretacijos, su kuria visos prielaidos būtų teisingos, taigi samprotavimas yranetinkamas, nors ir pagrįstas.

3. Susidarome teisingumo lentelę

p q p∧q p ∨ qt t t tt k k tk t k tk k k k

Yra viena interpretacija, su kuria prielaida yra teisinga. Su šia prielaida teisinga ir sam-protavimo išvada, taigi samprotavimas yra pagrįstas ir tinkamas.

57

Page 60: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Pastaba: Nors samprotavimas p ∧ q ∴ p ∨ q yra pagrįstas, tačiau tai nereiškia, kad formulėsp ∧ q bei p ∨ q yra ekvivalenčios. Tai reiškia tik tiek, kad jei pirmoji formulė teisinga, taiteisinga bus ir antroji. Tuo, kad formulės neekvivalenčios, įsitikinti galima ir parodžius, kadatvirkščias samprotavimas — p ∨ q ∴ p ∧ q — nėra pagrįstas. Kita vertus, jei pagrįstas yra irsamprotavimas F ∴ G, ir G ∴ F , tokiu atveju galima tvirtinti, kad F ∼ G.

Uždavinys 8.4. Loginės lygties metodu patikrinkite, ar samprotavimai pagrįsti:

1. r→ q,¬p ∨ r ∴ p | ¬q;

2. Jeigu šiandien antradienis, tai yra paskaitų. Netiesa, kad jeigu nėra paskaitų, tai studentainesimoko. Taigi, šiandien ne antradienis ir studentai nesimoko.

Sprendimas:

1. Bandome išspręsti lygčių sistemą: r→ q = t¬p ∨ r = tp | ¬q = k

Formulė p | ¬q klaidinga su vienintele interpretacija — kai p = t ir ¬q = t. T.y., p = t irq = k. Kadangi p = t ir ¬p∨ r = t, vadinasi ¬p = k, todėl r = t. Taigi r→ q = t→ k = k,tačiau pagal lygčių sistemą r → q = t. Taigi, ši lygčių sistema sprendinių neturi, todėlsamprotavimas yra pagrįstas.

2. Pažymėkime teiginį šiandien antradienis kintamuoju a, teiginį šiandien yra paskaitų —kintamuoju p, o teiginį studentai mokosi — kintamuoju m. Tada šį samprotavimą galė-tume formalizuoti taip: a→ p,¬(¬p→ ¬m) ∴ ¬a ∧ ¬m. Pabandykime išspręsti lygčiųsistemą: a→ p = t

¬(¬p→¬m) = t¬a ∧ ¬m = k

Kadangi ¬(¬p→¬m) = t, vadinasi ¬p→¬m = k. Ši formulė klaidinga vieninteliu atveju,kai ¬p = t ir ¬m = k. T.y., p = k ir m = t. Kadangi p = k, o a→ p = t, vadinasi a = k.Be to, kai a = k ir m = t, tai ¬a ∧ ¬m = ¬k ∧ ¬t = t ∧ k = k. To ir reikalauja trečiojisistemos lygtis. Taigi radome lygčių sistemos šaknį — tokią interpretaciją, su kuria visosprielaidos teisingos, o išvada klaidinga. Todėl toks samprotavimas nėra pagrįstas.

Uždavinys 8.5. Įrodykite šių samprotavimų pagrįstumą formaliosios dedukcijos metodu:

1. Nužudyta siekiant apiplėšti arba iš keršto. Jei pas auką rasta pinigų, tai nusikaltimomotyvas buvo ne apiplėšimas. Iš tiesų, jos rankinuke rasta keletas šimtų litų. Matyt,nusikaltimas padarytas iš keršto.

2. (¬p ∨ q)→ r, s ∨ ¬q,¬u, p→ u, (¬p ∧ r)→¬s ∴ ¬q

Sprendimas:

1. Pažymėkime teiginius:

• A –– nužudyta siekiant apiplėšti,• K — nužudyta iš keršto,• P — pas auką rasta pinigų.

Tada samprotavimas bus toks: A ∨K,P →¬A,P ∴ K. Įrodykime samprotavimo pagrįs-tumą:

1. A ∨K Samprotavimo prielaida.2. P →¬A Samprotavimo prielaida.3. P Samprotavimo prielaida.4. ¬A Modus ponens iš 2 ir 3.5. K Disjunktyvus silogizmas iš 1 ir 4.

58

Page 61: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

2.

1. (¬p ∨ q)→ r Samprotavimo prielaida.2. s ∨ ¬q Samprotavimo prielaida.3. ¬u Samprotavimo prielaida.4. p→ u Samprotavimo prielaida.5. (¬p ∧ r)→¬s Samprotavimo prielaida.6. ¬p Modus tollens iš 3 ir 4.7. ¬p ∨ q Prijungimas iš 6.8. r Modus ponens iš 1 ir 7.9. ¬p ∧ r Konjunktyvus sujungimas iš 6 ir 8.10. ¬s Modus ponens iš 5 ir 9.11. ¬q Disjunktyvus silogizmas iš 2 ir 10.

Uždavinys 8.6. Įrodykite šių samprotavimų pagrįstumą sąlyginio įrodymo metodu:

1. Įmonėje yra trys cechai A, B ir C, susitarę dėl projektų tvirtinimo tvarkos. Jei cechasB nedalyvauja tvirtinant projektą, tai nedalyvauja ir cechas A. Jei cechas B dalyvaujatvirtinant projektą, tai kartu dalyvauja ir cechai A bei C. Todėl cechas C privalo dalyvauti,kai projektą tvirtina cechas A.

2. ¬p ∨ (q→ r),¬r ∴ p→¬q.

Sprendimas:

1. Pažymėkime teiginius:

• A — cechas A dalyvauja tvirtinant projektą,• B — cechas B dalyvauja tvirtinant projektą,• C — cechas C dalyvauja tvirtinant projektą.

Tada samprotavimas bus toks: ¬B→¬A,B→(A∧C) ∴ A→C. Įrodykime samprotavimopagrįstumą:

1. ¬B→¬A Samprotavimo prielaida.2. B→ (A ∧ C) Samprotavimo prielaida.3. A Laikina prielaida.4. B Modus tollens iš 1 ir 3.5. A ∧ C Modus ponens iš 2 ir 4.6. C Atskyrimas iš 5.7. A→ C Sąlyginis įrodymas nuo 3 iki 6.

2.

1. ¬p ∨ (q→ r) Samprotavimo prielaida.2. ¬r Samprotavimo prielaida.3. p Laikina prielaida.4. q→ r Disjunktyvus silogizmas iš 1 ir 3.5. ¬q Modus tollens iš 4 ir 2.6. p→¬q Sąlyginis įrodymas nuo 3 iki 5.

Uždavinys 8.7. Įrodykite šių samprotavimų pagrįstumą prieštaros metodu:

1. (A ∨B)→ (C ∧D),¬(¬A ∨ ¬C),¬(A→¬D)→ E ∴ E;

2. Jei rytoj grįšiu namo, tai nemiegosiu. Be to, rytoj laikysiu egzaminą arba visai neisiu įuniversitetą. Kita vertus, jei laikysiu egzaminą, tai po jo grįšiu namo ir miegosiu. Taigi,rytoj į universitetą neisiu.

Sprendimas:

59

Page 62: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

1.

1. (A ∨B)→ (C ∧D) Samprotavimo prielaida.2. ¬(¬A ∨ ¬C) Samprotavimo prielaida.3. ¬(A→¬D)→ E Samprotavimo prielaida.4. ¬E Laikina prielaida.5. A→¬D Modus tollens iš 3 ir 4.6. A ∧ C De Morgano dėsnis iš 2.7. A Atskyrimas iš 6.8. A ∨B Prijungimas iš 7.9. C ∧D Modus ponens iš 1 ir 8.10. D Atskyrimas iš 9.11. ¬D Modus ponens iš 5 ir 7.12. D ∧ ¬D Konjunktyvus sujungimas iš 10 ir 11.13. E Prieštaros metodas nuo 4 iki 12.

2. Pažymėkime teiginį grįšiu namo kintamuoju g, teiginį miegosiu — kintamuoju m, teiginįlaikysiu egzaminą — kintamuoju l, o teiginį eisiu į universitetą — kintamuoju e. Tokiuatveju, samprotvimas bus toks: g→¬m, l ∨ ¬e, l→ (g ∧m) ∴ ¬e. Įrodymas galėtų būtitoks:

1. g→¬m Samprotavimo prielaida.2. l ∨ ¬e Samprotavimo prielaida.3. l→ (g ∧m) Samprotavimo prielaida.4. e Laikina prielaida.5. l Disjunktyvus silogizmas iš 2 ir 4.6. g ∧m Modus ponens iš 3 ir 5.7. g Atskyrimas iš 6.8. ¬m Modus ponens iš 1 ir 7.9. m Atskyrimas iš 6.10. ¬m ∧m Konjunktyvus sujungimas iš 8 ir 9.11. ¬e Prieštaros metodas nuo 4 iki 10.

60

Page 63: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Uždaviniai savarankiškam darbuiUždavinys 8.8. Nubrėžkite duotųjų formulių kontaktines schemas.

1.((x→ y) ∧ (y→ z)

)→ (x→ z),

2.(x→ (y→ z)

)→ (y→¬x),

3. (r ⊕ ¬q) | (q→ p).

Uždavinys 8.9. Suprastinkite kontaktines schemas, laikydami, kad paprastesnė yra ta schema,kuri turi mažiau kontaktinių elementų.

1.

x

y

z

u

x

y

u

x

z

2.

y z

x ¬y z

¬x ¬y z

3.

x

y

x

¬y¬x

y z

¬yy ¬z

¬x ¬z

y z

x ¬z

¬x

Uždavinys 8.10. Ar pagrįsti samprotavimai? Ar jie tinkami?

1. p⊕ q, q↔ r ∴ p ∨ r,

2. p ∧ q, p→¬q ∴ p | q,

3. p→ q, q→ r ∴ p↔ r,

4. p, p⊕ q ∴ ¬q.

Uždavinys 8.11. Loginės lygties metodu patikrinkite, ar samprotavimai pagrįsti:

61

Page 64: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

1. Peržiūrėję atostogų pasiūlymus išsirinkome keletą priimtiniausių: Barselona, Madridas,Palanga, Praha, Šventoji ir Talinas. Kadangi per atostogas norėtume aplankyti kokį norsdidesnį pajūrio miestą, vadinasi netiesa, kad nevyksime nei į Barseloną, nei į Taliną.Žinoma, jeigu skrisime į Barseloną, tai aplankysime ir Madridą, nes šie miestai netolivienas nuo kito. Be to, jei ilsėsimės Palangoje arba Šventojoje, tai tikrai neužteks pinigųkelionei į Madridą, tačiau tokiu atveju pasirinktume kelionę į Prahą. Taigi, jei poilsiausimePalangoje, tai taip pat keliausime į Prahą ir Taliną.

2. p⊕ q, q | r ∴ p→ r.

Uždavinys 8.12. Įrodykite šių samprotavimų pagrįstumą formaliosios dedukcijos metodu:

1. G ∨ (H → I),¬G ∧ ¬I ∴ ¬H,

2. Jeigu savaitgalį būtum nevažiavęs švęsti gimtadienio, būtum išsimiegojęs ir pasiruošęs eg-zaminui. Gaila, bet egzaminui nepasiruošei. Taip išeina, kad savaitgalį šventei gimtadienį.

Uždavinys 8.13. Įrodykite šių samprotavimų pagrįstumą sąlyginio įrodymo metodu:

1. p→¬q, (p ∨ r) ∧ (p→ u) ∴ q→ r,

2. ¬E→¬B,¬(E ∧ F ), (¬A ∨ ¬B)→ (B ∧ ¬D) ∴ ¬A→ (¬D ∧ ¬F ),

3. (G ∨ ¬S) ∧ (R ∨ S), R→ (¬H ∧ T ) ∴ H →G.

Uždavinys 8.14. Įrodykite samprotavimų pagrįstumą prieštaros metodu:

1. A→ (B ∨ ¬C),¬B→ (A ∧ C) ∴ B,

2. ¬C→D,C→¬(¬D ∨A), B ∨ ¬D ∴ B.

Uždavinys 8.15. Įrodykite samprotavimo ¬r→q,¬(p→r) ∴ ¬(p→¬q) pagrįstumą, taikydamiformaliosios dedukcijos, sąlyginio įrodymo, prieštaros metodus.

62

Page 65: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Uždavinių savarankiškam darbui sprendimai ir atsakymai

Uždavinio 8.8 sprendimas ir atsakymai:

1. ((x→ y) ∧ (y→ z)

)→ (x→ z) ∼

((¬x ∨ y) ∧ (¬y ∨ z)

)→ (¬x ∨ z) ∼

∼ ¬((¬x ∨ y) ∧ (¬y ∨ z)

)∨ (¬x ∨ z) ∼

(¬(¬x ∨ y) ∨ ¬(¬y ∨ z)

)∨ (¬x ∨ z) ∼

∼((x ∧ ¬y) ∨ (y ∧ ¬z)

)∨ (¬x ∨ z) ∼ (x ∧ ¬y) ∨ (y ∧ ¬z) ∨ ¬x ∨ z

x ¬y

y ¬z

¬x

z

2. (x→ (y→ z)

)→ (y→¬x) ∼ ¬(¬x ∨ ¬y ∨ z) ∨ ¬y ∨ ¬x ∼ (x ∧ y ∧ ¬z) ∨ ¬y ∨ ¬x

x y ¬z

¬y

¬x

3.

(r⊕¬q) | (q→p) ∼ ¬(r↔¬q) | (¬q∨p) ∼ ¬(¬(r↔¬q)∧ (¬q∨p)

)∼ (r↔¬q)∨¬(¬q∨p) ∼

∼((r→¬q) ∧ (¬q→ r)

)∨ (q ∧ ¬p) ∼

((¬r ∨ ¬q) ∧ (q ∨ r)

)∨ (q ∧ ¬p)

¬r

¬q

q

r

q ¬p

Uždavinio 8.9 sprendimas ir atsakymai:

1.(x ∨ y ∨ z ∨ u) ∧ (x ∨ y ∨ u) ∧ (x ∨ z) ∼ x ∨

((y ∨ z ∨ u) ∧ (y ∨ u) ∧ z

)∼

∼ x∨((y∨u∨z)∧ (y∨u∨k)∧z

) ∗∼ x∨(((y∨u)∨ (z∧k))∧z)∼ x∨

(((y∨u)∨k

)∧z)∼

∼ x ∨((y ∨ u) ∧ z

)Vietoje, pažymėtoje ∗, taikome distributyvumo dėsnį — y ∨ u iškeliame prieš skliaustus.Vėlgi, jei pastebėtume, kad čia galima pritaikyti absorbavimo dėsnį p ∧ (p ∨ q) ∼ p,tai atsakymą gautume žymiai greičiau. Iš tikro, šiuo atveju x ∨ y ∨ u būtų p, taigi,(x∨ y ∨ z ∨ u)∧ (x∨ y ∨ u) būtų (p∨ z)∧ p, o tai ekvivalentu tiesiog p, t.y., x∨ y ∨ u. Dėlto gautume:

(x ∨ y ∨ z ∨ u) ∧ (x ∨ y ∨ u) ∧ (x ∨ z) ∼ (x ∨ y ∨ u) ∧ (x ∨ z) ∼ x ∨((y ∨ u) ∧ z

)Suprastinta kontaktinė schema bus:

63

Page 66: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

x

y

u

z

2.

(y∧z)∨(x∧¬y∧z)∨(¬x∧¬y∧z) ∼(y∨(x∧¬y)∨(¬x∧¬y)

)∧z ∼

(y∨((x∨¬x)∧¬y

))∧z ∼

∼(y ∨ (t ∧ ¬y)

)∧ z ∼ (y ∨ ¬y) ∧ z ∼ t ∧ z ∼ z

z

3. (x∧((y∧(x∨¬y)∧¬x

)∨(y∧z)

))∨(¬y∧

((y∧¬z)∨(¬x∧¬z)

))∨(y∧z∧

((x∧¬z)∨¬x

))∼

(x∧(((

(y∧x)∨(y∧¬y))∧¬x

)∨(y∧z)

))∨(¬y∧(y∨¬x)∧¬z

)∨(y∧z∧(x∨¬x)∧(¬z∨¬x)

)∼

(x∧(((

(y∧x)∨k)∧¬x

)∨(y∧z)

))∨((

(¬y∧y)∨(¬y∧¬x))∧¬z

)∨(y∧z∧t∧(¬z∨¬x)

)∼

∼(x ∧

((y ∧ x ∧ ¬x) ∨ (y ∧ z)

))∨((k ∨ (¬y ∧ ¬x)

)∧ ¬z

)∨(y ∧ z ∧ (¬z ∨ ¬x)

)∼

∼(x ∧

(k ∨ (y ∧ z)

))∨ (¬y ∧ ¬x ∧ ¬z) ∨

(y ∧

((z ∧ ¬z) ∨ (z ∧ ¬x)

))∼

∼ (x∧y∧z)∨(¬y∧¬x∧¬z)∨(y∧(k∨(z∧¬x)

))∼ (x∧y∧z)∨(¬y∧¬x∧¬z)∨(y∧z∧¬x) ∼

∼ (x ∧ y ∧ z) ∨ (¬x ∧ y ∧ z) ∨ (¬y ∧ ¬x ∧ ¬z) ∼((x ∨ ¬x) ∧ y ∧ z

)∨ (¬y ∧ ¬x ∧ ¬z) ∼

∼ (t ∧ y ∧ z) ∨ (¬y ∧ ¬x ∧ ¬z) ∼ (y ∧ z) ∨ (¬y ∧ ¬x ∧ ¬z)

y z

¬y ¬x ¬z

Uždavinio 8.10 sprendimas ir atsakymai:

1. Susidarome teisingumo lentelę:

p q r p⊕q q↔r p ∨ rt t t k t tt t k k k tt k t t k tt k k t t tk t t t t tk t k t k kk k t k k tk k k k t k

Yra dvi interpretacijos, su kuriomis abi samprotavimo prielaidos yra teisingos. Su šio-mis interpretacijomis teisinga ir samprotavimo išvada, taigi samprotavimas pagrįstas irtinkamas.

64

Page 67: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

2. Susidarome teisingumo lentelę:

p q p∧q ¬q p→¬q p | qt t t k k kt k k t t tk t k k t tk k k t t t

Kadangi nėra interpretacijos, su kuria abi prielaidos būtų teisingos, vadinasi samprotavi-mas netinkamas nors ir pagrįstas.

3. Susidarome teisingumo lentelę:

p q r p→q q→r p↔ r

t t t t t tt t k t k kt k t k t tt k k k t kk t t t t kk t k t k tk k t t t kk k k t t t

Iš keturių interpretacijų, su kuriomis abi prielaidos yra teisingos, su dviem išvada taip patteisinga, tačiau su likosiomis dviem išvada neteisinga. Taigi samprotavimas tinkamas, betnepagrįstas.

4. Susidarome teisingumo lentelę:

p q p⊕q ¬qt t k kt k t tk t t kk k k t

Abi prielaidos teisingos su vienintele interpretacija. Su ja teisinga ir išvada. Taigi sam-protavimas tinkamas ir pagrįstas.

Uždavinio 8.11 sprendimas ir atsakymai:

1. Pažymėkime teiginį, kad atostogausime Barselonoje raide B, Madride — M , Palangoje— P , Prahoje — R, Šventojoje — Š ir Taline — T . Taigi, pats samprotavimas atrodytųtaip: ¬(¬B ∧ ¬T ), B→M, (P ∨ Š )→ (¬M ∧R) ∴ P → (R ∧ T ). Norėdami parodyti, kadsamprotavimas nepagrįstas, turime išspręsti lygčių sistemą:

¬(¬B ∧ ¬T ) = tB→M = t

(P ∨ Š )→ (¬M ∧R) = tP → (R ∧ T ) = k

Pradėkime nuo paskutiniosios lygties. Kadangi P → (R ∧ T ) = k, vadinasi P = t irR ∧ T = k. Įstatykime P reikšmę į trečiąją lygti. Kadangi P = t, vadinasi P ∨ Š = t.Na o dėl to, kad trečiosios lygties reikšmė turi būti t, gauname, kad ¬M ∧ R = t. Iš toseka, kad ¬M = t, t.y., M = k, ir R = t. Į antrąją lygtį įsistatę M reikšmę, gausime, kadB = k. Kadangi turime, kad R∧ T = k, o R = t, vadinasi T = k. Beliko gautąsias B ir Treikšmes įstatyti į pirmąją lygtį: ¬(¬B ∧ ¬T ) = ¬(¬k ∧ ¬k) = ¬(t ∧ t) = ¬t = k. Taigi,gavome prieštarą, nes pagal lygčių sistemą pirmosios lygties reikšmė turi būti t.

Todėl šis samprotavimas yra pagrįstas.

65

Page 68: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

2. Pabandykime išspręsti lygčių sistemą: p⊕ q = tq | r = t

p→ r = k

Ir vėl pradėkime nuo paskutiniosios, trečiosios, lygties. Kadangi p→ r = k, vadinasi p = t,o r = k. Įstatę p reikšmę į pirmąją lygtį, gausime, kad q = k. Beliko patikrinti, artenkinama antroji lygtis: q | r = k | k = t. O tai ir reikėjo gauti.Kadangi radome interpretaciją, kuri tenkina šią lygčių sistemą, vadinasi samprotavimasnėra pagrįstas.

Uždavinio 8.12 sprendimas:

1.

1. G ∨ (H → I) Samprotavimo prielaida.2. ¬G ∧ ¬I Samprotavimo prielaida.3. ¬G Atskyrimas iš 2.4. H → I Disjunktyvus silogizmas iš 1 ir 3.5. ¬I Atskyrimas iš 2.6. ¬H Modus tollens iš 4 ir 5.

2. Pirmiausia susidarykime samprotavimą. Pažymėkime teiginį savaitgalį važiavai švęsti gim-tadienio raide G, teiginį savaitgalį išsimiegojai raide I, o teiginį pasiruošei egzaminui raideE. Tokiu atveju, samprotavimas atrodytų taip: ¬G→ (I ∧ E),¬E ∴ G.

1. ¬G→ (I ∧ E) Samprotavimo prielaida.2. ¬E Samprotavimo prielaida.3. ¬I ∨ ¬E Prijungimas iš 2.4. ¬(I ∧ E) De Morgano dėsnis iš 3.5. G Modus tollens iš 1 ir 4.

Uždavinio 8.13 sprendimas:

1.

1. p→¬q Samprotavimo prielaida.2. (p ∨ r) ∧ (p→ u) Samprotavimo prielaida.3. q Laikina prielaida.4. ¬p Modus tollens iš 1 ir 3.5. p ∨ r Atskyrimas iš 2.6. r Disjunktyvus silogizmas iš 5 ir 4.7. q→ r Sąlyginis įrodymas nuo 3 iki 6.

2.

1. ¬E→¬B Samprotavimo prielaida.2. ¬(E ∧ F ) Samprotavimo prielaida.3. (¬A ∨ ¬B)→ (B ∧ ¬D) Samprotavimo prielaida.4. ¬A Laikina prielaida.5. ¬A ∨ ¬B Prijungimas iš 4.6. B ∧ ¬D Modus ponens iš 3 ir 5.7. B Atskyrimas iš 6.8. E Modus tollens iš 1 ir 7.9. ¬E ∨ ¬F De Morgano dėsnis iš 2.10. ¬F Disjunktyvus silogizmas iš 9 ir 8.11. ¬D Atskyrimas iš 6.12. ¬D ∧ ¬F Konjunktyvus sujungimas iš 11 ir 10.13. ¬A→ (¬D ∧ ¬F ) Sąlyginis įrodymas nuo 4 iki 12.

66

Page 69: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

3.

1. (G ∨ ¬S) ∧ (R ∨ S) Samprotavimo prielaida.2. R→ (¬H ∧ T ) Samprotavimo prielaida.3. H Laikina prielaida.4. H ∨ ¬T Prijungimas iš 3.5. ¬(¬H ∧ T ) De Morgano dėsnis iš 4.6. ¬R Modus tollens iš 2 ir 5.7. R ∨ S Atskyrimas iš 1.8. S Disjunktyvus silogizmas iš 7 ir 6.9. G ∨ ¬S Atskyrimas iš 1.10. G Disjunktyvus silogizmas iš 9 ir 8.11. H →G Sąlyginis įrodymas nuo 3 iki 10.

Uždavinio 8.14 sprendimas:

1.

1. A→ (B ∨ ¬C) Samprotavimo prielaida.2. ¬B→ (A ∧ C) Samprotavimo prielaida.3. ¬B Laikina prielaida.4. A ∧ C Modus ponens iš 2 ir 3.5. A Atskyrimas iš 4.6. B ∨ ¬C Modus ponens iš 1 ir 5.7. ¬C Disjunktyvus silogizmas iš 6 ir 4.8. C Atskyrimas iš 4.9. C ∧ ¬C Konjunktyvus sujungimas iš 8 ir 7.10. B Prieštaros metodas nuo 3 iki 9.

2.

1. ¬C→D Samprotavimo prielaida.2. C→¬(¬D ∨A) Samprotavimo prielaida.3. B ∨ ¬D Samprotavimo prielaida.4. ¬B Laikina prielaida.5. ¬D Disjunktyvus silogizmas iš 3 ir 4.6. C Modus tollens iš 1 ir 5.7. ¬(¬D ∨A) Modus ponens iš 2 ir 6.8. D ∧ ¬A De Morgano dėsnis iš 7.9. D Atskyrimas iš 8.10. D ∧ ¬D Konjunktyvus sujungimas iš 9 ir 5.11. B Prieštaros metodas nuo 4 iki 10.

Uždavinio 8.15 sprendimas:

1. ¬r→ q Samprotavimo prielaida.2. ¬(p→ r) Samprotavimo prielaida.3. p→¬q Laikina prielaida.4. p Laikina prielaida.5. ¬q Modus ponens iš 3 ir 4.6. r Modus tollens iš 1 ir 5.7. p→ r Sąlyginis įrodymas nuo 4 iki 6.8. ¬(p→ r) ∧ (p→ r) Konjunktyvus sujungimas iš 2 ir 7.9. ¬(p→¬q) Prieštaros metodas nuo 3 iki 8.

67

Page 70: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

9 pratybos

Predikatų logika

Uždaviniai pratybomsUždavinys 9.1. Tegu D yra visų žmonių aibė, o predikatas M(x, y) yra x myli y. Užrašykiteteiginius matematiškai ir raskite jų neiginius:

1. Visi žmonės yra savimylos;

2. Meilė tarp bet kurių dviejų žmonių yra abipusė;

3. Meilė yra tranzityvi.

Sprendimas:

1. Teginys galėtų būti užrašytas taip: ∀x∈D M(x, x). Tokiu atveju neiginys būtų:

¬∀x∈D M(x, x) ∼ ∃x∈D ¬M(x, x)

Žodžiais: Yra toks žmogus, kuris savęs nemyli.

2. Teiginį galima užrašyti taip: ∀x∈D ∀y∈D(M(x, y)→M(y, x)

). Jo neiginys:

¬∀x∈D ∀y∈D(M(x, y)→M(y, x)

)∼ ∃x∈D ∃y∈D ¬

(M(x, y)→M(y, x)

)∼

∼ ∃x∈D ∃y∈D ¬(¬M(x, y) ∨M(y, x)

)∼ ∃x∈D ∃y∈D

(M(x, y) ∧ ¬M(y, x)

)Žodžiais: Yra du žmonės, kurių pirmasis myli antrąjį, bet antrasis pirmojo nemyli.

Pastaba: Šį teiginį galima užrašyti ir kitais būdais. Pavyzdžiui:

∀x∈D ∀y∈D(M(x, y)↔M(y, x)

)Atkreipkite dėmesį, kad ši formulė yra ekvivalenti uždavinio sprendime pateiktai formulei. Ištiesų, jeigu formulėje ∀x∈D ∀y∈D

(M(x, y)→M(y, x)

)sukeistume kintamųjų pavadinimus,

gautume formulę ∀y∈D ∀x∈D(M(y, x)→M(x, y)

), taigi šios formulės ekvivalenčios. Kitaip

sakant jos arba abi teisingos arba abi klaidingos. Todėl:

∀x∈D ∀y∈D(M(x, y)↔M(y, x)

)∼

∼ ∀x∈D ∀y∈D((

M(x, y)→M(y, x))∧(M(y, x)→M(x, y)

)) ∗∼

∗∼ ∀x∈D ∀y∈D(M(x, y)→M(y, x)

)∧ ∀x∈D ∀y∈

(M(y, x)→M(x, y)

) ∗∗∼∗∗∼ ∀x∈D ∀y∈D

(M(x, y)→M(y, x)

)∧ ∀y∈D ∀x∈

(M(y, x)→M(x, y)

)∼

∼ ∀x∈D ∀y∈D(M(x, y)→M(y, x)

)∧ ∀x∈D ∀y∈D

(M(x, y)→M(y, x)

)∼

∼ ∀x∈D ∀y∈D(M(x, y)→M(y, x)

)Vietoje, pažymėtoje ∗, remiamasi predikatų logikos ekvivalentumu ∀x(F ∧ G) ∼ ∀xF ∧ ∀xG,o vietoje, pažymėtoje ∗∗ — ∀x∀yF ∼ ∀y∀xF .

68

Page 71: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

3. Teiginį galima užrašyti taip: ∀x∈D ∀y ∈D ∀z ∈D((M(x, y) ∧M(y, z)

)→M(x, z)

). Jo

neiginys būtų:

¬∀x∈D ∀y∈D ∀z∈D((M(x, y) ∧M(y, z)

)→M(x, z)

)∼

∼ ∃x∈D ∃y∈D ∃z∈D ¬((M(x, y) ∧M(y, z)

)→M(x, z)

)∼

∼ ∃x∈D ∃y∈D ∃z∈D ¬(¬(M(x, y) ∧M(y, z)

)∨M(x, z)

)∼

∼ ∃x∈D ∃y∈D ∃z∈D(M(x, y) ∧M(y, z) ∧ ¬M(x, z)

)Žodžiais: Yra tokie trys žmonės, kurių pirmasis myli antrąjį, antrasis myli trečiąjį, opirmasis trečiojo nemyli.

Uždavinys 9.2. Įrodykite šių samprotavimo pagrįstumą:

1. ∀x(M(x)→ S(x)

),∀x(¬B(x) ∨M(x)

)∴ ∀x

(¬S(x)→¬B(x)

).

2. ∃x∀y(P (x, y) ∨Q(y)

),∃y¬Q(y) ∴ ∃x∃yP (x, y),

3. Visi aristokratai mėgsta avokadus. Kita vertus, žmonės nemėgsta avokadų arba yra vege-tarai. Tiesa, pasaulyje yra ir ne vegetarų. Taigi, ne visi žmonės yra aristokratai.

Sprendimas:

1.

1. ∀x(M(x)→ S(x)

)Samprotavimo prielaida.

2. ∀x(¬B(x) ∨M(x)

)Samprotavimo prielaida.

3. M(a)→ S(a) Universali instanciacija iš 1.4. ¬B(a) ∨M(a) Universali instanciacija iš 2.5. ¬S(a) Laikina prielaida.6. ¬M(a) Modus tollens iš 3 ir 5.7. ¬B(a) Disjunktyvus silogizmas iš 4 ir 6.8. ¬S(a)→¬B(a) Sąlyginis įrodymas nuo 5 iki 7.9. ∀x

(¬S(x)→¬B(x)

)Universali generalizacija iš 8.

2.

1. ∃x∀y(P (x, y) ∨Q(y)

)Samprotavimo prielaida.

2. ∃y¬Q(y) Samprotavimo prielaida.3. ∀y

(P (a, y) ∨Q(y)

)Egzistencinė instanciacija iš 1.

4. ¬Q(b) Egzistencinė instanciacija iš 2.5. P (a, b) ∨Q(b) Universali instanciacija iš 3.6. P (a, b) Disjunktyvus silogizmas iš 5 ir 4.7. ∃yP (a, y) Egzistencinė generalizacija iš 6.8. ∃x∃yP (x, y) Egzistencinė generalizacija iš 7.

3. Pažymėkime teiginį žmogus x yra aristokratas predikatu A(x), teiginį žmogus x mėgsta avo-kadus — predikatuM(x), o teiginį žmogus x yra vegetaras — predikatu V (x). Tokiu atveju

69

Page 72: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

samprotavimas būtų toks: ∀x(A(x)→M(x)

),∀x(¬M(x) ∨ V (x)

),∃x¬V (x) ∴ ¬∀xA(x).

1. ∀x(A(x)→M(x)

)Samprotavimo prielaida.

2. ∀x(¬M(x) ∨ V (x)

)Samprotavimo prielaida.

3. ∃x¬V (x) Samprotavimo prielaida.4. ¬V (a) Egzistencinė instanciacija iš 3.5. ¬M(a) ∨ V (a) Universali instanciacija iš 2.6. ¬M(a) Disjunktyvus silogizmas iš 5 ir 4.7. A(a)→M(a) Universali instanciacija iš 1.8. ¬A(a) Modus tollens iš 7 ir 6.9. ∀xA(x) Laikina prielaida.10. A(a) Universali instanciacija iš 9.11. A(a) ∧ ¬A(a) Konjunktyvus sujungimas iš 10 ir 8.12. ¬∀xA(x) Prieštaros metodas nuo 9 iki 11.

Išvedimo pabaiga galėtų būti ir kitokia:

9. ∃x¬A(x) Egzistencinė generalizacija iš 8.10. ¬∀xA(x) Kvantoriaus neigimas iš 9.

Uždavinys 9.3. Įrodykite šių samprotavimo nepagrįstumą:

1. Visos katės yra žinduoliai. Kai kurios katės — keturkojės. Vadinasi, visi keturkojai yražinduoliai.

2. ∃x(P (x) ∧K(x)

),∃x(P (x) ∧ ¬R(x)

),∀x(K(x)→R(x)

)∴ ∀x

(¬R(x)→ P (x)

).

Sprendimas:

1. Pažymėkime predikatus:

• K(x) — x yra katė,• Ž (x) — x yra žinduolis,• Q(x) — x yra keturkojis.

Čia x priklauso visų gyvūnų aibei D. Tuomet samprotavimą galima užrašyti taip:

∀x∈D(K(x)→ Ž (x)

),∃x∈D

(K(x) ∧Q(x)

)∴ ∀x∈D

(Q(x)→ Ž (x)

)Imkime visų gyvūnų aibės D poaibį D′, sudarytą iš dviejų gyvūnų, D′ = {a, b}, ir bandy-kime parodyti, kad poaibiui D′ samprotavimas nepagrįstas. Tada

∀x∈D(K(x)→ Ž (x)

)∼(K(a)→ Ž (a)

)∧(K(b)→ Ž (b)

)∃x∈D

(K(x) ∧Q(x)

)∼(K(a) ∧Q(a)

)∨(K(b) ∧Q(b)

)∀x∈D

(Q(x)→ Ž (x)

)∼(Q(a)→ Ž (a)

)∧(Q(b)→ Ž (b)

)Pažymėkime p1 = K(a), p2 = K(b), q1 = Ž (a), q2 = Ž (b), r1 = Q(a) ir r2 = Q(b). Turimeparodyti, kad samprotavimas (p1→q1)∧(p2→q2), (p1∧r1)∨(p2∧r2) ∴ (r1→q1)∧(r2→q2)yra nepagrįstas. Tam bandysime rasti loginės lygties

(p1→ q1) ∧ (p2→ q2) ∧((p1 ∧ r1) ∨ (p2 ∧ r2)

)→((r1→ q1) ∧ (r2→ q2)

)= k

bent vieną sprendinį. Gauname sistemą iš 4 lygčių:p1→ q1 = tp2→ q2 = t

(p1 ∧ r1) ∨ (p2 ∧ r2) = t(r1→ q1) ∧ (r2→ q2) = k

70

Page 73: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Iš ketvirtosios lygties matome, kad r1 → q1 = k arba r2 → q2 = k. Pradžiai tarkime,kad r1 → q1 = k. Tokiu atveju r1 = t ir q1 = k. Įstatę šias reikšmes į pirmąją lygtį,gauname p1 → k = t. Iš to seka, kad p1 = k. Įstatę visa tai į trečiąją lygtį, gauname(k ∧ t) ∨ (p2 ∧ r2) = t. Tokiu atveju, p2 ∧ r2 = t, todėl p2 = t ir r2 = t. Dabar iš antrosioslygties gauname t→ q2 = t, taigi q2 = t. Taigi, radome lygties sprendinį: p1 = k, p2 = t,q1 = k, q2 = t, r1 = t ir r2 = t. Tai reiškia, kad lygties kairėje pusėje esanti formulė nėratapačiai teisinga, taigi, samprotavimas nėra pagrįstas aibėje D′, o tuo pačiu nėra pagrįstasir visų gyvūnų aibėje.Beje, šiuo atveju galbūt užtektų imti aibę iš vieno gyvūno, D′ = {a}, kad įsitikintume,kad samprotavimas nepagrįstas. Patikrinkite (žr. 9.6 uždavinį savarankiškam darbui).

2. Tarkime, predikatai apibrėžti aibėje iš vieno elemento: D′ = {a}. Jeigu samprotavimasnepagrįstas šioje aibėje, vadinasi lygčių sistema

P (a) ∧K(a) = tP (a) ∧ ¬R(a) = tK(a)→R(a) = t¬R(a)→ P (a) = k

turės sprendinį. Kadangi P (a) ∧K(a) = t, vadinasi P (a) = t ir K(a) = t. Be to, kadangiP (a) ∧ ¬R(a) = t, todėl R(a) = k. Tačiau pagal trečiąją lygtį K(a)→ R(a) = t, norsK(a) → R(a) = t → k = k. Taigi gavome prieštarą, o tai reiškia, kad aibėje iš vienoelemento samprotavimas yra pagrįstas.Nagrinėkime aibę iš dviejų elementų: D′′ = {a, b}. Šiuo atveju sprendžiame tokią lygčiųsistemą:

(P (a) ∧K(a)

)∨(P (b) ∧K(b)

)= t(

P (a) ∧ ¬R(a))∨(P (b) ∧ ¬R(b)

)= t(

K(a)→R(a))∧(K(b)→R(b)

)= t(

¬R(a)→ P (a))∧(¬R(b)→ P (b)

)= k

Pagal paskutiniąją lygtį turime, kad konjunkcija yra neteisinga, taigi bent viena iš konjunk-cijos dalių turi būti neteisinga. Tarkime, kad ¬R(a)→P (a) = k. Tokiu atveju, ¬R(a) = t,P (a) = k, o iš to seka, kad R(a) = k. Kadangi P (a) = k, todėl P (a) ∧K(a) = k. Kitavertus, pirmojoje lygtyje disjunkcija turi būtį teisinga, taigi P (b)∧K(b) = t, o tai reiškia,kad P (b) = t ir K(b) = t.Trečiojoje lygtyje taip pat yra konjunkcija, kuri yra teisinga, taigi K(b) → R(b) = t.Kadangi K(b) = t, todėl ir R(b) = t. Kita vertus, P (a) ∧ ¬R(a) = k ∧ ¬k = k ∧ t = k. Beto, P (b) ∧¬R(b) = t ∧¬t = t ∧ k = k. Tačiau tai prieštarauja antrajai lygčiai, kuri teigia,kad bent vienas iš disjunkcijos elementų turi būti teisingas. Analogišką prieštarą gausimeir pačioje pradžioje tarę, kad ¬R(b)→ P (b) = k. Taigi ir šiuo atveju neišeina įrodyti, kadsamprotavimas nepagrįstas.Nagrinėkime aibę iš trijų elementų: D′′′ = {a, b, c} spręsdami lygčių sistemą:

(P (a) ∧K(a)

)∨(P (b) ∧K(b)

)∨(P (c) ∧K(c)

)= t(

P (a) ∧ ¬R(a))∨(P (b) ∧ ¬R(b)

)∨(P (c) ∧ ¬R(c)

)= t(

K(a)→R(a))∧(K(b)→R(b)

)∧(K(c)→R(c)

)= t(

¬R(a)→ P (a))∧(¬R(b)→ P (b)

)∧(¬R(c)→ P (c)

)= k

Analogiškai praeitam atvejui, tarkime, kad ¬R(a)→ P (a) = k. Iš to seka, kad P (a) =R(a) = k. Kadangi tokiu atveju P (a)∧K(a) = k, o viena iš disjunkcijos pirmojoje lygtyjedalių turi būti teisinga, tarkime, kad P (b) ∧K(b) = t. Iš to ir iš trečiosios lygties turime,kad P (b) = K(b) = R(b) = t. Kita vertus P (a) ∧ ¬R(a) = k ir P (b) ∧ ¬R(b) = k, todėlpagal antrąją lygtį P (c) ∧ ¬R(c) = t, o iš to seka, kad P (c) = t, o R(c) = k. Be to, pagaltrečiąją lygtį, kadangi R(a) = k, tai ir K(a) = k, analogiškai, kadangi R(c) = k, tai irK(c) = k.Taigi gavome sprendinį, kuris tenkina visas keturias šitos sistemos lygtis:

P (a) = k P (b) = t P (c) = tK(a) = k K(b) = t K(c) = kR(a) = k R(b) = t R(c) = k

71

Page 74: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Taigi, įrodėme, kad šis samprotavimas nepagrįstas aibėje D′′′. Todėl galima tvirtinti, kadduotasis samprotavimas nėra pagrįstas.

72

Page 75: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Uždaviniai savarankiškam darbuiUždavinys 9.4. Tegu D yra visų žmonių aibė, o predikatas M(x, y) yra x myli y. Užrašykitematematiškai šiuos teiginius ir raskite jų neiginius:

1. Visi ką nors myli,

2. Kiekvienas žmogus yra mylimas arba Kas nors myli kiekvieną žmogų,

3. Yra toks žmogaus, kurį myli visi.

Uždavinys 9.5. Įrodykite šių samprotavimų pagrįstumą:

• Visi studentai mėgsta alų, vadinasi, kai kurie alaus mėgėjai nėra šiaip dykaduoniai, nesstudentų tikrai būna darbščių.

• ∀x(F (x)→G(x)

),∀x(A(x)→ F (x)

),∃x¬G(x) ∴ ∃x¬A(x).

Uždavinys 9.6. Patikrinkite, ar galima būtų įrodyti 9.3 uždavinio 1 variante nagrinėjamosamprotavimo nepagrįstumą, nagrinėjant gyvūnų aibės poaibį, susidedantį tik iš vieno gyvūno:D)1 = {a}?

Uždavinys 9.7. Įrodykite šių samprotavimų nepagrįstumą:

1. Visi žmonės yra mirtingi, kai kurie žmonės yra poetai. Vadinasi, visi poetai yra mirtingi.

2. ∀x∈D(A(x)→B(x)

),∀x∈D

(B(x) ∨ C(x)

),∃x∈DA(x) ∴ ∀x∈D

(A(x) ∨ C(x)

).

73

Page 76: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Uždavinių savarankiškam darbui sprendimai ir atsakymai

Uždavinio 9.4 sprendimas ir atsakymai:

1. Teiginys matematine forma: ∀x∈D ∃y∈D M(x, y).Jo neiginys: ¬∀x∈D ∃y∈D M(x, y) ∼ ∃x∈D ¬∃y∈D M(x, y) ∼ ∃x∈D ∀y∈D ¬M(x, y).

2. Teiginys matematine forma: ∀x∈D ∃y∈D M(y, x).Jo neiginys: ¬∀x∈D ∃y∈D M(y, x) ∼ ∃x∈D ¬∃y∈D M(y, x) ∼ ∃x∈D ∀y∈D ¬M(y, x).

3. Teiginys matematine forma: ∃y∈D ∀x∈D M(x, y).Jo neiginys: ¬∃y∈D ∀x∈D M(x, y) ∼ ∀y∈D ¬∀x∈D M(x, y) ∼ ∀y∈D ∃x∈D ¬M(x, y).

Uždavinio 9.5 sprendimas:

1. Pažymėkime teiginį x yra studentas predikatu S(x), teiginį x mėgsta alų — predikatuA(x), o teiginį x yra darbštus — predikatu D(x). Tokiu atveju samprotavimas būtų toks:∀x(S(x)→A(x)

),∃x(S(x) ∧D(x)

)∴ ∃x

(A(x) ∧D(x)

).

1. ∀x(S(x)→A(x)

)Samprotavimo prielaida.

2. ∃x(S(x) ∧D(x)

)Samprotavimo prielaida.

3. S(a) ∧D(a) Egzistencinė instanciacija iš 2.4. S(a) Atskyrimas iš 3.5. S(a)→A(a) Universali instanciacija iš 1.6. A(a) Modus ponens iš 5 ir 4.7. D(a) Atskyrimas iš 3.8. A(a) ∧D(a) Konjunktyvus sujungimas iš 6 ir 7.9. ∃x

(A(x) ∧D(x)

)Egzistencinė generalizacija iš 8.

2.

1. ∀x(F (x)→G(x)

)Samprotavimo prielaida.

2. ∀x(A(x)→ F (x)

)Samprotavimo prielaida.

3. ∃x¬G(x) Samprotavimo prielaida.4. ¬G(a) Egzistencinė instanciacija iš 3.5. F (a)→G(a) Universali instanciacija iš 1.6. ¬F (a) Modus tollens iš 5 ir 4.7. A(a)→ F (a) Universali instanciacija iš 2.8. ¬A(a) Modus tollens iš 7 ir 6.9. ∃x¬A(x) Egzistencinė generalizacija iš 8.

Uždavinio 9.6 sprendimas ir atsakymas: Naudokime predikatų pažymėjimus iš 9.3 uždavi-nio sprendimo. Kadangi gyvūnų aibė D1 susideda tik iš vieno gyvūno a, samprotavimą galimasupaprastinti į tokį teiginių logikos samprotavimą:

K(a)→ Ž (a),K(a) ∧Q(a) ∴ Q(a)→ Ž (a)

Siekdami parodyti, kad toks samprotavimas nepagrįstas, bandykime išspręsti lygčių sistemą: K(a)→ Ž (a) = tK(a) ∧Q(a) = tQ(a)→ Ž (a) = k

Šią sistemą galime bandyti spręsti nuo antrosios lygties. Iš jos turime, kad K(a) = Q(a) = t.Įstatę K(a) reikšmę į pirmąją lygtį, gausime, kad Ž (a) = t. Beliko patikrinti, ar gautosiosreikšmės tenkina trečiąją lygtį: Q(a)→ Ž (a) = t→ t = t, o turėjome gauti k.

74

Page 77: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Taigi, gavome prieštarą. Tai reiškia, kad ši lygčių sistema sprendinių neturi, o 9.3 uždavinio1 variante sufomuluoto samprotavimo nepagrįstumui įrodyti neužtenka aibės iš vieno gyvūno.

Uždavinio 9.7 sprendimas:

1. Pastaba: Sprendžiant uždavinį jums gali padėti toks pastebėjimas: šis samprotavimas nėrapagrįstas, nes tarp jo prielaidų nėra tokios: Visi poetai yra žmonės.

Pirmiausia pažymėkime teiginį x yra žmogus predikatu Ž (x), teiginį x yra mirtingas pre-dikatu M(x), o teiginį x yra poetas predikatu P (x). Tokiu atveju samprotavimą būtųgalima formalizuoti taip:

∀x∈D(Ž (x)→M(x)

),∃x∈D

(Ž (x) ∧ P (x)

)∴ ∀x∈D

(P (x)→M(x)

)Atkreipkite dėmesį, kad šis samprotavimas yra ekvivalentus 9.3 uždavinio 1 variante nag-rinėjamam samprotavimui. Taigi jo nepagrįstumo įrodymas analogiškas minėto uždaviniosprendimui.

2. Nagrinėkime aibės D poaibį, susidedantį tik iš vieno elemento: D′ = {a}. Jeigu sampro-tavimas nepagrįstas šioje aibėje, vadinasi ši lygčių sistema turi sprendinį:

A(a)→B(a) = tB(a) ∨ C(a) = t

A(a) = tA(a) ∨ C(a) = k

Nesunku matyti, kad trečioji lygtis prieštarauja ketvirtąjai. T.y., kadangi A(a) = t, tai irA(a) ∨ C(a) turi būti t. Taigi, aibės iš vieno elemento neužtenka įrodyti samprotavimonepagrįstumą.Nagrinėkime aibės D poaibį, iš dviejų elementų: D′′ = {a, b}. Tokiu atveju reikia spręstilygčių sistemą:

(A(a)→B(a)

)∧(A(b)→B(b)

)= t(

B(a) ∨ C(a))∧(B(b) ∨ C(b)

)= t

A(a) ∨ A(b) = t(A(a) ∨ C(a)

)∧(A(b) ∨ C(b)

)= k

Pradėkime nuo trečiosios lygties. Ji rodo, kad bent vienas iš A(a) ir A(b) turi būti teisingas.Tarkime, A(a) = t. Įstatykime šią reikšmę į pirmąją lygtį. Pagal ją tiek A(a)→B(a) = t,tiek A(b)→ B(b) = t. Taigi, iš pirmojo reiškinio turime, kad B(a) = t. Kita vertus, išketvirtosios lygties turime, kad bent vienas iš A(a)∨C(a) ir A(b)∨C(b) turi būti klaidingas.Kadangi, A(a) = t, vadinasi A(a) ∨ C(a) = t, taigi A(b) ∨ C(b) = k, o tai reiškia, kadA(b) = k ir C(b) = k. Toliau pagal antrąją lygtį tiek B(a)∨C(a) = t, tiek B(b)∨C(b) = t,o kadangi C(b) = k, tai iš pastarosios lygties seka, kad B(b) = t. Liko nustatyti tik C(a)reikšmę, bet pasirodo, ji nėra svarbi. Patikrinkime:

(A(a)→B(a)

)∧(A(b)→B(b)

)= (t→ t) ∧ (k→ t) = t∧ t = t(

B(a) ∨ C(a))∧(B(b) ∨ C(b)

)=(t ∨ C(a)

)∧ (t ∨ k) = t∧ t = t

A(a) ∨ A(b) = = t∨ k = t(A(a) ∨ C(a)

)∧(A(b) ∨ C(b)

)=(t ∨ C(a)

)∧ (k ∨ k) = t∧ k = k

Kadangi buvo patenkintos visos lygtys, gavome, lygčių sistemos sprendinį (iš tiesų, kadangiC(a) gali būti tiek, teisingas, tiek neteisingas, gavome du sprendinius), taigi įrodėme, kaduždavinio sąlygoje suformuluotas samprotavimas nėra pagrįstas.

75

Page 78: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

10 pratybos

Turing’o mašina

Uždaviniai pratybomsUždavinys 10.1. Raskite Turing’o mašiną, skaičiuojančią duotą funkciją f(x). Visose užduo-tyse, jei nenurodyta kitaip, laikoma, kad x yra netuščias žodis abėcėlėje {0, 1}.

1. f(x) = 0,

2. f(x) ={

1, jei žodyje x yra 3 ar daugiau nulių,0, priešingu atveju.

3. f(x) =

1, jei žodyje x yra bent 2 vienetai,0, jei žodyje x yra mažiau, nei 2 vienetai, bet yra bent 2 nuliai,∞, priešingu atveju.

Čia (ir toliau) ženklas ∞ reiškia, kad funkcija neapibrėžta. Kitaip sakant, tokiu atvejuTuring’o mašina nebaigia darbo.

4. Šioje užduotyje laikykime, kad x > 0 yra sveikasis skaičius, užrašytas juostoje dvejetainiupavidalu. Taigi x negali prasidėti nuliu, nebent x = 0.

f(x) ={x− 1, jei x > 1,0, jei x = 0.

Sprendimas: Visose užduotyse abėcėlė bus aibė Σ = {0, 1,b}, kur b yra tuščias simbolis. Žodis„ištrinti“, kurį mes vartosime šiose pratybose, iš tikro reiškia „įrašyti tuščią simbolį“.

Prisiminkime, kad mašina baigia darbą tik tuo atveju, kai pakliūna į galutinę būseną, todėlvisada reikia nurodyti galutinių būsenų aibę F .

Spręsdami tokius uždavinius, iš pradžių pagalvojame, kaip mašina galėtų atlikti duotą funk-ciją, o paskui bandome tai užrašyti mašinos komandomis.

1. Viską triname, važiuodami į dešinę. Kai privažiuojame žodžio pabaigą, užrašom 0 irsustojame. Mašina, kuri tai realizuoja, bus tokia: F = {q1},

0 1 bq0 q0bD q0bD q10N

2. Važiuojame į dešinę, skaičiuodami nulius. Juos skaičiuoti galime keisdami būsenas: ran-dame pirmą nulį — pereiname į kitą būseną, jei būdami toje kitoje būsenoje randamedar vieną nulį — pereiname į trečią būseną, ir t.t… Pagal tai, kokioje būsenoje būdamiprivažiavome žodžio pabaigą, užrašome rezultatą: jei privažiavome būdami būsenoje, kurireiškia, kad radome bent 3 nulius, užrašome 1, o jei ne, užrašome 0. Viską trinti galimevienu metu su nulių skaičiavimu. Taigi būsenos būtų tokios:

76

Page 79: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

• q0 — ieškome pirmo nulio: vienetus triname, radę nulį keičiame būseną, radę žodžiopabaigą baigiame su atsakymu 0.

• q1 — analogiškai ieškome antro nulio,• q2 — taip pat ieškome trečio nulio,• q3 — jau radome 3 nulius. Triname viską iki žodžio galo ir užrašome atsakymą 1.

Tai realizuojanti mašina galėtų būti tokia: F = {q4},

0 1 bq0 q1bD q0bD q40Nq1 q2bD q1bD q40Nq2 q3bD q2bD q40Nq3 q3bD q3bD q41N

3. Šiame uždavinyje reikia skaičiuoti ir vienetus, ir nulius. Tai galima padaryti dviem būdais:

(a) Važiuodami į dešinę skaičiuojame vienetus. Jei privažiavę žodžio pabaigą esame bū-senoje, reiškiančioje, kad radome 2 vienetus, tai atsakymas yra aiškus, jį užrašomeir grįždami atgal viską ištriname (arba grįždami atgal viską ištriname ir tada užra-šome atsakymą). Jei ne, grįždami atgal skaičiuojame nulius (ir kartu triname), ir,pagal tai, kiek radome nulių, arba užrašome atsakymą ir stabdome mašinos darbą(jei funkcija apibrėžta), arba nestabdome mašinos darbo (jei funkcija neapibrėžta).Kaip matome, bet kuriuo atveju žodį teks perbėgti du kartus.

(b) Vienu metu skaičiuojame ir vienetus, ir nulius (ir kartu triname). Šio metodo pri-valumas yra tas, kad žodį perbėgti (nuskaityti) reikės tik vieną kartą — mašinosveikimas užims dvigubai mažiau laiko, o mašinos sudėtingumas (būsenų skaičius)padidės nedaug (jei iš viso padidės).

Pateiksime sprendimą 3b būdu. Savarankiškai realizuokite ir 3a būdą (žr. 10.3 uždaviniosavarankiškam darbui 1 dalį).Susidarykime būsenų lentelę. Šios lentelės elementai — būsenos. Eilutės lentelėje rodo,kiek mašinai esant nagrinėjamoje būsenoje buvo rasta vienetų, o stulpeliai — kiek buvorasta nulių. Suradę dar vieną nulį arba vienetą, turime keisti ir mašinos būseną. Kitavertus, nėra svarbu, ar rasti 2, 3 ar daugiau nulių (atitinkamai vienetų), svarbu, kad jųrasta bent 2. Be to, jei rasti bent 2 vienetai, tada nėra svarbu ir kiek buvo rasta nulių.Juk tokiu atveju funkcijos rezultatas visada yra 1. Taigi, būsenų lentelė būtų tokia:

0 1 ≥ 20 q0 q1 q21 q3 q4 q5

≥ 2 q6 q6 q6

Jeigu darbo metu mašina pateko į būseną q6 (bent 2 vienetai, nesvarbu kiek nulių), mašinosrezultatas — 1 nepriklausomai no to, kiek nulių buvo (ar bus) rasta. Tokiu atveju, galimatrinti viską iki žodžio galo ir pabaigoje užrašyti rezultatą.Kitais atvejais, kad būtų galima užrašyti atsakymą (arba mašiną užciklinti), reikia surastižodžio pabaigą. Jeigu žodžio pabaigą mašina priėjo būdama būsenoje q2 (0 vienetų ir bent2 nuliai) arba q5 (1 vienetas ir bent 2 nuliai), mašinos rezultatas — 0. Pastebėkime, kadmašinai esant būsenoje q5 ir suradus dar vieną vienetą, mašina turės pereiti į būseną q6 irjos rezultatas bus jau ne 0, o 1. Taigi vienetus reikia skaičiuoti net ir tada, kai buvo rastibent du nuliai. Todėl būsenų q2 ir q5 negalima suvienodinti, o pasiekus šias būsenas vistiek reikia ieškoti vienetų (kiek bus rasta nulių jau nesvarbu) iki žodžio pabaigos.Jei priėjusi žodžio pabaigą mašina yra būsenose q1 (1 nulis ir 0 vienetų), q3 (0 nulių ir 1vienetas) ar q4 (po 1 nulį ir vienetą), ji turi nebaigti darbo. Tai galima padaryti įvairiai— pavyzdžiui, važiuoti į dešinę be galo.Be to, nebūtina apibrėžti δ(q0,b), nes tokios komandos niekada neprireiks. Juk žodis xyra netuščias, taigi būsenoje q0, reiškiančioje, kad mašina dar nerado nė vieno vieneto neinulio, mašina negali būti jau priėjusi žodžio pabaigą.

77

Page 80: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Kad būtų aiškiau, galima susidaryti kitokią būsenų lentelę: tegu skirtingos lentelės eilutėsaprašo skirtingas būsenas. Pirmajame stulpelyje nurodykime būsenos pavadinimą, antra-jame — kiek mašinai esant toje būsenoje buvo rasta nulių, trečiajame — kiek vienetų, oketvirtajame — koks būtų mašinos rezultatas, jeigu būdama šioje būsenoje mašina prieitųžodžio pabaigą. Lentelė atrodytų taip:

Nuliai Vienetai Rezultatasq0 0 0 —q1 1 0 ∞q2 > 2 0 0q3 0 1 ∞q4 1 1 ∞q5 > 2 1 0q6 > 0 > 2 1

Taigi, mašina galėtų būti tokia: F = {q7},

0 1 bq0 q1bD q3bD —q1 q2bD q4bD q1bDq2 q2bD q5bD q70Nq3 q4bD q6bD q3bDq4 q5bD q6bD q4bDq5 q5bD q6bD q70Nq6 q6bD q6bD q71N

4. Pažiūrėkime, kas atsitinka, atimant vienetą iš dvejetainio skaičiaus. Pavyzdžiui:

− 101001

10011

Matome, kad visi skaičiaus gale iš eilės einantys nuliai virsta vienetais, pirmas nuo galovienetas virsta nuliu, o kiti skaitmenys lieka nepakitę. Taigi, mašina galėtų veikti taip: visųpirma nuvažiuoti nieko nekeisdama iki skaičiaus pabaigos, o tada, važiuodama iš dešinėsį kairę, visus nulius versti vienetais, kol randa pirmą vienetą, kurį pakeitusi nuliu baigiadarbą. Bet dar reikia išnagrinėti atskirus atvejus, kuriems ši bendra schema netinka:

(a) Visų pirma, jei x = 0, atimties veiksmas neatliekamas. Ar x = 0, patikrinti yranesunku, užtenka patikrinti pirmą skaitmenį. Jei tai 0, tai visas skaičius x = 0,nes nenulinis skaičius negali prasidėti nuliu. Taigi, algoritmą teks papildyti šiuotikrinimu: jei pirmas skaitmuo yra 0, baigti darbą (nes tokiu atveju rezultatas irturi būti 0, kuris ir lieka užrašytas juostoje, nieko nereikia keisti), priešingu atvejuvykdyti aukščiau aprašytą algoritmą.

(b) Rezultatas, jei ne nulis, irgi negali prasidėti nuliu. O taip atsitiks, jei atliksimeaukščiau aprašytą algoritmą, pavyzdžiui, skaičiui x = 100: juostoje liks užrašyta011, nes, kaip matėme, vienetą pakeisime nuliu. Kaip to išvengti? Galimi du būdai:

i. Patikrinti tai prieš atliekant veiksmus. Toks atvejis bus tik tada, kai skaičiuje xyra vienintelis vienetas. Taigi, galime važiuodami į dešinę (vistiek mums reikianuvažiuoti iki skaičiaus pabaigos, tai kartu galime atlikti ir kai ką naudingo)ieškoti, ar rasime dar bent vieną vienetą. Jei taip, tai toliau atliksime aukščiauaprašytą algoritmą, o jei ne, tai atlikinėdami aukščiau aprašytą algoritmą mesvienetą ne keisime į nulį, bet ištrinsime iš viso. Žodžiu, mums reikės užrašytikomandomis du algoritmus: aukščiau aprašytą ir modifikuotą.

ii. Patikrinti tai atlikus veiksmus. Įvykdę aukščiau aprašytą algoritmą mes nebai-giame darbo, o patikriname, ar užrašytas nulis nėra pirmas skaitmuo. Tam tekspavažiuoti per vieną poziciją į kairę ir patikrinti, ar ten tuščias simbolis, ar ne.Jei ne, galime baigti darbą, o jei taip, tai teks grįžti ir ištrinti užrašytą nulį, nesjis yra pirmas skaičiaus skaitmuo.

78

Page 81: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

(c) Na ir dar reikia neužmiršti, kad nulis visgi gali būti pirmas rezultato skaitmuo tuoatveju, jei visas skaičius yra nulis. Bet tai gali atsitikti tik tada, kai x = 1. Šįatvejį irgi teks patikrinti atskirai, nes jei to nepadarysime, tai ištrinsime gautą pirmąskaitmenį nulį, ir juostoje nebeliks užrašyta nieko, o turi likti nulis. Tai irgi galimedaryti dviem būdais:

i. Pradžioje dar patikrinkime, ar yra antras skaitmuo. Jei nėra, tai skaičius x = 1,turėsime jį ištrinti, užrašyti nulį ir baigti, o jei yra, tai galėsime atlikti kurį norsiš aukščiau aprašytų algoritmų.

ii. Patikrinkim, ar paskutinis skaitmuo yra vienetas. Jei taip, pakeiskim jį nuliu irbaikim darbą. Iš tikro, jei x = 1, tai rezultatas bus lygus 0, kaip ir turėtų gautis.Jei x > 1, tai vėlgi gausime teisingą rezultatą. O jei paskutinis skaitmuo nėravienetas, tai galėsime atlikti kurį nors iš aukščiau aprašytų algoritmų.

Parašykime mašiną, realizuojančią atvejus 4a, 4(b)ii ir 4(c)ii. Mums reikės tokių būsenų:

• q0 — jei nulis, reiškia x = 0, užrašome atsakymą 0 ir sustojam, jei vienetas, jįpaliekame ir keičiame būseną į q1. Kadangi žodis ne tuščias, šioje vietoje rasti bnegalima.

• q1 — važiuojame į dešinę iki žodžio galo, radę žodžio galą grįžtame į paskutinį skai-čiaus skaitmenį.

• q2 — paskutinis skaitmuo tuščias būti negali. Jeigu paskutinis skaitmuo yra vienetas,užtenka jį pakeisti nuliu ir sustoti, o jeigu nulis, einame į būseną q3.

• q3 — einame link skaičiaus pradžios ir visus nulius keičiame į vienetus, o pirmą (nuogalo) sutiktą vienetą keičiame į nulį. Kadangi, x 6= 0 (su tokiu atveju susidorojomebūsenoje q0), vadinasi bent vienas vienetas skaičiuje yra, todėl šioje būsenoje esantrasti b neįmanoma. Ir visgi tai atlikę dar nesustojame, nes norime patikrinti, ar darliko simbolių. Jei jų neliko, tai bus negerai, nes juostoje liks užrašytas skaičius sunuliu priekyje. Taigi pakeitę pirmą pasitaikiusį vienetą į nulį, einame į būseną q4 irtikriname kas yra prieš pakeistąjį simbolį.

• q4 — jei prieš pakeistąjį simbolį randame skaitmenį, tai viskas gerai, galime sustoti,o jei tuščią ląstelę, tai teks grįžti atgal ir

• q5 — ištrinti užrašytą nulį priekyje.

Ši mašina atrodytų taip: F = {q6},

0 1 bq0 q60N q11D —q1 q10D q11D q2bKq2 q31K q60N —q3 q31K q40K —q4 q60N q61N q5bDq5 q6bN — —

Savarankiškai realizuokite kitus galimus mašinų variantus (žr. 10.3 uždavinio savarankiš-kam darbui 2 dalį).

Uždavinys 10.2. Kokią funkciją skaičiuoja tokia Turing’o mašina:

0 1 bq0 q10D q21N q0bDq1 q21N q11D q1bD

kur F = {q2}?Sprendimas:

f(x) =

x, jei x prasideda vienetu,01n1y, jei x = 01n0y,∞, jei x prasideda nuliu, ir daugiau nulių jame nėra.

Čia 1n žymi iš eilės einančių n vienetų seką, kur n > 0.

79

Page 82: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Uždaviniai savarankiškam darbuiUždavinys 10.3. Raskite Turing’o mašiną, skaičiuojančią duotą funkciją f(x).

1. Funkcija f(x) apibrėžta taip, kaip 10.1 uždavinio 3 dalyje. Realizuokite mašiną, apibūdintąuždavinio sprendimo 3a dalyje.

2. Funkcija f(x) apibrėžta taip, kaip 10.1 uždavinio 4 dalyje. Realizuokite likusius tris mašinųvariantus, kurie buvo aptarti uždavinio sprendime:

(a) Atvejai 4a, 4(b)i ir 4(c)i,(b) Atvejai 4a, 4(b)i ir 4(c)ii,(c) Atvejai 4a, 4(b)ii ir 4(c)i.

3. f(x) = x̃, kur x̃ yra žodis x, parašytas iš kito galo, pavyzdžiui, jei x = 11101, tai x̃ = 10111.

80

Page 83: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Uždavinių savarankiškam darbui sprendimai ir atsakymai

Uždavinio 10.3 sprendimas ir atsakymai:

1. Reikės tokių būsenų:

• q0 — dar nerasta nė vieno vieneto. Rastus skaičius paliekame, einame į dešinę, oradę b einame į būseną, kuri grįždama skaičiuos nulius.

• q1 — rastas vienas vienetas. Elgiamės analogiškai kaip būsenos q0 atveju.• q2 — rasti bent du vienetai. Daugiau nei vienetų, nei nulių skaičiuoti nereikia. Kaip

ten bebūtų, turime viską ištrinti, taigi einame į dešinę iki b, užrašome rezultatą irpereiname į būseną kuri grįždama į kairę viską ištrins (q6).

• q3 — skaičiuje mažiau, nei du vienetai, o nulių dar nerasta nė vieno. Taigi grįždamiį kairę viską triname ir skaičiuojame nulius. Radę b cikliname.

• q4 — skaičiuje mažiau, nei du vienetai, rastas vienas nulis. Elgiamės analogiški kaipbūsenos q3 atveju.

• q5 — skaičiuje mažiau, nei du vienetai, tačiau rasti bent du nuliai. Daugiau niekoskaičiuoti nereikia, tik einant į kairę viską trinti ir radus b užrašyti rezultatą.

• q6 — rasti bent du vienetai, rezultatas užrašytas, reikia einant į kairę viską ištrinti,o radus b baigti darbą.

Tokiu atveju mašina būtų tokia: F = {q7},

0 1 bq0 q00D q11D q3bKq1 q10D q21D q3bKq2 q20D q21D q61Kq3 q4bK q3bK q3bKq4 q5bK q4bK q4bKq5 q5bK q5bK q70Nq6 q6bK q6bK q7bN

2. (a) Reikės tokių būsenų:• q0 — jei nulis, reiškia x = 0, užrašome atsakymą 0 ir sustojam, jei vienetas, jį

paliekame ir keičiame būseną į q1. Kadangi žodis ne tuščias, šioje vietoje rasti bnegalima.

• q1 — tikriname, ar yra antras skaitmuo, ir kartu ieškome dar vieno vieneto. Jeiyra antras skaitmuo, ir tai yra nulis, pereiname į būseną q2 (važiavimo į dešinęieškant vieneto būsena), jei tai vienetas — į būseną q3 (važiavimo į dešinę jauradus vienetą būsena), o jei antro skaitmens nėra (randame b) — tai reikės grįžtiir vietoj vieneto užrašyti nulį. Tam galima bus panaudoti būseną q5.

• q2 — važiuojame į dešinę iki žodžio galo, ieškodami vieneto. Jei randame, per-einame į būseną q3, o jei privažiuojame skaičiaus pabaigą, taip jo ir neradę, taireiškia, kad skaičiuje yra tik vienas vienetas — pirmasis skaitmuo. Tokiu atve-ju visus nulius keisime vienetais, o vietoj to vieneto reikės parašyti b. Tai busdaroma būsenoje q4.

• q3 — važiuojame į dešinę iki žodžio galo, jau žinodami, kad radome antrą vienetą.Todėl galėsime (būsenoje q5) visus nulius keisti į vienetus, o pirmą sutiktą vienetąkeisti į nulį ir baigti darbą.

• q4 — einame link skaičiaus pradžios ir visus nulius keičiame į vienetus, o pirmą(nuo galo) sutiktą vienetą keičiame į b ir baigiame darbą. Kadangi, x 6= 0 (sutokiu atveju susidorojome būsenoje q0), vadinasi bent vienas vienetas skaičiujeyra, todėl šioje būsenoje esant rasti b neįmanoma.

• q5 — einame link skaičiaus pradžios ir visus nulius keičiame į vienetus, o pirmą(nuo galo) sutiktą vienetą keičiame į nulį ir baigiame darbą. Kadangi, x 6= 0 (sutokiu atveju susidorojome būsenoje q0), vadinasi bent vienas vienetas skaičiujeyra, todėl šioje būsenoje esant rasti b neįmanoma.

81

Page 84: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Tokiu atveju mašina būtų tokia: F = {q6},

0 1 bq0 q60N q11D —q1 q20D q31D q5bKq2 q20D q31D q4bKq3 q30D q31D q5bKq4 q41K q6bN —q5 q51K q60N —

(b) Reikės tokių būsenų:• q0 — jei nulis, reiškia x = 0, užrašome atsakymą 0 ir sustojam, jei vienetas,

jį paliekame ir keičiame būseną. Kadangi žodis ne tuščias, šioje vietoje rasti bnegalima.

• q1 — tikriname, ar yra dar bent vienas vienetas. Jei randame vienetą, pereinameį kitą būseną (q2), jei randame nulį, pasiliekame toje pačioje. Jei radome b,vadinasi skaičius susideda iš vienintelio vieneto ir (galbūt) po jo sekančių nulių.Einame į tą pažyminčią būseną q3.

• q2 — skaičiuje vienetas ne vienintelis. Einame iki skaičiaus pabaigos, suradę bgrįžtame į kairę, į paskutinįjį skaičiaus skaitmenį ir pereiname į kitą būseną (q5).

• q3 — skaičiuje vienintelis vienetas, skaitymo galvutė rodo į paskutinį skaitmenį.Jeigu tai 1, vadinasi x = 1 ir rezultatas turi būti 0. Vienetą keičiame į nulį irbaigiame darbą. Jeigu paskutinis skaitmuo 0, einame į kitą būseną, kuri visusnulius keis į vienetus, o pirmąjį vienetą ištrins — tai bus pirmasis skaitmuo irvienintelis skaičiaus vienetas.

• q4 — skaičiuje vienentelis vienetas, bet x 6= 1, taigi eidami kairėn visus nuliuskeičiame vienetais, o pirmą pasitaikiusių (ir vienintelį skaičiaus) vienetą ištrina-me.

• q5 — skaičiuje yra daugiau nei vienas vienetas, taigi eidami kairėn visus nuliuskeičiame vienetais, o pirmąjį vienetą keičiame nuliu.

Tokiu atveju mašina būtų tokia: F = {q6},

0 1 bq0 q60N q11D —q1 q10D q21D q3bKq2 q20D q21D q5bKq3 q41K q60N —q4 q41K q6bN —q5 q51K q60N —

(c) Reikės tokių būsenų:• q0 — jei nulis, reiškia x = 0, užrašome atsakymą 0 ir sustojam, jei vienetas, jį

paliekame ir keičiame būseną į q1. Kadangi žodis ne tuščias, šioje vietoje rasti bnegalima.

• q1 — tikriname, ar yra antras skaitmuo. Jei yra (randame 0 arba 1), tai perei-name į būseną q2, jei ne (randame b) — tai reikės grįžti ir vietoj vieneto užrašytinulį. Tai padarysime būsenoje q3.

• q2 — važiuojame į dešinę iki žodžio galo, radę žodžio galą grįžtame į paskutinįskaičiaus skaitmenį.

• q3 — vietoj vienintelio skaičiaus skaitmens — vieneto — užrašome nulį ir bai-giame darbą.

• q4 — einame link skaičiaus pradžios ir visus nulius keičiame į vienetus, o pirmą(nuo galo) sutiktą vienetą keičiame į nulį. Kadangi, x 6= 0 (su tokiu atvejususidorojome būsenoje q0), vadinasi bent vienas vienetas skaičiuje yra, todėl šiojebūsenoje esant rasti b neįmanoma. Ir visgi tai atlikę dar nesustojame, nes norimepatikrinti, ar dar liko simbolių. Jei jų neliko, tai bus negerai, nes juostoje liksužrašytas skaičius su nuliu priekyje. Taigi pakeitę pirmą pasitaikiusį vienetą įnulį, einame į būseną q5 ir tikriname kas yra prieš pakeistąjį simbolį.

82

Page 85: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

• q5 — jei prieš pakeistąjį simbolį randame skaitmenį, tai viskas gerai, galimesustoti, o jei tuščią ląstelę, tai teks grįžti atgal ir

• q6 — ištrinti užrašytą nulį priekyje.

Tokiu atveju mašina būtų tokia: F = {q7},

0 1 bq0 q70N q11D —q1 q20D q21D q3bKq2 q20D q21D q4bKq3 — q70N —q4 q41K q50K —q5 q70N q71N q6bDq6 q7bN — —

3. Lengviau sudaryti mašiną su didesne abėcėle Σ = {0, 1, ∗,b}, kur žvaigždutės gali būtinaudojamos atskirti pradinį žodį nuo sudaromo rezultato.

Iš pradžių aprašykime algoritmą, kurį taikysime. Kadangi pradžioje skaitymo galvutė rodoį pirmąjį žodžio skaitmenį, paeikime vieną langelį į kairę ir padėkime jame skirtuką — ∗.Toliau, grįžkime į dešinę, perskaitykime skaitmenį, pakeiskime jį į žvaigždutę ir neškimejį (panaudodami skirtingas būsenas nuliui ir vienetui) per visas žvaigždutes, o vėliau irskaitmenis į kairę iki b ir ten užrašykime. Tada per skaitmenis ir žvaigždutes grįžkime įdešinę iki pirmo skaitmens už žvaigždučių ir perneškime jį. Taip darykime tol, kol eidamiį dešinę už žvaigždučių rasime b. Tada beliks einant kairėn ištrinti visas žvaigždutes.Algoritmo veikimo pavyzdys atrodytų taip:

b b b b b b b 1 0 1 1 0 bb b b b b b ∗ 1 0 1 1 0 bb b b b b 1 ∗ ∗ 0 1 1 0 bb b b b 0 1 ∗ ∗ ∗ 1 1 0 bb b b 1 0 1 ∗ ∗ ∗ ∗ 1 0 bb b 1 1 0 1 ∗ ∗ ∗ ∗ ∗ 0 bb 0 1 1 0 1 ∗ ∗ ∗ ∗ ∗ ∗ bb 0 1 1 0 1 ∗ b b b b b b

Taigi, reikės tokių būsenų:

• q0 — pradinė būsena. Nulį ar vienetą paliekame, einame į kairę, kur randame b,vietoje jo užrašome ∗, einame į dešinę ir pereiname į kitą būseną.

• q1 — nuskaitome skaitmenį, pakeičiame jį į žvaigždutę ir pasiruošiame nešti į kairę.Jeigu radome nulį, į kairę jį neš būsena q2, o jei vienetą — q3. Taip pat šią būsenągalima panaudoti pirmojo skaitmens už žvaigždučių suradimui (pernešant pirmąjįskaitmenį to tiesiog nereikia). Taigi, perskaitę ∗ eisime į dešinę tol, kol surasimeskaitmenį arba b. Jeigu radome b, tai reikš, kad visas skaičius jau apverstas, belikspereiti į būseną, kuri ištrins visas žvaigždutes. Tegul tai būna būsena q5.

• q2 — nulio pernešimo būsena. Einame į kairę palikdami visas žvaigždutes, o vėliauir nulius ar vienetus tol, kol surandame b. Tame langelyje įrašome nulį ir pereinameį kitą būseną (q4).

• q3 — vieneto pernešimo būsena. Analogiška q2, tik įrašome ne nulį, o vienetą.

• q4 — grįžimo pasiimti kito skaitmens būsena. Einame per visus nulius ir vienetusį dešinę iki žvaigždutės, ją suradę pereiname į būseną q1, kuri už žvaigždutės su-ras pirmąjį skaitmenį. Beje, q4 tam panaudoti negalime, nes iki žvaigždučių visusskaitmenis reikia praleisti.

• q5 — žvaigždučių trynimo būsena. Tiesiog einame į kairę, triname visas žvaigždutesiki pirmo pasitaikiusio skaitmens.

83

Page 86: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Tokiu atveju mašina būtų tokia: F = {q6},

0 1 ∗ bq0 q00K q01K — q1∗Dq1 q2∗K q3∗K q1∗D q5bKq2 q20K q21K q2∗K q40Dq3 q30K q31K q3∗K q41Dq4 q40D q41D q1∗D —q5 q60N q61N q5bK —

84

Page 87: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

11 pratybos

Abėcėlinis kodavimas.Duomenų spaudimas.

Uždaviniai pratyboms

Šiose pratybose m ir n atitinkamai žymi aibių A ir B galias |A| ir |B|.

Uždavinys 11.1. Ar kodas c : A → B∗ iššifruojamas? Ar jis p-kodas?

1. A = {a, b, c}, B = {0, 1}, c(a) = 10, c(b) = 01, c(c) = 1000.

2. A = {A,B,C,D,E}, B = {0, 1}, c(A) = 00, c(B) = 10, c(C) = 101, c(D) = 110,c(E) = 1001.

Sprendimas:

1. Iššifruojamas, nes užkoduotą seką visada galėsim dekoduoti vienareikšmiškai: susiskirsto-me seką po du simbolius ir bandome dekoduoti nuo pradžios. Porą 01 visada dekoduojameb, o porą 10 priklausomai nuo kitos poros: jei kita pora yra 00, tai abidvi poras dekoduoja-me c, priešingu atveju, pirmąją porą dekoduojame a, o antrajai porai šias taisykles taikomeiš naujo.Kodas nėra p-kodas, nes simbolio a kodas 10 yra priešdėlis simbolio c kodo 1000.

2. Nėra iššifruojamas, nes c(CB) = c(BD) = 10110. Galima pateikti ir kitą pavyzdį:c(CAD) = c(BEB) = 10100110. Kartu nėra ir p-kodas, nes žinome, kad bet kuris p-kodas yra iššifruojamas.

Uždavinys 11.2. Tegu A = {a1, a2, . . . , a12}, B = {0, 1, 2, 3}. Sudarykite p-kodą c : A → B∗,kurio elementarių kodų ilgiai yra 1, 1, 1, 2, 2, 3, 3, 3, 3, 4, 4, 5, jei toks egzistuoja.Sprendimas: Pirmiausia patikrinsim, ar toks p-kodas egzistuoja, pagal Krafto-Makmilano nely-gybę. Šiuo atveju m = 12, n = 4, d1 = d2 = d3 = 1, d4 = d5 = 2, d6 = d7 = d8 = d9 = 3,d10 = d11 = 4 ir d12 = 5.

m∑i=1

1ndi

= 3 · 14 + 2 · 1

42 + 4 · 143 + 2 · 1

44 + 1 · 145 = 969

1024 6 1

Taigi nelygybė yra patenkinta ir toks p-kodas egzistuoja.Sudarydami jį pagal teorijoje aprašytą procedūrą (penktos kurso dalies pirmo skyriaus pa-

baigoje esantis pavyzdys), gauname tokį kodą (be abejo, jis ne vienintelis):

i 1 2 3 4 5 6 7 8 9 10 11 12c(ai) 0 1 2 30 31 320 321 322 323 3300 3301 33020

Uždavinys 11.3. Tegu A = {a1, a2, . . . , a9}, o B = {0, 1}. Šaltiniui su abėcėle A ir tikimybėmis0,29; 0,21; 0,16; 0,11; 0,08; 0,07; 0,04; 0,03; 0,01 sudarykite:

85

Page 88: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

1. Šenono-Fano kodą c1 : A → B∗;

2. Hafmeno kodą c2 : A → B∗.

Raskite vidutinius elementarių kodų ilgius l(c1) ir l(c2).Sprendimas:

1. Iš pradžių elementariems kodams parenkame tokius ilgius d1, d2, . . . , dm, kad būtų

1ndi

6 pi <1

ndi−1 , i = 1, . . . ,m,

čia m = 9, n = 2, p1 = 0,29, p2 = 0,21, p3 = 0,16, p4 = 0,11, p5 = 0,08, p6 = 0,07,p7 = 0,04, p8 = 0,03, p9 = 0,01. Tada sudarome p-kodą su duotais ilgiais kaip uždavinyje11.2. Gauname tokius ilgius ir, pavyzdžiui, tokį kodą.

i 1 2 3 4 5 6 7 8 9pi 0,29 0,21 0,16 0,11 0,08 0,07 0,04 0,03 0,01di 2 3 3 4 4 4 5 6 7c(ai) 00 010 011 1000 1001 1010 10110 101110 1011110

Vidutinis elementarių kodų ilgis yra:

l(c1) = 2 ·0,29+3 ·0,21+3 ·0,16+4 ·0,11+4 ·0,08+4 ·0,07+5 ·0,04+6 ·0,03+7 ·0,01 = 3,18

2.

A1 c1 A2 c2 A3 c3 A4 c4 A5 c5 A6 c6 A7 c7 A8 c80,29 01 0,29 01 0,29 01 0,29 01 0,29 01 0,31 00 0,40 1 0,6 00,21 10 0,21 10 0,21 10 0,21 10 0,21 10 0,29 01 0,31∗ 00 0,4 10,16 000 0,16 000 0,16 000 0,16 000 0,19 11 0,21∗ 10 0,29∗ 010,11 110 0,11 110 0,11 110 0,15 001 0,16∗ 000 0,19∗ 110,08 111 0,08 111 0,08 111 0,11∗ 110 0,15∗ 0010,07 0011 0,07 0011 0,08∗ 0010 0,08∗ 1110,04 00100 0,04∗ 00100 0,07∗ 00110,03∗ 001010 0,04∗ 001010,01∗ 001011

l(c2) = 2 ·0,29+2 ·0,21+3 ·0,16+3 ·0,11+3 ·0,08+4 ·0,07+5 ·0,04+6 ·0,03+6 ·0,01 = 2,77

Pastaba: Atkreipkite dėmesį, kad iš tiesų Hafmeno kodas gavosi kiek geresnis, nei Šenono-Fano kodas.Tą galime matyti palyginę vidutinius elementarių kodų ilgius: 2,77 prieš 3,18. Kita vertus, tokiubūdu matuojant, Šenono-Fano kodas prastesnis nepilnai 15%, tuo tarpu pats algoritmas yra žymiaipaprastesnis.

Uždavinys 11.4. Išspręskite 11.3 uždavinį, kai B = {0, 1, 2, 3}.Sprendimas: Dar kartą reikėtų paminėti, kad čią pateiktai kodai nėra vieninteliai teisingi užda-vinio atsakymai.

1. Vėlgi, pirmiausia parenkame elementariems kodams ilgius, po to sudarome patį p-kodą:

i 1 2 3 4 5 6 7 8 9pi 0,29 0,21 0,16 0,11 0,08 0,07 0,04 0,03 0,01di 1 2 2 2 2 2 3 3 4c(ai) 0 10 11 12 13 20 210 211 2120

Vidutinis elementarių kodų ilgis yra:

l(c1) = 1 ·0,29+2 ·0,21+2 ·0,16+2 ·0,11+2 ·0,08+2 ·0,07+3 ·0,04+3 ·0,03+4 ·0,01 = 1,8

86

Page 89: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

2. Visų pirma reikia paskaičiuoti, kiek pirmame žingsnyje turime sujungti simbolių. Pasi-naudosime tuo, kad šis skaičius u tenkina sąlygą u ≡ m mod (n− 1), kai 2 6 u 6 n. Čian = 4, m = 9, kitaip sakant u ≡ 9 mod 3, kai 2 ≤ u ≤ 4. Iš čia gauname, kad u = 3.

A1 c1 A2 c2 A3 c30,29 1 0,29 1 0,34 00,21 2 0,21 2 0,29 10,16 3 0,16 3 0,21 20,11 00 0,11∗ 00 0,16 30,08 01 0,08∗ 010,07 03 0,08∗ 020,04∗ 020 0,07∗ 030,03∗ 0210,01∗ 022

l(c2) = 1 ·0,29+1 ·0,21+1 ·0,16+2 ·0,11+2 ·0,08+2 ·0,07+3 ·0,04+3 ·0,03+3 ·0,01 = 1,42

Uždavinys 11.5. Lempelo-Zivo metodu suspauskite pranešimą:

S = vai tai tai vai tai tai vai tai vai tai vai tai tai

Sprendimas: Sudarome žodyną D ir suspaustą pranešimą C:

D C1 v 0 v2 a 0 a3 i 0 i4 05 t 0 t6 ai 2 i7 t 4 t8 ai 69 va 1 a

10 i 3

D C11 ta 5 a12 i t 10 t13 ai v 8 v14 ai t 8 t15 ai va 13 a16 i ta 12 a17 i v 10 v18 ai ta 14 a19 i tai 16 i

Atsakymas: C = 0v0a0i0 0t2i4t6 1a3 5a10t8v8t13a12a10v14a16i.

Uždavinys 11.6. Atstatykite pranešimą, kuris buvo suspaustas naudojant Lempelo-Zivo me-todą:

C = 0o0p0a0 1p3 5a2a4o8 7 7p3

Sprendimas: Sudarome žodyną D iš suspausto pranešimo C porų:

D C1 o 0 o2 p 0 p3 a 0 a4 05 op 1 p6 a 37 opa 5 a

D C8 pa 2 a9 o 4 o

10 pa 811 opa 712 opap 7 p

3

Sudarinėdami žodyną tuo pačiu metu galime rašyti ir pradinį pranešimą, kuris bus toks:

S = opa opa opapa opa opa opapa

87

Page 90: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Uždaviniai savarankiškam darbuiUždavinys 11.7. A = {A,B,C,D}, B = {0, 1}, c(A) = 0, c(B) = 01, c(C) = 011, c(D) = 111.Ar kodas c : A → B∗ iššifruojamas? Ar jis p-kodas?

Uždavinys 11.8. Sudarykite Šenono-Fano kodą c : A → B∗ šaltiniui su abėcėle A ir nuorody-tomis tikimybėmis. Raskite vidutinį elementarių kodų ilgį l(c).

1. A = {a1, a2, . . . , a7}, su tikimybėmis 0,2; 0,2; 0,19; 0,12; 0,11; 0,09; 0,09, o B = {0, 1}.

2. A = {a1, a2, . . . , a9}, su tikimybėmis 0,29; 0,21; 0,16; 0,11; 0,08; 0,07; 0,04; 0,03; 0,01, o B ={0, 1, 2}.

Uždavinys 11.9. Sudarykikite n-narį Hafmeno kodą c šaltiniams iš 11.8 uždavinio. Raskitevidutinius elementarių kodų ilgius l(c).

Uždavinys 11.10. Lempelo-Zivo metodu suspauskite pranešimą:

S = šešios žąsys su šešiais žąsyčiais

Uždavinys 11.11. Atstatykite pranešimą, kuris buvo suspaustas naudojant Lempelo-Zivo me-todą:

C = 0g0e0r0i0 0v0y3a4 1e3o0j5g4r4o12 10r0ą13i3ą13e8i13ė3ė21r0d0a0m9g7r0ė

88

Page 91: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Uždavinių savarankiškam darbui sprendimai ir atsakymai

Uždavinio 11.7 sprendimas ir atsakymas: Kodas iššifruojamas. Jeigu gauta seka prasideda1, tada jį ir dar du po jo einančius vienetus dekoduojame D. Jei ji prasideda 0, ieškome sekojekito nulio (arba sekos galo) ir skaičiuojame vienetus tarp jų. Visus pilnus vienetų trejetusdekoduojame D. Jeigu vienetų neliko, nulį dekoduojame A, jei liko vienas vienetas — B, o jeidu — C. Tada algoritmą kartojame nuo rastojo antro nulio.

Kodas nėra p-kodas, nes A elementarus kodas yra B elementaraus kodo priešdėlis.

Uždavinio 11.8 sprendimas ir atsakymai:

1.i 1 2 3 4 5 6 7pi 0,2 0,2 0,19 0,12 0,11 0,09 0,09di 3 3 3 4 4 4 4c(ai) 000 001 010 0110 0111 1000 1001

l(c) = 3,41

2.i 1 2 3 4 5 6 7 8 9pi 0,29 0,21 0,16 0,11 0,08 0,07 0,04 0,03 0,01di 2 2 2 3 3 3 3 4 5c(ai) 00 01 02 100 101 102 110 1110 11110

l(c) = 2,39

Uždavinio 11.9 sprendimas ir atsakymai:

1.A1 c1 A2 c2 A3 c3 A4 c4 A5 c5 A6 c60,2 10 0,2 10 0,23 01 0,37 00 0,4 1 0,6 00,2 11 0,2 11 0,2 10 0,23 01 0,37∗ 00 0,4 10,19 000 0,19 000 0,2 11 0,2∗ 10 0,23∗ 010,12 010 0,18 001 0,19∗ 000 0,2∗ 110,11 011 0,12∗ 010 0,18∗ 0010,09∗ 0010 0,11∗ 0110,09∗ 0011

l(c) = 2,78

2. Pirmiausia išsiaiškinkime, kiek tikimybių reikia sudėti pirmuoju žingsniu. Sprendžiamelyginį u ≡ m mod (n − 1), kai 2 6 u 6 n. Čia n = 3, m = 9, kitaip sakant u ≡ 9 mod 2,kai 2 ≤ u ≤ 3. Iš čia gauname, kad u = 3.

A1 c1 A2 c2 A3 c3 A4 c40,29 1 0,29 1 0,29 1 0,48 00,21 00 0,21 00 0,23 2 0,29 10,16 01 0,16 01 0,21∗ 00 0,23 20,11 02 0,11 02 0,16∗ 010,08 20 0,08∗ 20 0,11∗ 020,07 22 0,08∗ 210,04∗ 210 0,07∗ 220,03∗ 2110,01∗ 212

l(c) = 1,79

89

Page 92: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Uždavinio 11.10 sprendimas ir atsakymas: Sudarome žodyną D ir suspaustą pranešimąC:

D C1 š 0 š2 e 0 e3 ši 1 i4 o 0 o5 s 0 s6 07 ž 0 ž8 ą 0 ą9 sy 5 y

10 s 511 su 5 u

D C12 š 6 š13 eš 2 š14 i 0 i15 a 0 a16 is 14 s17 ž 6 ž18 ąs 8 s19 y 0 y20 č 0 č21 ia 14 a

16

Rezultatas: C = 0š0e1i0o0s0 0ž0ą5y5 5u6š2š0i0a14s6ž8s0y0č14a16.

Uždavinio 11.11 sprendimas ir atsakymas: Sudarome žodyną D iš suspausto pranešimo Cporų:

D C1 g 0 g2 e 0 e3 r 0 r4 i 0 i5 06 v 0 v7 y 0 y8 ra 3 a9 i 4

10 ge 1 e11 ro 3 o

D C12 j 0 j13 g 5 g14 ir 4 r15 io 4 o16 j 1217 ger 10 r18 ą 0 ą19 gi 13 i20 rą 3 ą21 ge 13 e22 rai 8 i

D C23 gė 13 ė24 rė 3 ė25 ger 21 r26 d 0 d27 a 0 a28 m 0 m29 i g 9 g30 yr 7 r31 ė 0 ė

Sudarinėdami žodyną tuo pačiu metu galime rašyti ir pradinį pranešimą, kuris bus toks:

S = geri vyrai geroj girioj gerą girą gerai gėrė gerdami gyrė

90

Page 93: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

12 pratybos

Klaidas taisantys kodai

Uždaviniai pratyboms

Šiuo metu didelę dalį reikalingos informacijos saugo, apdoroja, perduoda kompiuteriai. Todėlnatūralu, kad ir kodavimo algoritmai dažniausiai taikomi įvairiose informacinėse sistemose: sie-kiant neprarasti saugomos informacijos, naudojami klaidas taisantys kodai, siekiant užtikrintiperduodamos informacijos saugumą, naudojami šifravimo algoritmai ir t.t... Aprašant šiuosalgoritmus dažniausiai naudojami šešioliktainiai ir dvejetainiai skaičiai. Kita vertus, pati ko-duojama informacija dažnai (bet nebūtinai) yra tekstinė. Teksto simboliai verčiami į skaičiusnaudojant įvairias koduotes, kurios vieną simbolį verčia vieno ar kelių baitų dydžio skaičiumi.Vienas baitas — 8 bitai arba 8 dvejetainiai skaitmenys (nuliukai ar vienetukai). Šie skaičiaiyra koduojami vienu ar kitu algoritmu. Paprastai gautasis kodas nėra interpretuojamas kaiptekstas, kita vertus tokią interpretaciją galima gauti koduotą failą atsidarius paprastu tekstųredaktoriumi. Rezultatas — „beprasmių“ simbolių kratinys, kurį suprasti galima tik žinant,kokią teksto koduotę naudoja tekstų redaktorius ir kokiu algoritmu buvo užkoduotas tekstas.

Šiose pratybose bandysime atkartoti tokią veikseną. Kita vertus, populiariausios kompiu-teriuose naudojamos koduotės (tokios, kaip ASCII ar Windows-1257) nėra labai patogios, nesne visi jose esantys simboliai turi grafinį atvaizdavimą. Be to, pratybų tikslais užteks žymiaimažiau simbolių, nei šios koduotės turi. Todėl šių pratybų metu naudosime būtent joms sukur-tą koduotę, kuri susidės tik iš 32 lietuviškos abėcėlės raidžių. Kiekvienam simboliui užrašytiskirsime penkiaženklį dvejetainį skaičių:

00000 0 A 01000 8 Ė 10000 16 K 11000 24 Š00001 1 Ą 01001 9 F 10001 17 L 11001 25 T00010 2 B 01010 10 G 10010 18 M 11010 26 U00011 3 C 01011 11 H 10011 19 N 11011 27 Ų00100 4 Č 01100 12 I 10100 20 O 11100 28 Ū00101 5 D 01101 13 Į 10101 21 P 11101 29 V00110 6 E 01110 14 Y 10110 22 R 11110 30 Z00111 7 Ę 01111 15 J 10111 23 S 11111 31 Ž

12.1 lentelė: Pratybų metu naudojama koduotė

Laikysime, kad tekstas užrašomas vienetų ir nulių seka naudojant šią lentelę, tada taikomasnurodytas kodavimo algoritmas. Gautoji vienetų ir nulių seka suskirstoma po šešis skaitmenisir verčiama atgal į tekstą naudojant tą pačią lentelę.

Uždavinys 12.1. Raskite Hemingo atstumą tarp dviejų vektorių:

1. 1011 ir 1110;

2. 2014 ir 1982;

3. 123456 ir 135766.

91

Page 94: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Sprendimas:

1. Skaitmenys skiriasi dviejose pozicijose, taigi Hemingo atstumas yra 2;

2. 4;

3. 4.

Uždavinys 12.2. Duotas kodas c : {A,B,C} → {0, 1}7. Jis apibrėžiamas taip: c(A) =1110100, c(B) = 1001001 ir c(C) = 0011110. Kiek klaidų aptinka ir kiek ištaiso šis kodas?Dekoduokite iš kanalo gautą pranešimą 1110100 1101001 1001010 1011100, naudodami minima-laus atstumo dekodavimo taisyklę.Sprendimas: Hemingo atstumas tarp c(A) ir c(B) yra 5, tarp c(B) ir c(C) — taip pat 5, o tarpc(A) ir c(C) — 4. Taigi, minimalus kodo c atstumas yra 4. Todėl jis yra tiksliai

[ 4−12]

= 1klaidą ištaisantis ir tiksliai 4− 1 = 3 klaidas aptinkantis kodas.

Pranešimo dekodavimas atliekamas dviem etapais. Pirmiausia bandome surasti ir ištaisytiklaidas, o po to surandame, koks simbolis buvo užkoduotas. Taisydami klaidas, kiekvienam iškanalo gautam žodžiui ieškome artimiausio pagal Hemingo atstumą kodo vektoriaus (žodžio).Pirmasis pranešimo žodis sutampa su c(A), taigi jis yra ir artimiausias, nes Hemingo atstumas ikijo yra 0. Todėl darome prielaidą, kad siunčiant šį žodį klaidų nebuvo padaryta ir jį dekoduojamekaip A. Antrojo žodžio atstumas iki c(A) yra 4, iki c(B) — 1, o iki c(C) — net 6, taigiartimiausias yra kodo žodis c(B). Todėl nusprendžiame, kad į kanalą buvo nusiųstas c(B),ir antrąjį iš kanalo gautą pranešimo vektorių dekoduojame simboliu B. Atitinkamai trečiasispranešimo žodis yra arčiausiai c(B) (Hemingo atstumas 2). Tuo tarpu ketvirtasis žodis yravienodai arti c(A) ir c(C) — iki jų abiejų Hemingo atstumas yra 2. Taigi dekoduodami, kadanginenurodyta kitaip, galime rinktis bet kurį iš jų dviejų. Priklausomai nuo pasirinkimo gautasdekoduotas tekstas galėtų būti ABBA arba ABBC.

Pastaba: Atkreipkite dėmesį, kad dekoduojant trečiąjį ir ketvirtąjį žodžius pakeitėme po du skait-menis. Taigi ištaisėme po dvi klaidas. Tiesa, dekoduojant ketvirtąjį žodį turėjome rinktis iš dviejųvienodai galimų atsakymų, todėl negalime būti tikri, ar gavome gerą rezultatą. Tuo tarpu trečiąjįžodį dekodavome vienareikšmiškai. Kitaip sakant, remiantis prielaida, kad tikimybė iš kanalo gautiteisingą skaitmenį yra didesnė negu tikimybė, kad kanalas skaitmenį perduos neteisingai, tikėtina,kad šios dvi klaidos buvo ištaisytos teisingai.Prisiminkime, kad šis kodas ištaiso tiksliai 1 klaidą. Kaip gavosi, kad vienu atveju pavyko ištaisytijas net dvi? Pasirodo, sąvoka „ištaiso tiksliai n klaidų“ reiškia, kad n arba mažiau klaidų kodasištaiso visada. Tuo tarpu gali būti atvejų, kai jų ištaisoma daugiau, negu n.

Uždavinys 12.3. Užkoduokite pranešimą m nurodytu klaidas taisančiu kodu:

1. Pakartojimo 3 kartus kodu, kai m = MIF;

2. Kontrolinio simbolio kodu, kai m = KONTROLĖ, o k = 4;

3. Hemingo kodu, kai m = ROŽĖ.

Sprendimas:

1. Užrašykime tekstą skaičiais:

MIF = 10010 01100 01001

O dabar kiekvieną skaitmenį pakartokime po tris kartus:

111000000111000 000111111000000 000111000000111

Gautąją seką suskirstykime po penkis skaitmenis:

11100 00001 11000 00011 11110 00000 00011 10000 00111

Beliko gautuosius skaičius užrašyti simboliais. Rezultatas: ŪĄŠCZACKĘ.

Pastaba: Atkreipkite dėmesį, kad gautąjį rezultatą užrašant simboliais kartais paskutiniamsimboliui skaitmenų gali ir neužtekti. Ką daryti tokiu atveju, yra susitarimo reikalas ir neretaiyra nurodoma kodavimo algoritmų apibrėžimuose. Vienas iš paprasčiausių sprendimų būtų —trūkstamus skaitmenis parinkti pastovius (tarkim, visada nulius).

92

Page 95: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

2. Užrašykime tekstą skaičiais:

KONTROLĖ = 10000 10100 10011 11001 10110 10100 10001 01000

Suskirstykime gautąją seką po keturis skaitmenis:

1000 0101 0010 0111 1001 1011 0101 0010 0010 1000

O dabar prie kiekvieno ketverto prijunkime po kontrolinį simbolį taip, kad vienetukųskaičius rinkinyje būtų lyginis:

10001 01010 00101 01111 10010 10111 01010 00101 00101 10001

Užrašę šią seka simboliais gausime: LGDJMSGDDL.

3. Užrašykime tekstą skaičiais:

ROŽĖ = 10110 10100 11111 01000

Suskirstykime gautąją seką po keturis skaitmenis:

1011 0101 0011 1110 1000

Gavome penkis ketvertus. Kiekvienam iš jų braižykime po diagramą. Pirmą atvejį paro-dysime detaliau:

x7 x6

x5

m1 m2

m4

m3=⇒

x7 x6

x5

1 0

1

1 =⇒

1 0

01 0

1

1

Likę atvejai:

1 0

10 1

1

00 0

10 0

1

10 0

11 1

0

11 0

11 0

0

0

Gavome tokią seką:

1011001 0101101 0011100 1110100 1000101

Gautąją seką suskirstykime po penkis skaitmenis:

10110 01010 11010 01110 01110 10010 00101

Užrašę šią seka simboliais gausime: RGUYYMD.

Uždavinys 12.4. Kuri iš duotųjų alternatyvų kanalu buvo perduota teisingai, o kuri ne:

1. Kontrolinio simbolio kodu (k = 3) užkoduota informacija: CĮŪZPBAŽ;

2. Asmens kodai: 60512010376 ir 39705160027;

3. ISBN numeriai: 9955-09-031-6 ir 0-552-99600-X.

Sprendimas:

93

Page 96: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

1. Užrašykime tekstą skaičiais:

00011 01101 11100 11110 10101 00010 00000 11111

O dabar sugrupuokime skaitmenis po keturis (nes k = 3 ir vienas kontrolinis simbolis):

0001 1011 0111 1001 1110 1010 1000 1000 0001 1111

Belieka patikrinti, kuriuose penketuose yra nelyginis vienetų skaičius. Tos dalys bus per-duotos neteisingai. Taigi, teisingai buvo perduoti tik ketvirtasis, šeštasis ir paskutinysisketvertai.

2. Pažymėkime asmens kodo skaitmenis a0a1 . . . a10. Paskutinis skaitmuo apskaičiuojamaspagal formulę:

s1 =( 9∑i=0

((i mod 9 + 1) · ai

))mod 11

Jeigu s1 < 10, tai a10 = s1. Priešingu atveju, taikoma formulė:

s2 =( 9∑i=0

(((i+ 2) mod 9 + 1

)· ai))

mod 11

Jeigu s2 < 10, tai a10 = s2. Priešingu atveju, a10 = 0.Skaičiuojame paskutinįjį pirmojo asmens kodo skaitmenį:

s1 = (1 · 6 + 2 · 0 + 3 · 5 + 4 · 1 + 5 · 2 + 6 · 0 + 7 · 1 + 8 · 0 + 9 · 3 + 1 · 7) mod 11 = 10

Taigi, šiam asmens kodui papildomai reikia skaičiuoti ir s2:

s2 = (3 · 6 + 4 · 0 + 5 · 5 + 6 · 1 + 7 · 2 + 8 · 0 + 9 · 1 + 1 · 0 + 2 · 3 + 3 · 7) mod 11 = 0

Vadinasi, šio asmens kodo paskutinis skaitmuo turėtų būti lygus 0, o ne 6. Todėl jis yragautas neteisingai.Tikriname antrajį asmens kodą:

s1 = (1 · 3 + 2 · 9 + 3 · 7 + 4 · 0 + 5 · 5 + 6 · 1 + 7 · 6 + 8 · 0 + 9 · 0 + 1 · 2) mod 11 = 7

Šio asmens kodo paskutinis skaitmuo turi būti 7, o taip ir yra. Taigi šis asmens kodasgautas teisingai.

3. Pažymėkime ISBN kodo skaitmenis a1a2 . . . a10. Paskutinis skaitmuo apskaičiuojamaspagal formulę:

s =( 9∑i=1

iai

)mod 11

Jei s < 10, tai a10 = s, priešingu atveju a10 = X.Pirmajam ISBN kodui:

s = (1 · 9 + 2 · 9 + 3 · 5 + 4 · 5 + 5 · 0 + 6 · 9 + 7 · 0 + 8 · 3 + 9 · 1) = 6

o antrajam:

s = (1 · 0 + 2 · 5 + 3 · 5 + 4 · 2 + 5 · 9 + 6 · 9 + 7 · 6 + 8 · 0 + 9 · 0) = 9

Matome, kad pirmasis ISBN kodas gautas teisingai, o antrasis — ne.

Uždavinys 12.5. Dekoduokite iš kanalo gautą pranešimą c nurodytu klaidas taisančiu kodu.

1. Pakartojimo 4 kartus kodu, kai c = DAAOULĖJVZCMZNSV;

2. Hemingo kodu, kai m = CYĖTPRH.

Sprendimas:

94

Page 97: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

1. Užrašykime tekstą skaičiais:

00101 00000 00000 10100 11010 10001 01000 0111111101 11110 00011 10010 11110 10011 10111 11101

O dabar sugrupuokime skaitmenis po keturis:

0010 1000 0000 0001 0100 1101 0100 0101 0000 11111110 1111 1000 0111 0010 1111 0100 1110 1111 1101

Kiekviename ketverte yra užkoduotas vienas originalaus pranešimo skaitmuo. Galimi tei-singi kodo žodžiai yra 1111 arba 0000. Visos kitos reikšmės gautos įvykus klaidai kanale,taigi jas dekoduosime artimiausiu (pagal Hemingo atstumą) teisingu kodo žodžiu (ištaisytiskaitmenys paryškinti).

0000 0000 0000 0000 0000 1111 0000 0101 0000 11111111 1111 0000 1111 0000 1111 0000 1111 1111 1111

Atkreipkite dėmesį į apibrauktą ketvertą. Jis vienodai nutolęs tiek nuo 1111, tiek nuo0000. Taigi, matome, kad klaida kanale buvo padaryta (tiksliau, bent dvi klaidos), betvienareikšmiškai dekoduoti negalime. Pabandykime reikšmes atspėti iš konteksto.

Dekoduokime pranešimą:00000 10∗01 11010 10111

Čia ∗ žymi ketvertą, kurio negalima dekoduoti vienareikšmiškai — reikšmė gali būti tiek0, tiek 1. Priklausomai nuo to gaunamas rezultatas yra arba ALUS, arba APUS. Galimanumanyti, kad originalus pranešimas greičiau buvo ALUS. Kita vertus, galima iš ankstosusitarti, kaip tokie atvejai bus dekoduojami. Matome, kad net ir aptikus klaidas nevisada jas pavyksta ištaisyti.

2. Užrašykime tekstą skaičiais:

00011 01110 01000 11001 10101 10110 01011

Sugrupuokime skaitmenis po septynis:

0001101 1100100 0110011 0101101 1001011

Surašykime skaitmenis į diagramą. Pagal diagramą, galima bus nuspręsti, ar įvyko klaida,ir jei taip, tai kurį skaitmenį reikia keisti (šis skaitmuo paryškintas):

x7 x6

x5

m1 m2

m4

m3=⇒

1 0

10 0

1

0 =⇒

1 0

10 1

1

0

Likę atvejai prieš klaidų taisymą:

0 0

11 1

0

01 1

00 1

0

11 0

10 1

1

01 1

01 0

1

0

Ir ištaisius klaidas:

95

Page 98: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

0 0

11 1

0

11 0

00 1

0

11 0

10 1

1

01 1

00 0

1

0

Taigi, dekoduotas pranešimas atrodys taip:

0101 1110 0110 0101 0001

Sugrupuokime po penkis skaitmenis:

01011 11001 10010 10001

Užrašę šią seką raidėmis, gausime: HTML.

96

Page 99: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Uždaviniai savarankiškam darbuiUždavinys 12.6. Užkoduokite pranešimą m nurodytu klaidas taisančiu kodu:

1. Pakartojimo 4 kartus kodu, kai m = UML;

2. Kontrolinio simbolio kodu, kai m = PROGRAMŲSISTEMOS, o k = 8;

3. Hemingo kodu, kai m = ARCHITEKTŪRA;

4. Hemingo kodu, kai m = LISP.

Uždavinys 12.7. Kuri iš duotųjų alternatyvų kanalu buvo perduota teisingai, o kuri ne:

1. Kontrolinio simbolio kodu (k = 5) užkoduota informacija: NĄERAKGŲĖJRK;

2. Asmens kodai: 19902161700, 29803040364, 46708150335 ir 51203112671;

3. ISBN numeriai: 0-19-860877-2, 2-84595-009-X, 9955-619-91-0 ir 9986-16-798-3.

Uždavinys 12.8. Dekoduokite iš kanalo gautą pranešimą c nurodytu klaidas taisančiu kodu.

1. Pakartojimo 3 kartus kodu, kai c = STODFGŽPTŠOŽŽTEŲPK;

2. Hemingo kodu, kai m = ĮŽHĖHŠSDBĖŽSČSĄBPĘĄHU;

3. Hemingo kodu, kai m = POĮĄĮBH.

97

Page 100: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

Uždavinių savarankiškam darbui sprendimai ir atsakymai

Uždavinio 12.6 sprendimas ir atsakymas:

1. Užrašykime pranešimą skaitmenimis:

11010 10010 10001

Dabar kiekvieną skaitmenį pakartokime po keturis kartus:

11111111000011110000 11110000000011110000 11110000000000001111

Beliko tik šią seką suskirstyti po penkis skaitmenis:

11111 11100 00111 10000 11110 00000 00111 10000 11110 00000 00000 01111

Ir gautuosius penkiaženklius skaičius užrašyti raidėmis: ŽŪĘKZAĘKZAAJ.

2. Užrašykime pranešimą skaitmenimis:

10101 10110 10100 01010 10110 00000 10010 1101110111 01100 10111 11001 00110 10010 10100 10111

Dabar suskirstome seką po aštuonis skaitmenis:

10101101 10101000 10101011 00000010 0101101110111011 00101111 10010011 01001010 10010111

Ir kiekvienam aštuonetui prirašome po vienetuką ar nuliuką, taip kad rinkinyje vienetųskaičius būtų lyginis:

101011011 101010001 101010111 000000101 010110111101110110 001011111 100100110 010010101 100101111

Gautąją seką vėl skirstome po penkis skaitmenis:

10101 10111 01010 00110 10101 11000 00010 10101 1011110111 01100 01011 11110 01001 10010 01010 11001 01111

Ir užrašome raidėmis: PSGEPŠBPSSIHZFMGTJ.

3. Užrašykime pranešimą skaičiais:

00000 10110 00011 01011 01100 11001 00110 10000 11001 11100 10110 00000

Ir suskirstykime jį po keturis skaitmenis:

0000 0101 1000 0110 1011 0110 0110 0100 1101 0000 1100 1111 0010 1100 0000

Dabar kiekvienam ketvertui braižome po diagramą:

0 0

00 0

0

01 0

10 1

1

01 0

11 0

0

01 0

00 1

0

11 0

01 0

1

1

1 0

00 1

0

11 0

00 1

0

10 1

10 1

0

00 0

01 1

1

00 0

00 0

0

0

98

Page 101: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

1 1

01 1

0

01 1

11 1

1

11 1

10 0

0

11 1

01 1

0

00 0

00 0

0

0

Taigi, gautasis kodas atrodo taip:

0000000 0101101 1000101 0110001 10110010110001 0110001 0100110 1101000 00000001100011 1111111 0010111 1100011 0000000

Kaip visada, suskirstome po penkis skaitmenis:

00000 00010 11011 00010 10110 00110 1100101100 01011 00010 10011 01101 00000 0000011000 11111 11110 01011 11100 01100 00000

Ir užrašome simboliais: ABŲBRETIHBNĮAAŠŽZHŪIA.

4. Užrašykime pranešimą skaičiais:

10001 01100 10111 10101

Ir suskirstykime jį po keturis skaitmenis:

1000 1011 0010 1111 0101

Dabar kiekvienam ketvertui braižome po diagramą:

1 0

11 0

0

01 0

01 0

1

11 1

10 0

0

11 1

11 1

1

11 0

10 1

1

0

Taigi, gautasis kodas atrodo taip:

1000101 1011001 0010111 1111111 0101101

Kaip visada, suskirstome po penkis skaitmenis:

10001 01101 10010 01011 11111 11101 01101

Ir užrašome simboliais: LĮMHŽVĮ.

Uždavinio 12.7 sprendimas ir atsakymas:

1. Užrašykime tekstą skaičiais:

10011 00001 00110 10110 00000 10000 01010 11011 01000 01111 10110 10000

O dabar sugrupuokime skaitmenis po šešis:

100110 000100 110101 100000 010000 010101 101101 000011 111011 010000

Belieka patikrinti, kuriuose penketuose yra nelyginis vienetų skaičius. Matome, kad tei-singai buvo perduoti tik trečiasis, septinasis ir aštuntasis šešetai.

99

Page 102: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

2. Skaičiuokime kontrolinį skaičių pirmuoju būdu kiekvienam asmens kodui:

(1 · 1 + 2 · 9 + 3 · 9 + 4 · 0 + 5 · 2 + 6 · 1 + 7 · 6 + 8 · 1 + 9 · 7 + 1 · 0) mod 11 = 10

(1 · 2 + 2 · 9 + 3 · 8 + 4 · 0 + 5 · 3 + 6 · 0 + 7 · 4 + 8 · 0 + 9 · 3 + 1 · 6) mod 11 = 10(1 · 4 + 2 · 6 + 3 · 7 + 4 · 0 + 5 · 8 + 6 · 1 + 7 · 5 + 8 · 0 + 9 · 3 + 1 · 3) mod 11 = 5(1 · 5 + 2 · 1 + 3 · 2 + 4 · 0 + 5 · 3 + 6 · 1 + 7 · 1 + 8 · 2 + 9 · 6 + 1 · 7) mod 11 = 8

Matome, kad trečiasis asmens kodas perduotas teisingai, o ketvirtasis — neteisingai. Tuotarpu pirmajam ir antrajam asmens kodams reikės skaičiuoti kontrolinį skaičių antruojubūdu:

(3 · 1 + 4 · 9 + 5 · 9 + 6 · 0 + 7 · 2 + 8 · 1 + 9 · 6 + 1 · 1 + 2 · 7 + 3 · 0) mod 11 = 10

(3 · 2 + 4 · 9 + 5 · 8 + 6 · 0 + 7 · 3 + 8 · 0 + 9 · 4 + 1 · 0 + 2 · 3 + 3 · 6) mod 11 = 9Matome, kad pirmasis asmens kodas perduotas teisingai, o antrasis — neteisingai.

3. Skaičiuokime kontrolinį skaičių kiekvienam ISBN numeriui:

(1 · 0 + 2 · 1 + 3 · 9 + 4 · 8 + 5 · 6 + 6 · 0 + 7 · 8 + 8 · 7 + 9 · 7) = 2

(1 · 2 + 2 · 8 + 3 · 4 + 4 · 5 + 5 · 9 + 6 · 5 + 7 · 0 + 8 · 0 + 9 · 9) = 8(1 · 9 + 2 · 9 + 3 · 5 + 4 · 5 + 5 · 6 + 6 · 1 + 7 · 9 + 8 · 9 + 9 · 1) = 0(1 · 9 + 2 · 9 + 3 · 8 + 4 · 6 + 5 · 1 + 6 · 6 + 7 · 7 + 8 · 9 + 9 · 8) = 1

Matome, kad pirmasis ir trečiasis asmens kodai perduoti teisingai, o antrasis ir ketvirtasis— neteisingai.

Uždavinio 12.8 sprendimas ir atsakymas:

1. Užrašykime tekstą skaičiais:

10111 11001 10100 00101 01001 01010 11111 10101 1100111000 10100 11111 11111 11001 00110 11011 10101 10000

O dabar sugrupuokime skaitmenis po tris:

101 111 100 110 100 001 010 100 101 010 111 111 010 111 001110 001 010 011 111 111 111 100 100 110 110 111 010 110 000

Galimi teisingi kodo žodžiai yra 111 arba 000. Visos kitos reikšmės gautos įvykus klaidaikanale, taigi jas dekoduosime artimiausiu (pagal Hemingo atstumą) teisingu kodo žodžiu(ištaisyti skaitmenys paryškinti).

111 111 000 111 000 000 000 000 111 000 111 111 000 111 000111 000 000 111 111 111 111 000 000 111 111 111 000 111 000

Dekoduokime pranešimą:

11010 00010 11010 10011 11001 11010

Rezultatas — UBUNTU.

2. Užrašykime tekstą skaičiais:

01101 11111 01011 01000 01011 11000 1011100101 00010 01000 11111 10111 00100 1011100001 00010 10101 00111 00001 01011 11010

Sugrupuokime skaitmenis po septynis:

0110111 1110101 1010000 1011110 00101110010100 0100100 0111111 0111001 00101110000100 0101010 1001110 0001010 1111010

Surašykime skaitmenis į diagramą (paryškintas neteisingas skaitmuo):

100

Page 103: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

1 1

10 1

0

11 0

11 1

0

10 0

01 0

0

10 1

11 0

1

11 1

10 0

0

1

0 0

10 0

0

10 0

10 1

0

01 1

10 1

1

11 0

00 1

1

11 1

10 0

0

1

0 0

10 0

0

00 1

00 1

1

00 1

11 0

1

00 1

00 0

1

00 1

01 1

1

1

Ištaisykime pažymėtas klaidas:

1 1

10 0

0

10 0

11 1

0

10 1

01 0

0

10 1

11 0

1

01 1

10 0

0

1

0 0

10 0

1

10 1

10 1

0

01 1

11 1

1

11 0

00 1

0

11 1

10 0

0

1

0 0

00 0

0

00 1

00 1

1

10 1

11 0

1

01 1

00 0

1

00 1

00 1

1

1

Taigi, dekoduotas pranešimas atrodys taip:

0010 1110 1010 1001 0010 0011 0100 1111 0110 0010 0000 0111 1001 0001 0111

Sugrupuokime po penkis skaitmenis:

00101 11010 10100 10010 00110 10011 11011 00010 00000 11110 01000 10111

Užrašę šią seką raidėmis, gausime: DUOMENŲBAZĖS.

3. Užrašykime tekstą skaičiais:

10101 10100 01101 00001 01101 00010 01011

Sugrupuokime skaitmenis po septynis:

1010110 1000110 1000010 1101000 1001011

Surašykime skaitmenis į diagramą (paryškintas neteisingas skaitmuo):

101

Page 104: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

0 1

11 0

0

10 1

11 0

0

00 1

01 0

0

00 0

01 1

1

01 1

01 0

1

0

Ištaisykime pažymėtas klaidas:

0 1

01 0

0

10 1

11 0

1

00 1

01 0

0

10 0

01 1

1

01 1

00 0

1

0

Taigi, dekoduotas pranešimas atrodys taip:

1010 1001 1010 1101 0001

Sugrupuokime po penkis skaitmenis:

10101 00110 10110 10001

Užrašę šią seką raidėmis, gausime: PERL.

102

Page 105: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

13 pratybos

Kriptografija

Uždaviniai pratyboms

Šių pratybų tikslas — susipažinti su viešo rakto kriptosistema RSA. Pratybose daug neelementa-rios matematikos, taigi pravartu turėti skaičiuotuvą. Be to (kad būtų įdomiau) pratybos skirtosdarbui dviese. Visų pirma reikės susikurti savo viešą ir privatų raktus. Tada — sugalvoti pra-nešimą, jį pasirašyti ir nusiųsti kolegai, kad šis įsitikintų parašo teisingumu. O po to reikėssugalvoti kitą (arba tą patį) pranešimą ir jį užšifruoti taip, kad perskaityti galėtų tik kolega,kuriam jis skirtas. Šių pratybų metu naudosime tą pačią koduotę, kaip ir praeitose pratybose,tačiau šį kartą raides koduosime ne vienetukais-nuliukais, o dešimtainiais skaičiais.

Uždavinys 13.1. Išbandykime viešo rakto kriptosistemą RSA:1

1. Sugalvokite du pirminius skaičius p ir q. Pažymėkime n = pq. Norėdami užkoduoti bet ko-kį iš 32 koduotės simbolių, parinkite p ir q tokius, kad n > 32. Kita vertus, nepersistenkite,kad skaičiavimai nebūtų pernelyg sudėtingi: tegul n < 200.

2. Apskaičiuokite Oilerio funkcijos reikšmę skaičiui n pagal formulę:

φ(n) = φ(pq) = (p− 1)(q − 1)

3. Sugalvokite skaičių e tokį, kad 1 < e < φ(n) ir e būtų tarpusavyje pirminis su φ(n).

4. Apskaičiuokite skaičių d tokį, kad 1 < d < φ(n) ir ed ≡ 1 mod φ(n). Šiam tikslui nau-dosime išplėstinį Euklido algoritmą. Paprastas Euklido algoritmas suranda dviejų skaičiųbendrą didžiausią daliklį. Išplėstinis, beieškodamas bendro didžiausio daliklio, randa to-kius s ir t, kad as + bt yra lygus a ir b bendram didžiausiam dalikliui. Iš tiesų, jeimums reikia rasti tokį d, kad ed ≡ 1 mod φ(n), vadinasi šią sąlygą galima pakeisti tokia:ed − 1 ≡ 0 mod φ(n). Kitaip sakant, ed − 1 turi būti dalus iš φ(n). Arba, turi egzistuotitoks k, kad ed − 1 = k · φ(n). Pertvarkius paskutiniąją lygtį gauname ed − k · φ(n) = 1.Kadangi e ir φ(n) yra tarpusavyje pirminiai, kitaip sakant, jų bendras didžiausias daliklisyra 1, vadinasi tokį skaičių d galime rasti taikydami išplėstinį Euklido algoritmą (skaičiusk mūsų nedomina, todėl jo neskaičiuosime). Tam reikės atlikti tokius veiksmus:

(a) Pagalbinio lapo antrojoje pusėje (kitoje, negu koduotė) nurodytose vietose įrašykiteφ(n) (du kartus) ir e.

(b) Išspręskite lygtį φ(n) = q × e + r taip, kad q, r ∈ N ir q būtų kuo didesnis. Kitaipsakant, φ(n) padalinkite iš e. Sveikoji dalmens dalis bus q, o liekana — r.

(c) Gautąjį q įsirašykite į punktyrine rodykle nurodytą vietą.(d) Apskaičiuokite p2 = (p0 − p1 × q) mod φ(n).(e) Persikelkite skaičius į kitą eilutę, vadovaudamiesi rodyklėmis.

1Tam reikės pagalbinių lapų, esančių 105 ir 106 puslapiuose. Šie du puslapiai turi būti atspausdinti ant vienolapo. Kiekvienam bandymui reikės ketvirčio lapo.

103

Page 106: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

(f) Veiksmus tęskite tol, kol gausite r = 1. Skaičius gautas pažymėtame stulpelyje ir busjūsų d.

5. Užrašykite porą (d, n) pagalbinio lapo antrojoje pusėje, nurodytoje vietoje. Tai jūsų pri-vatus raktas.

6. Užrašykite porą (e, n) pagalbinio lapo pirmojoje ir antrojoje pusėse, nurodytose vietose.Tai jūsų viešas raktas.

7. Sugalvokite paprastą (geriausia, ne per ilgą — trijų-keturių simbolių) pranešimą, naudo-dami simbolius iš koduotės (pirmoji pagalbinio lapo pusė). Užrašykite jį pirmoje lapopusėje nurodytuose langeliuose.

8. Pasirašykite sugalvotą pranešimą (užkoduokite jį savo privačiu raktu):

(a) Paverskite simbolius dešimtainiais skaičiais, naudodami koduotę.(b) Kiekvienam simboliuim suskaičiuokite jo kodą c = md mod n. Skaičiavimams galima

panaudoti laipsnių savybę, kad jei a = b mod n, tai am ≡ bm mod n.(c) Gautąjį kodą padalinkite į dvi dalis pagrindu 32: tegul c1 = c div 32, o c2 = c mod 32.(d) Užrašykite c1 ir c2 simboliais į atitinkamus langelius.2

9. Padalinkite lapą per skiriamąją liniją pusiau ir apatiniąją pusę (su viešuoju raktu ir pasi-rašytu pranešimu) nusiųskite kaimynui.

10. Patikrinkite, ar gautasis pranešimas tinkamai pasirašytas (dešifruokite parašą kaimynoviešuoju raktu ir palyginkite su pranešimu):

(a) Paverskite simbolius dešimtainiais skaičiais, naudodami koduotę.(b) Sujunkite skaičius poromis pagrindu 32: c = c1 × 32 + c2.(c) Kiekvienam kodui c suskaičiuokite tikrąją jo reikšmę r = ce mod n.(d) Užrašykite gautuosius r simboliais.

11. Sugalvokite naują (šį kartą tikrai trumpą) pranešimą.

12. Užšifruokite jį kaimyno viešuoju raktu ir užrašykite antrojoje lapo pusėje. Atlikti reikiatokius pačius veiksmus, kaip 8 žingsnyje, tik vietoje savo privataus rakto (d, n) reikianaudoti kaimyno viešąjį raktą (e, n).3

13. Persiųskite užšifruotąjį pranešimą kaimynui.

14. Dešifruokite gautąjį pranešimą savo privačiuoju raktu. Atlikti reikia tokius pačius veiks-mus, kaip 10 žingsnyje, tik vietoje kaimyno viešo rakto (e, n) reikia naudoti savo privatųraktą (d, n).

2Galite įvelti vieną kitą klaidą, kad kaimynas galėtų suabejoti Jūsų parašo autentiškumu3Šį kartą klaidų geriau nedarykite. Bent jau tyčia.

104

Page 107: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

00000 0 A 01000 8 Ė 10000 16 K 11000 24 Š00001 1 Ą 01001 9 F 10001 17 L 11001 25 T00010 2 B 01010 10 G 10010 18 M 11010 26 U00011 3 C 01011 11 H 10011 19 N 11011 27 Ų00100 4 Č 01100 12 I 10100 20 O 11100 28 Ū00101 5 D 01101 13 Į 10101 21 P 11101 29 V00110 6 E 01110 14 Y 10110 22 R 11110 30 Z00111 7 Ę 01111 15 J 10111 23 S 11111 31 Ž

e n

Pranešimas: Parašas:

00000 0 A 01000 8 Ė 10000 16 K 11000 24 Š00001 1 Ą 01001 9 F 10001 17 L 11001 25 T00010 2 B 01010 10 G 10010 18 M 11010 26 U00011 3 C 01011 11 H 10011 19 N 11011 27 Ų00100 4 Č 01100 12 I 10100 20 O 11100 28 Ū00101 5 D 01101 13 Į 10101 21 P 11101 29 V00110 6 E 01110 14 Y 10110 22 R 11110 30 Z00111 7 Ę 01111 15 J 10111 23 S 11111 31 Ž

e n

Pranešimas: Parašas:

00000 0 A 01000 8 Ė 10000 16 K 11000 24 Š00001 1 Ą 01001 9 F 10001 17 L 11001 25 T00010 2 B 01010 10 G 10010 18 M 11010 26 U00011 3 C 01011 11 H 10011 19 N 11011 27 Ų00100 4 Č 01100 12 I 10100 20 O 11100 28 Ū00101 5 D 01101 13 Į 10101 21 P 11101 29 V00110 6 E 01110 14 Y 10110 22 R 11110 30 Z00111 7 Ę 01111 15 J 10111 23 S 11111 31 Ž

e n

Pranešimas: Parašas:

00000 0 A 01000 8 Ė 10000 16 K 11000 24 Š00001 1 Ą 01001 9 F 10001 17 L 11001 25 T00010 2 B 01010 10 G 10010 18 M 11010 26 U00011 3 C 01011 11 H 10011 19 N 11011 27 Ų00100 4 Č 01100 12 I 10100 20 O 11100 28 Ū00101 5 D 01101 13 Į 10101 21 P 11101 29 V00110 6 E 01110 14 Y 10110 22 R 11110 30 Z00111 7 Ę 01111 15 J 10111 23 S 11111 31 Ž

e n

Pranešimas: Parašas:

105

Page 108: Diskrečioji matematika Pratybų medžiaga - mif.vu.ltjulius/2014Rud/DiskMat/Pratybos/Pratybos.pdf · 2. Jei knyga plona, tai aš ją skaitysiu. 3. Arba išlaikysiu diskrečiosios

φ(n) e φ(n)10

1

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

d n

e n

Šifruotas pranešimas:

φ(n) e φ(n)10

1

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

d n

e n

Šifruotas pranešimas:

φ(n) e φ(n)10

1

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

d n

e n

Šifruotas pranešimas:

φ(n) e φ(n)10

1

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

= × + =(

− ×)

mod

d n

e n

Šifruotas pranešimas:

106