Average Error: 0.0 → 0.0
Time: 18.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)\]
\[\left(1 - v \cdot v\right) \cdot \left(\frac{\sqrt{2}}{4} \cdot \sqrt{\sqrt[3]{\left(1 - \left(v \cdot v\right) \cdot 3\right) \cdot \left(\left(1 - \left(v \cdot v\right) \cdot 3\right) \cdot \left(1 - \left(v \cdot v\right) \cdot 3\right)\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)
\left(1 - v \cdot v\right) \cdot \left(\frac{\sqrt{2}}{4} \cdot \sqrt{\sqrt[3]{\left(1 - \left(v \cdot v\right) \cdot 3\right) \cdot \left(\left(1 - \left(v \cdot v\right) \cdot 3\right) \cdot \left(1 - \left(v \cdot v\right) \cdot 3\right)\right)}}\right)
double f(double v) {
        double r4073690 = 2.0;
        double r4073691 = sqrt(r4073690);
        double r4073692 = 4.0;
        double r4073693 = r4073691 / r4073692;
        double r4073694 = 1.0;
        double r4073695 = 3.0;
        double r4073696 = v;
        double r4073697 = r4073696 * r4073696;
        double r4073698 = r4073695 * r4073697;
        double r4073699 = r4073694 - r4073698;
        double r4073700 = sqrt(r4073699);
        double r4073701 = r4073693 * r4073700;
        double r4073702 = r4073694 - r4073697;
        double r4073703 = r4073701 * r4073702;
        return r4073703;
}

double f(double v) {
        double r4073704 = 1.0;
        double r4073705 = v;
        double r4073706 = r4073705 * r4073705;
        double r4073707 = r4073704 - r4073706;
        double r4073708 = 2.0;
        double r4073709 = sqrt(r4073708);
        double r4073710 = 4.0;
        double r4073711 = r4073709 / r4073710;
        double r4073712 = 3.0;
        double r4073713 = r4073706 * r4073712;
        double r4073714 = r4073704 - r4073713;
        double r4073715 = r4073714 * r4073714;
        double r4073716 = r4073714 * r4073715;
        double r4073717 = cbrt(r4073716);
        double r4073718 = sqrt(r4073717);
        double r4073719 = r4073711 * r4073718;
        double r4073720 = r4073707 * r4073719;
        return r4073720;
}

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-cbrt-cube0.0

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

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

Reproduce

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