\frac{2.0 + \left(\left(\sqrt{2.0} \cdot \left(\sin x - \frac{\sin y}{16.0}\right)\right) \cdot \left(\sin y - \frac{\sin x}{16.0}\right)\right) \cdot \left(\cos x - \cos y\right)}{3.0 \cdot \left(\left(1.0 + \frac{\sqrt{5.0} - 1.0}{2.0} \cdot \cos x\right) + \frac{3.0 - \sqrt{5.0}}{2.0} \cdot \cos y\right)}\frac{2.0 + \sqrt[3]{\left(\cos x - \cos y\right) \cdot \left(\left(\cos x - \cos y\right) \cdot \left(\cos x - \cos y\right)\right)} \cdot \left(\left(\sin y - \frac{\sin x}{16.0}\right) \cdot \left(\left(\sin x - \frac{\sin y}{16.0}\right) \cdot \sqrt{2.0}\right)\right)}{\left(\left(\cos x \cdot \frac{\sqrt{5.0} - 1.0}{2.0} + 1.0\right) + \cos y \cdot \frac{\frac{3.0 \cdot 3.0 - 5.0}{3.0 + \sqrt{5.0}}}{2.0}\right) \cdot 3.0}double f(double x, double y) {
double r11396129 = 2.0;
double r11396130 = sqrt(r11396129);
double r11396131 = x;
double r11396132 = sin(r11396131);
double r11396133 = y;
double r11396134 = sin(r11396133);
double r11396135 = 16.0;
double r11396136 = r11396134 / r11396135;
double r11396137 = r11396132 - r11396136;
double r11396138 = r11396130 * r11396137;
double r11396139 = r11396132 / r11396135;
double r11396140 = r11396134 - r11396139;
double r11396141 = r11396138 * r11396140;
double r11396142 = cos(r11396131);
double r11396143 = cos(r11396133);
double r11396144 = r11396142 - r11396143;
double r11396145 = r11396141 * r11396144;
double r11396146 = r11396129 + r11396145;
double r11396147 = 3.0;
double r11396148 = 1.0;
double r11396149 = 5.0;
double r11396150 = sqrt(r11396149);
double r11396151 = r11396150 - r11396148;
double r11396152 = r11396151 / r11396129;
double r11396153 = r11396152 * r11396142;
double r11396154 = r11396148 + r11396153;
double r11396155 = r11396147 - r11396150;
double r11396156 = r11396155 / r11396129;
double r11396157 = r11396156 * r11396143;
double r11396158 = r11396154 + r11396157;
double r11396159 = r11396147 * r11396158;
double r11396160 = r11396146 / r11396159;
return r11396160;
}
double f(double x, double y) {
double r11396161 = 2.0;
double r11396162 = x;
double r11396163 = cos(r11396162);
double r11396164 = y;
double r11396165 = cos(r11396164);
double r11396166 = r11396163 - r11396165;
double r11396167 = r11396166 * r11396166;
double r11396168 = r11396166 * r11396167;
double r11396169 = cbrt(r11396168);
double r11396170 = sin(r11396164);
double r11396171 = sin(r11396162);
double r11396172 = 16.0;
double r11396173 = r11396171 / r11396172;
double r11396174 = r11396170 - r11396173;
double r11396175 = r11396170 / r11396172;
double r11396176 = r11396171 - r11396175;
double r11396177 = sqrt(r11396161);
double r11396178 = r11396176 * r11396177;
double r11396179 = r11396174 * r11396178;
double r11396180 = r11396169 * r11396179;
double r11396181 = r11396161 + r11396180;
double r11396182 = 5.0;
double r11396183 = sqrt(r11396182);
double r11396184 = 1.0;
double r11396185 = r11396183 - r11396184;
double r11396186 = r11396185 / r11396161;
double r11396187 = r11396163 * r11396186;
double r11396188 = r11396187 + r11396184;
double r11396189 = 3.0;
double r11396190 = r11396189 * r11396189;
double r11396191 = r11396190 - r11396182;
double r11396192 = r11396189 + r11396183;
double r11396193 = r11396191 / r11396192;
double r11396194 = r11396193 / r11396161;
double r11396195 = r11396165 * r11396194;
double r11396196 = r11396188 + r11396195;
double r11396197 = r11396196 * r11396189;
double r11396198 = r11396181 / r11396197;
return r11396198;
}



Bits error versus x



Bits error versus y
Results
Initial program 0.5
rmApplied flip--0.5
Simplified0.5
rmApplied add-cbrt-cube0.5
Final simplification0.5
herbie shell --seed 2019168
(FPCore (x y)
:name "Diagrams.TwoD.Path.Metafont.Internal:hobbyF from diagrams-contrib-1.3.0.5"
(/ (+ 2.0 (* (* (* (sqrt 2.0) (- (sin x) (/ (sin y) 16.0))) (- (sin y) (/ (sin x) 16.0))) (- (cos x) (cos y)))) (* 3.0 (+ (+ 1.0 (* (/ (- (sqrt 5.0) 1.0) 2.0) (cos x))) (* (/ (- 3.0 (sqrt 5.0)) 2.0) (cos y))))))