Details

simplify58.1m

Calls

26155 calls:

Slowest
2.7s
(/ (* (* (* (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 (+ 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.2s
(/ (* (* (* (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))))
1.9s
(/ (* (* (* (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))))
1.8s
(/ (/ (* (* (* 4 4) 4) (* (* (* c c) c) (* (* a a) 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)))))) (* (* (* 2 2) 2) (* (* a a) a)))

sample12.5m

Algorithm
71×intervals
Results
9.4m81004×body10240exit
54.3s31221×body1280valid
26.7s194153×body80valid
21.5s23478×body640valid
19.8s151777×body80nan
14.6s24535×body320valid
11.8s34624×body160valid
11.5s154147×pre80true
2.5s2982×body2560valid
1.4s4132×pre10240exit
1.4s7801×body160nan
257.0ms235×body5120valid

prune3.2m

series59.7s

Calls

432 calls:

Slowest
3.0s
(/ (/ c 1/4) (fma (sqrt b) (- (sqrt b)) (- (sqrt (fma b b (* (* a c) -4))))))
1.6s
(* (sqrt (fma (* c a) -3 (* b b))) (fma (* c a) -3 (* b b)))
1.3s
(- (* (sqrt (fma -3 (* c a) (* b b))) (fma -3 (* c a) (* b b))) (* b (* b b)))
1.2s
(- (* (sqrt (fma (* c a) -3 (* b b))) (fma (* c a) -3 (* b b))) (* b (* b b)))
730.0ms
(cbrt (* (fma (* -6 (* c a)) (* b b) (fma (* b b) (* b b) (* (* c a) (* (* c a) 9)))) (fma c (* -3 a) (* b b))))

regimes10.9s

Accuracy

Total 18.4b remaining (9.4%)

Threshold costs 6.0b (3.1%)

2.6b0%Cubic critical, wide range
2.5b-1.7%Quotient of products
2.1b0%Cubic critical, medium range
2.1b0%(- (/ x0 (- 1 x1)) x0)
1.6b0%Cubic critical, narrow range

rewrite9.8s

Algorithm
131×rewrite-expression-head
Calls

432 calls:

Slowest
317.0ms
(log (exp (- (/ (/ 2 (sqrt (+ 1 (exp (* -2 x))))) (sqrt (+ 1 (exp (* -2 x))))) 1)))
259.0ms
(/ (+ (* (sqrt (fma (* c a) -3 (* b b))) (* (* c a) -3)) (- (* (sqrt (fma (* c a) -3 (* b b))) (* b b)) (* b (* b b)))) (fma b (sqrt (fma c (* a -3) (* b b))) (+ (* b b) (fma c (* a -3) (* b b)))))
234.0ms
(/ (- (* (log1p (exp x)) (* (log1p (exp x)) (log1p (exp x)))) (* (* (* y x) (* y x)) (* y x))) (fma (* y x) (fma x y (log1p (exp x))) (* (log1p (exp x)) (log1p (exp x)))))
214.0ms
(* (/ (exp a) (fma (exp b) (* (exp b) (exp b)) (exp (+ (+ a a) a)))) (+ (* (exp b) (exp b)) (- (* (exp a) (exp a)) (* (exp b) (exp a)))))
209.0ms
(/ (/ (+ (* (sqrt (fma (* c a) -3 (* b b))) (* (* c a) -3)) (- (* (sqrt (fma (* c a) -3 (* b b))) (* b b)) (* b (* b b)))) (fma b (sqrt (fma c (* a -3) (* b b))) (+ (* b b) (fma c (* a -3) (* b b))))) (* 3 a))
Rules
10618×times-frac
10146×*-un-lft-identity
8987×add-sqr-sqrt
7090×add-cube-cbrt
3664×prod-diff
2885×sqrt-prod
2639×add-exp-log
1589×pow1
1348×add-cbrt-cube
1013×prod-exp
964×distribute-lft-out
910×div-exp
832×difference-of-squares
794×log-prod
696×pow-exp
682×associate-/r/
643×exp-sum
626×associate-/l*
597×add-log-exp
558×div-inv
537×fma-neg
451×associate-/r*
445×distribute-lft-out--
442×flip-+
441×flip3-+
439×expm1-log1p-u
434×log1p-expm1-u
433×associate-*r*
432×insert-posit16
374×cbrt-prod
349×pow-prod-down
346×pow-to-exp
328×associate-*l*
317×pow-prod-up
308×cbrt-unprod
280×cbrt-undiv
245×frac-times
197×flip--
196×flip3--
165×difference-of-sqr-1
162×sqrt-div
146×associate-*r/
142×distribute-rgt-in distribute-rgt-neg-in distribute-lft-in
138×1-exp rec-exp fma-def
131×log-pow
122×unpow-prod-down
118×unswap-sqr
103×frac-2neg clear-num
102×pow-sqr
97×exp-prod
96×distribute-lft-neg-in
94×associate-*l/
93×fma-udef
91×pow-plus
76×sqrt-pow1 swap-sqr *-commutative associate-/l/
74×sub-neg
64×diff-log
62×cube-unmult
59×pow2
58×pow1/2
37×div-sub rem-sqrt-square
34×pow1/3
33×sin-sum
32×sqr-pow neg-mul-1
31×log-div
30×pow-flip cos-sum
25×sum-log
24×associate-+r+ tan-quot
22×+-commutative
21×cbrt-div rem-log-exp
20×log1p-udef
18×pow-pow
16×difference-cubes
14×inv-pow
13×acos-asin
11×associate--l+ pow3
neg-sub0 pow-unpow log1p-expm1
exp-diff
frac-sub neg-log associate--r+ expm1-def
distribute-frac-neg associate--l- acos-neg
associate-+l- hypot-def sin-mult distribute-rgt-out
associate-+r- log-rec hypot-udef rem-exp-log rem-cbrt-cube frac-add
expm1-log1p expm1-udef distribute-rgt-out-- tanh-undef cos-diff associate--r-
remove-posit16 cos-mult distribute-rgt1-in sqrt-unprod tanh-def asin-acos rem-square-sqrt sin-diff unpow1/3 unsub-neg

localize5.0s

bsearch1.1s

end1.0ms