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

  If [;;4mFamily1[0m and [;;4mFamily2[0m are families, then [;;4mFamily3[0m is the
  family such that the index set is equal to the index set of [;;4m[0m
  [;;4mFamily1[0m, and [;;4mFamily3[0m[i] is the difference between [;;4mFamily1[0m[i]
  and [;;4mFamily2[0m[i] if [;;4mFamily2[0m maps i, otherwise [;;4mFamily1[i][0m.

    1> F1 = sofs:family([{a,[1,2]},{b,[3,4]}]),
    F2 = sofs:family([{b,[4,5]},{c,[6,7]}]),
    F3 = sofs:family_difference(F1, F2),
    sofs:to_external(F3).
    [{a,[1,2]},{b,[3]}]
