swh:1:snp:0e3a7a90b5b85feca1ee6285ebc0301d2b85deae
Tip revision: 4a7a9c1f21e619766bc413781722af17bd664eed authored by Pierre Boutry on 06 January 2023, 17:59:57 UTC
polynomial Euclidean division done for rings
polynomial Euclidean division done for rings
Tip revision: 4a7a9c1
ecUid.mli
(* -------------------------------------------------------------------- *)
open EcMaps
open EcSymbols
(* -------------------------------------------------------------------- *)
val unique : unit -> int
(* -------------------------------------------------------------------- *)
type uid = int
type uidmap
val create : unit -> uidmap
val lookup : uidmap -> symbol -> uid option
val forsym : uidmap -> symbol -> uid
(* -------------------------------------------------------------------- *)
val uid_equal : uid -> uid -> bool
val uid_compare : uid -> uid -> int
module Muid : Map.S with type key = uid
module Suid : Set.S with module M = Map.MakeBase(Muid)
(* -------------------------------------------------------------------- *)
module NameGen : sig
type t
val ofint : int -> string
val bulk : ?fmt:(string -> string) -> int -> string list
val create : unit -> t
val get : t -> uid -> string
end