Details

simplify38.3m

Calls

17549 calls:

Slowest
2.7s
(/ (* (* (* (pow (/ 1 (+ 1 (exp (- s)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (- s))))) c_n)) (* (pow (/ 1 (+ 1 (exp (- s)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (- s))))) c_n))) (* (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)) (* (pow (/ 1 (+ 1 (exp (- t)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (- t))))) c_n))) (* (pow (/ 1 (+ 1 (exp (- t)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (- t))))) c_n))))
2.5s
(/ (* (* (* (pow (/ 1 (+ 1 (exp (- s)))) c_p) (pow (/ 1 (+ 1 (exp (- s)))) c_p)) (pow (/ 1 (+ 1 (exp (- s)))) c_p)) (* (* (pow (- 1 (/ 1 (+ 1 (exp (- s))))) c_n) (pow (- 1 (/ 1 (+ 1 (exp (- s))))) c_n)) (pow (- 1 (/ 1 (+ 1 (exp (- s))))) c_n))) (* (* (* (pow (/ 1 (+ 1 (exp (- t)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (- t))))) c_n)) (* (pow (/ 1 (+ 1 (exp (- t)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (- t))))) c_n))) (* (pow (/ 1 (+ 1 (exp (- t)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (- t))))) c_n))))
2.4s
(/ (* (* (* (pow (/ 1 (+ 1 (exp (- s)))) c_p) (pow (/ 1 (+ 1 (exp (- s)))) c_p)) (pow (/ 1 (+ 1 (exp (- s)))) c_p)) (* (* (pow (- 1 (/ 1 (+ 1 (exp (- s))))) c_n) (pow (- 1 (/ 1 (+ 1 (exp (- s))))) c_n)) (pow (- 1 (/ 1 (+ 1 (exp (- s))))) c_n))) (* (* (* (pow (/ 1 (+ 1 (exp (- t)))) c_p) (pow (/ 1 (+ 1 (exp (- t)))) c_p)) (pow (/ 1 (+ 1 (exp (- t)))) c_p)) (* (* (pow (- 1 (/ 1 (+ 1 (exp (- t))))) c_n) (pow (- 1 (/ 1 (+ 1 (exp (- t))))) c_n)) (pow (- 1 (/ 1 (+ 1 (exp (- t))))) c_n))))
2.1s
(/ (* (* (* (pow (/ 1 (+ 1 (exp (- s)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (- s))))) c_n)) (* (pow (/ 1 (+ 1 (exp (- s)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (- s))))) c_n))) (* (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 (exp (- t)))) c_p)) (pow (/ 1 (+ 1 (exp (- t)))) c_p)) (* (* (pow (- 1 (/ 1 (+ 1 (exp (- t))))) c_n) (pow (- 1 (/ 1 (+ 1 (exp (- t))))) c_n)) (pow (- 1 (/ 1 (+ 1 (exp (- t))))) c_n))))
2.1s
(/ (* (* (* -2 (* a c)) (* -2 (* a c))) (* -2 (* a c))) (* (* (* (+ (sqrt (fma b b (* (* a -4) c))) b) a) (* (+ (sqrt (fma b b (* (* a -4) c))) b) a)) (* (+ (sqrt (fma b b (* (* a -4) c))) b) a)))

sample12.7m

Algorithm
71×intervals
Results
9.6m81781×body10240exit
53.4s31644×body1280valid
25.7s193621×body80valid
23.7s152982×body80nan
22.8s23082×body640valid
17.2s24684×body320valid
12.3s34581×body160valid
9.9s153819×pre80true
3.4s3083×body2560valid
1.6s4110×pre10240exit
1.4s7766×body160nan
303.0ms252×body5120valid

prune3.4m

series57.3s

Calls

430 calls:

Slowest
724.0ms
(cbrt (* (* (/ (fma (sqrt (sqrt (fma -3 (* c a) (* b b)))) (sqrt (sqrt (fma -3 (* c a) (* b b)))) (- b)) (* 3 a)) (/ (fma (sqrt (sqrt (fma -3 (* c a) (* b b)))) (sqrt (sqrt (fma -3 (* c a) (* b b)))) (- b)) (* 3 a))) (/ (fma (sqrt (sqrt (fma -3 (* c a) (* b b)))) (sqrt (sqrt (fma -3 (* c a) (* b b)))) (- b)) (* 3 a))))
670.0ms
(* (hypot (* (- lambda1 lambda2) (cos (/ (+ phi2 phi1) 2))) (- phi1 phi2)) R)
646.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)))
643.0ms
(/ (/ (- (pow (pow (/ 2 (+ 1 (exp (* -2 x)))) 3) 3) (pow (pow 1 3) 3)) (+ (* (pow (/ 2 (+ 1 (exp (* -2 x)))) 3) (pow (/ 2 (+ 1 (exp (* -2 x)))) 3)) (+ (* (pow 1 3) (pow 1 3)) (* (pow (/ 2 (+ 1 (exp (* -2 x)))) 3) (pow 1 3))))) (+ (* (/ 2 (+ 1 (exp (* -2 x)))) (/ 2 (+ 1 (exp (* -2 x))))) (+ (* 1 1) (* (/ 2 (+ 1 (exp (* -2 x)))) 1))))
613.0ms
(/ (/ (fma (sqrt (sqrt (fma c (* -4 a) (* b b)))) (sqrt (sqrt (fma c (* -4 a) (* b b)))) (- b)) 2) a)

