sig
type occur = int Lang.F.Tmap.t Pervasives.ref
val create : unit -> 'a Lang.F.Tmap.t Pervasives.ref
val literal : int Lang.F.Tmap.t Pervasives.ref -> Lang.F.Tmap.key -> unit
val occur : int Lang.F.Tmap.t Pervasives.ref -> Lang.F.Tmap.key -> unit
val add : int Lang.F.Tmap.t Pervasives.ref -> Lang.F.pred -> unit
val select : 'a Lang.F.Tmap.t Pervasives.ref -> (Lang.F.pred * 'a) list
end