Average Error: 1.0 → 0.0
Time: 50.0s
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}{3}}{\left(\pi - \left(v \cdot \pi\right) \cdot v\right) \cdot \sqrt{(\left(-6 \cdot v\right) \cdot v + 2)_*}}\]
\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}{3}}{\left(\pi - \left(v \cdot \pi\right) \cdot v\right) \cdot \sqrt{(\left(-6 \cdot v\right) \cdot v + 2)_*}}
double f(double v) {
        double r54322993 = 4.0;
        double r54322994 = 3.0;
        double r54322995 = atan2(1.0, 0.0);
        double r54322996 = r54322994 * r54322995;
        double r54322997 = 1.0;
        double r54322998 = v;
        double r54322999 = r54322998 * r54322998;
        double r54323000 = r54322997 - r54322999;
        double r54323001 = r54322996 * r54323000;
        double r54323002 = 2.0;
        double r54323003 = 6.0;
        double r54323004 = r54323003 * r54322999;
        double r54323005 = r54323002 - r54323004;
        double r54323006 = sqrt(r54323005);
        double r54323007 = r54323001 * r54323006;
        double r54323008 = r54322993 / r54323007;
        return r54323008;
}

double f(double v) {
        double r54323009 = 1.3333333333333333;
        double r54323010 = atan2(1.0, 0.0);
        double r54323011 = v;
        double r54323012 = r54323011 * r54323010;
        double r54323013 = r54323012 * r54323011;
        double r54323014 = r54323010 - r54323013;
        double r54323015 = -6.0;
        double r54323016 = r54323015 * r54323011;
        double r54323017 = 2.0;
        double r54323018 = fma(r54323016, r54323011, r54323017);
        double r54323019 = sqrt(r54323018);
        double r54323020 = r54323014 * r54323019;
        double r54323021 = r54323009 / r54323020;
        return r54323021;
}

Error

Bits error versus v

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. Simplified0.0

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

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

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

Reproduce

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