disco-0.1.0.0: lib/container.disco
using NoStdLib
import list
import product
reducebag : (a × a → a) × a × Bag(a) → a
reducebag(f,z,b) = foldr(f,z,list(b))
reduceset : (a × a → a) × a × Set(a) → a
reduceset(f,z,s) = foldr(f,z,list(s))
unions : Set(Set(a)) → Set(a)
unions(ss) = foldr(~∪~, {}, list(ss))