Average Error: 0.0 → 0.0
Time: 4.8s
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)\]
\[e^{\log \left(\left(\frac{\sqrt{2}}{4} \cdot \sqrt{1 - 3 \cdot \left(v \cdot v\right)}\right) \cdot \left(1 - v \cdot v\right)\right)}\]
\left(\frac{\sqrt{2}}{4} \cdot \sqrt{1 - 3 \cdot \left(v \cdot v\right)}\right) \cdot \left(1 - v \cdot v\right)
e^{\log \left(\left(\frac{\sqrt{2}}{4} \cdot \sqrt{1 - 3 \cdot \left(v \cdot v\right)}\right) \cdot \left(1 - v \cdot v\right)\right)}
double f(double v) {
        double r314424 = 2.0;
        double r314425 = sqrt(r314424);
        double r314426 = 4.0;
        double r314427 = r314425 / r314426;
        double r314428 = 1.0;
        double r314429 = 3.0;
        double r314430 = v;
        double r314431 = r314430 * r314430;
        double r314432 = r314429 * r314431;
        double r314433 = r314428 - r314432;
        double r314434 = sqrt(r314433);
        double r314435 = r314427 * r314434;
        double r314436 = r314428 - r314431;
        double r314437 = r314435 * r314436;
        return r314437;
}

double f(double v) {
        double r314438 = 2.0;
        double r314439 = sqrt(r314438);
        double r314440 = 4.0;
        double r314441 = r314439 / r314440;
        double r314442 = 1.0;
        double r314443 = 3.0;
        double r314444 = v;
        double r314445 = r314444 * r314444;
        double r314446 = r314443 * r314445;
        double r314447 = r314442 - r314446;
        double r314448 = sqrt(r314447);
        double r314449 = r314441 * r314448;
        double r314450 = r314442 - r314445;
        double r314451 = r314449 * r314450;
        double r314452 = log(r314451);
        double r314453 = exp(r314452);
        return r314453;
}

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 add-exp-log0.0

    \[\leadsto \left(\frac{\sqrt{2}}{4} \cdot \sqrt{1 - 3 \cdot \left(v \cdot v\right)}\right) \cdot \color{blue}{e^{\log \left(1 - v \cdot v\right)}}\]
  4. Applied add-exp-log0.0

    \[\leadsto \left(\frac{\sqrt{2}}{4} \cdot \color{blue}{e^{\log \left(\sqrt{1 - 3 \cdot \left(v \cdot v\right)}\right)}}\right) \cdot e^{\log \left(1 - v \cdot v\right)}\]
  5. Applied add-exp-log0.0

    \[\leadsto \left(\frac{\sqrt{2}}{\color{blue}{e^{\log 4}}} \cdot e^{\log \left(\sqrt{1 - 3 \cdot \left(v \cdot v\right)}\right)}\right) \cdot e^{\log \left(1 - v \cdot v\right)}\]
  6. Applied add-exp-log0.0

    \[\leadsto \left(\frac{\color{blue}{e^{\log \left(\sqrt{2}\right)}}}{e^{\log 4}} \cdot e^{\log \left(\sqrt{1 - 3 \cdot \left(v \cdot v\right)}\right)}\right) \cdot e^{\log \left(1 - v \cdot v\right)}\]
  7. Applied div-exp0.0

    \[\leadsto \left(\color{blue}{e^{\log \left(\sqrt{2}\right) - \log 4}} \cdot e^{\log \left(\sqrt{1 - 3 \cdot \left(v \cdot v\right)}\right)}\right) \cdot e^{\log \left(1 - v \cdot v\right)}\]
  8. Applied prod-exp0.0

    \[\leadsto \color{blue}{e^{\left(\log \left(\sqrt{2}\right) - \log 4\right) + \log \left(\sqrt{1 - 3 \cdot \left(v \cdot v\right)}\right)}} \cdot e^{\log \left(1 - v \cdot v\right)}\]
  9. Applied prod-exp0.0

    \[\leadsto \color{blue}{e^{\left(\left(\log \left(\sqrt{2}\right) - \log 4\right) + \log \left(\sqrt{1 - 3 \cdot \left(v \cdot v\right)}\right)\right) + \log \left(1 - v \cdot v\right)}}\]
  10. Simplified0.0

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

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

Reproduce

herbie shell --seed 2020021 
(FPCore (v)
  :name "Falkner and Boettcher, Appendix B, 2"
  :precision binary64
  (* (* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v))))) (- 1 (* v v))))