Average Error: 1.0 → 0.0
Time: 16.7s
Precision: 64
\[\frac{4}{\left(\left(3 \cdot \pi\right) \cdot \left(1 - v \cdot v\right)\right) \cdot \sqrt{2 - 6 \cdot \left(v \cdot v\right)}}\]
\[\frac{\frac{4}{1 \cdot \left(3 \cdot \pi\right) + \left(-3 \cdot \left({v}^{2} \cdot \pi\right)\right)}}{\sqrt{2 - 6 \cdot \left(v \cdot v\right)}}\]
\frac{4}{\left(\left(3 \cdot \pi\right) \cdot \left(1 - v \cdot v\right)\right) \cdot \sqrt{2 - 6 \cdot \left(v \cdot v\right)}}
\frac{\frac{4}{1 \cdot \left(3 \cdot \pi\right) + \left(-3 \cdot \left({v}^{2} \cdot \pi\right)\right)}}{\sqrt{2 - 6 \cdot \left(v \cdot v\right)}}
double f(double v) {
        double r197849 = 4.0;
        double r197850 = 3.0;
        double r197851 = atan2(1.0, 0.0);
        double r197852 = r197850 * r197851;
        double r197853 = 1.0;
        double r197854 = v;
        double r197855 = r197854 * r197854;
        double r197856 = r197853 - r197855;
        double r197857 = r197852 * r197856;
        double r197858 = 2.0;
        double r197859 = 6.0;
        double r197860 = r197859 * r197855;
        double r197861 = r197858 - r197860;
        double r197862 = sqrt(r197861);
        double r197863 = r197857 * r197862;
        double r197864 = r197849 / r197863;
        return r197864;
}

double f(double v) {
        double r197865 = 4.0;
        double r197866 = 1.0;
        double r197867 = 3.0;
        double r197868 = atan2(1.0, 0.0);
        double r197869 = r197867 * r197868;
        double r197870 = r197866 * r197869;
        double r197871 = v;
        double r197872 = 2.0;
        double r197873 = pow(r197871, r197872);
        double r197874 = r197873 * r197868;
        double r197875 = r197867 * r197874;
        double r197876 = -r197875;
        double r197877 = r197870 + r197876;
        double r197878 = r197865 / r197877;
        double r197879 = 2.0;
        double r197880 = 6.0;
        double r197881 = r197871 * r197871;
        double r197882 = r197880 * r197881;
        double r197883 = r197879 - r197882;
        double r197884 = sqrt(r197883);
        double r197885 = r197878 / r197884;
        return r197885;
}

Error

Bits error versus v

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 1.0

    \[\frac{4}{\left(\left(3 \cdot \pi\right) \cdot \left(1 - v \cdot v\right)\right) \cdot \sqrt{2 - 6 \cdot \left(v \cdot v\right)}}\]
  2. Using strategy rm
  3. Applied associate-/r*0.0

    \[\leadsto \color{blue}{\frac{\frac{4}{\left(3 \cdot \pi\right) \cdot \left(1 - v \cdot v\right)}}{\sqrt{2 - 6 \cdot \left(v \cdot v\right)}}}\]
  4. Using strategy rm
  5. Applied sub-neg0.0

    \[\leadsto \frac{\frac{4}{\left(3 \cdot \pi\right) \cdot \color{blue}{\left(1 + \left(-v \cdot v\right)\right)}}}{\sqrt{2 - 6 \cdot \left(v \cdot v\right)}}\]
  6. Applied distribute-rgt-in0.0

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

    \[\leadsto \frac{\frac{4}{1 \cdot \left(3 \cdot \pi\right) + \color{blue}{\left(-3 \cdot \left({v}^{2} \cdot \pi\right)\right)}}}{\sqrt{2 - 6 \cdot \left(v \cdot v\right)}}\]
  8. Final simplification0.0

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

Reproduce

herbie shell --seed 2019209 +o rules:numerics
(FPCore (v)
  :name "Falkner and Boettcher, Equation (22+)"
  :precision binary64
  (/ 4 (* (* (* 3 PI) (- 1 (* v v))) (sqrt (- 2 (* 6 (* v v)))))))