Functor Non_linear_evaluation.Make

module Make: 
functor (Value : Abstract_value.External) ->
functor (Eva : Evaluation.S with type value = Value.t) -> sig .. end
Parameters:
Value : Abstract_value.External
Eva : Evaluation.S with type value = Value.t

val evaluate : ?valuation:Eva.Valuation.t ->
?indeterminate:bool ->
?reduction:bool ->
Eva.state -> Cil_types.exp -> (Eva.Valuation.t * Value.t) Eval.evaluated
Same functionality as Eva.evaluate. For expressions in which some l-values appear multiple times, proceed by disjunction on their abstract value, in order to gain precision.