Module type Relation.R

module type R = sig .. end

type elt 
type t 
val empty : t
val id : elt list -> t
val equal : t -> t -> bool
val compare : t -> t -> int
val succ : elt -> t -> elt list
val restr : elt list -> t -> t
val inser : elt * elt -> t -> t
val mem : elt * elt -> t -> bool
val map : (elt * elt -> elt * elt) ->
t -> t
val fold : (elt * elt -> 'a -> 'a) -> t -> 'a -> 'a
val to_list : t -> (elt * elt) list
val concatenation : t -> t -> t
val union : t -> t -> t
val refl : elt list -> t -> t
val etoile : elt list -> t -> t