sig type 'a t val binary_search : ?pos:int -> ?len:int -> 'a Binary_searchable_intf.S1.t -> compare:('a -> 'a -> int) -> 'a -> int option end