\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(\sqrt{\sqrt{2}} \cdot \left(\sqrt{\sqrt{2}} \cdot \left(\sin x - \frac{\sin y}{16}\right)\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)}double f(double x, double y) {
double r191156 = 2.0;
double r191157 = sqrt(r191156);
double r191158 = x;
double r191159 = sin(r191158);
double r191160 = y;
double r191161 = sin(r191160);
double r191162 = 16.0;
double r191163 = r191161 / r191162;
double r191164 = r191159 - r191163;
double r191165 = r191157 * r191164;
double r191166 = r191159 / r191162;
double r191167 = r191161 - r191166;
double r191168 = r191165 * r191167;
double r191169 = cos(r191158);
double r191170 = cos(r191160);
double r191171 = r191169 - r191170;
double r191172 = r191168 * r191171;
double r191173 = r191156 + r191172;
double r191174 = 3.0;
double r191175 = 1.0;
double r191176 = 5.0;
double r191177 = sqrt(r191176);
double r191178 = r191177 - r191175;
double r191179 = r191178 / r191156;
double r191180 = r191179 * r191169;
double r191181 = r191175 + r191180;
double r191182 = r191174 - r191177;
double r191183 = r191182 / r191156;
double r191184 = r191183 * r191170;
double r191185 = r191181 + r191184;
double r191186 = r191174 * r191185;
double r191187 = r191173 / r191186;
return r191187;
}
double f(double x, double y) {
double r191188 = 2.0;
double r191189 = sqrt(r191188);
double r191190 = sqrt(r191189);
double r191191 = x;
double r191192 = sin(r191191);
double r191193 = y;
double r191194 = sin(r191193);
double r191195 = 16.0;
double r191196 = r191194 / r191195;
double r191197 = r191192 - r191196;
double r191198 = r191190 * r191197;
double r191199 = r191190 * r191198;
double r191200 = r191192 / r191195;
double r191201 = r191194 - r191200;
double r191202 = r191199 * r191201;
double r191203 = cos(r191191);
double r191204 = cos(r191193);
double r191205 = r191203 - r191204;
double r191206 = r191202 * r191205;
double r191207 = r191188 + r191206;
double r191208 = 3.0;
double r191209 = 1.0;
double r191210 = 5.0;
double r191211 = sqrt(r191210);
double r191212 = r191211 - r191209;
double r191213 = r191212 / r191188;
double r191214 = r191213 * r191203;
double r191215 = r191209 + r191214;
double r191216 = r191208 - r191211;
double r191217 = r191216 / r191188;
double r191218 = r191217 * r191204;
double r191219 = r191215 + r191218;
double r191220 = r191208 * r191219;
double r191221 = r191207 / r191220;
return r191221;
}



Bits error versus x



Bits error versus y
Results
Initial program 0.5
rmApplied add-sqr-sqrt0.5
Applied sqrt-prod0.5
Applied associate-*l*0.5
Final simplification0.5
herbie shell --seed 2019323
(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))))))