sig
type namespace = Sort | Term | Attr | Decl | Module of string
type t = { ns : Id.namespace; name : string; }
val sort : namespace
val term : namespace
val attr : namespace
val decl : namespace
val mod_name : string -> namespace
val hash : Id.t -> int
val equal : Id.t -> Id.t -> bool
val compare : Id.t -> Id.t -> int
val mk : Id.namespace -> string -> Id.t
val full_name : Id.t -> string
val pp : Buffer.t -> Id.t -> unit
val print : Format.formatter -> Id.t -> unit
end