\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{1 - 5 \cdot \left(v \cdot v\right)}{\pi}}{\left(1 \cdot 1 - {v}^{4}\right) \cdot \left(\left(t \cdot \sqrt{2}\right) \cdot \sqrt{{1}^{3} - {\left(3 \cdot \left(v \cdot v\right)\right)}^{3}}\right)} \cdot \left(\sqrt{1 \cdot 1 + \left(\left(3 \cdot \left(v \cdot v\right)\right) \cdot \left(3 \cdot \left(v \cdot v\right)\right) + 1 \cdot \left(3 \cdot \left(v \cdot v\right)\right)\right)} \cdot \left(1 + v \cdot v\right)\right)double f(double v, double t) {
double r246587 = 1.0;
double r246588 = 5.0;
double r246589 = v;
double r246590 = r246589 * r246589;
double r246591 = r246588 * r246590;
double r246592 = r246587 - r246591;
double r246593 = atan2(1.0, 0.0);
double r246594 = t;
double r246595 = r246593 * r246594;
double r246596 = 2.0;
double r246597 = 3.0;
double r246598 = r246597 * r246590;
double r246599 = r246587 - r246598;
double r246600 = r246596 * r246599;
double r246601 = sqrt(r246600);
double r246602 = r246595 * r246601;
double r246603 = r246587 - r246590;
double r246604 = r246602 * r246603;
double r246605 = r246592 / r246604;
return r246605;
}
double f(double v, double t) {
double r246606 = 1.0;
double r246607 = 5.0;
double r246608 = v;
double r246609 = r246608 * r246608;
double r246610 = r246607 * r246609;
double r246611 = r246606 - r246610;
double r246612 = atan2(1.0, 0.0);
double r246613 = r246611 / r246612;
double r246614 = r246606 * r246606;
double r246615 = 4.0;
double r246616 = pow(r246608, r246615);
double r246617 = r246614 - r246616;
double r246618 = t;
double r246619 = 2.0;
double r246620 = sqrt(r246619);
double r246621 = r246618 * r246620;
double r246622 = 3.0;
double r246623 = pow(r246606, r246622);
double r246624 = 3.0;
double r246625 = r246624 * r246609;
double r246626 = pow(r246625, r246622);
double r246627 = r246623 - r246626;
double r246628 = sqrt(r246627);
double r246629 = r246621 * r246628;
double r246630 = r246617 * r246629;
double r246631 = r246613 / r246630;
double r246632 = r246625 * r246625;
double r246633 = r246606 * r246625;
double r246634 = r246632 + r246633;
double r246635 = r246614 + r246634;
double r246636 = sqrt(r246635);
double r246637 = r246606 + r246609;
double r246638 = r246636 * r246637;
double r246639 = r246631 * r246638;
return r246639;
}



Bits error versus v



Bits error versus t
Results
Initial program 0.5
rmApplied associate-*l*0.4
rmApplied sqrt-prod0.4
Applied associate-*r*0.4
rmApplied flip--0.4
Applied flip3--0.4
Applied sqrt-div0.5
Applied associate-*r/0.5
Applied associate-*r/0.5
Applied frac-times0.5
Applied associate-/r/0.5
Simplified0.3
Final simplification0.3
herbie shell --seed 2020045
(FPCore (v t)
:name "Falkner and Boettcher, Equation (20:1,3)"
:precision binary64
(/ (- 1 (* 5 (* v v))) (* (* (* PI t) (sqrt (* 2 (- 1 (* 3 (* v v)))))) (- 1 (* v v)))))