sig
  type 'a par
  val p : unit -> int
  val g : unit -> float
  val l : unit -> float
  val mkpar : (int -> 'a) -> 'Mspml.par
  val apply : ('-> 'b) Mspml.par -> 'Mspml.par -> 'Mspml.par
  val get : 'Mspml.par -> int Mspml.par -> 'Mspml.par
  val get_array_bool :
    'Mspml.par -> bool array Mspml.par -> 'a option array Mspml.par
  val get_list : 'Mspml.par -> int list Mspml.par -> 'a list Mspml.par
  val get_array : 'Mspml.par -> int array Mspml.par -> 'a array Mspml.par
  val mget_array_bool :
    (int -> 'a) Mspml.par ->
    bool array Mspml.par -> 'a option array Mspml.par
  val mget_array :
    (int -> 'a) Mspml.par -> int array Mspml.par -> 'a array Mspml.par
  val mget_list :
    (int -> 'a) Mspml.par -> int list Mspml.par -> 'a list Mspml.par
  val mget :
    (int -> 'a) Mspml.par ->
    (int -> bool) Mspml.par -> (int -> 'a option) Mspml.par
  val unsafe_proj : 'Mspml.par -> 'a
  exception At_failure of string
  val at : 'Mspml.par -> int -> 'a
  val argv : string array
  val initialize : unit -> unit
  val finalize : unit -> unit
  val abort : int -> string -> unit
  exception Timer_failure of string
  val start_timing : unit -> unit
  val stop_timing : unit -> unit
  val get_cost : unit -> float Mspml.par
  val set_verbose : int -> unit
end