123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778moduletypeS=sigtypeelttypettype'amapvalempty:tvalis_empty:t->boolvalmem:t->elt->boolvaladd:t->elt->tvalsingleton:elt->tvalremove:t->elt->tvalunion:t->t->tvalinter:t->t->tvaldiff:t->t->tvalcompare:t->t->Ordering.tvalequal:t->t->boolvalis_subset:t->of_:t->boolvaliter:t->f:(elt->unit)->unitvalmap:t->f:(elt->elt)->tvalfold:t->init:'a->f:(elt->'a->'a)->'avalfor_all:t->f:(elt->bool)->boolvalexists:t->f:(elt->bool)->boolvalfilter:t->f:(elt->bool)->tvalpartition:t->f:(elt->bool)->t*tvalcardinal:t->intvalmin_elt:t->eltoptionvalmax_elt:t->eltoptionvalchoose:t->eltoptionvalchoose_exn:t->eltvalsplit:t->elt->t*bool*tvalof_list:eltlist->tvalof_list_map:'alist->f:('a->elt)->tvalto_list:t->eltlist(** Convert to a list and map every element. *)valto_list_map:t->f:(elt->'a)->'alistvalfind:t->f:(elt->bool)->eltoptionvalunion_all:tlist->tvalunion_map:'alist->f:('a->t)->tvalto_dyn:t->Dyn.tvalof_keys:_map->tvalto_map:t->f:(elt->'a)->'amapend