===== Laborator 11 - Programare in Prolog ===== ==== Multimi ==== - Definiti predicatul ''cartesian(L1,L2,R)'' care construieste produsul cartezian al ''L1'' cu ''L2'' - Definiti predicatul ''union(L1,L2,R)'' care construieste reuniunea a doua multimi codificate ca liste. - Definiti predicatul ''intersection(L1,L2,R)'' - Definiti predicatul ''diff(L1,L2,R)'' care construieste diferenta pe multimi intre ''L1'' si ''L2'' ==== Permutari, Aranjamente, Combinari ==== - Definiti predicatul ''pow(S,R)'' care construieste ''power-set''-ul multimii ''S''. - Definiti predicatul ''perm(S,R)'' care genereaza toate permutarile lui ''S''. - Definiti predicatul ''ar(K,S,R)'' care genereaza toate aranjamentele de dimensiune ''K'' cu elemente luate din ''S'' - Definiti predicatul ''comb(K,S,R)'' care genereaza toate combinarile de dimensiune ''K'' cu elemente luate din ''S'' === Solutii === [[https://github.com/Programming-Paradigms/Labs/archive/master.zip|Solutii]]