Module BO__Polynomials.NonNegativePolynomial
include IStdlib.PrettyPrintable.PrintableType
val pp : IStdlib.PrettyPrintable.F.formatter -> t -> unit
type degree_with_term= (UnreachableTraces.t, Degree.t * NonNegativeNonTopPolynomial.t, TopTraces.t) Absint.AbstractDomain.Types.below_above
val pp_hum : Stdlib.Format.formatter -> t -> unitval leq : lhs:t -> rhs:t -> boolval top : tval of_unreachable : IBase.Location.t -> tval zero : tval one : ?autoreleasepool_trace:BO.Bounds.BoundTrace.t -> unit -> tval of_int_exn : ?autoreleasepool_trace:BO.Bounds.BoundTrace.t -> int -> tval is_symbolic : t -> boolval is_top : t -> boolval is_unreachable : t -> boolval is_zero : t -> boolval is_one : t -> boolval of_non_negative_bound : ?degree_kind:DegreeKind.t -> BO.Bounds.NonNegativeBound.t -> tval of_func_ptr : BO.Symb.SymbolPath.partial -> IBase.Location.t -> tval plus : t -> t -> tval mult_unreachable : t -> t -> tif one of the operands is unreachable, the result is unreachable
val mult : t -> t -> tval mult_loop : iter:t -> body:t -> tval min_default_left : t -> t -> tval subst : IR.Procname.t -> IBase.Location.t -> t -> BO.Bounds.Bound.eval_sym -> BO.FuncPtr.Set.eval_func_ptrs -> (IR.Procname.t -> t option) -> default_closure_cost:BO.Ints.NonNegativeInt.t -> tval degree : t -> Degree.t optionval degree_str : t -> stringval compare_by_degree : t -> t -> intval pp_degree : only_bigO:bool -> Stdlib.Format.formatter -> degree_with_term -> unitval polynomial_traces : ?is_autoreleasepool_trace:bool -> t -> Absint.Errlog.loc_traceval encode : t -> stringval decode : string -> tval get_degree_with_term : t -> degree_with_term