Advertisement
Guest User

Untitled

a guest
Dec 12th, 2018
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Prolog 0.47 KB | None | 0 0
  1. check(Rel, A, B):-
  2.  
  3.     Goal =.. [Rel,A,B],
  4.  
  5.     call(Goal).
  6.  
  7. merge(_,[],[],[]).
  8.  
  9.  
  10. merge(Rel,[H1|T1],[H2|T2], [H1,H2|L]):-
  11.     check(Rel, H1, H2),
  12.     merge(Rel, T1, T2, L).
  13.  
  14. merge(Rel,[H1|T1],[H2|T2], L):-
  15.     \+ check(Rel, H1, H2),
  16.     merge(Rel, T1, T2, L).
  17.  
  18. merge2(_,[],[],[]).
  19. merge2(Rel,[H1|T1],[H2|T2], L):-
  20.     check(Rel, H1, H2),
  21.     append([H1|_],[H2|_],L),
  22.     merge2(Rel,T1,T2,L).
  23.  
  24.  
  25. merge2(Rel,[H1|T1],[H2|T2], L):-
  26.     \+ check(Rel, H1, H2),
  27.     merge2(Rel,T1,T2,L).
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement