
  [;1m-spec family_union(Family1) -> Family2[0m
  [;1m                      when Family1 :: family(), Family2 :: family().[0m

  If [;;4mFamily1[0m is a family and [;;4mFamily1[0m[i] is a set of sets for
  each i in the index set of [;;4mFamily1[0m, then [;;4mFamily2[0m is the family
  with the same index set as [;;4mFamily1[0m such that [;;4mFamily2[0m[i] is the
  union of [;;4mFamily1[0m[i].

    1> F1 = sofs:from_term([{a,[[1,2],[2,3]]},{b,[[]]}]),
    F2 = sofs:family_union(F1),
    sofs:to_external(F2).
    [{a,[1,2,3]},{b,[]}]

  [;;4mfamily_union(F)[0m is equivalent to [;;4mfamily_projection(fun[0m
  [;;4msofs:union/1, F)[0m.
