Average Error: 0.0 → 0.0
Time: 19.2s
Precision: 64
\[\left(\frac{\sqrt{2}}{4} \cdot \sqrt{1 - 3 \cdot \left(v \cdot v\right)}\right) \cdot \left(1 - v \cdot v\right)\]
\[\frac{\left(1 - v \cdot v\right) \cdot \left(\sqrt{1 \cdot 1 - \left(3 \cdot \left(v \cdot v\right)\right) \cdot \left(3 \cdot \left(v \cdot v\right)\right)} \cdot \frac{\sqrt{2}}{4}\right)}{\sqrt{1 + 3 \cdot \left(v \cdot v\right)}}\]
\left(\frac{\sqrt{2}}{4} \cdot \sqrt{1 - 3 \cdot \left(v \cdot v\right)}\right) \cdot \left(1 - v \cdot v\right)
\frac{\left(1 - v \cdot v\right) \cdot \left(\sqrt{1 \cdot 1 - \left(3 \cdot \left(v \cdot v\right)\right) \cdot \left(3 \cdot \left(v \cdot v\right)\right)} \cdot \frac{\sqrt{2}}{4}\right)}{\sqrt{1 + 3 \cdot \left(v \cdot v\right)}}
double f(double v) {
        double r7866351 = 2.0;
        double r7866352 = sqrt(r7866351);
        double r7866353 = 4.0;
        double r7866354 = r7866352 / r7866353;
        double r7866355 = 1.0;
        double r7866356 = 3.0;
        double r7866357 = v;
        double r7866358 = r7866357 * r7866357;
        double r7866359 = r7866356 * r7866358;
        double r7866360 = r7866355 - r7866359;
        double r7866361 = sqrt(r7866360);
        double r7866362 = r7866354 * r7866361;
        double r7866363 = r7866355 - r7866358;
        double r7866364 = r7866362 * r7866363;
        return r7866364;
}

double f(double v) {
        double r7866365 = 1.0;
        double r7866366 = v;
        double r7866367 = r7866366 * r7866366;
        double r7866368 = r7866365 - r7866367;
        double r7866369 = r7866365 * r7866365;
        double r7866370 = 3.0;
        double r7866371 = r7866370 * r7866367;
        double r7866372 = r7866371 * r7866371;
        double r7866373 = r7866369 - r7866372;
        double r7866374 = sqrt(r7866373);
        double r7866375 = 2.0;
        double r7866376 = sqrt(r7866375);
        double r7866377 = 4.0;
        double r7866378 = r7866376 / r7866377;
        double r7866379 = r7866374 * r7866378;
        double r7866380 = r7866368 * r7866379;
        double r7866381 = r7866365 + r7866371;
        double r7866382 = sqrt(r7866381);
        double r7866383 = r7866380 / r7866382;
        return r7866383;
}

Error

Bits error versus v

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.0

    \[\left(\frac{\sqrt{2}}{4} \cdot \sqrt{1 - 3 \cdot \left(v \cdot v\right)}\right) \cdot \left(1 - v \cdot v\right)\]
  2. Using strategy rm
  3. Applied flip--0.0

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

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

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

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

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

Reproduce

herbie shell --seed 2019170 
(FPCore (v)
  :name "Falkner and Boettcher, Appendix B, 2"
  (* (* (/ (sqrt 2.0) 4.0) (sqrt (- 1.0 (* 3.0 (* v v))))) (- 1.0 (* v v))))