Details

sample11.8m (56.6%)

Algorithm
78×intervals
Results
8.5m52640×body10240exit
1.4m44147×body1280valid
29.6s30669×body640valid
21.9s204615×body80valid
15.9s152194×body80nan
12.6s27484×body320valid
9.4s191160×pre80true
8.7s36041×body160valid
1.8s3042×body2560valid
1.0s7792×body160nan
803.0ms4146×pre10240exit
143.0ms227×body5120valid
2.0msbody640nan

simplify5.9m (28.4%)

prune1.5m (6.9%)

series52.5s (4.2%)

Calls

461 calls:

4.3s
(cbrt (* (* (- (cos delta) (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta))))))) (- (pow (cos delta) 3) (pow (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta)))))) 3))) (- (* (cos delta) (cos delta)) (* (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta)))))) (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta))))))))))
2.1s
(cbrt (* (+ (* (cos delta) (cos delta)) (+ (* (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta)))))) (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta))))))) (* (cos delta) (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta))))))))) (+ (cos delta) (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta)))))))))
2.1s
(+ (log x) (- (log 2) (/ 3/32 (* (* x x) (* x x)))))
2.0s
(cbrt (* (* (- (cos delta) (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta))))))) (- (* (cos delta) (cos delta)) (* (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta)))))) (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta))))))))) (- (* (cos delta) (cos delta)) (* (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta)))))) (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta))))))))))
789.0ms
(cbrt (/ (sqrt 1/2) a))

rewrite21.3s (1.7%)

Algorithm
144×rewrite-expression-head
Calls

461 calls:

954.0ms
(cbrt (* (* (sin (/ (- phi1 phi2) 2)) (* (* (cbrt (sin (/ (- phi1 phi2) 2))) (cbrt (sin (/ (- phi1 phi2) 2)))) (cbrt (sin (/ (- phi1 phi2) 2))))) (sin (/ (- phi1 phi2) 2))))
813.0ms
(sqrt (+ (exp (log (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))))) (* (- phi1 phi2) (- phi1 phi2))))
522.0ms
(cbrt (* (* (- (cos delta) (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta))))))) (- (* (cos delta) (cos delta)) (* (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta)))))) (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta))))))))) (- (* (cos delta) (cos delta)) (* (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta)))))) (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta))))))))))
331.0ms
(log (+ x (+ x (- (/ 1/2 x) (/ 1/8 (* (* x x) x))))))
316.0ms
(- (- (/ m (/ v m)) m) (/ (* (* m m) m) v))
Rules
5267×add-sqr-sqrt
5243×times-frac
5195×*-un-lft-identity
3456×add-exp-log
3191×add-cube-cbrt
1929×add-cbrt-cube
1817×pow1
1378×prod-exp
1105×div-exp
1052×frac-times
967×associate-*l/
910×flip--
909×flip3-- associate-*l*
884×difference-of-squares
701×pow-exp
688×sqrt-prod
687×add-log-exp
682×associate-*r*
609×associate-*r/
572×cbrt-unprod
519×cbrt-div
500×associate-/r*
461×distribute-lft-out-- insert-posit16
444×pow-prod-down associate-/l*
419×sqrt-div
395×sin-mult
390×cos-mult cbrt-undiv
359×distribute-lft-out
352×pow-to-exp
307×div-inv
299×frac-add
252×associate-/r/
244×log-prod
240×difference-of-sqr-1
234×pow-prod-up
211×flip-+
210×flip3-+
202×frac-sub
193×unswap-sqr
189×cbrt-prod
168×1-exp rec-exp
141×log-div
131×pow-sqr
128×*-commutative
127×pow-plus
118×sub-div
110×swap-sqr
108×frac-2neg clear-num
106×sub-neg
102×log-pow
94×tan-quot
91×diff-log
87×sqrt-pow1
75×pow2 associate-/l/
74×unpow-prod-down
73×pow1/2
66×exp-diff
51×pow1/3
45×distribute-rgt-in distribute-lft-in rem-log-exp
36×div-sub rem-sqrt-square
34×sum-log
24×+-commutative cos-diff
22×pow-flip
21×inv-pow
20×sqr-pow
19×associate--r+
17×associate--l+
14×pow3 cos-sum
12×sin-diff
11×associate-+l-
pow-unpow associate-+r+ acos-asin associate--r- exp-prod
associate-+l+ pow-div pow-pow
associate--l- sin-cos-mult distribute-rgt-neg-in
exp-sum cube-unmult rem-cbrt-cube
neg-sub0 neg-log un-div-inv distribute-rgt-out--
sin-sum distribute-frac-neg sqrt-unprod rem-exp-log acos-neg
rem-square-sqrt distribute-rgt-out
rem-cube-cbrt distribute-neg-frac
remove-posit16 cube-prod unpow3 log-rec associate-+r- tanh-def difference-cubes distribute-neg-in asin-acos sqr-cos cube-div tanh-undef cube-mult distribute-rgt1-in

regimes20.0s (1.6%)

Accuracy

Total 65.4b remaining (32%)

Threshold costs 5.3b (2.6%)

9.7b34.4%Equirectangular approximation to distance on a great circle
7.5b45%Cubic critical, narrow range
7.4b46%Quadratic roots, narrow range
6.3b11.8%Quadratic roots, medium range
6.2b12.4%Cubic critical, medium range

localize6.2s (0.5%)

bsearch1.1s (0.1%)

end1.0ms (0.0%)