31 lines
508 B
OCaml
31 lines
508 B
OCaml
type t = string
|
|
|
|
val compare : t -> t -> int
|
|
|
|
val pp : t Fmt.t
|
|
|
|
val fresh : unit -> t
|
|
|
|
type 'a subst = (t * 'a) list
|
|
|
|
val pp_subst : 'a Fmt.t -> 'a subst Fmt.t
|
|
|
|
val empty : 'a subst
|
|
|
|
val extend : t -> 'a -> 'a subst -> 'a subst
|
|
|
|
val assoc : t -> 'a subst -> 'a
|
|
|
|
val singleton : t -> 'a -> 'a subst
|
|
|
|
val domain : 'a subst -> t list
|
|
|
|
type 'a rel = 'a -> 'a -> bool
|
|
|
|
val included : 'a rel -> 'a subst rel
|
|
|
|
val equal_subst : 'a rel -> 'a subst rel
|
|
|
|
val reset : unit -> unit
|
|
|
|
module Set : Set.S with type elt = t
|