Details

simplify37.9m

Calls

16628 calls:

Slowest
5.8s
(/ (* (* (* (* 3 c) (* 3 c)) (* 3 c)) (* (* a a) a)) (* (* (* (* 3 3) 3) (* (* a a) a)) (* (* (- (- b) (sqrt (- (* b b) (* (* 3 a) c)))) (- (- b) (sqrt (- (* b b) (* (* 3 a) c))))) (- (- b) (sqrt (- (* b b) (* (* 3 a) c)))))))
4.7s
(/ (* (* (* (* 3 3) 3) (* (* c c) c)) (* (* a a) a)) (* (* (* (* 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)))))))
3.7s
(/ (* (* (* 3 3) 3) (* (* (* c a) (* c a)) (* c a))) (* (* (* (* 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)))))))
3.6s
(/ (* (* (* (* 3 c) a) (* (* 3 c) a)) (* (* 3 c) a)) (* (* (* (* 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)))))))
3.5s
(/ (* (* (* c c) c) (* (* (* 3 3) 3) (* (* a a) a))) (* (* (* 3 a) (* 3 a)) (* 3 a)))

sample12.5m

Algorithm
71×intervals
Results
9.4m80883×body10240exit
53.5s31082×body1280valid
27.1s193693×body80valid
22.7s23433×body640valid
21.3s151309×body80nan
15.4s24455×body320valid
13.2s34616×body160valid
9.2s152737×pre80true
3.6s2940×body2560valid
1.7s4083×pre10240exit
1.4s7948×body160nan
339.0ms218×body5120valid

prune3.4m

series1.3m

Calls

454 calls:

Slowest
21.4s
(* (hypot (* (- lambda1 lambda2) (- (* (cos (* phi1 1/2)) (cos (* phi2 1/2))) (* (sin (* phi1 1/2)) (sin (* phi2 1/2))))) (- phi1 phi2)) R)
1.6s
(/ (* (- lambda1 lambda2) (- (pow (* (cos (* phi1 1/2)) (cos (* phi2 1/2))) 3) (pow (* (sin (* phi1 1/2)) (sin (* phi2 1/2))) 3))) (+ (* (* (cos (* phi1 1/2)) (cos (* phi2 1/2))) (* (cos (* phi1 1/2)) (cos (* phi2 1/2)))) (+ (* (* (sin (* phi1 1/2)) (sin (* phi2 1/2))) (* (sin (* phi1 1/2)) (sin (* phi2 1/2)))) (* (* (cos (* phi1 1/2)) (cos (* phi2 1/2))) (* (sin (* phi1 1/2)) (sin (* phi2 1/2)))))))
760.0ms
(* (- lambda1 lambda2) (- (* (cos (* phi1 1/2)) (cos (* phi2 1/2))) (* (sin (* phi1 1/2)) (sin (* phi2 1/2)))))
670.0ms
(* (hypot (* (- lambda1 lambda2) (cos (/ (+ phi2 phi1) 2))) (- phi1 phi2)) R)
661.0ms
(/ (/ (fma (sqrt (sqrt (fma c (* -4 a) (* b b)))) (sqrt (sqrt (fma c (* -4 a) (* b b)))) (- b)) 2) a)

regimes13.5s

Accuracy

Total 32.6b remaining (17.9%)

6.6b24.3%Cubic critical, narrow range
5.2b81.1%Cubic critical
5.0b51.3%Quotient of products
3.4b0%Quadratic roots, medium range
3.3b0%Quadratic roots, wide range

rewrite12.0s

Algorithm
134×rewrite-expression-head
Calls

454 calls:

