rei0d

Untitled

Jul 27th, 2014
1,007
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Prolog 2.28 KB | None | 0 0
  1. mother(miaWagner, emmaSchneider).
  2. mother(emmaSchneider, jonasSchneider).
  3. mother(emmaSchneider, selinaSchneider).
  4. mother(selinaMueller, kevinMueller).
  5. mother(selinaMueller, davidSchulz).
  6. mother(vanessaMueller, selinaMueller).
  7. mother(juliaMueller, danielMueller).
  8. mother(juliaMueller, thomasMueller).
  9. mother(ninaSchmidt, leaSchmidt).
  10. mother(leaSchmidt, lucaSchmidt).
  11. mother(leaSchmidt, florianSchmidt).
  12. mother(selinaSchneider, emmaSchmidt).
  13. mother(vanessaMueller, melinaMueller).
  14. mother(annaBecker, mariahBecker).
  15. mother(mariahBecker, alinaBecker).
  16. mother(lucaSchmidt, michaelSchulz).
  17.  
  18. father(noahSchneider, emmaSchneider).
  19. father(kevinMueller, jonasSchneider).
  20. father(kevinMueller, selinaSchneider).
  21. father(thomasWeber, kevinMueller).
  22. father(thomasWeber, davidSchulz).
  23. father(danielMueller, selinaMueller).
  24. father(fabianMueller, danielMueller).
  25. father(fabianMueller, thomasMueller).
  26. father(thomasMueller, leaSchmidt).
  27. father(lukasSchulz, lucaSchmidt).
  28. father(lukasSchulz, florianSchmidt).
  29. father(florianSchmidt, emmaSchmidt).
  30. father(danielMueller, melinaMueller).
  31. father(michaelBecker, mariahBecker).
  32. father(jonasSchneider, alinaBecker).
  33. father(danielSchulz, michaelSchulz).
  34.  
  35. married(noahSchneider, miaWagner).
  36. married(emmaSchneider, kevinMueller).
  37. married(selinaMueller, thomasWeber).
  38. married(vanessaMueller, danielMueller).
  39. married(juliaMueller, fabianMueller).
  40. married(thomasMueller, ninaSchmidt).
  41. married(leaSchmidt, lukasSchulz).
  42. married(lucaSchmidt, danielSchulz).
  43. married(selinaSchneider, florianSchmidt).
  44. married(emmaSchneider, melinaMueller).
  45. married(annaBecker, michaelBecker).
  46. married(mariahBecker, jonasSchneider).
  47. married(alinaBecker, michaelSchulz).
  48. married(michaelMeier, emmaMeier).
  49.  
  50. related(X,Y) :- father(X,Y).
  51. related(X,Y) :- father(Y,X).
  52. related(X,Y) :- mother(X,Y).
  53. related(X,Y) :- mother(Y,X).
  54. related(X,Y) :- married(X,Y).
  55. related(X,Y) :- married(Y,X).
  56.  
  57. firstDegree(X,S) :- findall(X1,(related(X,X1), X\==X1), L), list_to_set(L,S).
  58.  
  59. expand([X],O) :- firstDegree(X,L), append([X],L,O).
  60. expand([X|I],O) :- firstDegree(X,L1), expand(I,L2), append(L1,L2,L), list_to_set(L,O).
  61.  
  62. find(Y,I,G) :- member(Y,I), G is 0.
  63. find(Y,I,G) :- not(member(Y,I)), expand(I,O), find(Y,O,G1), G is G1+1.
  64. find(Y,I,50) :- fail.
  65.  
  66. vwg(X,Y,G) :- append([X],[],I), find(Y,I,G).
Advertisement
Add Comment
Please, Sign In to add comment