Details

sample10.7m

Algorithm
72×intervals
Results
7.7m80794×body10240exit
51.2s33115×body1280valid
26.0s197839×body80valid
21.7s151977×body80nan
21.6s24419×body640valid
14.3s25212×body320valid
13.5s34639×body160valid
9.8s153152×pre80true
3.0s2981×body2560valid
1.8s8061×body160nan
951.0ms4082×pre10240exit
659.0ms205×body5120valid

simplify9.7m

Calls

5305 calls:

Slowest
4.3s
(/ (* (* (* 3 (* c a)) (* 3 (* c a))) (* 3 (* c a))) (* (* (* (* 3 a) (- (- b) (sqrt (- (* b b) (* (* 3 a) c))))) (* (* 3 a) (- (- b) (sqrt (- (* b b) (* (* 3 a) c)))))) (* (* 3 a) (- (- b) (sqrt (- (* b b) (* (* 3 a) c)))))))
3.5s
(/ (* (* (* 4 (* c a)) (* 4 (* c a))) (* 4 (* c a))) (* (* (* (* 2 a) (- (- b) (sqrt (- (* b b) (* (* 4 a) c))))) (* (* 2 a) (- (- b) (sqrt (- (* b b) (* (* 4 a) c)))))) (* (* 2 a) (- (- b) (sqrt (- (* b b) (* (* 4 a) c)))))))
2.1s
(/ (/ (* (* (* 4 (* c a)) (* 4 (* c a))) (* 4 (* c a))) (* (* (* 2 a) (* 2 a)) (* 2 a))) (* (* (- (- b) (sqrt (fma c (* -4 a) (* b b)))) (- (- b) (sqrt (fma c (* -4 a) (* b b))))) (- (- b) (sqrt (fma c (* -4 a) (* b b))))))
1.6s
(/ (* (* (* (* 3 a) (* 3 a)) (* 3 a)) (* (* (- (- b) (sqrt (- (* b b) (* (* 3 a) c)))) (- (- b) (sqrt (- (* b b) (* (* 3 a) c))))) (- (- b) (sqrt (- (* b b) (* (* 3 a) c)))))) (* (* (* c a) (* c a)) (* c a)))
1.6s
(/ (* (* (fma -9/2 (* (* b c) a) (* 27/8 (/ (* (* a c) (* a c)) b))) (fma -9/2 (* (* b c) a) (* 27/8 (/ (* (* a c) (* a c)) b)))) (fma -9/2 (* (* b c) a) (* 27/8 (/ (* (* a c) (* a c)) b)))) (* (* (* (* 3 a) (+ (* (sqrt (fma -3 (* c a) (* b b))) (sqrt (fma -3 (* c a) (* b b)))) (+ (* b b) (* (sqrt (fma -3 (* c a) (* b b))) b)))) (* (* 3 a) (+ (* (sqrt (fma -3 (* c a) (* b b))) (sqrt (fma -3 (* c a) (* b b)))) (+ (* b b) (* (sqrt (fma -3 (* c a) (* b b))) b))))) (* (* 3 a) (+ (* (sqrt (fma -3 (* c a) (* b b))) (sqrt (fma -3 (* c a) (* b b)))) (+ (* b b) (* (sqrt (fma -3 (* c a) (* b b))) b))))))

prune1.9m

series34.3s

Calls

432 calls:

Slowest
686.0ms
(fma (sqrt (sqrt (fma c (* -4 a) (* b b)))) (sqrt (sqrt (fma c (* -4 a) (* b b)))) (- b))
513.0ms
(cbrt (* (* (/ (/ (fma (sqrt (sqrt (fma c (* -4 a) (* b b)))) (sqrt (sqrt (fma c (* -4 a) (* b b)))) (- b)) 2) a) (/ (/ (fma (sqrt (sqrt (fma c (* -4 a) (* b b)))) (sqrt (sqrt (fma c (* -4 a) (* b b)))) (- b)) 2) a)) (/ (/ (fma (sqrt (sqrt (fma c (* -4 a) (* b b)))) (sqrt (sqrt (fma c (* -4 a) (* b b)))) (- b)) 2) a)))
466.0ms
(* R (hypot (* (- lambda1 lambda2) (cos (/ (+ phi2 phi1) 2))) (- phi1 phi2)))
461.0ms
(/ (* (pow (/ 1 (+ 1 (exp (- s)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (- s))))) c_n)) (* (pow (/ 1 (+ 1 (exp (- t)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (- t))))) c_n)))
455.0ms
(* (hypot (* (- lambda1 lambda2) (cos (/ (+ phi2 phi1) 2))) (- phi1 phi2)) R)

