?- sorella(d,c). d e' sorella di c? Yes ?- sorella(d,X). di chi e' sorella d? oppure quali sono le sorelle e i fratelli di d? ?- nonna(a,X). di chi e' nonna a? oppure quali sono i nipoti di a? ?- cugina(r,X). di chi e' cugina r? oppure quali sono le cugine di r? lista cugini (X,L):-findall(W,cugina(X,W),L). Trovare tutti i cugini di s: ?- listacugini(s,L). risposta L = [v, z,] Trovare tutti i nipoti da nonno/a: listanipotiN(X,L):- ?-findall(W,nipoteN(W,X),L). ?- padre(A,X),padre(A,Y). Pur ripetendo tutte le combinazioni, fornisce il padre e una coppia di figli Quale e' il grado di parentela tra... ?- parente(X,a,c). risposta X=1 ?- parente(X,a,h). risposta X=2 domanda: "Quali sono i parenti fino al terzo grado e gli affini fino al secondo di d?" cosi' formulata ?- parente(1,d,X);parente(2,d,X);parente(3,d,X);parente_affine(2,d,X);parente_affine(1,d,X). risposta X = a ;X = a1 ;X = h ;X = l ;X = r ;X = s ;X = t ;X = v ;X = z ;X = c ;X = g ;X = k ;X = c1 ;X = w ;X = w1 ;X = j ;X = h1 ;X = l1 ; Chi puo' far parte dell'impresa familiare di d? ?- impresa(d,X). oppure ?- findall(W,impresa(d,W),L). [con prolog online] L / [a,a1,h,l,r,s,t,v,z,c,g,h1,l1,w,w1,j,c1,k,d1] Solution: findall(W,impresa(d,W),[a,a1,h,l,r,s,t,v,z,c,g,h1,l1,w,w1,j,c1,k,d1]) ?- impr(d). [con prolog su PC] a a1 h l r s t v z c g h1 l1 w w1 j c1 k d1 Yes