Slowest
846.0ms
(* (+ (sqrt (/ 2 (+ (exp (* -2 x)) 1))) 1) (- (sqrt (/ 2 (+ (exp (* -2 x)) 1))) 1))
729.0ms
(/ (* (- lambda1 lambda2) (- (pow (* (cos (* phi1 1/2)) (cos (* phi2 1/2))) 3) (pow (* (sin (* phi1 1/2)) (sin (* phi2 1/2))) 3))) (+ (* (* (cos (* phi1 1/2)) (cos (* phi2 1/2))) (* (cos (* phi1 1/2)) (cos (* phi2 1/2)))) (+ (* (* (sin (* phi1 1/2)) (sin (* phi2 1/2))) (* (sin (* phi1 1/2)) (sin (* phi2 1/2)))) (* (* (cos (* phi1 1/2)) (cos (* phi2 1/2))) (* (sin (* phi1 1/2)) (sin (* phi2 1/2)))))))
346.0ms
(/ (- (* (/ x (+ x 1)) (/ x (+ x 1))) (* (/ (+ x 1) (- x 1)) (/ (+ x 1) (- x 1)))) (+ (/ x (+ x 1)) (/ (+ x 1) (- x 1))))
304.0ms
(* (- lambda1 lambda2) (- (* (cos (* phi1 1/2)) (cos (* phi2 1/2))) (* (sin (* phi1 1/2)) (sin (* phi2 1/2)))))
178.0ms
(* (* (cos (* phi1 1/2)) (cos (* phi2 1/2))) (* (sin (* phi1 1/2)) (sin (* phi2 1/2))))
Rules
7861×*-un-lft-identity
6700×add-sqr-sqrt
5713×times-frac
4903×add-cube-cbrt
3079×add-exp-log
2964×prod-diff
1717×add-cbrt-cube
1284×sqrt-prod
1269×pow1
1239×prod-exp
1170×frac-times
1006×div-exp
844×distribute-lft-out
827×associate-*r/
806×associate-*l/
797×difference-of-squares
696×pow-exp
660×associate-*r*
656×add-log-exp
511×cbrt-unprod
508×distribute-rgt-in distribute-lft-in
502×associate-*l*
481×associate-/r/
478×frac-sub
459×expm1-log1p-u
457×distribute-lft-out--
456×log1p-expm1-u
454×insert-posit16
435×associate-/l*
400×div-inv
388×associate-/r*
356×cbrt-undiv
346×pow-to-exp
330×distribute-rgt-neg-in
318×cbrt-prod
288×fma-neg
286×distribute-lft-neg-in
270×pow-prod-down
227×flip-+
226×flip3-+
222×fma-def
205×flip-- swap-sqr
204×flip3--
196×difference-of-sqr-1
147×1-exp
137×unswap-sqr
135×rec-exp
114×log-prod
110×pow-prod-up
104×*-commutative
95×frac-2neg clear-num sub-neg
91×associate--l+
86×neg-mul-1
84×cos-mult associate-/l/
76×pow-sqr
74×sin-mult
72×fma-udef
71×exp-prod
68×frac-add
67×log-pow
60×sqrt-pow1
59×pow-plus
58×diff-log
54×pow1/2
53×exp-sum
47×sum-log
45×cbrt-div
44×pow2
40×unpow-prod-down
36×pow1/3
34×sqrt-div
33×sin-sum +-commutative rem-sqrt-square
31×div-sub
28×cos-sum tan-quot
27×log-div
17×neg-sub0
16×rem-log-exp
15×neg-log log1p-udef
14×expm1-def
13×pow-unpow associate-+l- cube-div
12×pow-flip
11×inv-pow
10×associate--r+
pow-pow
log1p-expm1 sub-div rem-exp-log acos-asin
associate--r-
distribute-frac-neg
distribute-rgt-out--
expm1-udef sqr-pow acos-neg distribute-rgt-out
unpow-prod-up expm1-log1p cube-unmult distribute-rgt-neg-out associate--l- un-div-inv hypot-udef
remove-posit16 exp-diff rem-cube-cbrt sqrt-undiv sqrt-unprod log1p-def rem-square-sqrt cos-diff
associate-+l+ cube-prod distribute-rgt1-in difference-cubes unsub-neg pow3 unpow3 tanh-def tanh-undef asin-acos distribute-neg-frac cube-mult sin-diff rem-cbrt-cube e-exp-1 distribute-lft-neg-out

localize5.2s

bsearch1.5s

end1.0ms