| 78× | intervals |
| 3.0m | 25814× | body | 10240 | exit |
| 1.8m | 44166× | body | 1280 | valid |
| 37.5s | 30015× | body | 640 | valid |
| 27.4s | 202470× | body | 80 | valid |
| 19.6s | 152484× | body | 80 | nan |
| 19.3s | 27642× | body | 320 | valid |
| 14.8s | 36258× | body | 160 | valid |
| 11.3s | 162500× | pre | 80 | true |
| 3.6s | 3133× | body | 2560 | valid |
| 1.9s | 7984× | body | 160 | nan |
| 889.0ms | 4071× | pre | 10240 | exit |
| 280.0ms | 246× | body | 5120 | valid |
461 calls:
| 4.0s | (/ (+ (* (* (* (cos phi2) (+ (* (sin lambda1) (sin lambda2)) (* (cos lambda1) (cos lambda2)))) (* (cos phi2) (+ (* (sin lambda1) (sin lambda2)) (* (cos lambda1) (cos lambda2))))) (* (cos phi2) (+ (* (sin lambda1) (sin lambda2)) (* (cos lambda1) (cos lambda2))))) (* (cos phi1) (* (cos phi1) (cos phi1)))) (+ (* (- (* (cos phi2) (+ (* (sin lambda1) (sin lambda2)) (* (cos lambda1) (cos lambda2)))) (cos phi1)) (* (cos phi2) (+ (* (sin lambda1) (sin lambda2)) (* (cos lambda1) (cos lambda2))))) (* (cos phi1) (cos phi1)))) |
| 1.5s | (cbrt (* (+ (* (- phi1 phi2) (- phi1 phi2)) (* (cbrt (* (cbrt (cos (/ (+ phi1 phi2) 2))) (* (cbrt (cos (/ (+ phi1 phi2) 2))) (cbrt (cos (/ (+ phi1 phi2) 2)))))) (* (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (- lambda1 lambda2)) (* (cbrt (cos (/ (+ phi1 phi2) 2))) (cbrt (cos (/ (+ phi1 phi2) 2))))))) (sqrt (+ (* (- phi1 phi2) (- phi1 phi2)) (* (cbrt (* (cbrt (cos (/ (+ phi1 phi2) 2))) (* (cbrt (cos (/ (+ phi1 phi2) 2))) (cbrt (cos (/ (+ phi1 phi2) 2)))))) (* (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (- lambda1 lambda2)) (* (cbrt (cos (/ (+ phi1 phi2) 2))) (cbrt (cos (/ (+ phi1 phi2) 2)))))))))) |
| 874.0ms | (sqrt (+ (* (- phi1 phi2) (- phi1 phi2)) (* (cbrt (* (cbrt (cos (/ (+ phi1 phi2) 2))) (* (cbrt (cos (/ (+ phi1 phi2) 2))) (cbrt (cos (/ (+ phi1 phi2) 2)))))) (* (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (- lambda1 lambda2)) (* (cbrt (cos (/ (+ phi1 phi2) 2))) (cbrt (cos (/ (+ phi1 phi2) 2)))))))) |
| 657.0ms | (log (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x))) |
| 615.0ms | (sqrt (+ (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (* (- lambda1 lambda2) (* (cbrt (cos (/ (+ phi1 phi2) 2))) (cbrt (cos (/ (+ phi1 phi2) 2))))) (cbrt (* (* (cbrt (cos (/ (+ phi1 phi2) 2))) (cbrt (cos (/ (+ phi1 phi2) 2)))) (cbrt (cos (/ (+ phi1 phi2) 2))))))) (* (- phi1 phi2) (- phi1 phi2)))) |
Total 69.4b remaining (33.1%)
Threshold costs 4.8b (2.3%)
| 10.8b | -4.6% | Quotient of products |
| 10.3b | 43.6% | Equirectangular approximation to distance on a great circle |
| 7.0b | 47.4% | Quadratic roots, narrow range |
| 7.0b | 47.3% | Cubic critical, narrow range |
| 6.3b | 3.3% | Cubic critical, medium range |
| 143× | rewrite-expression-head |
461 calls:
| 1.2s | (/ (+ (* (* (* (cos phi2) (+ (* (sin lambda1) (sin lambda2)) (* (cos lambda1) (cos lambda2)))) (* (cos phi2) (+ (* (sin lambda1) (sin lambda2)) (* (cos lambda1) (cos lambda2))))) (* (cos phi2) (+ (* (sin lambda1) (sin lambda2)) (* (cos lambda1) (cos lambda2))))) (* (cos phi1) (* (cos phi1) (cos phi1)))) (+ (* (- (* (cos phi2) (+ (* (sin lambda1) (sin lambda2)) (* (cos lambda1) (cos lambda2)))) (cos phi1)) (* (cos phi2) (+ (* (sin lambda1) (sin lambda2)) (* (cos lambda1) (cos lambda2))))) (* (cos phi1) (cos phi1)))) |
| 546.0ms | (cbrt (* (+ (* (- phi1 phi2) (- phi1 phi2)) (* (cbrt (* (cbrt (cos (/ (+ phi1 phi2) 2))) (* (cbrt (cos (/ (+ phi1 phi2) 2))) (cbrt (cos (/ (+ phi1 phi2) 2)))))) (* (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (- lambda1 lambda2)) (* (cbrt (cos (/ (+ phi1 phi2) 2))) (cbrt (cos (/ (+ phi1 phi2) 2))))))) (sqrt (+ (* (- phi1 phi2) (- phi1 phi2)) (* (cbrt (* (cbrt (cos (/ (+ phi1 phi2) 2))) (* (cbrt (cos (/ (+ phi1 phi2) 2))) (cbrt (cos (/ (+ phi1 phi2) 2)))))) (* (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (- lambda1 lambda2)) (* (cbrt (cos (/ (+ phi1 phi2) 2))) (cbrt (cos (/ (+ phi1 phi2) 2)))))))))) |
| 534.0ms | (sqrt (+ (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (* (- lambda1 lambda2) (* (cbrt (cos (/ (+ phi1 phi2) 2))) (cbrt (cos (/ (+ phi1 phi2) 2))))) (cbrt (cos (/ (+ phi1 phi2) 2))))) (* (- phi1 phi2) (- phi1 phi2)))) |
| 485.0ms | (sqrt (+ (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (* (- lambda1 lambda2) (* (cbrt (cos (/ (+ phi1 phi2) 2))) (cbrt (cos (/ (+ phi1 phi2) 2))))) (cbrt (* (* (cbrt (cos (/ (+ phi1 phi2) 2))) (cbrt (cos (/ (+ phi1 phi2) 2)))) (cbrt (cos (/ (+ phi1 phi2) 2))))))) (* (- phi1 phi2) (- phi1 phi2)))) |
| 292.0ms | (* (* (* (/ -2 b) (/ c 1)) (* (/ -2 b) (/ c 1))) (* (/ -2 b) (/ c 1))) |
| 20352× | associate-*l/ |
| 13868× | frac-times |
| 13799× | associate-*r/ |
| 13629× | flip-- |
| 13628× | flip3-- |
| 8986× | frac-add |
| 6146× | add-exp-log |
| 5970× | add-sqr-sqrt |
| 5776× | times-frac |
| 5278× | *-un-lft-identity |
| 5068× | sqrt-div |
| 4797× | cbrt-div |
| 3384× | add-cube-cbrt |
| 2952× | prod-exp |
| 2941× | add-cbrt-cube |
| 2237× | div-exp |
| 1540× | sqrt-prod |
| 1358× | pow1 |
| 1135× | cbrt-unprod |
| 1048× | associate-*r* |
| 902× | difference-of-squares |
| 746× | cbrt-undiv |
| 698× | pow-exp add-log-exp |
| 694× | associate-*l* |
| 515× | associate-/r* |
| 485× | 1-exp |
| 461× | insert-posit16 |
| 441× | flip-+ |
| 440× | flip3-+ |
| 426× | distribute-lft-out-- |
| 418× | associate-/l* |
| 349× | pow-to-exp |
| 334× | pow-prod-down |
| 311× | distribute-lft-out div-inv |
| 305× | cbrt-prod |
| 289× | associate-/r/ |
| 267× | unswap-sqr |
| 252× | log-prod |
| 222× | difference-of-sqr-1 |
| 182× | associate-/l/ |
| 167× | swap-sqr |
| 156× | rec-exp |
| 146× | cos-mult |
| 124× | *-commutative |
| 111× | pow-prod-up |
| 107× | sub-neg |
| 99× | frac-2neg clear-num |
| 92× | diff-log |
| 80× | sin-mult |
| 75× | frac-sub |
| 72× | pow-plus |
| 71× | unpow-prod-down |
| 61× | associate-+r+ |
| 55× | sqrt-pow1 pow1/2 |
| 54× | log-div |
| 52× | log-pow |
| 51× | pow-sqr |
| 47× | distribute-rgt-in distribute-lft-in |
| 45× | pow1/3 |
| 37× | rem-sqrt-square |
| 36× | sum-log |
| 32× | associate-+l+ |
| 30× | pow2 div-sub |
| 28× | +-commutative |
| 25× | associate--l+ rem-log-exp |
| 24× | tan-quot |
| 21× | pow-flip sqr-pow |
| 20× | sin-cos-mult |
| 18× | cube-prod cos-diff |
| 16× | exp-prod inv-pow |
| 15× | sin-diff |
| 14× | pow3 associate--r+ |
| 13× | cos-sum |
| 12× | pow-pow |
| 11× | associate--l- sqrt-undiv distribute-rgt-out |
| 10× | associate-+l- acos-asin |
| 9× | pow-unpow |
| 8× | pow-div |
| 7× | cube-unmult |
| 6× | associate-+r- |
| 5× | rem-cbrt-cube |
| 4× | sin-sum sqrt-unprod sum-cubes exp-to-pow sub-div |
| 3× | distribute-frac-neg log-rec distribute-rgt-neg-in un-div-inv rem-exp-log acos-neg distribute-lft-neg-out associate--r- distribute-lft-neg-in distribute-rgt1-in |
| 2× | exp-diff distribute-rgt-out-- unsub-neg |
| 1× | remove-posit16 neg-mul-1 tanh-undef tanh-def difference-cubes asin-acos unpow1/3 rem-square-sqrt cube-mult e-exp-1 |