sig
module type Symbol =
sig
type t
val rank : Ranked_alphabet.Symbol.t -> int
val compare :
Ranked_alphabet.Symbol.t -> Ranked_alphabet.Symbol.t -> int
val to_string : Ranked_alphabet.Symbol.t -> string
end
module type S =
sig
type t
and elt
val empty : Ranked_alphabet.S.t
val is_empty : Ranked_alphabet.S.t -> bool
val rank : Ranked_alphabet.S.elt -> int
val mem : Ranked_alphabet.S.elt -> Ranked_alphabet.S.t -> bool
val add :
Ranked_alphabet.S.elt -> Ranked_alphabet.S.t -> Ranked_alphabet.S.t
val singleton : Ranked_alphabet.S.elt -> Ranked_alphabet.S.t
val remove :
Ranked_alphabet.S.elt -> Ranked_alphabet.S.t -> Ranked_alphabet.S.t
val union :
Ranked_alphabet.S.t -> Ranked_alphabet.S.t -> Ranked_alphabet.S.t
val inter :
Ranked_alphabet.S.t -> Ranked_alphabet.S.t -> Ranked_alphabet.S.t
val diff :
Ranked_alphabet.S.t -> Ranked_alphabet.S.t -> Ranked_alphabet.S.t
val compare : Ranked_alphabet.S.t -> Ranked_alphabet.S.t -> int
val equal : Ranked_alphabet.S.t -> Ranked_alphabet.S.t -> bool
val subset : Ranked_alphabet.S.t -> Ranked_alphabet.S.t -> bool
val iter :
(Ranked_alphabet.S.elt -> unit) -> Ranked_alphabet.S.t -> unit
val fold :
(Ranked_alphabet.S.elt -> 'a -> 'a) ->
Ranked_alphabet.S.t -> 'a -> 'a
val for_all :
(Ranked_alphabet.S.elt -> bool) -> Ranked_alphabet.S.t -> bool
val exists :
(Ranked_alphabet.S.elt -> bool) -> Ranked_alphabet.S.t -> bool
val partition :
(Ranked_alphabet.S.elt -> bool) ->
Ranked_alphabet.S.t -> Ranked_alphabet.S.t * Ranked_alphabet.S.t
val cardinal : Ranked_alphabet.S.t -> int
val elements : Ranked_alphabet.S.t -> Ranked_alphabet.S.elt list
val min_elt : Ranked_alphabet.S.t -> Ranked_alphabet.S.elt
val max_elt : Ranked_alphabet.S.t -> Ranked_alphabet.S.elt
val choose : Ranked_alphabet.S.t -> Ranked_alphabet.S.elt
val to_string : Ranked_alphabet.S.t -> string
val elt_to_string : Ranked_alphabet.S.elt -> string
val from_list : Ranked_alphabet.S.elt list -> Ranked_alphabet.S.t
end
module Make :
functor (Sym : Symbol) ->
sig
type t
and elt = Sym.t
val empty : Ranked_alphabet.S.t
val is_empty : Ranked_alphabet.S.t -> bool
val rank : Ranked_alphabet.S.elt -> int
val mem : Ranked_alphabet.S.elt -> Ranked_alphabet.S.t -> bool
val add :
Ranked_alphabet.S.elt -> Ranked_alphabet.S.t -> Ranked_alphabet.S.t
val singleton : Ranked_alphabet.S.elt -> Ranked_alphabet.S.t
val remove :
Ranked_alphabet.S.elt -> Ranked_alphabet.S.t -> Ranked_alphabet.S.t
val union :
Ranked_alphabet.S.t -> Ranked_alphabet.S.t -> Ranked_alphabet.S.t
val inter :
Ranked_alphabet.S.t -> Ranked_alphabet.S.t -> Ranked_alphabet.S.t
val diff :
Ranked_alphabet.S.t -> Ranked_alphabet.S.t -> Ranked_alphabet.S.t
val compare : Ranked_alphabet.S.t -> Ranked_alphabet.S.t -> int
val equal : Ranked_alphabet.S.t -> Ranked_alphabet.S.t -> bool
val subset : Ranked_alphabet.S.t -> Ranked_alphabet.S.t -> bool
val iter :
(Ranked_alphabet.S.elt -> unit) -> Ranked_alphabet.S.t -> unit
val fold :
(Ranked_alphabet.S.elt -> 'a -> 'a) ->
Ranked_alphabet.S.t -> 'a -> 'a
val for_all :
(Ranked_alphabet.S.elt -> bool) -> Ranked_alphabet.S.t -> bool
val exists :
(Ranked_alphabet.S.elt -> bool) -> Ranked_alphabet.S.t -> bool
val partition :
(Ranked_alphabet.S.elt -> bool) ->
Ranked_alphabet.S.t -> Ranked_alphabet.S.t * Ranked_alphabet.S.t
val cardinal : Ranked_alphabet.S.t -> int
val elements : Ranked_alphabet.S.t -> Ranked_alphabet.S.elt list
val min_elt : Ranked_alphabet.S.t -> Ranked_alphabet.S.elt
val max_elt : Ranked_alphabet.S.t -> Ranked_alphabet.S.elt
val choose : Ranked_alphabet.S.t -> Ranked_alphabet.S.elt
val to_string : Ranked_alphabet.S.t -> string
val elt_to_string : Ranked_alphabet.S.elt -> string
val from_list : Ranked_alphabet.S.elt list -> Ranked_alphabet.S.t
end
end