module Fcl_sorting:sig..end
Sorting Constraint
val sort : Fcl_var.Fd.t array -> Fcl_var.Fd.t arraysort a returns an array of variables constrained to be the variables
in a sorted in increasing order.
val sortp : Fcl_var.Fd.t array -> Fcl_var.Fd.t array * Fcl_var.Fd.t arraysortp a same as sort but returns a couple (sorted, perm)
where sorted is the array of sorted variables and perm is an
array of variables constrained to be the permutation between a and
sorted, i.e. a.(i) = sorted.(perm.(i)).
val cstr : Fcl_var.Fd.t array ->
?p:Fcl_var.Fd.t array option -> Fcl_var.Fd.t array -> Fcl_cstr.tcstr a (?perm:None) sorted returns the constraint ensuring that
sorted is the result of sorting array a according to the
permutation perm. perm default value is None, meaning the
argument is irrelevant. Raises Invalid_argument if
arrays have incompatible length. Not reifiable.