\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 + \log \left(e^{\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 y\right) + \left(\left(\sin y - \frac{\sin x}{16}\right) \cdot \left(\left(\sqrt{\sqrt[3]{2}} \cdot \left(\sin x - \frac{\sin y}{16}\right)\right) \cdot \left|\sqrt[3]{2}\right|\right)\right) \cdot \cos x}\right)}{3 \cdot \left(\left(1 + \frac{\sqrt{5} - 1}{2} \cdot \cos x\right) + \frac{\frac{3 \cdot 3 - 5}{3 + \sqrt{5}}}{2} \cdot \cos y\right)}double f(double x, double y) {
double r183175 = 2.0;
double r183176 = sqrt(r183175);
double r183177 = x;
double r183178 = sin(r183177);
double r183179 = y;
double r183180 = sin(r183179);
double r183181 = 16.0;
double r183182 = r183180 / r183181;
double r183183 = r183178 - r183182;
double r183184 = r183176 * r183183;
double r183185 = r183178 / r183181;
double r183186 = r183180 - r183185;
double r183187 = r183184 * r183186;
double r183188 = cos(r183177);
double r183189 = cos(r183179);
double r183190 = r183188 - r183189;
double r183191 = r183187 * r183190;
double r183192 = r183175 + r183191;
double r183193 = 3.0;
double r183194 = 1.0;
double r183195 = 5.0;
double r183196 = sqrt(r183195);
double r183197 = r183196 - r183194;
double r183198 = r183197 / r183175;
double r183199 = r183198 * r183188;
double r183200 = r183194 + r183199;
double r183201 = r183193 - r183196;
double r183202 = r183201 / r183175;
double r183203 = r183202 * r183189;
double r183204 = r183200 + r183203;
double r183205 = r183193 * r183204;
double r183206 = r183192 / r183205;
return r183206;
}
double f(double x, double y) {
double r183207 = 2.0;
double r183208 = sqrt(r183207);
double r183209 = x;
double r183210 = sin(r183209);
double r183211 = y;
double r183212 = sin(r183211);
double r183213 = 16.0;
double r183214 = r183212 / r183213;
double r183215 = r183210 - r183214;
double r183216 = r183208 * r183215;
double r183217 = r183210 / r183213;
double r183218 = r183212 - r183217;
double r183219 = r183216 * r183218;
double r183220 = cos(r183211);
double r183221 = -r183220;
double r183222 = r183219 * r183221;
double r183223 = cbrt(r183207);
double r183224 = sqrt(r183223);
double r183225 = r183224 * r183215;
double r183226 = fabs(r183223);
double r183227 = r183225 * r183226;
double r183228 = r183218 * r183227;
double r183229 = cos(r183209);
double r183230 = r183228 * r183229;
double r183231 = r183222 + r183230;
double r183232 = exp(r183231);
double r183233 = log(r183232);
double r183234 = r183207 + r183233;
double r183235 = 3.0;
double r183236 = 1.0;
double r183237 = 5.0;
double r183238 = sqrt(r183237);
double r183239 = r183238 - r183236;
double r183240 = r183239 / r183207;
double r183241 = r183240 * r183229;
double r183242 = r183236 + r183241;
double r183243 = r183235 * r183235;
double r183244 = r183243 - r183237;
double r183245 = r183235 + r183238;
double r183246 = r183244 / r183245;
double r183247 = r183246 / r183207;
double r183248 = r183247 * r183220;
double r183249 = r183242 + r183248;
double r183250 = r183235 * r183249;
double r183251 = r183234 / r183250;
return r183251;
}



Bits error versus x



Bits error versus y
Results
Initial program 0.5
rmApplied flip--0.5
Simplified0.4
rmApplied sub-neg0.4
Applied distribute-lft-in0.4
rmApplied add-cube-cbrt0.4
Applied sqrt-prod0.4
Applied associate-*l*0.4
rmApplied add-log-exp0.5
Applied add-log-exp0.5
Applied sum-log0.5
Simplified0.5
Final simplification0.5
herbie shell --seed 2019306
(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))))))