Floating-point computations with exponential and logarithm functions
These are examples of floating-point computations involving the exponential and the logarithm functions. They are presented in details in the technical report Generating and Certifying Accuracy Properties of Floating-Point Programs.
Auteurs: Claude Marché / Paul Bonnot
Catégories: Floating-Point Computations / Non-linear Arithmetic
Outils: Why3
see also the index (by topic, by tool, by reference, by year)
download ZIP archive
The following provides the WhyML code where the programs are specified and implemented. After are given the prover results on each verification conditions.
module ExpLogSingle use real.RealInfix use real.Abs use real.ExpLog use ufloat.USingle use ufloat.USingleLemmas (* not easy to support constant log_max : real axiom exp_log_bounds: 1.0 <. log_max (* <=. ? *) *) constant log_rel_err:real axiom log_rel_err_bounds : 0. <=. log_rel_err <=. 1. constant log_abs_err:real axiom log_abs_err_bounds : 0. <=. log_abs_err <=. 1. val function log_approx (x:usingle) : (r : usingle) requires { 0.0 <. to_real x } (* requires { 1.0 /. log_max <=. to_real x <=. log_max } *) ensures { abs (to_real r -. log (to_real x)) <=. abs (log (to_real x)) *. log_rel_err +. log_abs_err } constant log2_error:real axiom log2_error_bounds : 0. <=. log2_error <=. 1. val function log2_approx (x:usingle) : usingle requires { 0. <. to_real x } ensures { abs (to_real result -. log2 (to_real x)) <=. abs (log2 (to_real x)) *. log2_error } constant log10_error:real axiom log10_error_bounds : 0. <=. log10_error <=. 1. val function log10_approx (x:usingle) : usingle requires { 0. <. to_real x } ensures { abs (to_real result -. log10 (to_real x)) <=. abs (log10 (to_real x)) *. log10_error } constant exp_max : real axiom exp_max_bounds: 0.0 <. exp_max <=. 89.0 (* maximal reasonable bound for single format *) constant exp_rel_err:real axiom exp_rel_err_bounds : 0. <=. exp_rel_err <=. 0.5 val function exp_approx (x:usingle) : usingle requires { abs (to_real x) <=. exp_max } ensures { abs (to_real result -. exp (to_real x)) <=. exp_rel_err *. exp (to_real x) } let example1 (x y : usingle) : (r : usingle) requires { abs (to_real x) <=. exp_max } requires { abs (to_real y) <=. exp_max } ensures { let t = log (exp (to_real y)) in let t1 = log (exp (to_real x)) in let t2 = ((1.0 +. eps) +. log_rel_err) *. (((-. log (1.0 -. exp_rel_err)) *. (1.0 +. log_rel_err)) +. log_abs_err) in abs (to_real r -. (t1 +. t)) <=. ((((log_rel_err +. log_rel_err) +. eps) *. (abs t1 +. abs t)) +. (t2 +. t2)) } = log_approx (exp_approx(x)) ++. log_approx (exp_approx(y)) let example2 (x y : usingle) : (r : usingle) requires { exp_rel_err <=. 0x1p-2 } requires { abs (to_real x) <=. exp_max } requires { abs (to_real y) <=. exp_max } ensures { let exact = log(exp(to_real x) +. exp (to_real y)) in abs (to_real r -. exact) <=. abs exact *. log_rel_err +. ((-. log (1.0 -. ((2. *. exp_rel_err) +. eps))) *. (1.0 +. log_rel_err)) +. log_abs_err } = log_approx (exp_approx(x) ++. exp_approx(y)) let example3 (x y : usingle) : (r : usingle) requires { 0. <. to_real x } requires { 0. <. to_real y } ensures { let exact = log2(to_real x +. to_real y) in abs (to_real r -. exact) <=. abs exact *. log2_error +. ((-. log2 (1.0 -. (eps))) *. (1.0 +. log2_error)) } = log2_approx (x ++. y) let example4 (x y : usingle) : (r : usingle) requires { 0. <. to_real x } requires { 0. <. to_real y } ensures { let exact = log10(to_real x +. to_real y) in abs (to_real r -. exact) <=. abs exact *. log10_error +. ((-. log10 (1.0 -. (eps))) *. (1.0 +. log10_error)) } = log10_approx (x ++. y) end module ExpLogDouble use real.RealInfix use real.Abs use real.ExpLog use ufloat.UDouble use ufloat.UDoubleLemmas constant log_rel_err:real axiom log_rel_err_bounds : 0. <=. log_rel_err <=. 1. constant log_abs_err:real axiom log_abs_err_bounds : 0. <=. log_abs_err <=. 1. val function log_approx (x:udouble) : (r : udouble) requires { 0. <. to_real x } ensures { abs (to_real r -. log (to_real x)) <=. abs (log (to_real x)) *. log_rel_err +. log_abs_err } constant exp_max : real axiom exp_max_bounds: 0.0 <. exp_max <=. 708.0 (* maximal reasonable bound for double format *) constant exp_rel_err:real axiom exp_rel_err_bounds : 0. <=. exp_rel_err <=. 0.5 val function exp_approx (x:udouble) : (r : udouble) requires { abs (to_real x) <=. exp_max } ensures { abs (to_real r -. exp (to_real x)) <=. exp_rel_err *. exp (to_real x) } let lemma exp_approx_pos (x:udouble) requires { abs (to_real x) <=. exp_max } ensures { to_real (exp_approx x) >. 0.0 } = () let example1 (x y : udouble) : (r : udouble) requires { abs (to_real x) <=. exp_max } requires { abs (to_real y) <=. exp_max } ensures { let t = log (exp (to_real y)) in let t1 = log (exp (to_real x)) in let t2 = ((1.0 +. eps) +. log_rel_err) *. (((-. log (1.0 -. exp_rel_err)) *. (1.0 +. log_rel_err)) +. log_abs_err) in abs (to_real r -. (t1 +. t)) <=. ((((log_rel_err +. log_rel_err) +. eps) *. (abs t1 +. abs t)) +. (t2 +. t2)) } = log_approx (exp_approx(x)) ++. log_approx (exp_approx(y)) let example2 (x y : udouble) : (r : udouble) requires { exp_rel_err <=. 0x1p-2 } requires { abs (to_real x) <=. exp_max } requires { abs (to_real y) <=. exp_max } ensures { let exact = log(exp(to_real x) +. exp (to_real y)) in abs (to_real r -. exact) <=. abs exact *. log_rel_err +. ((-. log (1.0 -. ((2. *. exp_rel_err) +. eps))) *. (1.0 +. log_rel_err)) +. log_abs_err } = log_approx (exp_approx(x) ++. exp_approx(y)) let lse4 (x1 x2 x3 x4 : udouble) : (r : udouble) requires { exp_rel_err <=. 0x1p-3 } requires { abs (to_real x1) <=. exp_max } requires { abs (to_real x2) <=. exp_max } requires { abs (to_real x3) <=. exp_max } requires { abs (to_real x4) <=. exp_max } ensures { let exact = log (exp (to_real x1) +. exp (to_real x2) +. exp (to_real x3) +. exp (to_real x4)) in abs (to_real r -. exact) <=. abs exact *. log_rel_err -. log (1.0 -. (4.0 *. exp_rel_err +. 3.0 *. eps)) *. (1.0 +. log_rel_err) +. log_abs_err } = log_approx (exp_approx(x1) ++. exp_approx(x2) ++. exp_approx(x3) ++. exp_approx(x4)) let lse5 (x1 x2 x3 x4 x5: udouble) : (r : udouble) requires { exp_rel_err <=. 0x1p-3 } requires { abs (to_real x1) <=. exp_max } requires { abs (to_real x2) <=. exp_max } requires { abs (to_real x3) <=. exp_max } requires { abs (to_real x4) <=. exp_max } requires { abs (to_real x5) <=. exp_max } ensures { let exact = log (exp (to_real x1) +. exp (to_real x2) +. exp (to_real x3) +. exp (to_real x4) +. exp (to_real x5)) in abs (to_real r -. exact) <=. abs exact *. log_rel_err -. log (1.0 -. (5.0 *. exp_rel_err +. 4.0 *. eps)) *. (1.0 +. log_rel_err) +. log_abs_err } = log_approx (exp_approx(x1) ++. exp_approx(x2) ++. exp_approx(x3) ++. exp_approx(x4) ++. exp_approx(x5)) let lse6 (x1 x2 x3 x4 x5 x6 : udouble) : (r : udouble) requires { exp_rel_err <=. 0x1p-6 } requires { abs (to_real x1) <=. exp_max } requires { abs (to_real x2) <=. exp_max } requires { abs (to_real x3) <=. exp_max } requires { abs (to_real x4) <=. exp_max } requires { abs (to_real x5) <=. exp_max } requires { abs (to_real x6) <=. exp_max } ensures { let exact = log (exp (to_real x1) +. exp (to_real x2) +. exp (to_real x3) +. exp (to_real x4) +. exp (to_real x5) +. exp (to_real x6) ) in abs (to_real r -. exact) <=. abs exact *. log_rel_err -. log (1.0 -. (6.0 *. exp_rel_err +. 5.0 *. eps)) *. (1.0 +. log_rel_err) +. log_abs_err } = log_approx (exp_approx(x1) ++. exp_approx(x2) ++. exp_approx(x3) ++. exp_approx(x4) ++. exp_approx(x5) ++. exp_approx(x6)) let lse7 (x1 x2 x3 x4 x5 x6 x7 : udouble) : (r :udouble) requires { exp_rel_err <=. 0x1p-3 } requires { abs (to_real x1) <=. exp_max } requires { abs (to_real x2) <=. exp_max } requires { abs (to_real x3) <=. exp_max } requires { abs (to_real x4) <=. exp_max } requires { abs (to_real x5) <=. exp_max } requires { abs (to_real x6) <=. exp_max } requires { abs (to_real x7) <=. exp_max } ensures { let exact = log (exp (to_real x1) +. exp (to_real x2) +. exp (to_real x3) +. exp (to_real x4) +. exp (to_real x5) +. exp (to_real x6) +. exp (to_real x7) ) in abs (to_real r -. exact) <=. abs exact *. log_rel_err -. log (1.0 -. (7.0 *. exp_rel_err +. 6.0 *. eps)) *. (1.0 +. log_rel_err) +. log_abs_err } = log_approx (exp_approx(x1) ++. exp_approx(x2) ++. exp_approx(x3) ++. exp_approx(x4) ++. exp_approx(x5) ++. exp_approx(x6) ++. exp_approx(x7)) let lse8 (x1 x2 x3 x4 x5 x6 x7 x8 : udouble) : (r :udouble) requires { exp_rel_err <=. 0x1p-4 } requires { abs (to_real x1) <=. exp_max } requires { abs (to_real x2) <=. exp_max } requires { abs (to_real x3) <=. exp_max } requires { abs (to_real x4) <=. exp_max } requires { abs (to_real x5) <=. exp_max } requires { abs (to_real x6) <=. exp_max } requires { abs (to_real x7) <=. exp_max } requires { abs (to_real x8) <=. exp_max } ensures { let exact = log (exp (to_real x1) +. exp (to_real x2) +. exp (to_real x3) +. exp (to_real x4) +. exp (to_real x5) +. exp (to_real x6) +. exp (to_real x7) +. exp (to_real x8) ) in abs (to_real r -. exact) <=. abs exact *. log_rel_err -. log (1.0 -. (8.0 *. exp_rel_err +. 7.0 *. eps)) *. (1.0 +. log_rel_err) +. log_abs_err } = log_approx (exp_approx(x1) ++. exp_approx(x2) ++. exp_approx(x3) ++. exp_approx(x4) ++. exp_approx(x5) ++. exp_approx(x6) ++. exp_approx(x7) ++. exp_approx(x8)) let lse10 (x1 x2 x3 x4 x5 x6 x7 x8 x9 x10: udouble) : (r : udouble) requires { exp_rel_err <=. 0x1p-4 } requires { abs (to_real x1) <=. exp_max } requires { abs (to_real x2) <=. exp_max } requires { abs (to_real x3) <=. exp_max } requires { abs (to_real x4) <=. exp_max } requires { abs (to_real x5) <=. exp_max } requires { abs (to_real x6) <=. exp_max } requires { abs (to_real x7) <=. exp_max } requires { abs (to_real x8) <=. exp_max } requires { abs (to_real x9) <=. exp_max } requires { abs (to_real x10) <=. exp_max } ensures { let exact = log (exp (to_real x1) +. exp (to_real x2) +. exp (to_real x3) +. exp (to_real x4) +. exp (to_real x5) +. exp (to_real x6) +. exp (to_real x7) +. exp (to_real x8) +. exp (to_real x9) +. exp (to_real x10)) in abs (to_real r -. exact) <=. abs exact *. log_rel_err -. log (1.0 -. (10.0 *. exp_rel_err +. 9.0 *. eps)) *. (1.0 +. log_rel_err) +. log_abs_err } = let s = exp_approx(x1) ++. exp_approx(x2) ++. exp_approx(x3) ++. exp_approx(x4) ++. exp_approx(x5) ++. exp_approx(x6) ++. exp_approx(x7) ++. exp_approx(x8) ++. exp_approx(x9) ++. exp_approx(x10) in assert { to_real s >. 0.0 }; log_approx s
log in base 2 and 10
constant log2_rel_error:real axiom log2_rel_error_bounds : 0. <=. log2_rel_error <=. 1. constant log2_abs_error:real axiom log2_abs_error_bounds : 0. <=. log2_abs_error <=. 1. val function log2_approx (x:udouble) : udouble requires { 0. <. to_real x } ensures { abs (to_real result -. log2 (to_real x)) <=. abs (log2 (to_real x)) *. log2_rel_error +. log2_abs_error } constant log10_error:real axiom log10_error_bounds : 0. <=. log10_error <=. 1. val function log10_approx (x:udouble) : udouble requires { 0. <. to_real x } ensures { abs (to_real result -. log10 (to_real x)) <=. abs (log10 (to_real x)) *. log10_error } let example3 (x y : udouble) : (r : udouble) requires { 0. <. to_real x } requires { 0. <. to_real y } ensures { let exact = log2(to_real x +. to_real y) in abs (to_real r -. exact) <=. abs exact *. log2_rel_error +. (-. log2 (1.0 -. (eps))) *. (1.0 +. log2_rel_error) +. log2_abs_error } = log2_approx (x ++. y) let example4 (x y : udouble) : (r :udouble) requires { 0. <. to_real x } requires { 0. <. to_real y } ensures { let exact = log10(to_real x +. to_real y) in abs (to_real r -. exact) <=. abs exact *. log10_error +. ((-. log10 (1.0 -. (eps))) *. (1.0 +. log10_error)) } = log10_approx (x ++. y) end
The following table lists all the verification conditions generated and tell which prover proved which.
Why3 Proof Results for Project "exp_log"
Theory "exp_log.ExpLogSingle": fully verified
| Obligations | Alt-Ergo 2.6.2 | CVC4 1.8 | CVC5 1.2.0 | Z3 4.13.2 | |||||||
| VC for example1 | --- | --- | --- | --- | |||||||
| split_vc | |||||||||||
| precondition | --- | --- | 0.04 | --- | |||||||
| precondition | 0.15 | --- | --- | --- | |||||||
| precondition | --- | --- | --- | 0.01 | |||||||
| precondition | 0.21 | --- | --- | --- | |||||||
| postcondition | --- | --- | --- | --- | |||||||
| assert let t3 = log (exp (to_real y)) in let t4 = log (exp (to_real x)) in let t5 = ((1.0 +. eps) +. log_rel_err) *. (((-. log (1.0 -. exp_rel_err)) *. (1.0 +. log_rel_err)) +. log_abs_err) in abs (to_real r -. (t4 +. t3)) <=. ((((log_rel_err +. log_rel_err) +. eps) *. (abs t4 +. abs t3)) +. (t5 +. t5)) | |||||||||||
| asserted formula | --- | --- | --- | --- | |||||||
| assert abs (to_real r -. (log (exp (to_real x)) +. log (exp (to_real y)))) <=. ((((log_rel_err +. log_rel_err) +. eps) *. (abs (log (exp (to_real x))) +. abs (log (exp (to_real y))))) +. ((((1.0 +. eps) +. log_rel_err) *. (((-. log (1.0 -. exp_rel_err)) *. (1.0 +. log_rel_err)) +. log_abs_err)) +. (((1.0 +. eps) +. log_rel_err) *. (((-. log (1.0 -. exp_rel_err)) *. (1.0 +. log_rel_err)) +. log_abs_err)))) | |||||||||||
| asserted formula | --- | --- | --- | --- | |||||||
| apply uadd_single_error_propagation with log_approx (exp_approx x),log_approx (exp_approx y) | |||||||||||
| apply premises | --- | --- | --- | --- | |||||||
| assert abs (to_real (log_approx (exp_approx x)) -. log (exp (to_real x))) <=. ((abs (log (exp (to_real x))) *. log_rel_err) +. (((-. log (1.0 -. exp_rel_err)) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||
| asserted formula | --- | --- | --- | --- | |||||||
| assert abs (to_real (log_approx (exp_approx x)) -. log (exp (to_real x))) <=. ((log_rel_err *. abs (log (exp (to_real x)))) +. (((-. log (1.0 -. (((exp_rel_err *. exp (to_real x)) +. 0.0) /. exp (to_real x)))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||
| asserted formula | --- | --- | --- | --- | |||||||
| apply log_single_error_propagation with exp_approx x | |||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||
| apply premises | --- | --- | 0.04 | --- | |||||||
| apply premises | --- | --- | 0.12 | --- | |||||||
| apply premises | 0.17 | --- | --- | --- | |||||||
| apply premises | --- | --- | 0.07 | --- | |||||||
| asserted formula | 1.79 | --- | --- | --- | |||||||
| apply premises | 0.08 | --- | --- | --- | |||||||
| apply premises | --- | --- | --- | --- | |||||||
| assert abs (to_real (log_approx (exp_approx y)) -. log (exp (to_real y))) <=. ((abs (log (exp (to_real y))) *. log_rel_err) +. (((-. log (1.0 -. exp_rel_err)) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||
| asserted formula | --- | --- | --- | --- | |||||||
| assert abs (to_real (log_approx (exp_approx y)) -. log (exp (to_real y))) <=. ((log_rel_err *. abs (log (exp (to_real y)))) +. (((-. log (1.0 -. (((exp_rel_err *. exp (to_real y)) +. 0.0) /. exp (to_real y)))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||
| asserted formula | --- | --- | --- | --- | |||||||
| apply log_single_error_propagation with exp_approx y | |||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||
| apply premises | 0.08 | --- | --- | --- | |||||||
| apply premises | --- | --- | 0.14 | --- | |||||||
| apply premises | 0.28 | --- | --- | --- | |||||||
| apply premises | --- | --- | 0.07 | --- | |||||||
| asserted formula | 1.51 | --- | --- | --- | |||||||
| apply premises | --- | --- | --- | 0.01 | |||||||
| apply premises | 0.04 | --- | --- | --- | |||||||
| apply premises | --- | 0.06 | --- | --- | |||||||
| apply premises | 0.05 | --- | --- | --- | |||||||
| apply premises | --- | --- | 0.04 | --- | |||||||
| apply premises | 0.24 | --- | --- | --- | |||||||
| apply premises | 0.17 | --- | --- | --- | |||||||
| apply premises | --- | --- | 0.07 | --- | |||||||
| asserted formula | --- | --- | 0.04 | --- | |||||||
| postcondition | 0.11 | --- | --- | --- | |||||||
| VC for example2 | --- | --- | --- | --- | |||||||
| split_vc | |||||||||||
| precondition | --- | --- | 0.04 | --- | |||||||
| precondition | --- | --- | --- | 0.01 | |||||||
| precondition | 0.25 | --- | --- | --- | |||||||
| postcondition | --- | --- | --- | --- | |||||||
| assert let t = log (exp (to_real x) +. exp (to_real y)) in abs (to_real r -. t) <=. ((abs t *. log_rel_err) +. (((-. log (1.0 -. ((exp_rel_err +. exp_rel_err) +. eps))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||
| asserted formula | --- | --- | --- | --- | |||||||
| assert abs (to_real r -. log (exp (to_real x) +. exp (to_real y))) <=. ((abs (log (exp (to_real x) +. exp (to_real y))) *. log_rel_err) +. (((-. log (1.0 -. ((exp_rel_err +. exp_rel_err) +. eps))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||
| asserted formula | --- | --- | --- | --- | |||||||
| assert abs (to_real r -. log (exp (to_real x) +. exp (to_real y))) <=. ((log_rel_err *. abs (log (exp (to_real x) +. exp (to_real y)))) +. (((-. log (1.0 -. (((((exp_rel_err +. exp_rel_err) +. eps) *. (exp (to_real x) +. exp (to_real y))) +. 0.0) /. (exp (to_real x) +. exp (to_real y))))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||
| asserted formula | --- | --- | --- | --- | |||||||
| apply log_single_error_propagation with exp_approx x ++. exp_approx y | |||||||||||
| apply premises | --- | --- | --- | --- | |||||||
| assert abs (to_real (exp_approx x ++. exp_approx y) -. (exp (to_real x) +. exp (to_real y))) <=. ((((exp_rel_err +. exp_rel_err) +. eps) *. (exp (to_real x) +. exp (to_real y))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. exp_rel_err) *. 0.0))) | |||||||||||
| asserted formula | --- | --- | --- | --- | |||||||
| apply uadd_single_error_propagation with exp_approx x,exp_approx y | |||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||
| apply premises | 0.07 | --- | --- | --- | |||||||
| apply premises | 0.22 | --- | --- | --- | |||||||
| apply premises | --- | --- | 0.14 | --- | |||||||
| apply premises | --- | --- | --- | 0.01 | |||||||
| apply premises | --- | --- | --- | 0.02 | |||||||
| apply premises | --- | --- | 0.06 | --- | |||||||
| apply premises | 0.04 | --- | --- | --- | |||||||
| apply premises | --- | --- | --- | 0.01 | |||||||
| apply premises | --- | --- | 0.05 | --- | |||||||
| apply premises | --- | --- | --- | 0.01 | |||||||
| apply premises | 0.21 | --- | --- | --- | |||||||
| apply premises | 0.27 | --- | --- | --- | |||||||
| apply premises | --- | 0.08 | --- | --- | |||||||
| asserted formula | 1.41 | --- | --- | --- | |||||||
| asserted formula | 0.05 | --- | --- | --- | |||||||
| postcondition | --- | --- | --- | 0.01 | |||||||
| VC for example3 | --- | --- | --- | --- | |||||||
| split_vc | |||||||||||
| precondition | 0.13 | --- | --- | --- | |||||||
| postcondition | --- | --- | --- | --- | |||||||
| assert let t = log2 (to_real x +. to_real y) in abs (to_real r -. t) <=. ((abs t *. log2_error) +. ((-. log2 (1.0 -. eps)) *. (1.0 +. log2_error))) | |||||||||||
| asserted formula | --- | --- | --- | --- | |||||||
| assert abs (to_real r -. log2 (to_real x +. to_real y)) <=. ((abs (log2 (to_real x +. to_real y)) *. log2_error) +. ((-. log2 (1.0 -. eps)) *. (1.0 +. log2_error))) | |||||||||||
| asserted formula | --- | --- | --- | --- | |||||||
| assert abs (to_real r -. log2 (to_real x +. to_real y)) <=. ((log2_error *. abs (log2 (to_real x +. to_real y))) +. (((-. log2 (1.0 -. (((eps *. abs (to_real x +. to_real y)) +. 0.0) /. (to_real x +. to_real y)))) *. (1.0 +. log2_error)) +. 0.0)) | |||||||||||
| asserted formula | --- | --- | --- | --- | |||||||
| apply log2_single_error_propagation with x ++. y | |||||||||||
| apply premises | --- | --- | --- | --- | |||||||
| assert abs (to_real (x ++. y) -. (to_real x +. to_real y)) <=. (eps *. abs (to_real x +. to_real y)) | |||||||||||
| asserted formula | 0.10 | --- | --- | --- | |||||||
| apply premises | --- | --- | 0.06 | --- | |||||||
| apply premises | --- | --- | --- | 0.01 | |||||||
| apply premises | --- | --- | 0.06 | --- | |||||||
| apply premises | --- | --- | 0.05 | --- | |||||||
| apply premises | --- | --- | 0.04 | --- | |||||||
| asserted formula | 0.06 | --- | --- | --- | |||||||
| asserted formula | --- | --- | --- | 0.02 | |||||||
| postcondition | 0.06 | --- | --- | --- | |||||||
| VC for example4 | --- | --- | --- | --- | |||||||
| split_vc | |||||||||||
| precondition | 0.09 | --- | --- | --- | |||||||
| postcondition | --- | --- | --- | --- | |||||||
| assert let t = log10 (to_real x +. to_real y) in abs (to_real r -. t) <=. ((abs t *. log10_error) +. ((-. log10 (1.0 -. eps)) *. (1.0 +. log10_error))) | |||||||||||
| asserted formula | --- | --- | --- | --- | |||||||
| assert abs (to_real r -. log10 (to_real x +. to_real y)) <=. ((abs (log10 (to_real x +. to_real y)) *. log10_error) +. ((-. log10 (1.0 -. eps)) *. (1.0 +. log10_error))) | |||||||||||
| asserted formula | --- | --- | --- | --- | |||||||
| assert abs (to_real r -. log10 (to_real x +. to_real y)) <=. ((log10_error *. abs (log10 (to_real x +. to_real y))) +. (((-. log10 (1.0 -. (((eps *. abs (to_real x +. to_real y)) +. 0.0) /. (to_real x +. to_real y)))) *. (1.0 +. log10_error)) +. 0.0)) | |||||||||||
| asserted formula | --- | --- | --- | --- | |||||||
| apply log10_single_error_propagation with x ++. y | |||||||||||
| apply premises | --- | --- | --- | --- | |||||||
| assert abs (to_real (x ++. y) -. (to_real x +. to_real y)) <=. (eps *. abs (to_real x +. to_real y)) | |||||||||||
| asserted formula | 0.11 | --- | --- | --- | |||||||
| apply premises | --- | --- | 0.04 | --- | |||||||
| apply premises | --- | 0.06 | --- | --- | |||||||
| apply premises | 0.04 | --- | --- | --- | |||||||
| apply premises | 0.05 | --- | --- | --- | |||||||
| apply premises | --- | 0.08 | --- | --- | |||||||
| asserted formula | 0.08 | --- | --- | --- | |||||||
| asserted formula | --- | --- | 0.07 | --- | |||||||
| postcondition | --- | --- | 0.06 | --- | |||||||
Theory "exp_log.ExpLogDouble": fully verified
| Obligations | Alt-Ergo 2.6.2 | CVC4 1.8 | CVC5 1.2.0 | Z3 4.13.2 | |||||||||||||||||||||||
| VC for exp_approx_pos | 1.45 | --- | --- | --- | |||||||||||||||||||||||
| VC for example1 | --- | --- | --- | --- | |||||||||||||||||||||||
| split_vc | |||||||||||||||||||||||||||
| precondition | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| precondition | 0.04 | --- | --- | --- | |||||||||||||||||||||||
| precondition | 0.08 | --- | --- | --- | |||||||||||||||||||||||
| precondition | 0.24 | --- | --- | --- | |||||||||||||||||||||||
| postcondition | --- | --- | --- | --- | |||||||||||||||||||||||
| assert let t3 = log (exp (to_real y)) in let t4 = log (exp (to_real x)) in let t5 = ((1.0 +. eps) +. log_rel_err) *. (((-. log (1.0 -. exp_rel_err)) *. (1.0 +. log_rel_err)) +. log_abs_err) in abs (to_real r -. (t4 +. t3)) <=. ((((log_rel_err +. log_rel_err) +. eps) *. (abs t4 +. abs t3)) +. (t5 +. t5)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real r -. (log (exp (to_real x)) +. log (exp (to_real y)))) <=. ((((log_rel_err +. log_rel_err) +. eps) *. (abs (log (exp (to_real x))) +. abs (log (exp (to_real y))))) +. ((((1.0 +. eps) +. log_rel_err) *. (((-. log (1.0 -. exp_rel_err)) *. (1.0 +. log_rel_err)) +. log_abs_err)) +. (((1.0 +. eps) +. log_rel_err) *. (((-. log (1.0 -. exp_rel_err)) *. (1.0 +. log_rel_err)) +. log_abs_err)))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with log_approx (exp_approx x),log_approx (exp_approx y) | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real (log_approx (exp_approx x)) -. log (exp (to_real x))) <=. ((abs (log (exp (to_real x))) *. log_rel_err) +. (((-. log (1.0 -. exp_rel_err)) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real (log_approx (exp_approx x)) -. log (exp (to_real x))) <=. ((log_rel_err *. abs (log (exp (to_real x)))) +. (((-. log (1.0 -. (((exp_rel_err *. exp (to_real x)) +. 0.0) /. exp (to_real x)))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply log_double_error_propagation with exp_approx x | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.08 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.23 | --- | |||||||||||||||||||||||
| apply premises | 0.28 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | 0.07 | --- | --- | --- | |||||||||||||||||||||||
| asserted formula | 1.71 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real (log_approx (exp_approx y)) -. log (exp (to_real y))) <=. ((abs (log (exp (to_real y))) *. log_rel_err) +. (((-. log (1.0 -. exp_rel_err)) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real (log_approx (exp_approx y)) -. log (exp (to_real y))) <=. ((log_rel_err *. abs (log (exp (to_real y)))) +. (((-. log (1.0 -. (((exp_rel_err *. exp (to_real y)) +. 0.0) /. exp (to_real y)))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply log_double_error_propagation with exp_approx y | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | 0.07 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | 0.26 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | 0.22 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | 0.05 | --- | --- | --- | |||||||||||||||||||||||
| asserted formula | 2.07 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | 0.07 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | 0.06 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | 0.26 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | 0.20 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| asserted formula | --- | --- | 0.08 | --- | |||||||||||||||||||||||
| postcondition | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| VC for example2 | --- | --- | --- | --- | |||||||||||||||||||||||
| split_vc | |||||||||||||||||||||||||||
| precondition | 0.09 | --- | --- | --- | |||||||||||||||||||||||
| precondition | --- | --- | --- | 0.01 | |||||||||||||||||||||||
| precondition | 0.35 | --- | --- | --- | |||||||||||||||||||||||
| postcondition | --- | --- | --- | --- | |||||||||||||||||||||||
| assert let t = log (exp (to_real x) +. exp (to_real y)) in abs (to_real r -. t) <=. ((abs t *. log_rel_err) +. (((-. log (1.0 -. ((exp_rel_err +. exp_rel_err) +. eps))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real r -. log (exp (to_real x) +. exp (to_real y))) <=. ((abs (log (exp (to_real x) +. exp (to_real y))) *. log_rel_err) +. (((-. log (1.0 -. ((exp_rel_err +. exp_rel_err) +. eps))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real r -. log (exp (to_real x) +. exp (to_real y))) <=. ((log_rel_err *. abs (log (exp (to_real x) +. exp (to_real y)))) +. (((-. log (1.0 -. (((((exp_rel_err +. exp_rel_err) +. eps) *. (exp (to_real x) +. exp (to_real y))) +. 0.0) /. (exp (to_real x) +. exp (to_real y))))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply log_double_error_propagation with exp_approx x ++. exp_approx y | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real (exp_approx x ++. exp_approx y) -. (exp (to_real x) +. exp (to_real y))) <=. ((((exp_rel_err +. exp_rel_err) +. eps) *. (exp (to_real x) +. exp (to_real y))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. exp_rel_err) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with exp_approx x,exp_approx y | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | 0.08 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | 0.17 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.21 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | 0.11 | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | 0.15 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | 0.20 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.01 | |||||||||||||||||||||||
| asserted formula | 1.97 | --- | --- | --- | |||||||||||||||||||||||
| asserted formula | --- | --- | 0.04 | --- | |||||||||||||||||||||||
| postcondition | 0.06 | --- | --- | --- | |||||||||||||||||||||||
| VC for lse4 | --- | --- | --- | --- | |||||||||||||||||||||||
| split_vc | |||||||||||||||||||||||||||
| precondition | --- | --- | 0.04 | --- | |||||||||||||||||||||||
| precondition | --- | --- | --- | 0.01 | |||||||||||||||||||||||
| precondition | --- | --- | --- | 0.01 | |||||||||||||||||||||||
| precondition | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| precondition | 1.89 | --- | --- | --- | |||||||||||||||||||||||
| postcondition | --- | --- | --- | --- | |||||||||||||||||||||||
| assert let t = log (((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) in abs (to_real r -. t) <=. ((abs t *. log_rel_err) +. (((-. log (1.0 -. ((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real r -. log (((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4))) <=. ((abs (log (((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4))) *. log_rel_err) +. (((-. log (1.0 -. ((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real r -. log (((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4))) <=. ((log_rel_err *. abs (log (((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)))) +. (((-. log (1.0 -. (((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. (((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4))) +. 0.0) /. (((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4))))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply log_double_error_propagation with ((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real (((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) -. (((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4))) <=. ((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. (((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with (exp_approx x1 ++. exp_approx x2) ++. exp_approx x3,exp_approx x4 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real ((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) -. ((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3))) <=. ((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. ((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((exp_rel_err +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with exp_approx x1 ++. exp_approx x2,exp_approx x3 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real (exp_approx x1 ++. exp_approx x2) -. (exp (to_real x1) +. exp (to_real x2))) <=. ((((exp_rel_err +. exp_rel_err) +. eps) *. (exp (to_real x1) +. exp (to_real x2))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. exp_rel_err) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with exp_approx x1,exp_approx x2 | |||||||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.26 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.31 | --- | |||||||||||||||||||||||
| apply premises | 0.06 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.01 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.04 | --- | |||||||||||||||||||||||
| apply premises | 0.06 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | 0.31 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.26 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.05 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.01 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | 0.08 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | 0.07 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | 0.35 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.20 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | 0.06 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | 0.29 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | 0.36 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.01 | |||||||||||||||||||||||
| asserted formula | 3.75 | --- | --- | --- | |||||||||||||||||||||||
| asserted formula | --- | --- | 0.09 | --- | |||||||||||||||||||||||
| postcondition | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| VC for lse5 | --- | --- | --- | --- | |||||||||||||||||||||||
| split_vc | |||||||||||||||||||||||||||
| precondition | --- | --- | --- | 0.01 | |||||||||||||||||||||||
| precondition | --- | --- | 0.04 | --- | |||||||||||||||||||||||
| precondition | --- | --- | 0.04 | --- | |||||||||||||||||||||||
| precondition | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| precondition | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| precondition | 5.00 | --- | --- | --- | |||||||||||||||||||||||
| postcondition | --- | --- | --- | --- | |||||||||||||||||||||||
| assert let t = log ((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) in abs (to_real r -. t) <=. ((abs t *. log_rel_err) +. (((-. log (1.0 -. ((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real r -. log ((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5))) <=. ((abs (log ((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5))) *. log_rel_err) +. (((-. log (1.0 -. ((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real r -. log ((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5))) <=. ((log_rel_err *. abs (log ((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)))) +. (((-. log (1.0 -. (((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. ((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5))) +. 0.0) /. ((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5))))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply log_double_error_propagation with (((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real ((((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5) -. ((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5))) <=. ((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. ((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with ((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4,exp_approx x5 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real (((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) -. (((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4))) <=. ((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. (((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with (exp_approx x1 ++. exp_approx x2) ++. exp_approx x3,exp_approx x4 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real ((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) -. ((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3))) <=. ((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. ((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((exp_rel_err +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with exp_approx x1 ++. exp_approx x2,exp_approx x3 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real (exp_approx x1 ++. exp_approx x2) -. (exp (to_real x1) +. exp (to_real x2))) <=. ((((exp_rel_err +. exp_rel_err) +. eps) *. (exp (to_real x1) +. exp (to_real x2))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. exp_rel_err) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with exp_approx x1,exp_approx x2 | |||||||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.27 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.27 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.04 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | 0.31 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.22 | --- | |||||||||||||||||||||||
| apply premises | 0.07 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | 0.09 | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | 0.28 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.29 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.04 | |||||||||||||||||||||||
| apply premises | 0.09 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | 0.09 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | 0.07 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | 0.32 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.18 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.03 | |||||||||||||||||||||||
| apply premises | 0.08 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.08 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | 0.26 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | 0.44 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.01 | |||||||||||||||||||||||
| asserted formula | 4.13 | --- | --- | --- | |||||||||||||||||||||||
| asserted formula | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| postcondition | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| VC for lse6 | --- | --- | --- | --- | |||||||||||||||||||||||
| split_vc | |||||||||||||||||||||||||||
| precondition | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| precondition | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| precondition | 0.07 | --- | --- | --- | |||||||||||||||||||||||
| precondition | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| precondition | 0.06 | --- | --- | --- | |||||||||||||||||||||||
| precondition | --- | --- | 0.09 | --- | |||||||||||||||||||||||
| precondition | 7.91 | --- | --- | --- | |||||||||||||||||||||||
| postcondition | --- | --- | --- | --- | |||||||||||||||||||||||
| assert let t = log (((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) in abs (to_real r -. t) <=. ((abs t *. log_rel_err) +. (((-. log (1.0 -. ((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real r -. log (((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6))) <=. ((abs (log (((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6))) *. log_rel_err) +. (((-. log (1.0 -. ((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real r -. log (((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6))) <=. ((log_rel_err *. abs (log (((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)))) +. (((-. log (1.0 -. (((((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. (((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6))) +. 0.0) /. (((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6))))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply log_double_error_propagation with ((((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5) ++. exp_approx x6 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real (((((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5) ++. exp_approx x6) -. (((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6))) <=. ((((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. (((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with (((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5,exp_approx x6 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real ((((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5) -. ((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5))) <=. ((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. ((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with ((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4,exp_approx x5 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real (((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) -. (((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4))) <=. ((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. (((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with (exp_approx x1 ++. exp_approx x2) ++. exp_approx x3,exp_approx x4 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real ((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) -. ((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3))) <=. ((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. ((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((exp_rel_err +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with exp_approx x1 ++. exp_approx x2,exp_approx x3 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real (exp_approx x1 ++. exp_approx x2) -. (exp (to_real x1) +. exp (to_real x2))) <=. ((((exp_rel_err +. exp_rel_err) +. eps) *. (exp (to_real x1) +. exp (to_real x2))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. exp_rel_err) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with exp_approx x1,exp_approx x2 | |||||||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.26 | --- | |||||||||||||||||||||||
| apply premises | 0.26 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | 0.11 | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | 0.30 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.24 | --- | |||||||||||||||||||||||
| apply premises | 0.08 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.08 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | 0.07 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | 0.34 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.31 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.05 | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.08 | --- | |||||||||||||||||||||||
| apply premises | 0.07 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | 0.10 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | 0.41 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.20 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.04 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | 0.39 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.33 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.04 | |||||||||||||||||||||||
| apply premises | 0.08 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.08 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | 0.28 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | 0.51 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| asserted formula | 3.71 | --- | --- | --- | |||||||||||||||||||||||
| asserted formula | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| postcondition | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| VC for lse7 | --- | --- | --- | --- | |||||||||||||||||||||||
| split_vc | |||||||||||||||||||||||||||
| precondition | --- | --- | 0.04 | --- | |||||||||||||||||||||||
| precondition | 0.08 | --- | --- | --- | |||||||||||||||||||||||
| precondition | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| precondition | --- | --- | 0.09 | --- | |||||||||||||||||||||||
| precondition | --- | --- | --- | 0.01 | |||||||||||||||||||||||
| precondition | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| precondition | --- | --- | 0.04 | --- | |||||||||||||||||||||||
| precondition | 5.31 | --- | --- | --- | |||||||||||||||||||||||
| postcondition | --- | --- | --- | --- | |||||||||||||||||||||||
| assert let t = log ((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7)) in abs (to_real r -. t) <=. ((abs t *. log_rel_err) +. (((-. log (1.0 -. ((((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real r -. log ((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7))) <=. ((abs (log ((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7))) *. log_rel_err) +. (((-. log (1.0 -. ((((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real r -. log ((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7))) <=. ((log_rel_err *. abs (log ((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7)))) +. (((-. log (1.0 -. (((((((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. ((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7))) +. 0.0) /. ((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7))))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply log_double_error_propagation with (((((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5) ++. exp_approx x6) ++. exp_approx x7 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real ((((((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5) ++. exp_approx x6) ++. exp_approx x7) -. ((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7))) <=. ((((((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. ((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with ((((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5) ++. exp_approx x6,exp_approx x7 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real (((((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5) ++. exp_approx x6) -. (((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6))) <=. ((((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. (((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with (((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5,exp_approx x6 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real ((((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5) -. ((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5))) <=. ((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. ((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with ((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4,exp_approx x5 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real (((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) -. (((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4))) <=. ((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. (((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with (exp_approx x1 ++. exp_approx x2) ++. exp_approx x3,exp_approx x4 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real ((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) -. ((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3))) <=. ((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. ((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((exp_rel_err +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with exp_approx x1 ++. exp_approx x2,exp_approx x3 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real (exp_approx x1 ++. exp_approx x2) -. (exp (to_real x1) +. exp (to_real x2))) <=. ((((exp_rel_err +. exp_rel_err) +. eps) *. (exp (to_real x1) +. exp (to_real x2))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. exp_rel_err) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with exp_approx x1,exp_approx x2 | |||||||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.31 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.21 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.01 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.01 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.04 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | 0.46 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.24 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.06 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.08 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.01 | |||||||||||||||||||||||
| apply premises | 0.32 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.21 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.05 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.01 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.04 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | 0.06 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | 0.36 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.21 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.06 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | 0.07 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | 0.56 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.30 | --- | |||||||||||||||||||||||
| apply premises | 0.10 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | 0.43 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.22 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.09 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.01 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | --- | 0.10 | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | 0.27 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | 0.38 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.01 | |||||||||||||||||||||||
| asserted formula | 6.05 | --- | --- | --- | |||||||||||||||||||||||
| asserted formula | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| postcondition | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| VC for lse8 | --- | --- | --- | --- | |||||||||||||||||||||||
| split_vc | |||||||||||||||||||||||||||
| precondition | 0.08 | --- | --- | --- | |||||||||||||||||||||||
| precondition | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| precondition | 0.09 | --- | --- | --- | |||||||||||||||||||||||
| precondition | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| precondition | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| precondition | 0.07 | --- | --- | --- | |||||||||||||||||||||||
| precondition | --- | --- | 0.09 | --- | |||||||||||||||||||||||
| precondition | 0.09 | --- | --- | --- | |||||||||||||||||||||||
| precondition | 7.87 | --- | --- | --- | |||||||||||||||||||||||
| postcondition | --- | --- | --- | --- | |||||||||||||||||||||||
| assert let t = log (((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7)) +. exp (to_real x8)) in abs (to_real r -. t) <=. ((abs t *. log_rel_err) +. (((-. log (1.0 -. ((((((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real r -. log (((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7)) +. exp (to_real x8))) <=. ((abs (log (((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7)) +. exp (to_real x8))) *. log_rel_err) +. (((-. log (1.0 -. ((((((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real r -. log (((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7)) +. exp (to_real x8))) <=. ((log_rel_err *. abs (log (((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7)) +. exp (to_real x8)))) +. (((-. log (1.0 -. (((((((((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. (((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7)) +. exp (to_real x8))) +. 0.0) /. (((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7)) +. exp (to_real x8))))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply log_double_error_propagation with ((((((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5) ++. exp_approx x6) ++. exp_approx x7) ++. exp_approx x8 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real (((((((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5) ++. exp_approx x6) ++. exp_approx x7) ++. exp_approx x8) -. (((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7)) +. exp (to_real x8))) <=. ((((((((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. (((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7)) +. exp (to_real x8))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with (((((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5) ++. exp_approx x6) ++. exp_approx x7,exp_approx x8 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real ((((((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5) ++. exp_approx x6) ++. exp_approx x7) -. ((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7))) <=. ((((((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. ((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with ((((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5) ++. exp_approx x6,exp_approx x7 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real (((((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5) ++. exp_approx x6) -. (((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6))) <=. ((((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. (((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with (((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5,exp_approx x6 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real ((((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5) -. ((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5))) <=. ((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. ((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with ((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4,exp_approx x5 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real (((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) -. (((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4))) <=. ((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. (((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with (exp_approx x1 ++. exp_approx x2) ++. exp_approx x3,exp_approx x4 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real ((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) -. ((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3))) <=. ((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. ((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((exp_rel_err +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with exp_approx x1 ++. exp_approx x2,exp_approx x3 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real (exp_approx x1 ++. exp_approx x2) -. (exp (to_real x1) +. exp (to_real x2))) <=. ((((exp_rel_err +. exp_rel_err) +. eps) *. (exp (to_real x1) +. exp (to_real x2))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. exp_rel_err) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with exp_approx x1,exp_approx x2 | |||||||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.24 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.23 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | --- | 0.09 | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.01 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | 0.37 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.25 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.05 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.04 | --- | |||||||||||||||||||||||
| apply premises | 0.39 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.23 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.09 | --- | |||||||||||||||||||||||
| apply premises | 0.08 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.01 | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | 0.49 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.26 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.06 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.09 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.08 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.01 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | 0.60 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.30 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.04 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.08 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.08 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.08 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.55 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.35 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.06 | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | 0.07 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.08 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | 0.10 | --- | --- | |||||||||||||||||||||||
| apply premises | 0.88 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.34 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.04 | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | 0.08 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | 0.09 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | 0.43 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | 0.45 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| asserted formula | 5.14 | --- | --- | --- | |||||||||||||||||||||||
| asserted formula | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| postcondition | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| VC for lse10 | --- | --- | --- | --- | |||||||||||||||||||||||
| split_vc | |||||||||||||||||||||||||||
| precondition | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| precondition | 0.06 | --- | --- | --- | |||||||||||||||||||||||
| precondition | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| precondition | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| precondition | --- | --- | 0.04 | --- | |||||||||||||||||||||||
| precondition | 0.06 | --- | --- | --- | |||||||||||||||||||||||
| precondition | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| precondition | --- | --- | 0.04 | --- | |||||||||||||||||||||||
| precondition | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| precondition | 0.06 | --- | --- | --- | |||||||||||||||||||||||
| assertion | 14.33 | --- | --- | --- | |||||||||||||||||||||||
| precondition | --- | 0.09 | --- | --- | |||||||||||||||||||||||
| postcondition | --- | --- | --- | --- | |||||||||||||||||||||||
| assert let t = log (((((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7)) +. exp (to_real x8)) +. exp (to_real x9)) +. exp (to_real x10)) in abs (to_real r -. t) <=. ((abs t *. log_rel_err) +. (((-. log (1.0 -. ((((((((((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real r -. log (((((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7)) +. exp (to_real x8)) +. exp (to_real x9)) +. exp (to_real x10))) <=. ((abs (log (((((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7)) +. exp (to_real x8)) +. exp (to_real x9)) +. exp (to_real x10))) *. log_rel_err) +. (((-. log (1.0 -. ((((((((((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real r -. log (((((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7)) +. exp (to_real x8)) +. exp (to_real x9)) +. exp (to_real x10))) <=. ((log_rel_err *. abs (log (((((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7)) +. exp (to_real x8)) +. exp (to_real x9)) +. exp (to_real x10)))) +. (((-. log (1.0 -. (((((((((((((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. (((((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7)) +. exp (to_real x8)) +. exp (to_real x9)) +. exp (to_real x10))) +. 0.0) /. (((((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7)) +. exp (to_real x8)) +. exp (to_real x9)) +. exp (to_real x10))))) *. (1.0 +. log_rel_err)) +. log_abs_err)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply log_double_error_propagation with s | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real s -. (((((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7)) +. exp (to_real x8)) +. exp (to_real x9)) +. exp (to_real x10))) <=. ((((((((((((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. (((((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7)) +. exp (to_real x8)) +. exp (to_real x9)) +. exp (to_real x10))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((((((((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with (((((((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5) ++. exp_approx x6) ++. exp_approx x7) ++. exp_approx x8) ++. exp_approx x9,exp_approx x10 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real ((((((((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5) ++. exp_approx x6) ++. exp_approx x7) ++. exp_approx x8) ++. exp_approx x9) -. ((((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7)) +. exp (to_real x8)) +. exp (to_real x9))) <=. ((((((((((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. ((((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7)) +. exp (to_real x8)) +. exp (to_real x9))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((((((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with ((((((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5) ++. exp_approx x6) ++. exp_approx x7) ++. exp_approx x8,exp_approx x9 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real (((((((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5) ++. exp_approx x6) ++. exp_approx x7) ++. exp_approx x8) -. (((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7)) +. exp (to_real x8))) <=. ((((((((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. (((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7)) +. exp (to_real x8))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with (((((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5) ++. exp_approx x6) ++. exp_approx x7,exp_approx x8 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real ((((((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5) ++. exp_approx x6) ++. exp_approx x7) -. ((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7))) <=. ((((((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. ((((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6)) +. exp (to_real x7))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with ((((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5) ++. exp_approx x6,exp_approx x7 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real (((((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5) ++. exp_approx x6) -. (((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6))) <=. ((((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. (((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5)) +. exp (to_real x6))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with (((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5,exp_approx x6 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real ((((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) ++. exp_approx x5) -. ((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5))) <=. ((((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. ((((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4)) +. exp (to_real x5))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with ((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4,exp_approx x5 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real (((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) ++. exp_approx x4) -. (((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4))) <=. ((((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. (((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3)) +. exp (to_real x4))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with (exp_approx x1 ++. exp_approx x2) ++. exp_approx x3,exp_approx x4 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real ((exp_approx x1 ++. exp_approx x2) ++. exp_approx x3) -. ((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3))) <=. ((((((exp_rel_err +. exp_rel_err) +. eps) +. exp_rel_err) +. eps) *. ((exp (to_real x1) +. exp (to_real x2)) +. exp (to_real x3))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. ((exp_rel_err +. exp_rel_err) +. eps)) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with exp_approx x1 ++. exp_approx x2,exp_approx x3 | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real (exp_approx x1 ++. exp_approx x2) -. (exp (to_real x1) +. exp (to_real x2))) <=. ((((exp_rel_err +. exp_rel_err) +. eps) *. (exp (to_real x1) +. exp (to_real x2))) +. ((((1.0 +. eps) +. exp_rel_err) *. 0.0) +. (((1.0 +. eps) +. exp_rel_err) *. 0.0))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply uadd_double_error_propagation with exp_approx x1,exp_approx x2 | |||||||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.29 | --- | |||||||||||||||||||||||
| apply premises | --- | 0.45 | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.08 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.09 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.09 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | 0.54 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.28 | --- | |||||||||||||||||||||||
| apply premises | 0.09 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.08 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.09 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.08 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.08 | --- | |||||||||||||||||||||||
| apply premises | 0.09 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.08 | --- | |||||||||||||||||||||||
| apply premises | 0.74 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.41 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.06 | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.08 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.01 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | 0.65 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.28 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.08 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.01 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | 0.09 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | 0.68 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.33 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.05 | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.01 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | 0.08 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | 0.12 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.08 | --- | |||||||||||||||||||||||
| apply premises | 0.80 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.28 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | 1.08 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.38 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.12 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | 0.12 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | 1.36 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.28 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.09 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | 0.10 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | 0.11 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.09 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.09 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 1.36 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.42 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.06 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.09 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.02 | |||||||||||||||||||||||
| apply premises | --- | --- | --- | 0.01 | |||||||||||||||||||||||
| apply premises | --- | --- | 0.10 | --- | |||||||||||||||||||||||
| apply premises | 0.45 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | 0.78 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.09 | --- | |||||||||||||||||||||||
| asserted formula | 6.72 | --- | --- | --- | |||||||||||||||||||||||
| asserted formula | --- | --- | 0.08 | --- | |||||||||||||||||||||||
| postcondition | --- | --- | 0.07 | --- | |||||||||||||||||||||||
| VC for example3 | --- | --- | --- | --- | |||||||||||||||||||||||
| split_vc | |||||||||||||||||||||||||||
| precondition | 0.09 | --- | --- | --- | |||||||||||||||||||||||
| postcondition | --- | --- | --- | --- | |||||||||||||||||||||||
| assert let t = log2 (to_real x +. to_real y) in abs (to_real r -. t) <=. ((abs t *. log2_rel_error) +. (((-. log2 (1.0 -. eps)) *. (1.0 +. log2_rel_error)) +. log2_abs_error)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real r -. log2 (to_real x +. to_real y)) <=. ((abs (log2 (to_real x +. to_real y)) *. log2_rel_error) +. (((-. log2 (1.0 -. eps)) *. (1.0 +. log2_rel_error)) +. log2_abs_error)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real r -. log2 (to_real x +. to_real y)) <=. ((log2_rel_error *. abs (log2 (to_real x +. to_real y))) +. (((-. log2 (1.0 -. (((eps *. abs (to_real x +. to_real y)) +. 0.0) /. (to_real x +. to_real y)))) *. (1.0 +. log2_rel_error)) +. log2_abs_error)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply log2_double_error_propagation with x ++. y | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real (x ++. y) -. (to_real x +. to_real y)) <=. (eps *. abs (to_real x +. to_real y)) | |||||||||||||||||||||||||||
| asserted formula | 0.28 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.08 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.04 | --- | |||||||||||||||||||||||
| apply premises | 0.07 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | 0.06 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.04 | --- | |||||||||||||||||||||||
| asserted formula | 0.06 | --- | --- | --- | |||||||||||||||||||||||
| asserted formula | --- | --- | 0.06 | --- | |||||||||||||||||||||||
| postcondition | --- | --- | --- | 0.01 | |||||||||||||||||||||||
| VC for example4 | --- | --- | --- | --- | |||||||||||||||||||||||
| split_vc | |||||||||||||||||||||||||||
| precondition | 0.14 | --- | --- | --- | |||||||||||||||||||||||
| postcondition | --- | --- | --- | --- | |||||||||||||||||||||||
| assert let t = log10 (to_real x +. to_real y) in abs (to_real r -. t) <=. ((abs t *. log10_error) +. ((-. log10 (1.0 -. eps)) *. (1.0 +. log10_error))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real r -. log10 (to_real x +. to_real y)) <=. ((abs (log10 (to_real x +. to_real y)) *. log10_error) +. ((-. log10 (1.0 -. eps)) *. (1.0 +. log10_error))) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real r -. log10 (to_real x +. to_real y)) <=. ((log10_error *. abs (log10 (to_real x +. to_real y))) +. (((-. log10 (1.0 -. (((eps *. abs (to_real x +. to_real y)) +. 0.0) /. (to_real x +. to_real y)))) *. (1.0 +. log10_error)) +. 0.0)) | |||||||||||||||||||||||||||
| asserted formula | --- | --- | --- | --- | |||||||||||||||||||||||
| apply log10_double_error_propagation with x ++. y | |||||||||||||||||||||||||||
| apply premises | --- | --- | --- | --- | |||||||||||||||||||||||
| assert abs (to_real (x ++. y) -. (to_real x +. to_real y)) <=. (eps *. abs (to_real x +. to_real y)) | |||||||||||||||||||||||||||
| asserted formula | 0.18 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | 0.07 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | 0.07 | --- | --- | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.08 | --- | |||||||||||||||||||||||
| apply premises | --- | --- | 0.05 | --- | |||||||||||||||||||||||
| apply premises | 0.07 | --- | --- | --- | |||||||||||||||||||||||
| asserted formula | 0.08 | --- | --- | --- | |||||||||||||||||||||||
| asserted formula | --- | --- | 0.08 | --- | |||||||||||||||||||||||
| postcondition | 0.06 | --- | --- | --- | |||||||||||||||||||||||