Program Visual Prolog terdiri dari empat bagian utama yaitu domains, predicates, clauses, dan goal. Prolog bekerja secara deduktif dengan menggunakan fakta dan aturan untuk menjawab pertanyaan atau mencari kesimpulan melalui proses pemadanan argumen.
3. PARADIGMA PROLOG
• PROLOG berarti PROgramming in LOGic
• Bahasa yang dibangun atas dasar pemrograman
alamiah dan logika
• Merupakan tool yang sangat penting dalam
pemrograman aplikasi kecerdasan buatan
• Merupakan bahasa deklaratif, artinya jika diberi
fakta dan aturan maka Prolog akan
menyelesaikan problem secara deduktif
(menurunkan kesimpulan sebagai jawaban
berdasarkan fakta dan aturan).
4. PARADIGMA PROLOG (2)
• Perbedaan bahasa deklaratif dan prosedural :
Pada bahasa deklaratif hanya membutuhkan
deklarasi atau uraian masalah, sedangkan pada
bahasa prosedural memerlukan langkah-langkah
penyelesaian masalah.
• Prolog : Goal oriented (apa yang harus dipecahkan),
sedangkan pada bahasa prosedural menjawab
bagaimana harus memecahkan masalah.
5. CIRI BAHASA PROLOG
• Bahasa Prolog selain mencari jawaban secara
logika terhadap pertanyaan yang diajukan,
juga dapat memberi semua kemungkinan
jawaban.
• Menggunakan logika peredikat.
• Menggunakan deductive reasoning dalam
memecahkan masalah
• Prolog melakukan pemadanan (unifikasi)
dalam mencari jawaban atau menarik
kesimpulan.
6. PREDIKAT
• Menggambarkan relasi atau sifat suatu obyek.
• Obyek yang terkait disebut argumen.
• Contoh :
- suka (Irwan, permen)
predikat : suka; argumen : Irwan, permen.
- manis (permen)
predikat : manis ; argumen : permen.
7. DEDUKSI
• Prolog menggunakan metode deduksi (dari hal yang
umum ditarik kesimpulan mengenai hal yang khusus)
dalam memecahkan masalah.
• Contoh :
- Diberikan fakta :
Dede suka Iik
Cece suka Ryan
- diberikan aturan :
Celung suka seseorang jika Cece suka orang
itu.
- maka Prolog dapat menarik kesimpulan :
Celung suka Ryan.
8. PEMADANAN/UNIFIKASI
• Dalam mencari jawaban atau menarik
kesimpulan, Prolog melakukan pemadanan,
yaitu argumen pertama dipadankan dengan
argumen pertama pada predikat lain yang
sama dan seterusnya.
9. STRUKTUR PROGRAM PROLOG
• Program Prolog terdiri dari 4 bagian (section)
dasar, yaitu :
1. domains section
2. predicates section
3. clauses section
4. goal section
10. Program Visual Prolog mempunyai struktur sbb:
DOMAINS
/* ...
domain declarations
... */
PREDICATES
/* ...
predicate declarations
... */
CLAUSES
/* ...
clauses (rules and facts)
... */
GOAL
/* ...
subgoal_1,
subgoal_2,
etc. */
11. DOMAINS SECTION
• Pada bagian domains dideklarasikan domain-domain yang
bukan domain standar yang dipakai dalam program yang
dibuat.
• Jika merupakan domain standar maka tidak perlu
dideklarasikan.
• beberapa domains standar : char, integer, real, string,
symbols
• Contoh
Domains
NamaOrg = symbol
Alamat = string
Nilai = integer
12. PREDICATES SECTION
• Pada predicates section dideklarasikan predikat-predikat dan
tipe (domains) dari argumen suatu predikat.
• Bentuk umum :
predicateName(argument_type1, argument_type2, ...,
argument_typeN)
argument types dapat berupa domain standard atau domains
yang telah dideklarasikan pada bagian domains.
• Contoh :
DOMAINS
name, sex = symbol
age = integer
PREDICATES
person(name, sex, age)
son(name, name)
13. CLAUSES SECTION
• Clauses section adalah jantung dari
program Prolog dimana fakta dan aturan
diletakkan dan akan digunakan pada saat
program menyelesaikan goal dari program.
14. FAKTA
• suatu kenyataan atau kebenaran yang diketahui.
• menyatakan hubungan / relasi antara dua obyek
atau lebih atau menunjukkan sifat suatu obyek.
• Penulisan dalam Prolog :
- Diawali dengan huruf kecil dan diakhiri
dengan tanda titik.
• Contoh :
son (ali, husein).
pedas(cabe).
15. ATURAN
• Berguna menarik sesuatu kesimpulan dari fakta yang diketahui .
• Bentuk umum
HEAD :- <Subgoal>, <Subgoal>, ..., <Subgoal>.
• Aturan penulisan :
If ditulis sebagai :-
And ditulis sebagai ,
Or ditulis sebagai ;
• Contoh
Clauses
suka(dede,iik).
suka(cece,ryan).
suka(celung, X) :- suka(cece,X).
16. GOAL
• Memberi pertanyaan mengenai fakta yang
ada dalam program Prolog disebut querying
the Prolog system.
• query tsb disebut goal.
• Prolog menjawab sebuah goal (answer the
query) mulai dari fakta yang teratas, mencari
setiap fakta yang sesuai sampai dicapai fakta
yang terbawah.
17. VARIABEL
• Variabel memungkinkan penulisan fakta dan
aturan serta menanyakan sesuatu hal secara
umum.
• Dalam Prolog nama variabel harus dimulai
dengan huruf kapital.