sig
type id = ID.t
type 'ty t = 'ty ID.Map.t
val empty : 'a Signature.t
val mem : sigma:'a Signature.t -> Signature.id -> bool
val find : sigma:'a Signature.t -> Signature.id -> 'a option
val find_exn : sigma:'a Signature.t -> Signature.id -> 'a
val declare : sigma:'a Signature.t -> Signature.id -> 'a -> 'a Signature.t
val add_list :
sigma:'a Signature.t -> (Signature.id * 'a) list -> 'a Signature.t
val of_list : (Signature.id * 'a) list -> 'a Signature.t
val add_statement :
sigma:'a Signature.t -> ('b, 'a) Statement.t -> 'a Signature.t
end