sig
type t
type attr
type domain
type elt
type event
val create : ?name:string -> Var.BASICFD.domain -> Var.BASICFD.t
val interval :
?name:string -> Var.BASICFD.elt -> Var.BASICFD.elt -> Var.BASICFD.t
val array :
?name:string ->
int -> Var.BASICFD.elt -> Var.BASICFD.elt -> Var.BASICFD.t array
val elt : Var.BASICFD.elt -> Var.BASICFD.t
val is_var : Var.BASICFD.t -> bool
val is_bound : Var.BASICFD.t -> bool
val value :
Var.BASICFD.t -> (Var.BASICFD.attr, Var.BASICFD.elt) Var.concrete
val min : Var.BASICFD.t -> Var.BASICFD.elt
val max : Var.BASICFD.t -> Var.BASICFD.elt
val min_max : Var.BASICFD.t -> Var.BASICFD.elt * Var.BASICFD.elt
val elt_value : Var.BASICFD.t -> Var.BASICFD.elt
val int_value : Var.BASICFD.t -> Var.BASICFD.elt
val size : Var.BASICFD.t -> int
val member : Var.BASICFD.t -> Var.BASICFD.elt -> bool
val id : Var.BASICFD.t -> int
val name : Var.BASICFD.t -> string
val compare : Var.BASICFD.t -> Var.BASICFD.t -> int
val equal : Var.BASICFD.t -> Var.BASICFD.t -> bool
val fprint : Pervasives.out_channel -> Var.BASICFD.t -> unit
val fprint_array : Pervasives.out_channel -> Var.BASICFD.t array -> unit
val unify : Var.BASICFD.t -> Var.BASICFD.elt -> unit
val refine : Var.BASICFD.t -> Var.BASICFD.domain -> unit
val refine_low : Var.BASICFD.t -> Var.BASICFD.elt -> unit
val refine_up : Var.BASICFD.t -> Var.BASICFD.elt -> unit
val refine_low_up :
Var.BASICFD.t -> Var.BASICFD.elt -> Var.BASICFD.elt -> unit
val on_refine : Var.BASICFD.event
val on_subst : Var.BASICFD.event
val on_min : Var.BASICFD.event
val on_max : Var.BASICFD.event
val delay :
Var.BASICFD.event list ->
Var.BASICFD.t -> ?waking_id:int -> Cstr.t -> unit
val int : Var.BASICFD.elt -> Var.BASICFD.t
val subst : Var.BASICFD.t -> Var.BASICFD.elt -> unit
val unify_cstr : Var.BASICFD.t -> Var.BASICFD.elt -> Cstr.t
end