sig
  type 'a varexp = 'a * int
  type 'a monomial = 'Bddapron.Apronexpr.Poly.varexp list
  type 'a term = Mpqf.t * 'Bddapron.Apronexpr.Poly.monomial
  type 'a t = 'Bddapron.Apronexpr.Poly.term list
  val compare_varexp :
    'Bddapron.Apronexpr.symbol ->
    'Bddapron.Apronexpr.Poly.varexp ->
    'Bddapron.Apronexpr.Poly.varexp -> int
  val compare_monomial :
    'Bddapron.Apronexpr.symbol ->
    'Bddapron.Apronexpr.Poly.monomial ->
    'Bddapron.Apronexpr.Poly.monomial -> int
  val normalize_monomial :
    'Bddapron.Apronexpr.symbol ->
    'Bddapron.Apronexpr.Poly.monomial ->
    'Bddapron.Apronexpr.Poly.monomial
  val normalize :
    'Bddapron.Apronexpr.symbol ->
    'Bddapron.Apronexpr.Poly.t -> 'Bddapron.Apronexpr.Poly.t
  val normalize_full :
    'Bddapron.Apronexpr.symbol ->
    'Bddapron.Apronexpr.Poly.t -> 'Bddapron.Apronexpr.Poly.t
  val compare :
    'Bddapron.Apronexpr.symbol ->
    'Bddapron.Apronexpr.Poly.t -> 'Bddapron.Apronexpr.Poly.t -> int
  val cst : Mpqf.t -> 'Bddapron.Apronexpr.Poly.t
  val var : '-> 'Bddapron.Apronexpr.Poly.t
  val add :
    'Bddapron.Apronexpr.symbol ->
    'Bddapron.Apronexpr.Poly.t ->
    'Bddapron.Apronexpr.Poly.t -> 'Bddapron.Apronexpr.Poly.t
  val sub :
    'Bddapron.Apronexpr.symbol ->
    'Bddapron.Apronexpr.Poly.t ->
    'Bddapron.Apronexpr.Poly.t -> 'Bddapron.Apronexpr.Poly.t
  val scale :
    'Bddapron.Apronexpr.symbol ->
    Mpqf.t * 'Bddapron.Apronexpr.Poly.monomial ->
    'Bddapron.Apronexpr.Poly.t -> 'Bddapron.Apronexpr.Poly.t
  val mul :
    'Bddapron.Apronexpr.symbol ->
    'Bddapron.Apronexpr.Poly.t ->
    'Bddapron.Apronexpr.Poly.t -> 'Bddapron.Apronexpr.Poly.t
  val div :
    'Bddapron.Apronexpr.symbol ->
    'Bddapron.Apronexpr.Poly.t ->
    'Bddapron.Apronexpr.Poly.t -> 'Bddapron.Apronexpr.Poly.t
  val negate : 'Bddapron.Apronexpr.Poly.t -> 'Bddapron.Apronexpr.Poly.t
  val support :
    'Bddapron.Apronexpr.symbol ->
    'Bddapron.Apronexpr.Poly.t -> 'PSette.t
  val substitute_by_var :
    'Bddapron.Apronexpr.symbol ->
    'Bddapron.Apronexpr.Poly.t ->
    ('a, 'a) PMappe.t -> 'Bddapron.Apronexpr.Poly.t
  val normalize_as_constraint :
    'Bddapron.Apronexpr.Poly.t -> 'Bddapron.Apronexpr.Poly.t
  val print :
    'Bddapron.Apronexpr.symbol ->
    Format.formatter -> 'Bddapron.Apronexpr.Poly.t -> unit
end