Staffsite STMIK PPKIA Pradnya Paramita

BAB 11
RESOLUSI
1. Pendahuluan
Pembuktian ekspresi-ekspresi logika berupa validitas argumen-argumen pada bab-bab
sebelumnya sangat penting untuk menemukan metode yang lebih mekanis dan mudah
digunakan di dalam logika. Metode tersebut disebut resolusi (resolution).

2. Resolving argumen
Logika berhubungan dengan deduksi atau penarikan kesimpulan, masalah pembuktian
dan validitas argumen. Perhatikan contoh argumen berikut:

Contoh 1:
Jika durian ini manis, maka durian ini enak dimakan.
Jika durian ini enak dimakan, maka saya akan memakannya.
Dengan demikian, jika durian ini enak dimakan, maka saya akan memakannya.
Argumen tersebut pasti valid. Pola argumen di atas adalah Silogisme Hipotetis. Jika
masih ragu-ragu maka validitasnya dapat dibuktikan dengan langkah-langkah berikut:
Pembuktian:
Langkah 1: Tentukan variabel proposisionalnya.
A = durian ini manis
B = durian ini enak dimakan

C = saya akan memakannya
Langkah 2: Buat bentuk logika masing-masing pernyataan.
1. A→B
2. B→C
3. A→C
Langkah 3: Susun dalam bentuk ekspresi logika.
((A→B) (B→C))→(A→C)
Sekarang dapat dilihat dengan jelas bahwa ekspresi logika dari argumen tersebut adalah
Silogisme Hipotetis, dan sudah dibuktikan tautologi pada bab sebelumnya. Selanjutnya
dapat ditulis seperti berikut:
LOGIKA INFORMATIKA

BY: SRI ESTI

{(A→B),(B→C)} ╞ (A→C)
Jadi, jika premis-premis, yakni (A→B) ) dan (B→C) bernilai benar, maka kesimpulan
(A→C) juga pasti bernilai benar, atau (A→C) adalah konsekuensi logis dari (A→B) dan
(B→C).
Dengan menggunakan strategi pembalikan, dapat diperlihatkan bahwa menegasi
kesimpulan yakni ¬(A→C) adalah tidak konsisten dengan premis-premis (A→B) dan

(B→C). untuk membuktikannya digunakan tabel kebenaran dengan penulisan berikut:
(A→B) (B→C) ¬(A→C)
Dan sudah dapat dipastikan bahwa tabel kebenaran untuk menunjukkan nilai kebenaran
seluruhnya salah atau kontradiksi yang berarti argumen valid.
Disini masih dapat digunakan sudut pandang semantik dan memperlihatkan
ketidakkompatibelannya dengan penulisan berikut:
(A→B) (B→C) ¬(A→C) ╞ ┴
┴ adalah falsum, yakni konstanta proposisional yang selalu bernilai salah. Artinya jika
nilai kebenaran dari premis-premis dan negasi kesimpulan-kesimpulan bernilai salah
(falsum), maka argumen pasti valid.
Sekarang akan dibahas teknik resolving argument dengan memakai cara penulisan
terakhir ,yakni dengan falsum.
Misalkan ekspresi logika (A→B) Λ (B→C)

¬ (A→C) di ubah menjadi CNF, maka

akan diperoleh hasil berikut ini:
(A→B) Λ (B→C)

¬ (A→C)


≡ (¬A v B)

(¬B v C)

¬ (¬A

C) A→B

≡ (¬A v B)

(¬B v C)

(¬ ¬A Λ ¬C)

De Morgan’s Law

≡ (¬A v B)

(¬B v C)


(A

Law of Double Negation

≡ (¬A v B)

(¬B v C)

A

¬C)
¬C

Asosiatif

Jadi bentuk CNF yang diperoleh adalah:
(¬A v B)

(¬B v C)


A

¬C

