/*
Ha valaki nem szereti a prefix jelölést, kialakíthat magának infix jelölést is.
(Pl. az eddig tanult szintaktika alapján a + b -t így kellene írnunk: +(a,b), (ez a prefix jelölés), de mégis írhatjuk a szokásos a+b (ez az infix jelölés) módon.
Ezt a saját predikátumainkkal is megtehetjük az "op" eljárás segítségével. 
Az eljárás: 
op(+Precedence, +Type, :Name)

A precedencia a kiértékelési sorrendet határozza meg (ld. pl. az op predikátum helpjét), a tipus jelzi, hogy hova kerüljön a predikátumnév (ld. help). A név az operátor nevét jelzi. 

Mint a példából is láthatja, a név helyett lista is írható, ekkor a benne szereplő nevek azonos tulajdonságú operátorok lesznek.
Pontosabb információért forduljon a help-hez.
(Ha az op -ra keres rá, majd a view menüpontban a whole section-t választja, akkor kicsit részletesebb magyarázatot is kap.)
*/

/*  Példa  */


:-op(800, xfx, [nagyszuloje,szuloje]).

szuloje(adam,pisti).
szuloje(adam,mari).
szuloje(adam,zoli).
szuloje(eva,kati).
szuloje(eva,juli).
szuloje(eva,geza).
szuloje(zoli,peter).
szuloje(zoli,pal).
szuloje(kati,peter).
szuloje(kati,pal).
szuloje(mari,anna).
szuloje(geza,anna).
szuloje(pal,tamas).

jani szuloje bela.


N nagyszuloje Gy :- N szuloje Sz, Sz szuloje Gy.



/*
Ekkor a lekérdezés pl.:

?- A nagyszuloje B.

vagy

 ?- setof((A,Unokak),setof(B, A nagyszuloje B, Unokak),L).


Megjegyzés: Nem igazán logikus keverni a predikátumok megadását, de elvileg lehet.

*/