Average Error: 1.0 → 0.0
Time: 17.8s
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{\frac{4}{3 \cdot \pi}}{1 \cdot 1 - {v}^{4}} \cdot \left(1 + v \cdot v\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{\frac{4}{3 \cdot \pi}}{1 \cdot 1 - {v}^{4}} \cdot \left(1 + v \cdot v\right)}{\sqrt{2 - 6 \cdot \left(v \cdot v\right)}}
double f(double v) {
        double r243994 = 4.0;
        double r243995 = 3.0;
        double r243996 = atan2(1.0, 0.0);
        double r243997 = r243995 * r243996;
        double r243998 = 1.0;
        double r243999 = v;
        double r244000 = r243999 * r243999;
        double r244001 = r243998 - r244000;
        double r244002 = r243997 * r244001;
        double r244003 = 2.0;
        double r244004 = 6.0;
        double r244005 = r244004 * r244000;
        double r244006 = r244003 - r244005;
        double r244007 = sqrt(r244006);
        double r244008 = r244002 * r244007;
        double r244009 = r243994 / r244008;
        return r244009;
}

double f(double v) {
        double r244010 = 4.0;
        double r244011 = 3.0;
        double r244012 = atan2(1.0, 0.0);
        double r244013 = r244011 * r244012;
        double r244014 = r244010 / r244013;
        double r244015 = 1.0;
        double r244016 = r244015 * r244015;
        double r244017 = v;
        double r244018 = 4.0;
        double r244019 = pow(r244017, r244018);
        double r244020 = r244016 - r244019;
        double r244021 = r244014 / r244020;
        double r244022 = r244017 * r244017;
        double r244023 = r244015 + r244022;
        double r244024 = r244021 * r244023;
        double r244025 = 2.0;
        double r244026 = 6.0;
        double r244027 = r244026 * r244022;
        double r244028 = r244025 - r244027;
        double r244029 = sqrt(r244028);
        double r244030 = r244024 / r244029;
        return r244030;
}

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 flip--0.0

    \[\leadsto \frac{\frac{4}{\left(3 \cdot \pi\right) \cdot \color{blue}{\frac{1 \cdot 1 - \left(v \cdot v\right) \cdot \left(v \cdot v\right)}{1 + v \cdot v}}}}{\sqrt{2 - 6 \cdot \left(v \cdot v\right)}}\]
  6. Applied associate-*r/0.0

    \[\leadsto \frac{\frac{4}{\color{blue}{\frac{\left(3 \cdot \pi\right) \cdot \left(1 \cdot 1 - \left(v \cdot v\right) \cdot \left(v \cdot v\right)\right)}{1 + v \cdot v}}}}{\sqrt{2 - 6 \cdot \left(v \cdot v\right)}}\]
  7. Applied associate-/r/0.0

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

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

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

Reproduce

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