Sekarang perhatikan dengan baik pasangan klausa (¬A v B) dan (¬B v C), dan perhatikan
bahwa klausa pertama mempunyai B dan klausa kedua memiliki pasangannya yakni ¬B.
sekarang perhatikan penjelasan berikut satu demi satu:
1. Jika v(B) ≡ T, maka v(¬B) ≡ F, maka nilai kebenaran klausa kedua tergantung dari
v(C).
2. Jika v(B) ≡ F, maka klausa pertama nilai kebenarannya tergantung dari v(¬A).
LOGIKA INFORMATIKA

BY: SRI ESTI

3. Padahal hanya mungkin satu di antara v(B) dan v(¬B) yang bernilai benar. Misalnya,
v(B) ≡ T dan v(¬B) ≡ F, atau v(B) ≡ F dan v(¬B) ≡ T.
4. Jadi jika v((¬A v B) Λ (¬B v C)) ≡ T,maka dengan memilih salah satu kemungkinan
dari nomor (3), dipastikan v(¬A) ≡ T dan v(C) ≡ T.
5. Sekarang dapat beralasan jika v((¬A v B) Λ (¬B v C)) ≡ T, dengan v(¬A) ≡ T dan

v(C) ≡ T, maka v(¬A v C) ≡ T. karena jika v(¬A v C) ≡ F, maka v((¬A v B) Λ (¬B v
C)) tidak bisa bernilai benar.
6. Dengan kata lain, maka ((¬A v B) dan (¬B v C) dapat di reduksi atau di-resolved
menjadi satu klausa (¬A v C) dengan menghilangkan ¬B dan B.

Prinsip resolusi didasarkan pada penjelasan di atas, yakni dua klausa yang masing-masing
literal yang berpasangan, misal A dengan ¬A, maka literal yang berpasangan tersebut
dapat di resolved. Klausa hasil proses resolve disebut resolvent clause. Sebelum memulai
penjelasan resolusi lebih lanjut, perhatikan kelanjutan uraian di atas.
1. Klausa (¬A v B) dan (¬B v C) dapat di-resolved menjadi satu “resolvent”, yakni
menjadi kalusa (¬A v C).
2. Klausa (¬A v C) dengan A di resolved menjadi C
3. Klausa C dengan ¬C akan menjadi apa?
Membatalkan C dengan ¬C akan menghasilkan klausa kosong, dan bagaimana
menyatakan klausa kosong?. Sebaiknya memakai ┴ saja, sebab jika dua buah klausa
di resolved, hasilnya harus benar. Jadi, jika C di-resolved dengan ¬C, masing-maing
harus bernilai benar, maka hasil resolvent-nya harus benar, padahal C dan ¬C tidak
mungkin benar bersama-sama. Jadi gunakan saja ekspresi yang nilainya mungkin
benar, yakni ┴.
Cara lain adalah melihat bahwa klausa berbentuk disjung, dan salah satu disjung harus

bernilai benar agar klausa bernilai banar. Tetapi jika tidak ada disjung untuk
menunjukkan klausa benar, maka klausa pasti salah. Oleh karena itu, klausa kosong
tidak akan memenuhi persyaratan tersebut, ia pasti selalu salah atau falsum.
4. Klausa C di-resolved dengan ¬C menjadi ┴.
Oleh karena itu, penggunaan ┴ memenuhi persyaratan (A→B) Λ (B→C) Λ ¬ (A→C) ╞
┴ di atas.
Untuk mempermudah penjelasan di atas, gunakan bentuk pohon terbalik (inverted tree)
seperti berikut, tetapi jangan lupa untuk tetap menggunakan bentuk CNF.
LOGIKA INFORMATIKA

BY: SRI ESTI

(¬A v B)

(¬B v C)

A

¬C


(¬A v C)
C

Bentuk normal konjungtif (CNF) dengan empat klausa, yakni (¬A v B),(¬B v C),A dan
¬C, langkah pertama yang dilakukan adalah me-resolved (¬A v B) dengan (¬B v C),
menjadi (¬A v C). selanjutnya, (¬A v C) di-resolved dengan A menjadi C, dan terakhir C
di-resolved dengan ¬C menghasilkan ┴.
Pada saat mendapatkan klausa kosong dapat dinyatakan bahwa klausa-klausa yang ada di
anggap tidak kompatibel satu dengan lainnya. Dengan kata lain, negasi dari kesimpulan
tidak konsisten dengan premis-premis. Argumen justru dunyatakan valid karena
pemakaian negasi kesimpulan berarti menggunakan strategi pembalikan.
Keindahan metodeini tampak pada bentuk CNF dengan klausa-klausanya yang saling meresolvent jika saling memiliki literal yang komplementer untuk menemukan klausa
kosong. Hasilnya memang sangat mekanis dan langsung tampak hasilnya.

3. Himpunan klausa
Untuk menentukan CNF sebagai himpunan klausa, sebagai contoh ekspresi di atas, yakni:
(¬A B)

(¬B C)


A

¬C

Dapat dinyatakan dalam bentuk himpunan klausa sehingga dapat ditulis:
{(¬A B), (¬B C), A, ¬C}
Dengan menghilangkan perangkai

. Tetapi jika mengingat sifat komutatif, yakni

(A B)≡(B A), maka himpunan klausa tersebut juga dapat dipindah-pindahkan untuk
mempermudah pembuatan pohon terbalik karena resolvent harus ada pasangan literalnya,
yang masing-masing berada di satu kalusa. Sebagai contoh, ekspresi logika diatas bisa
ditulis :
{(¬A B), A, (¬B C), ¬C}
Maka gambar pohon terbaliknya sebagai berikut :

LOGIKA INFORMATIKA

BY: SRI ESTI


4. Resolvent
Sebelumya sudah dijelaskan mengenai metode resolusi walaupun belum lengkap.
Selanjutnya, perhatikan teknik resolusi berikut :
Ada dua literal, misalnya p1 dan ¬p1, yang disebut pasangan literal yang saling
melengkapi (complementary pair). Jika ada dua klausa yang masing-masing memiliki
satu dari pasangan tersebut, maka klausa tersebut dapat di-resolved bersama agar menjadi
satu klausa baru (resolvent clause), dan cara ini dinamakan resolvent. Sebagai contoh,
klausa {p1, ¬p2, p3} dengan {p2, p3} dapat di-resolved menjadi {p1, p3}.
Definisi : Resolvent dua klausa C1 dan C2 yang masing-masing klausa berisi salah
satu literal berpasangan λ dan ¬ λ, maka dapat didefinisikan: res (C1, C2) = C1 – {λ}
U C1 – {¬ λ}
Pada definisi resolvent tersebut, operator “–“ adalah operator pembeda himpunan, yang
hasilnya adalah himpunan yang berasal dari argumen pertama dengan (sub) himpunan
dari argumen kedua yang dihilangkan. Sebagai contoh, resolvent dari {1, 2, 3, 4} – {2}
adalah {1, 3, 4}.
Contoh 2:
res({p1, ¬p2}, {p2, ¬p3}) = {p1, ¬p3}
Contoh 3:
res({p1, ¬p2, p3, p4}, {p2, ¬p3}) = {p1, p3, ¬p3, p4}

atau
res({p1, ¬p2, p3, p4}, {p2, ¬p3}) = {p1, p2, ¬p2, p4}
Satu klausa yang berisi pasangan literal yang komplementer, misalnya p i dan ¬pi secara
otomatis hasilnya pasti benar. Hal ini karena klausa menyatakan disjungsi (p i ¬pi) pasti

LOGIKA INFORMATIKA

BY: SRI ESTI

benar karena semuanya pasti benar. Tentu saja klausa hasil resolvent pada contoh 3
adalah benar.
Perhatikan tabel kebenarannya :
A

¬A

A˅¬A

F

T

T

T

F

T

Pada contoh 3 ada dua hasil yang bisa diperoleh karena ada dua pasangan lieral yang
komplementer dari dua klausa sebelum di-resolved, yakni p2 dengan ¬p2, dan p3 dengan
¬p3. Jika ada yang lebih dari satu cara me-resolved, maka setiap resolvent pasti memiliki
pasangan literal yang komplementer dan pasti juga benar. Hasilnya akan menjadi salah
jika di-resolved, misalnya{p1, ¬p2} dengan {¬p1, p2} menjadi ⊥, dengan me-resolved
pada keduanya yakni p1 dan p2. Dua klausa tersebut bersama-sama kompatibel jika
memenuhi nilai bahwa p1 dan p2 keduanya benar.
TEOREMA 1 (PRINSIP RESOLUSI)
Resolvent dua klausa C1 dan C2 adalah konsekuensi logis dari C1 C2 yakni ditulis:
C1 C2 ╞ res(C1, C2)
Pembuktian teorema :
1. Misalkan : C1 = {p11, p12, ..........p1m, λ}
C2 = {p21, p22, ..........p2n, ¬λ}
Maka res (C1, C2) = {p11, p12, ..........p1m, p21, p22, ..........p2n}
2. Perhatikan nilai kebenaran

dengan v(C1) ≡ T dan v(C2) ≡ T

3. Jika v(  ) ≡ F, maka v(p1i) ≡ T untuk beberapa p1i dengan v(C1) ≡ T
Maka v({ p11, p12,….p1m, p21,p22,. . .p2n}) ≡ T.
Jadi v(res(C1,C2)) ≡ T
4. Jika v(  ) ≡ T, maka v(¬  ) ≡ F, dan v(p1i) ≡ T untuk beberapa pli dengan v(C2) ≡ T
Maka v({ p11, p12,….p1m, p21, p22,. . .p2n}) ≡ T
Jadi v(res(C1,C2)) ≡ T
5. Jadi pada saat v(  ) ≡ T, ataupun v(  ) ≡ F, dapat disimpulkan jika v(C1) ≡ V(C2) ≡
T, maka v(res(C1,C2)) ≡ T
6. Kesimpulan C1

LOGIKA INFORMATIKA

C2 ╞ res (C1,C2)

BY: SRI ESTI

Ide yang mendasari resolusi, dapat dicontohkan dengan membuktikan rumus Modus
Ponens yang sudah sangat dikenal, yakni:
((A→B)

A)→ B atau

{(A→B), A)} ╞ B
≡ {(¬A v B), A} ╞ B
Dan jika (A→B) dan A ditulis dalam bentuk klausa akan menjadi {¬A, B}, {A}.
Selanjutnya , pohon terbaliknya dapat dibuat seperti berikut:

