let hash v =
    match v with
      Map m ->
        (* let f k v acc =
           (V.hash v) +  11 * acc + 54971 * K.hash k in
           M.fold f m 3647 *)

        M.tag m
    | Top (bases, orig) ->
        Origin.hash orig + (299 * (Top_Param.hash bases))