module Lb: sig endLb specifies the set of constant lower bounds.type t
val bottom : tbottom is a distinguished lower bound. It is the bottom
element of the semi-lattice.val is_bottom : t -> boolis_bottom lb must return true if and only if lb is bottom.val union : t -> t -> tunion lb1 lb2 gives the union (according to the semi-lattice
structure) of the lower bounds lb1 and lb2.val leq : t -> t -> boolleq env lb1 lb2 tells wether lb1 is less than or equal to
lb2 in the semi-lattice of constant lower bounds, i.e.:
for all alpha, lb2 < alpha implies lb1 < alpha.val compare : t -> t -> intval normalize : t -> tnormalize lb internally normalizes the lower bound lb.val fprint : Format.formatter -> t -> unitfprint ppf lb pretty-prints the constant lower bound lb on
the formatter ppf. (This function is used for printing of
constants in constraints.)val fprint_in_term : int -> Format.formatter -> t -> unitfprint_in_term ppf lb is used to prints the constant lower
bound lb on the formatter ppf when it appears in a term, in
place of a non-negative variable which has no predecessor.
An usual implementation may be:
let fprint_in_term _ ppf lb =
Format.fprintf ppf "> %a" fprint lb
val draw : t -> string list