C2 ╞ res (C1,C2).

Sederhana sekali dan terbukti bahwa C1

5. Resolusi
Berikut ini akan didemonstrasikan prinsip resolusi untuk mendeduksi, yang dengan istilah
deduksi resolusi (resolution deduction):
Definisi : Deduksi resolusi klausa Cdari himpunan klausa S adalah sederetan klausaklausa (C1,C2,……..Cn) = C, yang setiap Ci adalah anggota dari S atau resolvent dari
dua klausa yang diperoleh dari S atau anggota awal dari deretan tersebut.
Seperti telah dijelaskan di depan, jika S adalah benar pada setiap penilaian kebenaran dari
, maka v(Ci) ≡ T untuk semua Ci , dan tentu saja v(C) ≡ T.
Contoh 4:
Buktikan:
(p1

p2

p3) Λ (¬p2

p4)

(¬p1

p4)

(¬p3

p4) ╞ p4

Pembuktian :
Langkah 1:
Ubahlah CNF menjadi klausa dan urutkan seperti berikut:
(1). { p1, p2, p3}
(2). {¬p2, p4}
(3). {¬p1, p4}
(4). {¬p3, p4}

LOGIKA INFORMATIKA

BY: SRI ESTI

Langkah 2:
Lakukan resolusi dengan urutan berikut
(5). Dari (1) dan (2), diperoleh klausa {p1,p3,p4}
(6). Dari (3) dan (5), diperoleh klausa {p3,p4}
(7). Dari (4) dan (6), diperoleh klausa {p4}
Jadi terbukti:
(p1

p2

p3) Λ (¬p2

p4) Λ (¬p1

p4) Λ (¬p3

p4) ╞ p4

