sig
  type typ =
    Apron.Tcons1.typ =
      EQ
    | SUPEQ
    | SUP
    | DISEQ
    | EQMOD of Apron.Scalar.t
  type 'a t = Apronexpr.Condition.typ * 'Apronexpr.expr
  val make :
    ('a, [> Apronexpr.Condition.typ ]) Apronexpr.typ_of_var ->
    Apronexpr.Condition.typ ->
    'Apronexpr.expr ->
    [ `Bool of bool | `Cond of 'Apronexpr.Condition.t ]
  val negate :
    ('a, [> Apronexpr.Condition.typ ]) Apronexpr.typ_of_var ->
    'Apronexpr.Condition.t -> 'Apronexpr.Condition.t
  val support :
    'Apronexpr.symbol -> 'Apronexpr.Condition.t -> 'PSette.t
  val print :
    'Apronexpr.symbol ->
    Format.formatter -> 'Apronexpr.Condition.t -> unit
  val compare :
    'Apronexpr.symbol ->
    'Apronexpr.Condition.t -> 'Apronexpr.Condition.t -> int
  val to_tcons0 :
    'Apronexpr.symbol ->
    Apron.Environment.t -> 'Apronexpr.Condition.t -> Apron.Tcons0.t
  val to_tcons1 :
    'Apronexpr.symbol ->
    Apron.Environment.t -> 'Apronexpr.Condition.t -> Apron.Tcons1.t
  val to_apron :
    'Apronexpr.symbol ->
    Apron.Environment.t ->
    'Apronexpr.Condition.t ->
    [ `Lincons1 of Apron.Lincons1.t | `Tcons1 of Apron.Tcons1.t ]
end