Details

sample12.0m (54.5%)

Algorithm
78×intervals
Results
8.7m53096×body10240exit
1.3m43533×body1280valid
29.8s30666×body640valid
19.9s205226×body80valid
13.5s152994×body80nan
12.6s27463×body320valid
9.9s193340×pre80true
8.1s36345×body160valid
1.7s2995×body2560valid
891.0ms7986×body160nan
474.0ms4034×pre10240exit
241.0ms214×body5120valid
204.0ms8545×pre80false
2.0msbody640nan

simplify6.3m (28.4%)

series1.3m (6.1%)

Calls

500 calls:

8.2s
(/ (/ (* (* 3.0 a) c) (cbrt (- (- b) (sqrt (- (* b b) (* (* 3.0 a) c)))))) a)
2.7s
(/ (- (pow (cos delta) 3) (pow (* (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta))))) (sin phi1)) 3)) (+ (* (cos delta) (cos delta)) (* (* (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)) (cos delta)))))
1.8s
(+ (pow (cos phi1) 3) (pow (* (+ (* (sin lambda1) (sin lambda2)) (* (cos lambda2) (cos lambda1))) (cos phi2)) 3))
1.6s
(/ (+ (* (cos delta) (cos delta)) (+ (* (* (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))) (* (cos delta) (* (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta))))) (sin phi1))))) (/ (+ (pow (cos delta) 2) (* (+ (* (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta))))) (sin phi1)) (cos delta)) (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta)))))))) (- (cos delta) (* (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta))))) (sin phi1)))))
1.3s
(/ (+ (pow (cos delta) 2) (* (+ (* (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta))))) (sin phi1)) (cos delta)) (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta)))))))) (- (cos delta) (* (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta))))) (sin phi1))))

prune1.3m (5.7%)

rewrite32.5s (2.5%)

Algorithm
150×rewrite-expression-head
Calls

500 calls:

2.7s
(* (- (/ (sqrt m) (/ (/ v (- 1.0 m)) (sqrt m))) 1.0) m)
1.0s
(* (/ (pow x 2) (log 2.0)) (- (+ (/ 0.125 (log 2.0)) (/ 1/2 (pow 2.0 2))) 0.25))
971.0ms
(/ (* (* (cos phi2) (- (* (* (cos lambda1) (cos lambda2)) (* (cos lambda1) (cos lambda2))) (* (* (sin lambda2) (sin lambda2)) (* (sin lambda1) (sin lambda1))))) (cos phi1)) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin (- lambda2)))))
801.0ms
(* (/ 2.0 (+ (pow (exp x) 3) (exp (* x -3)))) (+ (* (exp x) (exp x)) (- (* (exp (- x)) (exp (- x))) (* (exp x) (exp (- x))))))
647.0ms
(sqrt (+ (* (* (- lambda1 lambda2) (- lambda1 lambda2)) (* (* (cos (/ (+ phi1 phi2) 2.0)) (* (cbrt (cos (/ (+ phi1 phi2) 2.0))) (cbrt (cos (/ (+ phi1 phi2) 2.0))))) (cbrt (cos (/ (+ phi1 phi2) 2.0))))) (* (- phi1 phi2) (- phi1 phi2))))
Rules
9689×times-frac
7748×add-sqr-sqrt
7612×*-un-lft-identity
5251×add-cube-cbrt
3022×add-exp-log
2864×sqrt-prod
1914×add-cbrt-cube
1213×pow1
1083×flip--
1082×flip3--
1001×prod-exp
959×sqrt-div
939×difference-of-squares
935×div-exp
906×associate-*r*
875×associate-/r*
871×frac-times
849×associate-*l/
769×distribute-lft-out--
749×associate-/l* add-log-exp
734×cbrt-prod
598×associate-*l*
545×unpow-prod-down
492×associate-*r/
464×cbrt-undiv
462×cbrt-unprod
445×div-inv
428×frac-add
401×distribute-lft-out
374×associate-/r/
369×pow-exp
299×cube-prod
292×pow-prod-down
269×pow-to-exp
251×cbrt-div
237×flip-+ sqr-pow
236×flip3-+
230×unswap-sqr
181×log-prod
175×log-pow
166×swap-sqr
156×distribute-rgt-neg-in
139×sqrt-pow1
135×associate-/l/
131×clear-num frac-2neg
128×exp-prod
127×cos-mult
117×*-commutative
107×sub-neg
95×pow1/2
83×diff-log
62×frac-sub
61×exp-neg
60×sin-mult
56×sum-log
55×neg-sub0
54×pow-prod-up
53×pow1/3
47×log-div
46×div-sub
43×exp-diff
42×+-commutative
39×distribute-rgt-in distribute-lft-in 1-exp
38×pow-sqr rec-exp
36×pow-unpow rem-sqrt-square
35×unpow3 cube-mult
30×tan-quot
29×associate-+r+
26×sub-div
25×exp-sum
24×cube-div un-div-inv
23×pow-plus rem-log-exp
20×sin-cos-mult
19×unpow2 pow2 pow-pow
18×associate-+l+
17×cos-diff
16×distribute-rgt-out
14×rem-cube-cbrt
13×associate-+r- associate--l+
12×associate-+l- cos-sum sin-diff
11×sqrt-unprod distribute-neg-in neg-log
10×acos-asin
distribute-lft-neg-in associate--r+
pow-flip rem-cbrt-cube
acos-neg rem-exp-log associate--l- inv-pow distribute-frac-neg associate--r-
difference-cubes sin-sum distribute-rgt-out-- sqrt-undiv
rem-square-sqrt neg-mul-1
sin-neg distribute-lft1-in pow3 asin-acos sqr-cos distribute-rgt-neg-out
rgt-mult-inverse sum-cubes sqr-sin tanh-undef tanh-def

bsearch19.9s (1.5%)

regimes12.8s (1.0%)

Accuracy

Total 39.0b remaining (25%)

Threshold costs 6.5b (4.1%)

7.2b47.3%Quadratic roots, narrow range
6.7b3.6%Quadratic roots, medium range
6.2b10.9%Cubic critical, medium range
4.1b70.6%Equirectangular approximation to distance on a great circle
3.3b87.8%Cubic critical

localize4.5s (0.3%)

end1.0ms (0.0%)