sig
  val compose :
    ('a -> 'b -> int option) -> ('a -> 'b -> int option) -> 'a -> 'b -> int
  val reverse : ('a -> 'b -> int) -> 'a -> 'b -> int
  val reversep :
    ('a -> 'b -> int Biocaml_internal_pervasives.Option.t) ->
    'a -> 'b -> int Biocaml_internal_pervasives.Option.t
  val totalify : ('a -> 'b -> 'c option) -> 'a -> 'b -> 'c
end