Edit this page Backlinks This page is read only. You can view the source, but not change it. Ask your administrator if you think this is wrong. ====== Sample Exam ====== 1. (1p) Scrieti o functie care primeste o lista de perechi //nume-grupa//-//lista de studenti// ce apartin grupei respective, si verifica daca exista un student care e membru in doua grupe. 2. (1p) Scrieti un predicat care primeste o lista de perechi //nume-grupa//-//lista de studenti// ce apartin grupei respective si care se satisface (si raporteaza) TOTI studentii care sunt membrii in doua grupe. 3. (1p) Scrieti o lambda-expresie reductibila pentru care evaluarea normala si evaluarea aplicativa se comporta diferit. 4. (1p) Scrieti o functie care are signatura ''[a->a]->[a]->a''. 5. (2p) Scrieti un TDA ''Set'' care codifica **multimi** via functii caracteristice. Implementati reuniunea si intersectia. Implementati folosind ''foldr'' o functie avand signatura ''[Set] -> Set'' care primeste o lista de seturi si intoarce reuniunea acestora. 6. (2p) Definiti un predicat ''csp(X,Y,Z,G,Dom,R)'' unde ''X,Y,Z'' sunt variabile neinstantiate iar G este un scop ce contine respectivele variabile. ''Dom'' este domeniul de valori pentru fiecare variabila, iar ''R'' va fi legat la lista avand elementele $math[(x,y,z) \in Dom\times Dom \times Dom] cu proprietatea ca $math[x,y,z] fac ''G'' adevarat.