sig
  type t
  val fprint : Format.formatter -> NonRelational.Domain.t -> unit
  val order : NonRelational.Domain.t -> NonRelational.Domain.t -> bool
  val top : NonRelational.Domain.t
  val bottom : NonRelational.Domain.t
  val join :
    NonRelational.Domain.t ->
    NonRelational.Domain.t -> NonRelational.Domain.t
  val meet :
    NonRelational.Domain.t ->
    NonRelational.Domain.t -> NonRelational.Domain.t
  val widening :
    NonRelational.Domain.t ->
    NonRelational.Domain.t -> NonRelational.Domain.t
  val sem_itv : int -> int -> NonRelational.Domain.t
  val sem_plus :
    NonRelational.Domain.t ->
    NonRelational.Domain.t -> NonRelational.Domain.t
  val sem_minus :
    NonRelational.Domain.t ->
    NonRelational.Domain.t -> NonRelational.Domain.t
  val sem_times :
    NonRelational.Domain.t ->
    NonRelational.Domain.t -> NonRelational.Domain.t
  val sem_div :
    NonRelational.Domain.t ->
    NonRelational.Domain.t -> NonRelational.Domain.t
  val sem_guard : NonRelational.Domain.t -> NonRelational.Domain.t
  val backsem_plus :
    NonRelational.Domain.t ->
    NonRelational.Domain.t ->
    NonRelational.Domain.t -> NonRelational.Domain.t * NonRelational.Domain.t
  val backsem_minus :
    NonRelational.Domain.t ->
    NonRelational.Domain.t ->
    NonRelational.Domain.t -> NonRelational.Domain.t * NonRelational.Domain.t
  val backsem_times :
    NonRelational.Domain.t ->
    NonRelational.Domain.t ->
    NonRelational.Domain.t -> NonRelational.Domain.t * NonRelational.Domain.t
  val backsem_div :
    NonRelational.Domain.t ->
    NonRelational.Domain.t ->
    NonRelational.Domain.t -> NonRelational.Domain.t * NonRelational.Domain.t
end