laps(toomas, jaagup). laps(paula, jaagup). laps(jaagup, pille). laps(pille, aleksander). laps(liina, viivi). laps(heli, viivi). laps(viivi, aleksander). laps(aleksander, juhan). oedvennad(Kes, Kelle):- laps(Kes, X),laps(Kelle, X), Kes\=Kelle. n6od(Kes, Kelle):- laps(Kes, Vanem), oedvennad(Vanem, Tadionu), laps(Kelle, Tadionu). n6od_kuidas(Kes, Kelle, Vanem, Tadionu):- laps(Kes, Vanem), oedvennad(Vanem, Tadionu), laps(Kelle, Tadionu). jareltulija_loenduriga(Kes, Kelle, Kuidas):- laps(Kes, Kelle), Kuidas = 1. jareltulija_loenduriga(Kes, Kelle, Kuidas):- laps(Kes, X), jareltulija_loenduriga(X, Kelle, Y), Kuidas is Y+1. jareltulija_seosega(Kes, Kelle, Kuidas):- laps(Kes, Kelle), Kuidas=[laps]. jareltulija_seosega(Kes, Kelle, Kuidas):- laps(Kes, X), jareltulija_seosega(X, Kelle, Y), append([laps], Y, Kuidas). jareltulija_nimega(Kes, Kelle, Kuidas):- laps(Kes, Kelle), Kuidas = [Kelle]. jareltulija_nimega(Kes, Kelle, Kuidas):- laps(Kes, X), jareltulija_nimega(X, Kelle, Y), append([X], Y, Kuidas). %keerukam sugulane_nimega([A|R], B, Kuidas):- (A\=B -> (laps(A, X); laps(X, A)), \+member(X, [A|R]), sugulane_nimega([X, A|R], B, Kuidas); Kuidas=[A|R]).