double f(double v, double t) {
double r48578669 = 1.0;
double r48578670 = 5.0;
double r48578671 = v;
double r48578672 = r48578671 * r48578671;
double r48578673 = r48578670 * r48578672;
double r48578674 = r48578669 - r48578673;
double r48578675 = atan2(1.0, 0.0);
double r48578676 = t;
double r48578677 = r48578675 * r48578676;
double r48578678 = 2.0;
double r48578679 = 3.0;
double r48578680 = r48578679 * r48578672;
double r48578681 = r48578669 - r48578680;
double r48578682 = r48578678 * r48578681;
double r48578683 = sqrt(r48578682);
double r48578684 = r48578677 * r48578683;
double r48578685 = r48578669 - r48578672;
double r48578686 = r48578684 * r48578685;
double r48578687 = r48578674 / r48578686;
return r48578687;
}
double f(double v, double t) {
double r48578688 = -5.0;
double r48578689 = v;
double r48578690 = r48578689 * r48578689;
double r48578691 = 1.0;
double r48578692 = fma(r48578688, r48578690, r48578691);
double r48578693 = atan2(1.0, 0.0);
double r48578694 = -6.0;
double r48578695 = r48578694 * r48578689;
double r48578696 = 2.0;
double r48578697 = fma(r48578689, r48578695, r48578696);
double r48578698 = sqrt(r48578697);
double r48578699 = r48578693 * r48578698;
double r48578700 = r48578692 / r48578699;
double r48578701 = r48578691 - r48578690;
double r48578702 = cbrt(r48578701);
double r48578703 = r48578700 / r48578702;
double r48578704 = r48578702 * r48578702;
double r48578705 = t;
double r48578706 = r48578704 * r48578705;
double r48578707 = r48578703 / r48578706;
return r48578707;
}
\frac{1 - 5 \cdot \left(v \cdot v\right)}{\left(\left(\pi \cdot t\right) \cdot \sqrt{2 \cdot \left(1 - 3 \cdot \left(v \cdot v\right)\right)}\right) \cdot \left(1 - v \cdot v\right)}\frac{\frac{\frac{(-5 \cdot \left(v \cdot v\right) + 1)_*}{\pi \cdot \sqrt{(v \cdot \left(-6 \cdot v\right) + 2)_*}}}{\sqrt[3]{1 - v \cdot v}}}{\left(\sqrt[3]{1 - v \cdot v} \cdot \sqrt[3]{1 - v \cdot v}\right) \cdot t}


Bits error versus v



Bits error versus t
Initial program 0.5
Simplified0.5
rmApplied associate-*r*0.5
rmApplied add-cube-cbrt0.5
Applied *-un-lft-identity0.5
Applied times-frac0.5
Applied times-frac0.4
Simplified0.3
rmApplied associate-*l/0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2019101 +o rules:numerics
(FPCore (v t)
:name "Falkner and Boettcher, Equation (20:1,3)"
(/ (- 1 (* 5 (* v v))) (* (* (* PI t) (sqrt (* 2 (- 1 (* 3 (* v v)))))) (- 1 (* v v)))))