R \cdot \sqrt{\left(\left(\lambda_1 - \lambda_2\right) \cdot \cos \left(\frac{\phi_1 + \phi_2}{2}\right)\right) \cdot \left(\left(\lambda_1 - \lambda_2\right) \cdot \cos \left(\frac{\phi_1 + \phi_2}{2}\right)\right) + \left(\phi_1 - \phi_2\right) \cdot \left(\phi_1 - \phi_2\right)}double f(double R, double lambda1, double lambda2, double phi1, double phi2) {
double r9069 = R;
double r9070 = lambda1;
double r9071 = lambda2;
double r9072 = r9070 - r9071;
double r9073 = phi1;
double r9074 = phi2;
double r9075 = r9073 + r9074;
double r9076 = 2.0;
double r9077 = r9075 / r9076;
double r9078 = cos(r9077);
double r9079 = r9072 * r9078;
double r9080 = r9079 * r9079;
double r9081 = r9073 - r9074;
double r9082 = r9081 * r9081;
double r9083 = r9080 + r9082;
double r9084 = sqrt(r9083);
double r9085 = r9069 * r9084;
return r9085;
}
Please include this information when filing a bug report:
herbie shell --seed 2019310
(FPCore (R lambda1 lambda2 phi1 phi2)
:name "Equirectangular approximation to distance on a great circle"
:precision binary64
(* R (sqrt (+ (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))) (* (- phi1 phi2) (- phi1 phi2))))))
| match: no matching clause for 'binary64 | L | C | |
|---|---|---|---|
| match:error | /opt/racket-7.2/collects/racket/match/runtime.rkt | 24 | 0 |
| for-loop | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/reduce.rkt | 246 | 3 |
| make-multiplication-subnode | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/reduce.rkt | 244 | 0 |
| make-multiplication-node | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/reduce.rkt | 234 | 0 |
| parse-loop373 | /opt/racket-7.2/collects/racket/match/compiler.rkt | 418 | 15 |
| parse-loop373 | /opt/racket-7.2/collects/racket/match/compiler.rkt | 418 | 15 |
| append-map | /opt/racket-7.2/collects/racket/list.rkt | 586 | 2 |
| simplify-node | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/reduce.rkt | 48 | 0 |
| map | /opt/racket-7.2/collects/racket/private/map.rkt | 35 | 13 |
| f45 | /opt/racket-7.2/collects/racket/match/compiler.rkt | 507 | 40 |
| simplify | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/reduce.rkt | 16 | 0 |
| approximate9 | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/core/taylor.rkt | 12 | 0 |
| (unnamed) | /opt/racket-7.2/collects/racket/contract/private/arrow-higher-order.rkt | 360 | 33 |
| location-do | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/programs.rkt | 64 | 0 |
| location-do | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/programs.rkt | 64 | 0 |
| (unnamed) | /opt/racket-7.2/collects/racket/contract/private/arrow-higher-order.rkt | 360 | 33 |
| for-loop | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/mainloop.rkt | 151 | 6 |
| taylor-alt | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/mainloop.rkt | 145 | 0 |
| for-loop | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/mainloop.rkt | 166 | 7 |
| gen-series! | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/mainloop.rkt | 159 | 0 |
| run-iter! | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/mainloop.rkt | 326 | 0 |
| for-loop | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/mainloop.rkt | 364 | 4 |
| run-improve47 | /data/pavpan/nightlies/herbie/fix-interface-bugs/src/mainloop.rkt | 345 | 0 |
| (unnamed) | /opt/racket-7.2/collects/racket/private/more-scheme.rkt | 261 | 28 |
| run | /opt/racket-7.2/share/pkgs/profile-lib/main.rkt | 39 | 2 |
| profile-thunk16 | /opt/racket-7.2/share/pkgs/profile-lib/main.rkt | 9 | 0 |
| (unnamed) | /opt/racket-7.2/collects/racket/private/more-scheme.rkt | 261 | 28 |