\frac{2 + \left(\left(\sqrt{2} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\sin y - \frac{\sin x}{16}\right)\right) \cdot \left(\cos x - \cos y\right)}{3 \cdot \left(\left(1 + \frac{\sqrt{5} - 1}{2} \cdot \cos x\right) + \frac{3 - \sqrt{5}}{2} \cdot \cos y\right)}\frac{2 + \left(\left(\mathsf{fma}\left(\sqrt[3]{\sin y} \cdot \sqrt[3]{\sin y}, \sqrt[3]{\sin y}, \frac{\sqrt[3]{\sin x}}{16} \cdot \left(-\sqrt[3]{\sin x} \cdot \sqrt[3]{\sin x}\right)\right) \cdot \sqrt{2}\right) \cdot \left(\sin x - \frac{\sin y}{16}\right) + \left(\left(\left(\sqrt[3]{\sin x} \cdot \sqrt[3]{\sin x}\right) \cdot \left(\left(-\frac{\sqrt[3]{\sin x}}{16}\right) + \frac{\sqrt[3]{\sin x}}{16}\right)\right) \cdot \sqrt{2}\right) \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left(\cos x - \cos y\right)}{3 \cdot \left(\left(1 + \frac{\sqrt{5} - 1}{2} \cdot \cos x\right) + \frac{3 - \sqrt{5}}{2} \cdot \cos y\right)}double f(double x, double y) {
double r220977 = 2.0;
double r220978 = sqrt(r220977);
double r220979 = x;
double r220980 = sin(r220979);
double r220981 = y;
double r220982 = sin(r220981);
double r220983 = 16.0;
double r220984 = r220982 / r220983;
double r220985 = r220980 - r220984;
double r220986 = r220978 * r220985;
double r220987 = r220980 / r220983;
double r220988 = r220982 - r220987;
double r220989 = r220986 * r220988;
double r220990 = cos(r220979);
double r220991 = cos(r220981);
double r220992 = r220990 - r220991;
double r220993 = r220989 * r220992;
double r220994 = r220977 + r220993;
double r220995 = 3.0;
double r220996 = 1.0;
double r220997 = 5.0;
double r220998 = sqrt(r220997);
double r220999 = r220998 - r220996;
double r221000 = r220999 / r220977;
double r221001 = r221000 * r220990;
double r221002 = r220996 + r221001;
double r221003 = r220995 - r220998;
double r221004 = r221003 / r220977;
double r221005 = r221004 * r220991;
double r221006 = r221002 + r221005;
double r221007 = r220995 * r221006;
double r221008 = r220994 / r221007;
return r221008;
}
double f(double x, double y) {
double r221009 = 2.0;
double r221010 = y;
double r221011 = sin(r221010);
double r221012 = cbrt(r221011);
double r221013 = r221012 * r221012;
double r221014 = x;
double r221015 = sin(r221014);
double r221016 = cbrt(r221015);
double r221017 = 16.0;
double r221018 = r221016 / r221017;
double r221019 = r221016 * r221016;
double r221020 = -r221019;
double r221021 = r221018 * r221020;
double r221022 = fma(r221013, r221012, r221021);
double r221023 = sqrt(r221009);
double r221024 = r221022 * r221023;
double r221025 = r221011 / r221017;
double r221026 = r221015 - r221025;
double r221027 = r221024 * r221026;
double r221028 = -r221018;
double r221029 = r221028 + r221018;
double r221030 = r221019 * r221029;
double r221031 = r221030 * r221023;
double r221032 = r221031 * r221026;
double r221033 = r221027 + r221032;
double r221034 = cos(r221014);
double r221035 = cos(r221010);
double r221036 = r221034 - r221035;
double r221037 = r221033 * r221036;
double r221038 = r221009 + r221037;
double r221039 = 3.0;
double r221040 = 1.0;
double r221041 = 5.0;
double r221042 = sqrt(r221041);
double r221043 = r221042 - r221040;
double r221044 = r221043 / r221009;
double r221045 = r221044 * r221034;
double r221046 = r221040 + r221045;
double r221047 = r221039 - r221042;
double r221048 = r221047 / r221009;
double r221049 = r221048 * r221035;
double r221050 = r221046 + r221049;
double r221051 = r221039 * r221050;
double r221052 = r221038 / r221051;
return r221052;
}



Bits error versus x



Bits error versus y
Initial program 0.5
rmApplied *-un-lft-identity0.5
Applied add-cube-cbrt0.5
Applied times-frac0.5
Applied add-cube-cbrt0.5
Applied prod-diff0.5
Applied distribute-lft-in0.5
Simplified0.5
Simplified0.5
Final simplification0.5
herbie shell --seed 2020035 +o rules:numerics
(FPCore (x y)
:name "Diagrams.TwoD.Path.Metafont.Internal:hobbyF from diagrams-contrib-1.3.0.5"
:precision binary64
(/ (+ 2 (* (* (* (sqrt 2) (- (sin x) (/ (sin y) 16))) (- (sin y) (/ (sin x) 16))) (- (cos x) (cos y)))) (* 3 (+ (+ 1 (* (/ (- (sqrt 5) 1) 2) (cos x))) (* (/ (- 3 (sqrt 5)) 2) (cos y))))))