Average Error: 0.4 → 0.5
Time: 5.8s
Precision: binary64
\[\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)} \]
\[\begin{array}{l} t_1 := \pi \cdot \sqrt{2}\\ t_2 := t \cdot t_1\\ \frac{\frac{1}{t}}{t_1} - \left(2.5 \cdot \frac{v \cdot v}{t_2} + 6.625 \cdot \frac{{v}^{4}}{t_2}\right) \end{array} \]
\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)}
\begin{array}{l}
t_1 := \pi \cdot \sqrt{2}\\
t_2 := t \cdot t_1\\
\frac{\frac{1}{t}}{t_1} - \left(2.5 \cdot \frac{v \cdot v}{t_2} + 6.625 \cdot \frac{{v}^{4}}{t_2}\right)
\end{array}
(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
 (let* ((t_1 (* PI (sqrt 2.0))) (t_2 (* t t_1)))
   (-
    (/ (/ 1.0 t) t_1)
    (+ (* 2.5 (/ (* v v) t_2)) (* 6.625 (/ (pow v 4.0) t_2))))))
double code(double v, double t) {
	return (1.0 - (5.0 * (v * v))) / (((((double) M_PI) * t) * sqrt(2.0 * (1.0 - (3.0 * (v * v))))) * (1.0 - (v * v)));
}
double code(double v, double t) {
	double t_1 = ((double) M_PI) * sqrt(2.0);
	double t_2 = t * t_1;
	return ((1.0 / t) / t_1) - ((2.5 * ((v * v) / t_2)) + (6.625 * (pow(v, 4.0) / t_2)));
}

Error

Bits error versus v

Bits error versus t

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.4

    \[\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)} \]
  2. Taylor expanded around 0 0.6

    \[\leadsto \color{blue}{\frac{1}{t \cdot \left(\pi \cdot \sqrt{2}\right)} - \left(2.5 \cdot \frac{{v}^{2}}{t \cdot \left(\pi \cdot \sqrt{2}\right)} + 6.625 \cdot \frac{{v}^{4}}{t \cdot \left(\pi \cdot \sqrt{2}\right)}\right)} \]
  3. Simplified0.6

    \[\leadsto \color{blue}{\frac{1}{t \cdot \left(\pi \cdot \sqrt{2}\right)} - \left(2.5 \cdot \frac{v \cdot v}{t \cdot \left(\pi \cdot \sqrt{2}\right)} + 6.625 \cdot \frac{{v}^{4}}{t \cdot \left(\pi \cdot \sqrt{2}\right)}\right)} \]
  4. Using strategy rm
  5. Applied associate-/r*_binary640.5

    \[\leadsto \color{blue}{\frac{\frac{1}{t}}{\pi \cdot \sqrt{2}}} - \left(2.5 \cdot \frac{v \cdot v}{t \cdot \left(\pi \cdot \sqrt{2}\right)} + 6.625 \cdot \frac{{v}^{4}}{t \cdot \left(\pi \cdot \sqrt{2}\right)}\right) \]
  6. Final simplification0.5

    \[\leadsto \frac{\frac{1}{t}}{\pi \cdot \sqrt{2}} - \left(2.5 \cdot \frac{v \cdot v}{t \cdot \left(\pi \cdot \sqrt{2}\right)} + 6.625 \cdot \frac{{v}^{4}}{t \cdot \left(\pi \cdot \sqrt{2}\right)}\right) \]

Reproduce

herbie shell --seed 2021196 
(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)))))