regimes12.0s

Accuracy

Total 43.1b remaining (20.7%)

7.5b17.6%Cubic critical, narrow range
7.0b38.8%Quotient of products
6.9b0%Cubic critical, medium range
4.8b83%Cubic critical
4.0b80.7%Quadratic roots, full range

localize3.0s

rewrite2.9s

Algorithm
127×rewrite-expression-head
Calls

432 calls:

Slowest
70.0ms
(cbrt (* (* (* (/ 1 (fma x x -1)) -2) (* (/ 1 (fma x x -1)) -2)) (* (/ 1 (fma x x -1)) -2)))
62.0ms
(/ (/ (- (sqrt (fma c (* -4 a) (* b b))) b) 2) a)
48.0ms
(/ (+ (- b) (sqrt (- (* b b) (* (* 3 a) c)))) (* 3 a))
48.0ms
(/ (- (* (sqrt (fma b b (* (* a c) -3))) (fma b b (* (* a c) -3))) (* b (* b b))) (* (* 3 a) (+ (* (sqrt (fma -3 (* c a) (* b b))) (sqrt (fma -3 (* c a) (* b b)))) (+ (* b b) (* (sqrt (fma -3 (* c a) (* b b))) b)))))
42.0ms
(/ (* (* 3 a) (- (- b) (sqrt (- (* b b) (* (* 3 a) c))))) (* c a))
Rules
1453×*-un-lft-identity
1422×add-sqr-sqrt
1284×add-cube-cbrt
1175×add-exp-log
728×pow1
638×add-cbrt-cube
585×prod-diff
544×add-log-exp
437×expm1-log1p-u
435×log1p-expm1-u
432×insert-posit16
386×prod-exp
380×times-frac
353×sqrt-prod
267×associate-*r*
265×pow-exp
254×div-inv
244×associate-/r*
217×div-exp
196×associate-/r/
185×pow-to-exp
168×associate-*l*
159×associate-/l*
155×flip--
154×flip3--
148×fma-neg
145×distribute-rgt-in distribute-lft-in
136×log-prod
113×rec-exp
109×flip-+
108×flip3-+
101×associate-*r/
100×frac-2neg clear-num
94×neg-mul-1
92×associate-*l/
91×*-commutative
86×fma-def
82×pow-prod-down
79×difference-of-squares
78×log-pow
75×cbrt-prod
73×cbrt-unprod
70×sub-neg
64×tan-quot
63×fma-udef
61×distribute-lft-out
60×frac-times
58×associate-/l/
57×log-div
48×sqrt-div
45×cbrt-undiv pow-prod-up
43×diff-log
42×pow1/2
37×pow1/3 distribute-lft-out--
35×cbrt-div
34×pow-flip
33×sum-log
32×exp-prod
31×pow-plus rem-sqrt-square
29×log1p-udef
28×pow2 frac-add
26×+-commutative
25×inv-pow div-sub rem-log-exp
24×associate-+r+
15×neg-sub0 unpow-prod-down
12×distribute-rgt-neg-in associate-+l-
11×associate--l+
10×associate-+l+
associate-+r- acos-asin
log1p-expm1 distribute-rgt-out
associate--l- pow-pow sin-mult
sin-sum log1p-def cube-unmult distribute-rgt-neg-out difference-of-sqr-1 cos-sum
exp-diff frac-sub
distribute-rgt1-in pow3 rem-cbrt-cube distribute-lft-neg-in
expm1-log1p expm1-udef distribute-frac-neg log-rec neg-log difference-cubes hypot-udef acos-neg distribute-neg-in un-div-inv unsub-neg
sqrt-unprod rem-square-sqrt cos-diff expm1-def
cos-mult exp-sum hypot-1-def tanh-undef associate--r+ tanh-def sqr-sin remove-double-div asin-acos rem-exp-log sqr-cos sin-diff

bsearch1.1s

end1.0ms