Module Bddapron.Apronexpr.Lin

module Lin: sig .. end

type 'a term = Mpqf.t * 'a 
type 'a t = {
   cst :Mpqf.t;
   lterm :'a term list;
}
val normalize : 'a Bddapron.Apronexpr.symbol ->
'a t -> 'a t
val compare_lterm : 'a Bddapron.Apronexpr.symbol ->
'a term list ->
'a term list -> int
val compare : 'a Bddapron.Apronexpr.symbol ->
'a t -> 'a t -> int
val var : 'a -> 'a t
val zero : 'a t
val one : 'a t
val cst : Mpqf.t -> 'a t
val add : 'a Bddapron.Apronexpr.symbol ->
'a t ->
'a t -> 'a t
val sub : 'a Bddapron.Apronexpr.symbol ->
'a t ->
'a t -> 'a t
val scale : Mpqf.t -> 'a t -> 'a t
val negate : 'a t -> 'a t
val support : 'a Bddapron.Apronexpr.symbol -> 'a t -> 'a PSette.t
val substitute_by_var : 'a Bddapron.Apronexpr.symbol ->
'a t ->
('a, 'a) PMappe.t -> 'a t
val normalize_as_constraint : 'a t -> 'a t
val print : 'a Bddapron.Apronexpr.symbol ->
Format.formatter -> 'a t -> unit
val of_linexpr0 : 'a Bddapron.Apronexpr.symbol ->
Apron.Environment.t -> Apron.Linexpr0.t -> 'a t
val of_linexpr1 : 'a Bddapron.Apronexpr.symbol ->
Apron.Linexpr1.t -> 'a t
val to_linexpr0 : 'a Bddapron.Apronexpr.symbol ->
Apron.Environment.t -> 'a t -> Apron.Linexpr0.t
val to_linexpr1 : 'a Bddapron.Apronexpr.symbol ->
Apron.Environment.t -> 'a t -> Apron.Linexpr1.t