\lambda_1 + \tan^{-1}_* \frac{\left(\sin theta \cdot \sin delta\right) \cdot \cos \phi_1}{\cos delta - \sin \phi_1 \cdot \sin \left(\sin^{-1} \left(\sin \phi_1 \cdot \cos delta + \left(\cos \phi_1 \cdot \sin delta\right) \cdot \cos theta\right)\right)}\tan^{-1}_* \frac{\cos \phi_1 \cdot \left(\sin delta \cdot \sin theta\right)}{\frac{\cos delta \cdot \cos delta - \left(\sin \phi_1 \cdot \sin \left(\sin^{-1} \left(\cos theta \cdot \left(\cos \phi_1 \cdot \sin delta\right) + \sin \phi_1 \cdot \cos delta\right)\right)\right) \cdot \sqrt[3]{\left(\sin \phi_1 \cdot \sin \left(\sin^{-1} \left(\cos theta \cdot \left(\cos \phi_1 \cdot \sin delta\right) + \sin \phi_1 \cdot \cos delta\right)\right)\right) \cdot \left(\left(\sin \phi_1 \cdot \sin \left(\sin^{-1} \left(\cos theta \cdot \left(\cos \phi_1 \cdot \sin delta\right) + \sin \phi_1 \cdot \cos delta\right)\right)\right) \cdot \left(\sin \phi_1 \cdot \sin \left(\sin^{-1} \left(\cos theta \cdot \left(\cos \phi_1 \cdot \sin delta\right) + \sin \phi_1 \cdot \cos delta\right)\right)\right)\right)}}{\cos delta + \sqrt[3]{\left(\sin \phi_1 \cdot \sin \left(\sin^{-1} \left(\cos theta \cdot \left(\cos \phi_1 \cdot \sin delta\right) + \sin \phi_1 \cdot \cos delta\right)\right)\right) \cdot \left(\left(\sin \phi_1 \cdot \sin \left(\sin^{-1} \left(\cos theta \cdot \left(\cos \phi_1 \cdot \sin delta\right) + \sin \phi_1 \cdot \cos delta\right)\right)\right) \cdot \left(\sin \phi_1 \cdot \sin \left(\sin^{-1} \left(\cos theta \cdot \left(\cos \phi_1 \cdot \sin delta\right) + \sin \phi_1 \cdot \cos delta\right)\right)\right)\right)}}} + \lambda_1double f(double lambda1, double phi1, double __attribute__((unused)) phi2, double delta, double theta) {
double r4278164 = lambda1;
double r4278165 = theta;
double r4278166 = sin(r4278165);
double r4278167 = delta;
double r4278168 = sin(r4278167);
double r4278169 = r4278166 * r4278168;
double r4278170 = phi1;
double r4278171 = cos(r4278170);
double r4278172 = r4278169 * r4278171;
double r4278173 = cos(r4278167);
double r4278174 = sin(r4278170);
double r4278175 = r4278174 * r4278173;
double r4278176 = r4278171 * r4278168;
double r4278177 = cos(r4278165);
double r4278178 = r4278176 * r4278177;
double r4278179 = r4278175 + r4278178;
double r4278180 = asin(r4278179);
double r4278181 = sin(r4278180);
double r4278182 = r4278174 * r4278181;
double r4278183 = r4278173 - r4278182;
double r4278184 = atan2(r4278172, r4278183);
double r4278185 = r4278164 + r4278184;
return r4278185;
}
double f(double lambda1, double phi1, double __attribute__((unused)) phi2, double delta, double theta) {
double r4278186 = phi1;
double r4278187 = cos(r4278186);
double r4278188 = delta;
double r4278189 = sin(r4278188);
double r4278190 = theta;
double r4278191 = sin(r4278190);
double r4278192 = r4278189 * r4278191;
double r4278193 = r4278187 * r4278192;
double r4278194 = cos(r4278188);
double r4278195 = r4278194 * r4278194;
double r4278196 = sin(r4278186);
double r4278197 = cos(r4278190);
double r4278198 = r4278187 * r4278189;
double r4278199 = r4278197 * r4278198;
double r4278200 = r4278196 * r4278194;
double r4278201 = r4278199 + r4278200;
double r4278202 = asin(r4278201);
double r4278203 = sin(r4278202);
double r4278204 = r4278196 * r4278203;
double r4278205 = r4278204 * r4278204;
double r4278206 = r4278204 * r4278205;
double r4278207 = cbrt(r4278206);
double r4278208 = r4278204 * r4278207;
double r4278209 = r4278195 - r4278208;
double r4278210 = r4278194 + r4278207;
double r4278211 = r4278209 / r4278210;
double r4278212 = atan2(r4278193, r4278211);
double r4278213 = lambda1;
double r4278214 = r4278212 + r4278213;
return r4278214;
}



Bits error versus lambda1



Bits error versus phi1



Bits error versus phi2



Bits error versus delta



Bits error versus theta
Results
Initial program 0.2
rmApplied add-cbrt-cube0.2
rmApplied flip--0.2
rmApplied pow30.2
Applied rem-cbrt-cube0.2
Final simplification0.2
herbie shell --seed 2019158
(FPCore (lambda1 phi1 phi2 delta theta)
:name "Destination given bearing on a great circle"
(+ lambda1 (atan2 (* (* (sin theta) (sin delta)) (cos phi1)) (- (cos delta) (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta))))))))))