regimes14.7s

Accuracy

Total 29.9b remaining (9.3%)

6.6b24.4%Cubic critical, narrow range
5.1b52.6%Quotient of products
3.1b0%Cubic critical, medium range
3.1b0%Quadratic roots, medium range
2.6b0%Quadratic roots, wide range

rewrite11.1s

Algorithm
129×rewrite-expression-head
Calls

430 calls:

Slowest
862.0ms
(/ (/ (- (pow (pow (/ 2 (+ 1 (exp (* -2 x)))) 3) 3) (pow (pow 1 3) 3)) (+ (* (pow (/ 2 (+ 1 (exp (* -2 x)))) 3) (pow (/ 2 (+ 1 (exp (* -2 x)))) 3)) (+ (* (pow 1 3) (pow 1 3)) (* (pow (/ 2 (+ 1 (exp (* -2 x)))) 3) (pow 1 3))))) (+ (* (/ 2 (+ 1 (exp (* -2 x)))) (/ 2 (+ 1 (exp (* -2 x))))) (+ (* 1 1) (* (/ 2 (+ 1 (exp (* -2 x)))) 1))))
495.0ms
(/ (- (pow (/ 2 (+ 1 (exp (* -2 x)))) 3) (pow 1 3)) (+ (* (/ 2 (+ 1 (exp (* -2 x)))) (/ 2 (+ 1 (exp (* -2 x))))) (+ (* 1 1) (* (/ 2 (+ 1 (exp (* -2 x)))) 1))))
417.0ms
(- (pow (pow (/ 2 (+ 1 (exp (* -2 x)))) 3) 3) (pow (pow 1 3) 3))
414.0ms
(* (/ 1 (+ (* (log1p (exp x)) (log1p (exp x))) (+ (* (* y x) (* y x)) (* (log1p (exp x)) (* y x))))) (/ (+ (* (log1p (exp x)) (log1p (exp x))) (+ (* (* y x) (* y x)) (* (log1p (exp x)) (* y x)))) (- (log1p (exp x)) (* y x))))
309.0ms
(+ (+ (/ -3 (* (* x x) x)) (/ -3 x)) (/ -1 (* x x)))
Rules
15613×add-sqr-sqrt
15472×times-frac
14067×*-un-lft-identity
8952×add-cube-cbrt
8828×unpow-prod-down
8788×cube-prod
5156×prod-diff
3753×difference-of-squares
2571×add-exp-log
1628×sqr-pow
1267×associate-/l*
1246×add-cbrt-cube
1169×distribute-lft-out
1052×pow1
952×prod-exp
921×sqrt-prod
908×div-exp
886×distribute-lft-out--
832×associate-/r/
707×pow-exp
689×cbrt-prod
636×div-inv
560×associate-*l*
557×add-log-exp
534×associate-*r*
507×cube-mult
472×associate-/r*
444×flip-+
443×flip3-+
438×expm1-log1p-u
433×log1p-expm1-u
430×insert-posit16
424×unpow3
362×fma-neg
352×pow-to-exp
261×cbrt-undiv
251×cbrt-unprod
192×swap-sqr
188×flip--
187×flip3--
180×fma-def
176×pow-prod-down
175×difference-of-sqr-1
168×unswap-sqr
161×frac-times
147×1-exp rec-exp
134×log-prod
123×cbrt-div
121×associate-*l/
118×associate-*r/
94×frac-2neg clear-num
91×distribute-rgt-in *-commutative distribute-lft-in
86×fma-udef
81×pow-prod-up
64×pow-plus
62×associate-/l/
56×sub-neg
52×sqrt-pow1 pow1/2 frac-add
51×diff-log
48×pow1/3
47×pow-sqr
36×pow2
35×cube-div
33×sin-sum div-sub
31×pow-unpow
30×pow-flip
29×rem-sqrt-square
27×difference-cubes
26×associate-+r+ pow-pow cos-sum tan-quot
25×associate-+l+
24×log1p-udef
22×sqrt-div
21×log-pow
20×sum-log
19×inv-pow
18×+-commutative
15×distribute-rgt-out
13×log-div
11×log1p-expm1
10×rem-cube-cbrt rem-log-exp
pow3
acos-asin
distribute-rgt-out--
exp-prod
distribute-frac-neg cube-unmult acos-neg sin-mult
unpow-prod-up expm1-log1p expm1-udef associate-+r- distribute-rgt1-in frac-sub exp-sum rem-cbrt-cube
associate--l+ sqrt-unprod hypot-udef rem-square-sqrt cos-diff expm1-def
cos-mult distribute-lft1-in sqrt-undiv tanh-undef tanh-def un-div-inv exp-to-pow asin-acos sub-div associate-+l- unpow1/3 rem-exp-log sin-diff e-exp-1

localize5.0s

bsearch1.1s

end1.0ms