Details

simplify12.5m (49.4%)

prune5.6m (22.0%)

sample5.3m (21.0%)

Algorithm
77×intervals
Results
1.7m43686×body1280valid
1.1m16967×body10240exit
38.5s30936×body640valid
29.0s202459×body80valid
21.1s152242×body80nan
18.0s27563×body320valid
13.5s35614×body160valid
10.3s153452×pre80true
3.1s3117×body2560valid
1.8s8018×body160nan
949.0ms4122×pre10240exit
243.0ms228×body5120valid

series49.1s (3.2%)

Calls

438 calls:

1.4s
(- (pow (cos delta) 3) (pow (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta)))))) 3))
1.4s
(- (pow (cos delta) 3) (pow (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta)))))) 3))
1.2s
(- (* (* (cos delta) (cos delta)) (cos delta)) (+ (+ (* (* (cos theta) (* (cos theta) (cos theta))) (* (* (sin phi1) (* (sin phi1) (sin phi1))) (* (* (* (sin delta) (* (sin delta) (sin delta))) (cos phi1)) (* (cos phi1) (cos phi1))))) (+ (* (* (cos phi1) (* (cos theta) (* (sin delta) (* (cos delta) (cos delta))))) (pow (sin phi1) 5)) (* (* (* (sin phi1) (* (sin phi1) (sin phi1))) (* (sin phi1) (* (sin phi1) (sin phi1)))) (* (* (cos delta) (cos delta)) (cos delta))))) (+ (* (* (* 2 (sin delta)) (cos phi1)) (* (cos theta) (* (pow (sin phi1) 5) (* (cos delta) (cos delta))))) (* (* 3 (* (* (sin delta) (* (sin phi1) (sin phi1))) (* (sin delta) (* (sin phi1) (sin phi1))))) (* (* (* (cos phi1) (cos theta)) (* (cos phi1) (cos theta))) (cos delta))))))
676.0ms
(sqrt (+ (* (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))) (* (- phi1 phi2) (- phi1 phi2))))
595.0ms
(sqrt (+ (* (* (- lambda1 lambda2) (posit16->real (real->posit16 (cos (/ (+ phi1 phi2) 2))))) (* (- lambda1 lambda2) (cos (/ (+ phi1 phi2) 2)))) (* (- phi1 phi2) (- phi1 phi2))))

rewrite39.8s (2.6%)

Algorithm
141×rewrite-expression-head
Calls

438 calls:

23.6s
(- (* (* (cos delta) (cos delta)) (cos delta)) (+ (+ (* (* (cos theta) (* (cos theta) (cos theta))) (* (* (sin phi1) (* (sin phi1) (sin phi1))) (* (* (* (sin delta) (* (sin delta) (sin delta))) (cos phi1)) (* (cos phi1) (cos phi1))))) (+ (* (* (cos phi1) (* (cos theta) (* (sin delta) (* (cos delta) (cos delta))))) (pow (sin phi1) 5)) (* (* (* (sin phi1) (* (sin phi1) (sin phi1))) (* (sin phi1) (* (sin phi1) (sin phi1)))) (* (* (cos delta) (cos delta)) (cos delta))))) (+ (* (* (* 2 (sin delta)) (cos phi1)) (* (cos theta) (* (pow (sin phi1) 5) (* (cos delta) (cos delta))))) (* (* 3 (* (* (sin delta) (* (sin phi1) (sin phi1))) (* (sin delta) (* (sin phi1) (sin phi1))))) (* (* (* (cos phi1) (cos theta)) (* (cos phi1) (cos theta))) (cos delta))))))
915.0ms
(cbrt (* (* (* (* (sin lambda1) (sin lambda2)) (* (sin lambda1) (sin lambda2))) (* (sin lambda1) (sin lambda2))) (* (* (* (sin phi1) (cos phi2)) (* (sin phi1) (cos phi2))) (* (sin phi1) (cos phi2)))))
445.0ms
(cos (+ (/ (acos (/ (- g) h)) 3) (/ PI 3/2)))
416.0ms
(* (- (* (/ 1 v) (- m (* m m))) 1) m)
369.0ms
(* (- (/ (* m (- (pow 1 3) (pow m 3))) (+ (* v (+ m (* m m))) v)) 1) m)
Rules
26300×associate-*r/
12698×associate-*l/
11847×cos-mult
8797×frac-add
6805×sin-mult
6782×frac-times
3368×add-sqr-sqrt
3326×*-un-lft-identity
2632×times-frac
2435×add-exp-log
2358×frac-sub
2163×add-cube-cbrt
2131×add-cbrt-cube
1489×pow1
855×prod-exp
817×cbrt-unprod
680×flip--
679×flip3--
671×cbrt-prod
652×add-log-exp
627×associate-*r*
586×div-exp
552×associate-*l*
548×cbrt-undiv
538×flip-+
537×flip3-+
482×difference-of-squares
438×insert-posit16
427×pow-prod-down
397×sqrt-prod
394×sqrt-div
352×associate-/l* associate-/r*
262×distribute-lft-out
243×distribute-lft-out--
228×div-inv
171×unswap-sqr
166×cbrt-div
165×swap-sqr
139×associate-/r/
134×log-prod
129×pow-prod-up
122×sin-cos-mult
121×*-commutative
95×sub-neg
87×frac-2neg clear-num
83×pow-sqr
82×pow1/3
77×pow-plus
74×diff-log
56×unpow-prod-down
55×exp-prod
54×associate-/l/
48×difference-of-sqr-1
44×sum-log
42×log-div
39×sqrt-pow1 pow2 div-sub
38×sqr-pow
37×pow1/2 log-pow
33×rem-sqrt-square
30×cube-prod distribute-rgt-in distribute-lft-in
29×tan-quot
27×associate--l+
25×+-commutative
22×cos-diff
20×1-exp
18×pow-unpow rec-exp
16×cos-sum rem-log-exp
14×associate--l- acos-asin sin-diff
13×pow-exp
11×pow-to-exp
associate-+r+
pow-pow
pow3 associate--r+ distribute-rgt-out
rem-cube-cbrt distribute-rgt-out-- associate-+l-
pow-flip inv-pow cube-mult
remove-posit16 sin-sum cube-unmult unpow3 un-div-inv
distribute-frac-neg exp-sum difference-cubes rem-exp-log acos-neg rem-cbrt-cube associate--r- distribute-rgt1-in
associate-+l+ exp-diff asin-acos sub-div cube-div
sqrt-unprod tanh-undef tanh-def

regimes19.4s (1.3%)

Accuracy

Total 61.4b remaining (31.3%)

Threshold costs 4.8b (2.5%)

7.2b49.1%Quadratic roots, narrow range
7.2b48.9%Cubic critical, narrow range
6.9b0%Quadratic roots, medium range
6.9b0%Cubic critical, medium range
5.3b61.2%Equirectangular approximation to distance on a great circle

localize6.3s (0.4%)

bsearch1.1s (0.1%)

end1.0ms (0.0%)