type ('a, 'b) t = ('a, 'b) Base.Type_equal.t =| T : ('a, 'a) truntime witnes of type equality this is a reduced version of
Core.Type_equal.
type ('a, 'b) equal = ('a, 'b) t
val conv : ('a, 'b) t -> 'a -> 'btype-safe conversion between equal types
val refl : ('a, 'a) ttype equality is reflexive