\frac{1 - 5 \cdot \left(v \cdot v\right)}{\left(\left(\pi \cdot t\right) \cdot \sqrt{2 \cdot \left(1 - 3 \cdot \left(v \cdot v\right)\right)}\right) \cdot \left(1 - v \cdot v\right)}\frac{\frac{\frac{\sqrt{1 - 5 \cdot \left(v \cdot v\right)}}{\sqrt{2 \cdot \left(1 - \left(v \cdot v\right) \cdot 3\right)}}}{\pi}}{t} \cdot \frac{\sqrt{1 - 5 \cdot \left(v \cdot v\right)}}{1 - v \cdot v}(FPCore (v t) :precision binary64 (/ (- 1.0 (* 5.0 (* v v))) (* (* (* PI t) (sqrt (* 2.0 (- 1.0 (* 3.0 (* v v)))))) (- 1.0 (* v v)))))
(FPCore (v t)
:precision binary64
(*
(/
(/
(/ (sqrt (- 1.0 (* 5.0 (* v v)))) (sqrt (* 2.0 (- 1.0 (* (* v v) 3.0)))))
PI)
t)
(/ (sqrt (- 1.0 (* 5.0 (* v v)))) (- 1.0 (* v v)))))double code(double v, double t) {
return (((double) (1.0 - ((double) (5.0 * ((double) (v * v)))))) / ((double) (((double) (((double) (((double) M_PI) * t)) * ((double) sqrt(((double) (2.0 * ((double) (1.0 - ((double) (3.0 * ((double) (v * v)))))))))))) * ((double) (1.0 - ((double) (v * v)))))));
}
double code(double v, double t) {
return ((double) ((((((double) sqrt(((double) (1.0 - ((double) (5.0 * ((double) (v * v)))))))) / ((double) sqrt(((double) (2.0 * ((double) (1.0 - ((double) (((double) (v * v)) * 3.0))))))))) / ((double) M_PI)) / t) * (((double) sqrt(((double) (1.0 - ((double) (5.0 * ((double) (v * v)))))))) / ((double) (1.0 - ((double) (v * v)))))));
}



Bits error versus v



Bits error versus t
Results
Initial program 0.4
rmApplied add-sqr-sqrt_binary640.5
Applied times-frac_binary640.5
Simplified0.5
rmApplied associate-/r*_binary640.5
rmApplied associate-/r*_binary640.2
Final simplification0.2
herbie shell --seed 2020204
(FPCore (v t)
:name "Falkner and Boettcher, Equation (20:1,3)"
:precision binary64
(/ (- 1.0 (* 5.0 (* v v))) (* (* (* PI t) (sqrt (* 2.0 (- 1.0 (* 3.0 (* v v)))))) (- 1.0 (* v v)))))