Average Error: 1.0 → 0.0
Time: 3.9s
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{\sqrt{4}}{\left(3 \cdot \pi\right) \cdot \left(1 - v \cdot v\right)} \cdot \frac{\sqrt{4}}{\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{\sqrt{4}}{\left(3 \cdot \pi\right) \cdot \left(1 - v \cdot v\right)} \cdot \frac{\sqrt{4}}{\sqrt{2 - 6 \cdot \left(v \cdot v\right)}}
double f(double v) {
        double r303569 = 4.0;
        double r303570 = 3.0;
        double r303571 = atan2(1.0, 0.0);
        double r303572 = r303570 * r303571;
        double r303573 = 1.0;
        double r303574 = v;
        double r303575 = r303574 * r303574;
        double r303576 = r303573 - r303575;
        double r303577 = r303572 * r303576;
        double r303578 = 2.0;
        double r303579 = 6.0;
        double r303580 = r303579 * r303575;
        double r303581 = r303578 - r303580;
        double r303582 = sqrt(r303581);
        double r303583 = r303577 * r303582;
        double r303584 = r303569 / r303583;
        return r303584;
}

double f(double v) {
        double r303585 = 4.0;
        double r303586 = sqrt(r303585);
        double r303587 = 3.0;
        double r303588 = atan2(1.0, 0.0);
        double r303589 = r303587 * r303588;
        double r303590 = 1.0;
        double r303591 = v;
        double r303592 = r303591 * r303591;
        double r303593 = r303590 - r303592;
        double r303594 = r303589 * r303593;
        double r303595 = r303586 / r303594;
        double r303596 = 2.0;
        double r303597 = 6.0;
        double r303598 = r303597 * r303592;
        double r303599 = r303596 - r303598;
        double r303600 = sqrt(r303599);
        double r303601 = r303586 / r303600;
        double r303602 = r303595 * r303601;
        return r303602;
}

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 add-sqr-sqrt1.0

    \[\leadsto \frac{\color{blue}{\sqrt{4} \cdot \sqrt{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)}}\]
  4. Applied times-frac0.0

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

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

Reproduce

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