Details

sample13.6m (44.0%)

Algorithm
78×intervals
Results
9.2m53612×body10240exit
1.8m44204×body1280valid
38.7s30163×body640valid
27.5s204916×body80valid
20.6s152695×body80nan
17.6s27443×body320valid
13.1s36311×body160valid
11.8s192757×pre80true
3.3s3085×body2560valid
1.2s8166×body160nan
931.0ms4087×pre10240exit
369.0ms232×body5120valid
2.0msbody320nan

simplify11.5m (37.3%)

prune3.7m (12.1%)

series47.7s (2.6%)

Calls

482 calls:

1.1s
(cbrt (* (* (- (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)))))))) (log (/ (exp (cos delta)) (exp (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta)))))))))))
850.0ms
(+ (log (/ 1 (sqrt (exp (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta)))))))))) (log (/ (exp (cos delta)) (sqrt (exp (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta)))))))))))
766.0ms
(log (/ (exp (cos delta)) (exp (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta)))))))))
757.0ms
(cbrt (- (log (+ 1 (exp x))) (* x y)))
625.0ms
(sqrt (+ (* (* (cbrt (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))))) (cbrt (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))))) (cbrt (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))))) (* (- phi1 phi2) (- phi1 phi2))))

rewrite23.5s (1.3%)

Algorithm
145×rewrite-expression-head
Calls

482 calls:

3.6s
(* (/ e (- (* (* (* e (cos v)) (* (* e (cos v)) (* e (cos v)))) (* (* e (cos v)) (* (* e (cos v)) (* e (cos v))))) (* 1 1))) (* (- (* (* e (cos v)) (* (* e (cos v)) (* e (cos v)))) 1) (sin v)))
857.0ms
(sqrt (+ (* (* (cbrt (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))))) (cbrt (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))))) (cbrt (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))))) (* (- phi1 phi2) (- phi1 phi2))))
805.0ms
(- (+ (* (* (* x x) (* x x)) 5/24) 1) (* (* x x) 1/2))
514.0ms
(sqrt (+ (exp (log (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))))) (* (- phi1 phi2) (- phi1 phi2))))
442.0ms
(/ (- (* (/ 2 (+ 1 (exp (* -2 x)))) (* (/ 2 (+ 1 (exp (* -2 x)))) (/ 2 (+ 1 (exp (* -2 x)))))) 1) (+ (* (/ 2 (+ 1 (exp (* -2 x)))) (/ 2 (+ 1 (exp (* -2 x))))) (+ (/ 2 (+ 1 (exp (* -2 x)))) 1)))
Rules
30511×associate-*l/
20864×frac-times
16599×flip--
16598×flip3--
15756×cbrt-div
6292×associate-*r/
6050×sqrt-div
5987×frac-add
5768×times-frac
5538×*-un-lft-identity
5281×add-sqr-sqrt
3611×add-cube-cbrt
3410×add-exp-log
2353×pow1
1995×add-cbrt-cube
1359×prod-exp
1048×div-exp
869×sqrt-prod
828×cbrt-prod
731×add-log-exp
704×difference-of-squares
697×pow-exp
671×pow-prod-down
644×associate-/r*
609×cbrt-unprod
587×associate-*l*
581×associate-*r*
482×insert-posit16
478×associate-/l*
453×distribute-lft-out
418×log-prod
388×cbrt-undiv
360×distribute-lft-out--
349×pow-to-exp
343×pow-prod-up
337×div-inv
285×flip-+
284×flip3-+
273×associate-/r/
217×swap-sqr
201×log-div
175×pow-sqr
159×unswap-sqr
153×1-exp rec-exp
152×pow-plus
146×distribute-rgt-neg-in distribute-lft-neg-in
142×log-pow
124×frac-2neg clear-num *-commutative
106×sub-neg
97×tan-quot
96×associate-/l/
93×diff-log
92×pow2
75×exp-diff difference-of-sqr-1
66×frac-sub
61×rem-log-exp
59×associate-+r+
56×unpow-prod-down
48×associate-+l+
44×sum-log sqrt-pow1
42×pow1/2
39×pow-flip distribute-rgt-in distribute-lft-in
38×pow1/3 div-sub
37×neg-mul-1
35×exp-prod
30×inv-pow associate--r-
29×cube-unmult sin-mult rem-sqrt-square
27×+-commutative
18×sin-diff
17×cos-diff
16×associate--l+ cos-sum
14×associate--r+
12×sqr-pow
11×sin-cos-mult pow3
10×difference-cubes acos-asin distribute-rgt-out
pow-div
associate-+l-
pow-unpow distribute-rgt-neg-out pow-pow
exp-sum log-rec distribute-rgt-out--
remove-posit16 associate--l- cos-mult sin-sum associate-+r- rem-exp-log
sqrt-undiv distribute-frac-neg un-div-inv acos-neg distribute-rgt1-in
unsub-neg sqrt-unprod rem-cbrt-cube
tanh-undef tanh-def exp-to-pow asin-acos sub-div rem-square-sqrt

regimes22.1s (1.2%)

Accuracy

Total 61.2b remaining (30.7%)

Threshold costs 6.0b (3%)

7.2b47%Quadratic roots, narrow range
7.2b47%Cubic critical, narrow range
6.2b9%Quadratic roots, medium range
6.2b9.4%Cubic critical, medium range
5.4b60.4%Equirectangular approximation to distance on a great circle

bsearch21.0s (1.1%)

localize6.3s (0.3%)

end1.0ms (0.0%)