Thursday, October 23, 2014

Silsilah keluarga dengan Prolog

Source codes :

% .pl .pro
% Contoh fakta dan rule program Prolog. Diambil dari contoh-contoh
% dalam buku "Prolog Programming for Artificial Intelligence", Ivan
% Bratko, Bab 1.

parent(tom,bob).   %ngasih/inisialisasi ke prolog bahwa bob anak nya tom
parent(pam,bob).   %nagsih tau ke prolog bahwa bob anak nya pam
parent(tom,liz).
parent(bob,ann).
parent(bob,pat).
parent(pat,jim).
parent(liz,roji).

female(pam).       %ngasih tau bahwa si pam adalah perempuan
female(liz).       %ngasih tau ke prolog bahwa lis juga perempuan
female(pat).
female(ann).
male(tom).
male(bob).
male(jim).
male(roji).
male(billy).

offspring(Y,Z) :- parent(Z,Y).
mother(X,Y) :- parent(X,Y), female(X).
grandparent(X,Z) :- parent(X,Y), parent(Y,Z).
sister(X,Y) :- parent(Z,X), parent(Z,Y), female(X).
parent(bob, billy).
male(billy).


ayah(X, Y) :- parent(X, Y), male(X).                                   % father(X,Y) :-
brother(X,Y). :-parent(Z,Y). :-parent(Z,X) :-male(z).          % brother(X,Y) :-
cucu(X,Y) :- parent(Y,Z), parent(Z, X).
sepupu(X,Y) :- cucu(X,Z) :- cucu(Y,Z).
nenek(X,Z) :- offspring(Y,X), offspring(Z,Y), female(X).    % grandma(X,Y) :-
kakek(X,Z) :- offspring(Y,X), offspring(Z,Y), male(X).        % grandpa(X,Y) :-
paman(X,Y). :-parent(Z,Y). :-brother(X,Z) :-male(z).            % uncle(X,Y) :-
cousin(X,Y) :- kakek(Z,X), nenek(X,Y).


0 comments:

Post a Comment