sig
  val set_number_of_cores : int -> unit
  val compute :
    worker:('-> 'b) ->
    master:('a * '-> '-> ('a * 'c) list) -> ('a * 'c) list -> unit
  val map : f:('-> 'b) -> 'a list -> 'b list
  val map_local_fold :
    f:('-> 'b) -> fold:('-> '-> 'c) -> '-> 'a list -> 'c
  val map_remote_fold :
    f:('-> 'b) -> fold:('-> '-> 'c) -> '-> 'a list -> 'c
  val map_fold_ac :
    f:('-> 'b) -> fold:('-> '-> 'b) -> '-> 'a list -> 'b
  val map_fold_a :
    f:('-> 'b) -> fold:('-> '-> 'b) -> '-> 'a list -> 'b
end