sig
  type ('a, 'b, 'c) t
  val equal :
    'a Equal.equal ->
    'b Equal.equal -> 'c Equal.equal -> ('a, 'b, 'c) Equal.S3.t Equal.equal
end