Average Error: 0.5 → 0.5
Time: 6.7s
Precision: 64
\[\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{1 - 5 \cdot \left(v \cdot v\right)}{\left(\pi \cdot \left(t \cdot \sqrt{2 \cdot \left(1 - 3 \cdot \left(v \cdot v\right)\right)}\right)\right) \cdot \left(1 - v \cdot v\right)}\]
\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{1 - 5 \cdot \left(v \cdot v\right)}{\left(\pi \cdot \left(t \cdot \sqrt{2 \cdot \left(1 - 3 \cdot \left(v \cdot v\right)\right)}\right)\right) \cdot \left(1 - v \cdot v\right)}
double f(double v, double t) {
        double r324783 = 1.0;
        double r324784 = 5.0;
        double r324785 = v;
        double r324786 = r324785 * r324785;
        double r324787 = r324784 * r324786;
        double r324788 = r324783 - r324787;
        double r324789 = atan2(1.0, 0.0);
        double r324790 = t;
        double r324791 = r324789 * r324790;
        double r324792 = 2.0;
        double r324793 = 3.0;
        double r324794 = r324793 * r324786;
        double r324795 = r324783 - r324794;
        double r324796 = r324792 * r324795;
        double r324797 = sqrt(r324796);
        double r324798 = r324791 * r324797;
        double r324799 = r324783 - r324786;
        double r324800 = r324798 * r324799;
        double r324801 = r324788 / r324800;
        return r324801;
}

double f(double v, double t) {
        double r324802 = 1.0;
        double r324803 = 5.0;
        double r324804 = v;
        double r324805 = r324804 * r324804;
        double r324806 = r324803 * r324805;
        double r324807 = r324802 - r324806;
        double r324808 = atan2(1.0, 0.0);
        double r324809 = t;
        double r324810 = 2.0;
        double r324811 = 3.0;
        double r324812 = r324811 * r324805;
        double r324813 = r324802 - r324812;
        double r324814 = r324810 * r324813;
        double r324815 = sqrt(r324814);
        double r324816 = r324809 * r324815;
        double r324817 = r324808 * r324816;
        double r324818 = r324802 - r324805;
        double r324819 = r324817 * r324818;
        double r324820 = r324807 / r324819;
        return r324820;
}

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.5

    \[\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. Using strategy rm
  3. Applied associate-*l*0.5

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

    \[\leadsto \frac{1 - 5 \cdot \left(v \cdot v\right)}{\left(\pi \cdot \left(t \cdot \sqrt{2 \cdot \left(1 - 3 \cdot \left(v \cdot v\right)\right)}\right)\right) \cdot \left(1 - v \cdot v\right)}\]

Reproduce

herbie shell --seed 2020064 +o rules:numerics
(FPCore (v t)
  :name "Falkner and Boettcher, Equation (20:1,3)"
  :precision binary64
  (/ (- 1 (* 5 (* v v))) (* (* (* PI t) (sqrt (* 2 (- 1 (* 3 (* v v)))))) (- 1 (* v v)))))