let union d1 d2 =
  match d1, d2 with
    | IntInt -> Int
    | _ -> Real