Details

sample13.9m (63.4%)

Algorithm
78×intervals
Results
9.8m55446×body10240exit
1.6m43350×body1280valid
38.5s30048×body640valid
27.5s204846×body80valid
22.0s151476×body80nan
18.5s27977×body320valid
12.9s36419×body160valid
12.2s195582×pre80true
3.2s3031×body2560valid
1.2s7980×body160nan
873.0ms4130×pre10240exit
303.0ms213×body5120valid
3.0msbody640nan

simplify5.2m (23.7%)

prune1.4m (6.3%)

series42.2s (3.2%)

Calls

472 calls:

916.0ms
(- (* (cos delta) (cos delta)) (* (cbrt (* (* (* (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))))))) (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta)))))))) (cbrt (* (* (* (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))))))) (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta))))))))))
621.0ms
(- (cos delta) (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta)))))))
608.0ms
(sqrt (+ (* (* (- lambda1 lambda2) (log (exp (cos (/ (+ phi1 phi2) 2))))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))) (* (- phi1 phi2) (- phi1 phi2))))
585.0ms
(sqrt (+ (* (* (- lambda1 lambda2) (log (exp (cos (/ (+ phi1 phi2) 2))))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))) (* (- phi1 phi2) (- phi1 phi2))))
574.0ms
(sqrt (+ (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))) (* (- phi1 phi2) (- phi1 phi2))))

regimes18.2s (1.4%)

Accuracy

Total 63.6b remaining (31.4%)

Threshold costs 5.2b (2.6%)

8.8b33.1%Equirectangular approximation to distance on a great circle
7.4b46%Quadratic roots, narrow range
7.3b45.9%Cubic critical, narrow range
5.9b11.2%Cubic critical, medium range
5.9b11.3%Quadratic roots, medium range

rewrite16.7s (1.3%)

Algorithm
144×rewrite-expression-head
Calls

472 calls:

876.0ms
(- (+ (* c_n (log (- 1 (/ 1 (+ (exp (- s)) 1))))) (- (* (* (* 1/8 t) t) c_p) (* (* 1/2 t) c_p))) (* c_n (log (- 1 (/ 1 (+ (exp (- t)) 1))))))
764.0ms
(- (* (cos delta) (cos delta)) (* (cbrt (* (* (* (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))))))) (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta)))))))) (cbrt (* (* (* (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))))))) (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta))))))))))
655.0ms
(sqrt (+ (* (* (- lambda1 lambda2) (* (* (cbrt (log (exp (cos (/ (+ phi1 phi2) 2))))) (cbrt (log (exp (cos (/ (+ phi1 phi2) 2)))))) (cbrt (log (exp (cos (/ (+ phi1 phi2) 2))))))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))) (* (- phi1 phi2) (- phi1 phi2))))
215.0ms
(* (- (/ (/ 1 v) (/ 1 (* m (- 1 m)))) 1) m)
214.0ms
(* (- (/ m (/ v (- 1 m))) 1) (- 1 m))
Rules
4194×*-un-lft-identity
4089×add-sqr-sqrt
3688×times-frac
3143×add-exp-log
2610×add-cube-cbrt
1689×add-cbrt-cube
1167×prod-exp
1160×pow1
1080×div-exp
1010×associate-*l/
822×flip--
821×flip3--
757×add-log-exp
708×associate-*l*
702×frac-times
701×pow-exp
610×associate-*r*
571×difference-of-squares
546×sqrt-div
493×associate-*r/
477×sqrt-prod
472×insert-posit16
462×associate-/r*
461×frac-add
433×cbrt-unprod
405×cbrt-prod
398×associate-/l*
389×distribute-lft-out
369×cbrt-undiv
353×pow-to-exp
344×div-inv
297×distribute-lft-out--
294×log-prod
278×flip-+
277×flip3-+
270×sin-mult
243×pow-prod-down
242×associate-/r/
237×cbrt-div
171×unswap-sqr
166×1-exp rec-exp
137×swap-sqr
126×frac-sub
118×*-commutative
107×frac-2neg clear-num
100×sub-neg
88×unpow-prod-down
83×associate-/l/
81×difference-of-sqr-1
79×sum-log diff-log
76×exp-prod
75×distribute-rgt-in pow-prod-up distribute-lft-in
70×pow1/3 log-pow
66×log-div
65×cos-mult
55×sqrt-pow1 tan-quot
49×pow-sqr
48×pow-plus div-sub
46×pow1/2
44×+-commutative
37×associate--r+
36×rem-log-exp
32×distribute-rgt-out
30×associate--l+ pow2
25×distribute-neg-frac rem-sqrt-square
22×sqr-pow
20×difference-of-sqr--1
19×cos-diff
18×pow-flip
17×inv-pow associate-+l- sin-diff
16×distribute-rgt-neg-in cos-sum
15×acos-asin
14×associate-+r+
12×exp-sum pow3
11×associate--l-
pow-unpow distribute-lft-neg-in distribute-rgt1-in
associate-+l+ rem-exp-log rem-cbrt-cube
pow-pow
neg-sub0 exp-diff sin-cos-mult distribute-rgt-neg-out distribute-frac-neg neg-log acos-neg
distribute-rgt-out--
sin-sum unsub-neg cube-unmult asin-acos associate--r-
distribute-lft-neg-out associate-+r- log-rec neg-mul-1
sqrt-unprod
tanh-undef tanh-def difference-cubes un-div-inv rem-square-sqrt sqr-cos

localize6.0s (0.5%)

bsearch4.6s (0.4%)

end1.0ms (0.0%)