\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 \cdot 2 - \left(\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)\right) \cdot \left(\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)\right)}{\left(3 \cdot \left(\left(1 + \frac{\sqrt{5} - 1}{2} \cdot \cos x\right) + \frac{3 - \sqrt{5}}{2} \cdot \cos y\right)\right) \cdot \left(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)\right)}double f(double x, double y) {
double r246047 = 2.0;
double r246048 = sqrt(r246047);
double r246049 = x;
double r246050 = sin(r246049);
double r246051 = y;
double r246052 = sin(r246051);
double r246053 = 16.0;
double r246054 = r246052 / r246053;
double r246055 = r246050 - r246054;
double r246056 = r246048 * r246055;
double r246057 = r246050 / r246053;
double r246058 = r246052 - r246057;
double r246059 = r246056 * r246058;
double r246060 = cos(r246049);
double r246061 = cos(r246051);
double r246062 = r246060 - r246061;
double r246063 = r246059 * r246062;
double r246064 = r246047 + r246063;
double r246065 = 3.0;
double r246066 = 1.0;
double r246067 = 5.0;
double r246068 = sqrt(r246067);
double r246069 = r246068 - r246066;
double r246070 = r246069 / r246047;
double r246071 = r246070 * r246060;
double r246072 = r246066 + r246071;
double r246073 = r246065 - r246068;
double r246074 = r246073 / r246047;
double r246075 = r246074 * r246061;
double r246076 = r246072 + r246075;
double r246077 = r246065 * r246076;
double r246078 = r246064 / r246077;
return r246078;
}
double f(double x, double y) {
double r246079 = 2.0;
double r246080 = r246079 * r246079;
double r246081 = sqrt(r246079);
double r246082 = x;
double r246083 = sin(r246082);
double r246084 = y;
double r246085 = sin(r246084);
double r246086 = 16.0;
double r246087 = r246085 / r246086;
double r246088 = r246083 - r246087;
double r246089 = r246081 * r246088;
double r246090 = r246083 / r246086;
double r246091 = r246085 - r246090;
double r246092 = r246089 * r246091;
double r246093 = cos(r246082);
double r246094 = cos(r246084);
double r246095 = r246093 - r246094;
double r246096 = r246092 * r246095;
double r246097 = r246096 * r246096;
double r246098 = r246080 - r246097;
double r246099 = 3.0;
double r246100 = 1.0;
double r246101 = 5.0;
double r246102 = sqrt(r246101);
double r246103 = r246102 - r246100;
double r246104 = r246103 / r246079;
double r246105 = r246104 * r246093;
double r246106 = r246100 + r246105;
double r246107 = r246099 - r246102;
double r246108 = r246107 / r246079;
double r246109 = r246108 * r246094;
double r246110 = r246106 + r246109;
double r246111 = r246099 * r246110;
double r246112 = r246079 - r246096;
double r246113 = r246111 * r246112;
double r246114 = r246098 / r246113;
return r246114;
}



Bits error versus x



Bits error versus y
Results
Initial program 0.5
rmApplied flip-+0.5
Applied associate-/l/0.5
Final simplification0.5
herbie shell --seed 2020045
(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))))))