functor (X : T.T1) ->
  sig val lift : ('a, 'b) Type_equal.t -> ('a X.t, 'b X.t) Type_equal.t end