Polynomial.LinPolyLinear(ised) polynomials represented as a Vect.t i.e a sorted association list. The constant is the coefficient of the variable 0
Each linear polynomial can be interpreted as a multi-variate polynomial. There is a bijection mapping between a linear variable and a monomial (see module MonT)
type t = Vect.tEach variable of a linear polynomial is mapped to a monomial. This is done using the monomial tables of the module MonT.
module MonT : sig ... endval of_monomial : Monomial.t -> tof_monomial m
val variables : t -> Micromega_core_plugin.Mutils.ISet.tvariables p
val is_linear : t -> boolis_linear p
val constant : Micromega_core_plugin.NumCompat.Q.t -> tconstant c
val search_all_linear : (Micromega_core_plugin.NumCompat.Q.t -> bool) -> t -> var listsearch_all_linear pred p
val collect_square : t -> Monomial.t MonMap.tcollect_square p
val monomials : t -> Micromega_core_plugin.Mutils.ISet.tmonomials p
val pp_var : Stdlib.out_channel -> var -> unitpp_var o v pretty-prints a monomial indexed by v.
val pp : Stdlib.out_channel -> t -> unitpp o p pretty-prints a polynomial.