Subscribe Us

Responsive Advertisement

Advertisement

b. Create rules to define more complex relationships based on existing facts. | Prolog Code

 


parent(rahim,babul).
parent(rahim,korim).
parent(chokina,babul).
parent(chokina,korim).
parent(jorim,rahim).

likes(rahim,vat).
likes(rahim,ruti).
likes(babul,vorta).
likes(chokina,ice_cream).

male(rahim).
male(babul).
male(korim).
male(jorim).
female(chokina).

grand_parent(X,Y):-
            parent(X,Z),parent(Z,Y).
grand_child(X,Y):-
                grand_parent(Y,X).
father(X,Y):-
        parent(X,Y),male(X).
mother(X,Y):-
        parent(X,Y),female(X).
siblings(X,Y):-
            parent(Z,X),
            parent(Z,Y),
            X \=Y.

go:-
    write("rahim's Chidren : "),nl,
    findall(Child, parent(rahim,Child),Ans),
    write(Ans),nl,nl,

    write("Chokina's child : "),nl,
    parent(chokina,Child),nl,
    write(Child),nl,nl,

   write("Enter any Name for Siblings : "),
   read(Name),
   findall(Sib,siblings(Name,Sib),SibList),
   (
     SibList \=[]
     ->write(SibList);
     write("Only one son")

   ).

Post a Comment

0 Comments