1. Mulțimi numărabile Produsul cartezian a n mulțimi numărabile e numărabil ? Argumentați (prin inducție sau prin reducere la absurd).
2. Listă de mulțimi
Scrieți o funcție care ia ca parametru un întreg n și returnează
o listă cu n mulțimi care conțin numerele de la 1 la n2: [{1,2,3};{4,5,6};{7,8,9}] (exemplu pentru n=3).
Scrieți o funcție care tipărește o mulțime de întregi în modul indicat (cu acolade și virgulă) și o funcție care tipărește orice listă (cu paranteze drepte și punct-virgulă), folosind ca parametru o funcție care știe să tipărească un element. Folosiți-le pentru a tipări rezultatul.
3. Selecție din k în k Scrieți o funcție care ia ca parametru o mulțime (tipul de elemente e la alegere) și un întreg pozitiv k și returnează mulțimea cu elementele de pe pozițiile k, 2k, 3k, ... (în ordine crescătoare și numărându-le de la 1). Folosiți fold și o pereche cu mulțimea acumulată și un contor, fără a transforma mulțimea în listă.
4. Perechi ordonate Scrieți o funcție care ia ca parametru o mulțime (cu tip de elemente la alegere) și returnează mulțimea perechilor de elemente distincte din mulțime, cu primul element mai mic decât al doilea (în total n(n-1)/2 perechi).
5. (opțional) Aranjamente de k din n. Scrieți o funcție care ia ca parametru o mulțime (tipul elementelor e la alegere) și un număr pozitiv k și returnează mulțimea aranjamentelor de k elemente (un aranjament e o listă de k elemente).