Derivasi tersebut dapat lebih tampak dalam bentuk pohon resolusi (resolution tree), yang
tanpak seperti berikut:

Latihan soal:
Buktikan:
{(p1→p2),(¬(p2→p3)→¬p1)} ╞ (p1→p3)

6. Contoh validitas argumen
Berikut ini beberapa argument yang hendak dibuktikan validitasnya dengan deduksi
resolusi. Perhatikan argument berikut ini:
Contoh 5:
Jika Ratu mengadakan konser,maka penggemarnya akan dating, jika harga tiket tidak
mahal. Jika Ratu mengadakan konser, harga tiket tidak mahal. Dengan demikian , jika
Ratu mengadakan konser, penggemarnya akan dating.

Langkah 1:

LOGIKA INFORMATIKA

BY: SRI ESTI

Menentukan variabel-variabel proposisional dan membuat ekspresi logikanya.
A = Ratu mengadakan konser.
B = Penggemarnya akan datang
C = Harga tiket mahal
Maka akan menjadi
(1) A→(¬C→B)
(2) A→¬C
∴ (3) A→B

Ekspresi logikanya adalah:
(A→(¬C→B)) Λ (A→¬C)╞ A→B
Langkah 2:
Ubahlah ekspresi logika tersebut dengan strategi pembalikan yang menegasi kesimpulan
untuk menghasilkan ┴.
(A→(¬C→B))

