type t =
| Var of Identifier.t
| Int
| Product of t * t
| Arrow of t * t
[@@deriving eq, ord, show]
(* Type to string *)
val string_of_type : t -> string