let shift_ival intervs ival =
    match ival with
      Ival.Top _ | Ival.Float _ -> top
    | Ival.Set s ->
        Ival.O.fold
          (fun x acc ->
             join acc (shift_int64 x intervs))
          s
          bottom