Professional Documents
Culture Documents
(MUR1 2022-23) Tutorijal 5 (Rješenja)
(MUR1 2022-23) Tutorijal 5 (Rješenja)
Ovo su dvije poznate formule elementarne teorije brojeva (koja će se također raditi na ovom
kursu nešto kasnije . Slijedi da se one mogu posmatrati kao specijalan slučaj općih De
Morganovih zakona u proizvoljnim Booleovim algebrama.
2. Neka je dat skup B = {0, α, β, γ, δ, ε, ζ , 1}. Definirajte operacije “⊔” i “⊓” u skupu B tako da trojka
(B, ⊔, ⊓ bude Booleova algebra, pri čemu ulogu neutralnih elemenata Booleove algebre 𝟘 i 𝟙
preuzimaju elementi 0 i 1 iz B.
Rješenje:
Prema Stoneovoj teoremi, svaka Booleova algebra nad ma kakvim konačnim skupom izomorfna
je sa Booleovom algebrom (𝒫(𝕌), ∪, ∩) za neki skup 𝕌. Pošto mogu biti izomorfne samo Booleove
algebre čiji skupovi imaju isti kardinalni broj, moramo odabrati neki skup 𝕌 takav da 𝒫(𝕌)
ima 8 elemenata kao i skup B. Uzmimo recimo 𝕌 = {𝑎, 𝑏, 𝑐} i napravimo izomorfizam 𝑓 zadan
pravilima 𝑓(0) =∅, 𝑓(α) ={𝑎}, 𝑓(β) ={𝑏}, 𝑓(γ) ={𝑐}, 𝑓(δ) ={𝑎, 𝑏}, 𝑓(ε) ={𝑎, 𝑐}, 𝑓(ζ) ={𝑏, 𝑐} i
𝑓(1) ={𝑎, 𝑏, 𝑐}. Naravno, ovaj izomorfizam nije jedinstven, tako da ni sama Booleova algebra
koju ćemo uvesti u skup B nije jedinstvena (drugačiji izomorfizmi mogu, ali ne moraju dovesti
do drugačije Booleove algebre . Ipak, zbog zahtjeva da 0 i 1 budu neutralni elementi 𝟘 i 𝟙
Booleove algebre, mora se uzeti da je f (0) =∅ i f (1) ={𝑎, 𝑏, 𝑐} (tu nemamo slobodu izbora).
Sada ćemo operacije “⊔” i “⊓” definirati prosto kao
𝑥 ⊔𝑦 = 𝑓 ( 𝑓(𝑥) ∪ 𝑓(𝑦)), 𝑥 ⊓ 𝑦 = 𝑓 ( 𝑓(𝑥) ∩ 𝑓(𝑦))
Na primjer, imamo:
δ ⊔ε = 𝑓 ( 𝑓(δ) ∪ 𝑓(ε)) = 𝑓 ({𝑎, 𝑏} ∪ {𝑎, c}) = 𝑓 ({𝑎, 𝑏, 𝑐}) = 1
δ ⊓ε = 𝑓 ( 𝑓(δ) ∩ 𝑓(ε)) = 𝑓 ({𝑎, 𝑏} ∩ {𝑎, c}) = 𝑓 ({𝑎}) =
Takvim rezonovanjem možemo kompletirati sljedeće “tablice istine” za operacije “⊔” i “⊓” (pri
tome, ne moramo baš sve ići na gore opisani način nego se možemo osloniti i na zakone
Booleove algebre, recimo činjenicu da je 𝑥 ⊔ 1 = 1 za svako 𝑥 iz skupa B, što može u velikoj mjeri
ubrzati postupak):
1
Dr. Ž. Jurić, Dr. R. Turčinhodžić-Mulahasanović: Matematika u računarstvu I Rješenja zadataka s Tutorijala 5.
Zadaci predviđeni za rad sa tutorom (akademska godina 2022/23)
⊔ 0 α β γ δ ε ζ 1 ⊓ 0 β γ ε ζ 1
0 0 α β γ δ ε ζ 1 0 0 0 0 0 0 0 0 0
α α α δ δ ε 1 1 α 0 α 0 0 α α 0 α
β β δ β ζ δ 1 ζ 1 β 0 0 β 0 β 0 β β
γ γ ζ γ 1 ε ζ 1 γ 0 0 0 γ 0 γ γ γ
δ δ δ δ 1 δ 1 1 1 δ 0 α β 0 δ α β δ
ε ε ε 1 ε 1 ε 1 1 ε 0 α 0 γ α ε γ ε
ζ ζ 1 ζ ζ 1 1 ζ 1 ζ 0 0 β γ β γ ζ ζ
1 1 1 1 1 1 1 1 1 1 0 α β γ δ ε ζ 1
Rješenje:
𝑥 𝑦 𝑥 𝑥 𝑦 𝑦 𝑧 𝑧 𝑧 𝑧 𝑧
0 0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 1 2 0 0 1 0
0 2 0 0 1 0 4 0 1 0 0
0 3 0 0 1 1 × × × × ×
1 0 0 1 0 0 1 0 0 0 1
1 1 0 1 0 1 3 0 0 1 1
1 2 0 1 1 0 5 0 1 0 1
1 3 0 1 1 1 × × × × ×
2 0 1 0 0 0 4 0 1 0 0
2 1 1 0 0 1 6 0 1 1 0
2 2 1 0 1 0 8 1 0 0 0
2 3 1 0 1 1 × × × × ×
3 0 1 1 0 0 9 1 0 0 1
3 1 1 1 0 1 11 1 0 1 1
3 2 1 1 1 0 13 1 1 0 1
3 3 1 1 1 1 × × × × ×
1 1
𝑦 𝑦
𝑧 = 𝑥 (𝑥 ∨ 𝑦 ) (MKNF) 𝑧 = 𝑥 𝑦 ∨ 𝑥̅ 𝑦 ∨ 𝑥 𝑥̅ 𝑦̅ (MDNF)
2
Dr. Ž. Jurić, Dr. R. Turčinhodžić-Mulahasanović: Matematika u računarstvu I Rješenja zadataka s Tutorijala 5.
Zadaci predviđeni za rad sa tutorom (akademska godina 2022/23)
𝑥 𝑥
𝑧 : 𝑧 :
1 1
𝑥 𝑥
1 × × 1 1 × ×
𝑦 𝑦
1 × × 1 1 × ×
1 1
𝑦 𝑦
𝑧 =𝑦 (MDNF) 𝑧 =𝑥 (MDNF)
Zapravo, da zaključimo da je 𝑧 = 𝑦 i 𝑧 = 𝑥 nisu nam uopće trebali Veitchovi dijagrami (to se
moglo vidjeti odmah iz tablice). Također, izraz za 𝑧 se može i još malo ručno pojednostaviti:
𝑧 = 𝑥 𝑦 ∨ 𝑥̅ 𝑦 ∨ 𝑥 𝑥̅ 𝑦̅ = (𝑥̅ ∨ 𝑥 )𝑦 ∨ 𝑥 𝑥̅ 𝑦̅ = ̅̅̅̅̅̅
𝑥 𝑥̅ 𝑦 ∨ 𝑥 𝑥̅ 𝑦̅ = 𝑥 𝑥̅ ⊕𝑦
3
Dr. Ž. Jurić, Dr. R. Turčinhodžić-Mulahasanović: Matematika u računarstvu I Rješenja zadataka s Tutorijala 5.
Zadaci predviđeni za rad sa tutorom (akademska godina 2022/23)
c) Ova rečenica se može preformulirati kao “Nije tačno da postoji pingvin ili noj koji leti”, tako
da se rečenica može napisati kao
¬∃𝑥 ((Pingvin(𝑥 ∨ Noj(𝑥 ∧ Leti(𝑥))
Primjenom pravila logike predikata pokazuje se da je ovaj iskaz ekvivalentan iskazu
∀𝑥 (Pingvin(𝑥 ∨ Noj(𝑥 ⇒ ¬Leti(𝑥))
koji prevedeno na bosanski jezik tvrdi “Svaka ptica koja je pingvin ili noj ne leti”, ili iskazu
∀𝑥 (Leti(𝑥) ⇒ ¬(Pingvin(𝑥) Noj(𝑥)))
koji prevedeno na bosanski jezik tvrdi “Nijedna ptica koja leti nije pingvin niti noj” (nije
dobro ovu rečencu čitati u dvosmislenom obliku “Svaka ptica koja leti nije pingvin niti noj”,
sjetiti se diskusije o tumačenju rečenice “Svi muškarci ne varaju svoje žene” .
d) Ovdje nam je pored jednomjesnog predikata Ideja(𝑥) potreban i dvomjesni predikat koji
ćemo nazvati LakšeShvatiti(𝑥, 𝑦), koji izražava da je 𝑥 lakše shvatiti od 𝑦. Tada se ova rečenica
zapisuje kao
∃𝑥 ∃𝑦 (Ideja(𝑥 ∧ Ideja(𝑦) ∧ LakšeShvatiti(𝑥, 𝑦))
e) Pretpostavimo da je domen skup ljudi i neka predikat Uspio(𝑥 označava da je 𝑥 čovjek koji je
uspio u životu. Tada se ova rečenica može zapisati kao
∀𝑥 (Uspio(𝑥) ⇒ ∃𝑦 ∃𝑧 (¬Uspio(𝑦) ∧ ¬Uspio(𝑧) ∧ 𝑦 ≠ 𝑧))
Da nismo pretpostavili da je domen isključivo skup ljudi, nego da može uključivati i elemente
koji nisu ljudi, prethodni izraz ne bi bio korektan, jer bi u tom slučaju recimo izraz poput
¬Uspio(𝑦), koji je tačan kad god 𝑦 nije čovjek koji je uspio u životu, bio tačan ne samo kada 𝑦
nije čovjek koji nije uspio u životu, nego i kada y uopće nije čovjek. Zbog toga bi trebalo uvesti
i predikat Čovjek(𝑦) koji tvrdi da je 𝑦 čovjek, te bi tada korektan izraz mogao glasiti
∀𝑥 (Uspio(𝑥) ⇒ ∃𝑦 ∃𝑧 (Čovjek(𝑦) ∧ ¬Uspio(𝑦) ∧ Čovjek(𝑧) ∧ ¬Uspio(𝑧) ∧ 𝑦 ≠ 𝑧))
Primijetimo da ne treba pisati Čovjek(𝑥) ∧ Uspio(𝑥), jer ako je Uspio(𝑥) tačan, to već znači da
je 𝑥 čovjek (s obzirom da smo usvojlili da Uspio(𝑥 znači da je 𝑥 čovjek koji je uspio u životu .
S druge strane, da smo usvojli da predikat Uspio(𝑥) označava samo da je 𝑥 uspio u životu
(neovisno je li on uopće čovjek ili ne , onda bi bila potrebna upravo prethodno spomenuta
formulacija u kojoj se koristi Čovjek(𝑥) ∧ Uspio(𝑥) umjesto samo Uspio(𝑥).
f) Prvo ćemo iskazanu rečenicu malo preformulirati u oblik iz kojeg je jasnije kako ga izraziti
jezikom predikatske logike. Zadana rečenica zapravo govori sljedeće: “Postoje neki ljudi koji
u nekim vremenskim trenucima govore istinu, a postoje i neki ljudi koji u svim vremenskim
trenucima ne lažu”. Stoga, ako uvedemo predikate Čovjek(𝑥), Trenutak(𝑥), GovoriIstinu(𝑥, 𝑦)
i Laže(𝑥, 𝑦 čija su značenja respektivno “𝑥 je čovjek”, “𝑥 je vremenski trenutak”, “𝑥 govori
istinu u trenutku 𝑦” i “𝑥 laže u trenutku 𝑦”, prethodni izraz može se zapisati kao
4
Dr. Ž. Jurić, Dr. R. Turčinhodžić-Mulahasanović: Matematika u računarstvu I Rješenja zadataka s Tutorijala 5.
Zadaci predviđeni za rad sa tutorom (akademska godina 2022/23)
različita imena (da bismo mogli postulirati njihovu različitost dodatnim uvjetom), odnosno
napisati prethodni izraz u (ekvivalentnom) obliku
∃𝑥 (Čovjek(𝑥 ∧ ∃𝑦 (Trenutak(𝑦 ∧ GovoriIstinu(𝑥, 𝑦 ∧
∧ ∃𝑧 (Čovjek(𝑧 ∧ ∀𝑦 (Trenutak(𝑦 ⇒ ¬Laže(𝑧, 𝑦)))
Nakon ovoga, nije dovoljno samo prosto dodati uvjet 𝑥 ≠ 𝑧 na kraj, jer ti 𝑥 i 𝑧 bi bili slobodne
varijable (ne bi bili u opsegu djelovanja odgovarajućih kvantifikatora koji postuliraju postojanje
odgovarajućih osoba . Zbog toga je potrebno postulirati postojanje obje osobe na samom
početku i držati cijeli izraz pod opsegom djelovanja oba kvantifikatora, i tada dodati uvjet
𝑥 ≠ 𝑧. Takav izraz mogao bi izgledati ovako:
∃𝑥 ∃𝑧 ((Čovjek(𝑥 ∧ ∃𝑦 (Trenutak(𝑦 ∧ GovoriIstinu(𝑥, 𝑦 ∧
∧ (Čovjek(𝑧 ∧ ∀𝑦 (Trenutak(𝑦 ⇒ ¬Laže(𝑧, 𝑦 ∧ 𝑥 ≠ 𝑧)
6. Neka su dati predikati P(𝑥) i Q(𝑥, 𝑦 čiji je domen interpretacije skup ljudi, a čija su značenja
respektivno “𝑥 je muško” i “𝑥 je roditelj od 𝑦”. Izrazite sljedeće rečenice jezikom predikatske
logike prvog reda, bez uvođenja ikakvih novih predikata:
a) Svaki čovjek ima oca;
b) Denis nema sina;
c) Jasna je Denisova kćerka;
d) Damir i Lana su brat i sestra;
e) Jasnina majka je Dijana.
Rješenje:
5
Dr. Ž. Jurić, Dr. R. Turčinhodžić-Mulahasanović: Matematika u računarstvu I Rješenja zadataka s Tutorijala 5.
Zadaci predviđeni za rad sa tutorom (akademska godina 2022/23)
7. U izrazu ∃𝑦 (∀𝑥 P( 𝑓(𝑥), 𝑦, 𝑧) ⇒ ¬P(𝑧, 𝑥, 𝑦)) smijenite prvo promjenljivu 𝑥 sa izrazom 𝑔(𝑥, 𝑓(𝑦), 𝑧),
a nakon toga promjenljivu 𝑧 sa izrazom 𝑓(𝑓(𝑥)).
Rješenje:
Analizirajmo prvo od kojih promjenljivih zavisi ovaj izraz. Opseg djelovanja prvog kvantifikatora
∃𝑦 je cijeli podizraz ∀𝑥 P(𝑓(𝑥), 𝑦, 𝑧) ⇒ ¬P(𝑧, 𝑥, 𝑦), tako da je promjenljiva 𝑦 vezana u čitavom
izrazu i on od nje ne zavisi. Promjenljiva 𝑧 nije argument niti jednog kvantifikatora, te je ona
slobodna u čitavom izrazu, i on ovisi od nje. Što se tiče promjenljive 𝑥, ona se javlja kao argument
kvantifikatora u podizrazu ∀𝑥 P( 𝑓(𝑥), 𝑦, 𝑧), tako da je u tom podizrazu promjenljiva 𝑥 vezana i on
od nje ne ovisi. Međutim, promjenljiva 𝑥 je slobodna u podizrazu ¬P(𝑧, 𝑥, 𝑦), tako da u konačnici
čitav izraz ovisi od promjenljive 𝑥. Dakle, izraz ovisi od promjenljivih 𝑥 i 𝑧, tako da zaista ima
smisla smijeniti te dvije promjenljive s nečim drugim (tj. izvršiti uvrštavanje nečega na njihovo
mjesto . Također treba primijetiti da je ovaj izraz neprečišćen, jer ista promjenljiva 𝑥 ima u
njemu i slobodnih i vezanih pojavljivanja.
Pri uvrštavanju 𝑔(𝑥, 𝑓(𝑦), 𝑧) umjesto 𝑥, treba zamijeniti samo slobodna pojavljivanja promjenljive
x, odnosno njeno posljednje pojavljivanje. Međutim, mjesto na kojem se nalazi to pojavljivanje
spada u oblast u kojoj je promjenljiva 𝑦 vezana, tako da bi direktno uvrštavanje izraza 𝑔(𝑥, 𝑓(𝑦), 𝑧)
koji zavisi od sporne promjenljive 𝑦 na mjesto 𝑥 bilo neispravno. Stoga ćemo prvo morati
preimenovati vezanu promjenljivu 𝑦 u neko novo ime, recimo 𝑡, čime dobijamo izraz
u koji se sada smije uvrstiti 𝑔(𝑥, 𝑓(𝑦), 𝑧) na mjesto slobodnog pojavljivanja promjenljive 𝑥. Tako
dobijamo izraz
Sad je potrebno uvrstiti 𝑓(𝑓(𝑥)) umjesto 𝑧. Kako su sva pojavljivanja promjenljive 𝑧 slobodna,
zamjenu treba izvršiti svuda. Međutim, prvo pojavljivanje promjenljive 𝑧 nalazi se u zoni u kojoj
je promjenljiva 𝑥 (koja se javlja u izrazu 𝑓(𝑓(𝑥 vezana, tako da bi direktno uvrštavanje izraza
𝑓(𝑓(𝑥 na to mjesto bilo neispravno. Stoga ćemo morati preimenovati promjenljivu 𝑥 u toj zoni
(recimo u 𝑢 , čime dobijamo izraz
u koji bez problema možemo smijeniti sva pojavljivanja promjenljive 𝑧 sa 𝑓(𝑓(𝑥 . Konačno
dobijamo izraz
8. Za izraz ∀𝑥 ∃𝑦 P(𝑥, 𝑦) ⇒ ∃𝑦 P(𝑦, 𝑦 nađite barem jednu interpretaciju pri kojoj je izraz tačan i
barem jednu interpretaciju pri kojoj je izraz netačan.
Rješenje:
Izraz ∀𝑥 ∃𝑦 P(𝑥, 𝑦) ⇒ ∃𝑦 P(𝑦, 𝑦) najlakše je učiniti tačnim ukoliko stavimo da je ∃𝑦 P(𝑦, 𝑦) tačno.
Tada će čitava implikacija biti tačna bez obzira na tačnost ∀𝑥 ∃𝑦 P(𝑥, 𝑦). Kako ∃𝑦 P(𝑦, 𝑦) nije
tačno jedino ukoliko P predstavlja neku antirefleksivnu relaciju, slijedi da će izraz sigurno biti
tačan u ma kakvoj interpretaciji u kojoj P ne predstavlja neku antirefleksivnu relaciju. Izraz
može biti tačan čak i u onim interpretacijama u kojima P predstavlja antirefleksivnu relaciju tako
da je ∃𝑦 P(𝑦, 𝑦) netačno, ali tada ∀𝑥 ∃𝑦 P(𝑥, 𝑦) mora također biti netačno, a to će biti ako je tačno
¬∀𝑥 ∃𝑦 P(𝑥, 𝑦) = ∃𝑥 ∀𝑦 ¬P(𝑥, 𝑦) tj. ukoliko je P takva relacija da postoji neki element domena
koji nije u relaciji niti sa jednim drugim elementom domena.
6
Dr. Ž. Jurić, Dr. R. Turčinhodžić-Mulahasanović: Matematika u računarstvu I Rješenja zadataka s Tutorijala 5.
Zadaci predviđeni za rad sa tutorom (akademska godina 2022/23)
Što se tiče interpretacija u kojima je izraz ∀𝑥 ∃𝑦 P(𝑥, 𝑦) ⇒ ∃𝑦 P(𝑦, 𝑦) netačan, u njima ∃𝑦 P(𝑦, 𝑦)
mora biti netačno, a ∀𝑥 ∃𝑦 P(𝑥, 𝑦) tačno. Dakle, P mora predstavljati neku antirefleksivnu relaciju,
koja je, pored toga takva da je svaki element domena u relaciji sa barem jednim drugim
elementom. Može se navesti mnoštvo takvih interpretacija. Na primjer, domen interpretacije
može biti skup ℕ, a P(𝑥, 𝑦 može označavati odnos 𝑥 < 𝑦. Ili, recimo, domen interpretacije može
biti skup X = {𝑎, 𝑏}, dok predikat P(𝑥, 𝑦 može označavati odnos 𝑥 ≠ y (tj. P(𝑎, 𝑎) = P(𝑏, 𝑏) = ⊥ i
P(𝑎, 𝑏) = P(𝑏, 𝑎) = ⊤).
9. Kakve osobine mora zadovoljavati domen interpretacije da bi sljedeći izrazi mogli biti tačni?
a) ∃𝑥 P(𝑥) ∧ ∃𝑥 ¬P(𝑥)
b) ∃𝑥 ∀𝑦 (P(𝑥) ∧ (𝑥 = 𝑦))
Rješenje:
a) Ovaj izraz tvrdi da postoji barem jedan element domena za koji P(𝑥) vrijedi i barem jedan
element domena za koji P(𝑥 ne vrijedi. Ovo je moguće jedino ukoliko domen ima barem dva
elementa. Zaista, kada bi domen imao samo jedan element, tada bi 𝑥 i u izrazu ∃𝑥 P(𝑥) i u
izrazu ∃𝑥 ¬P(𝑥) morao biti samo taj jedini element domena, a ni za kakav element domena ne
može biti tačno i P(𝑥) i ¬P(𝑥). Isto tako, ako bi domen bio prazan, tada bi ∃𝑥 P(𝑥) bilo netačno
neovisno od toga šta je P(𝑥). Dakle, jedina mogućnost da izraz ∃𝑥 P(𝑥) ∧ ∃𝑥 ¬P(𝑥) bio tačan je
da domen interpretacije ima barem dva elementa (tako da za jedan od njih P(𝑥 može da
vrijedi, a za drugi da ne vrijedi).
b) Ovaj izraz tvrdi da postoji neki element domena takav takav da mu je svaki element domena
jednak (i usput da za njega vrijedi predikat P, ali se to pokazuje ovdje kao nebitno). To je
moguće jedino ukoliko domen ima tačno jedan element (jedino u tom slučaju može postojati
element domena kojem su svi elementi domena jednaki). Zaista, ukoliko domen ima više
elemenata, ne može postojati element kojem su svi drugi elementi jednaki, jer je domen skup,
a po definiciji skupa, svi njegovi elementi su međusobno različiti.
10. Pokažite da izraz (∀𝑥 P(𝑥) ⇔ ∀𝑥 Q(𝑥)) ⇒ ∀𝑥 (P(𝑥) ⇔ Q(𝑥)) nije valjan tako što ćete pronaći neku
interpretaciju u kojoj on nije tačan.
Rješenje:
Ovaj izraz može biti netačan jedino kad je izraz ∀𝑥 P(𝑥) ⇔ ∀𝑥 Q(𝑥) tačan, a izraz ∀𝑥 (P(𝑥) ⇔ Q(𝑥))
netačan. Pokažimo da je to moguće postići. Neka su P(𝑥) i Q(𝑥 neki predikati koji nisu identički
tačni (odnosno za makar jednu vrijednost iz domena nisu tačni . Tada su izrazi ∀𝑥 P(𝑥) i ∀𝑥 Q(𝑥)
netačni, tako da je ekvivalencija ∀𝑥 P(𝑥) ⇔ ∀𝑥 Q(𝑥) tačna. S druge strane, neka makar za jedan
element domena P(𝑥) i Q(𝑥 uzimaju različite vrijednosti. Za taj element je P(𝑥) ⇔ Q(𝑥) netačno,
pa samim tim izraz ∀𝑥 (P(𝑥) ⇔ Q(𝑥)) nije tačan. Prema tome, za takvu interpretaciju je izraz
∀𝑥 P(𝑥) ⇔ ∀𝑥 Q(𝑥) tačan, a izraz ∀𝑥 (P(𝑥) ⇔ Q(𝑥)) netačan, odnosno čitav izraz je netačan. Dakle,
postoji interpretacija za koju je čitav izraz netačan, tako da on nije valjan. Najjednostavniji
konkretan primjer takve interpretacije je da se kao domen uzme recimo skup {𝑎, 𝑏}, a predikati
P(𝑥) i Q(𝑥) definiraju tako da bude P(𝑎) = ⊤, P(𝑏) = ⊥, Q(𝑎) = ⊥ i Q(𝑏) = ⊤.