let pretty_int_range fmt print_ampamp typname lv v =
    let v = project_ival v in
    ( match Ival.min_and_max v with
      Some mn, Some mx ->
        if Int.equal mn mx
        then begin
            print_ampamp();
            Format.fprintf fmt "*(%s*)%s == %a"
              typname
              lv
              Int.pretty mn
          end
        else begin
            print_ampamp();
            Format.fprintf fmt "%a <= *(%s*)%s && *(%s*)%s <= %a"
              Int.pretty mn
              typname
              lv
              typname
              lv
              Int.pretty mx;
          end
    | _ -> ())