(A→¬C)

¬( A→B)╞ ┴

Langkah 3:
Ubahlah menjadi klausa-klausa CNF seperti berikut:
(1). (A→(¬C→B))
≡ (¬A v (¬¬C v B))

A→B

≡ (¬A v (C v B))

Law of Double Negation

≡ ((¬A v C v B)

Hapus tanda kurung

(2). (A→¬C)
≡ ¬(A v ¬C)

A→B

(3) ¬( A→B)
≡ ¬(¬A v B)

A→B

≡ (¬¬A Λ ¬B)

De Morgan’s Law

≡ (A Λ ¬B)

Law of Double Negation

Jadi sekarang bentuknya menjadi:
(¬A v C v B)

( ¬A v ¬C)

A

¬B ╞ ┴

Langkah 4:
Susunlah pohon resolusinya sepert berikut:

LOGIKA INFORMATIKA

BY: SRI ESTI

Kesimpulan, hasil yang diperoleh ternyata tidak konsisten, dan berarti argument valid.
Latihan soal:
1. Manakah dari himpunan klausa-klausa berikut ini yang tidak konsisten atau tidak
kompatibel?
(1). {{p1,p2,p3},{p1,¬p3}, {¬p1,¬p2}}
(2) {{p1,¬p2,p3},{p1,¬p3},{¬p1,p2,¬p3}}
(3) {{p1,¬p2,¬p3,¬p4},{p1,¬p3},{¬p1,p2,¬p4},{¬p1,p4}}

2. Buktikan bahwa argument-argumen berikut ini valid:
(yang dicetak tebal adalah kesimpulannya).
(1). ¬A→B

(3). ¬A

(¬B v C)

¬A v C v D

¬B v C

(B

¬C v (E

¬C v (C→A)

C→D

¬C

D v ¬A

(F


(2). A→B

F)

¬D)→¬E

¬D→B

∴¬A

C)

∴¬(¬D Λ

A)

3. Buktikan ekspresi logika berikut ini valid:
(1). P Λ (Q→R) Λ (P→Q) Λ (S→¬R) ╞ ¬S
(2). (P Λ S) Λ (P→Q) Λ (Q→R) Λ (S→¬T) ╞ (R Λ ¬T)

LOGIKA INFORMATIKA

BY: SRI ESTI