Details

rewrite13.1m (45.4%)

Algorithm
157×rewrite-expression-head
Calls

483 calls:

24.6s
(* (/ (+ (+ (+ (+ (+ 1.0 (* 0.1049934947 (* x x))) (* 0.0424060604 (* (* x x) (* x x)))) (* 0.0072644182 (* (* (* x x) (* x x)) (* x x)))) (* 0.0005064034 (* (* (* (* x x) (* x x)) (* x x)) (* x x)))) (* 0.0001789971 (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)))) (+ (+ (+ (+ (+ (+ 1.0 (* 0.7715471019 (* x x))) (* 0.2909738639 (* (* x x) (* x x)))) (* 0.0694555761 (* (* (* x x) (* x x)) (* x x)))) (* 0.0140005442 (* (* (* (* x x) (* x x)) (* x x)) (* x x)))) (* 0.0008327945 (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)))) (* (* 2.0 0.0001789971) (* (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)) (* x x))))) x)
21.7s
(* (+ (+ (+ (+ (+ 1.0 (* 0.1049934947 (* x x))) (* 0.0424060604 (* (* x x) (* x x)))) (* 0.0072644182 (* (* (* x x) (* x x)) (* x x)))) (* 0.0005064034 (* (* (* (* x x) (* x x)) (* x x)) (* x x)))) (* 0.0001789971 (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)))) (* (/ 1 (+ (+ (+ (+ (+ (+ 1.0 (* (/ 1737369620307813.0 2251799813685248.0) (* x x))) (* (/ 2620859570069187.0 9007199254740992.0) (* (* x x) (* x x)))) (* (/ 2502400853142105.0 3.602879701896397e+16) (* (* (* x x) (* x x)) (* x x)))) (* (/ 2017691060547333.0 1.4411518807585587e+17) (* (* (* (* x x) (* x x)) (* x x)) (* x x)))) (* (/ 7681173503746455.0 9.223372036854776e+18) (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)))) (* (* 2.0 (/ 825478423409049.0 4.611686018427388e+18)) (* (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)) (* x x))))) x))
20.1s
(* (/ 1 (+ (+ (+ (+ (+ (+ 1.0 (* (/ 1737369620307813.0 2251799813685248.0) (* x x))) (* (/ 2620859570069187.0 9007199254740992.0) (* (* x x) (* x x)))) (* (/ 2502400853142105.0 3.602879701896397e+16) (* (* (* x x) (* x x)) (* x x)))) (* (/ 2017691060547333.0 1.4411518807585587e+17) (* (* (* (* x x) (* x x)) (* x x)) (* x x)))) (* (/ 7681173503746455.0 9.223372036854776e+18) (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)))) (* (* 2.0 (/ 825478423409049.0 4.611686018427388e+18)) (* (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)) (* x x))))) x)
14.6s
(/ (+ (+ (+ (+ (+ 1.0 (* 0.1049934947 (* x x))) (* 0.0424060604 (* (* x x) (* x x)))) (* 0.0072644182 (* (* (* x x) (* x x)) (* x x)))) (* 0.0005064034 (* (* (* (* x x) (* x x)) (* x x)) (* x x)))) (* 0.0001789971 (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)))) (+ (+ (+ (+ (+ (+ 1.0 (* 0.7715471019 (* x x))) (* 0.2909738639 (* (* x x) (* x x)))) (* 0.0694555761 (* (* (* x x) (* x x)) (* x x)))) (* 0.0140005442 (* (* (* (* x x) (* x x)) (* x x)) (* x x)))) (* 0.0008327945 (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)))) (* (* 2.0 0.0001789971) (* (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)) (* x x)))))
14.4s
(* (/ 1.0 21.0) (* (* (* (* (* (* (fabs x) (fabs x)) (fabs x)) (fabs x)) (fabs x)) (fabs x)) (fabs x)))
Rules
63994×frac-add
62905×frac-times
47534×associate-*r/
12981×associate-*l/
10922×frac-sub
8286×flip-+ flip3-+
6200×times-frac
5782×*-un-lft-identity
5669×add-sqr-sqrt
4012×add-exp-log
3997×add-cube-cbrt
3215×add-cbrt-cube
2613×pow1
1967×prod-exp
1574×cbrt-unprod
1564×sqrt-prod
1440×associate-*r*
1344×associate-*l*
1229×pow-prod-down
773×add-log-exp
769×div-exp
673×distribute-lft-out
525×cbrt-prod
517×exp-diff
515×cbrt-div
502×cbrt-undiv
500×exp-neg
497×neg-sub0
463×associate-/r/
433×sqrt-div
426×associate-/l*
384×associate-/r*
383×cube-div
372×unswap-sqr
341×difference-of-squares
312×div-inv
291×unpow-prod-down
272×log-pow
263×sqrt-pow1
232×distribute-lft-out--
214×swap-sqr
207×pow-unpow
178×pow1/2
167×associate-/l/ flip3-- flip--
153×*-commutative
141×sqr-pow
128×pow-exp
124×log-prod distribute-neg-frac
115×cube-prod
102×pow-to-exp
89×pow-prod-up
86×diff-log
83×sub-neg
79×pow1/3
77×frac-2neg clear-num
75×distribute-rgt-in sum-log distribute-lft-in
66×1-exp rec-exp
63×rem-sqrt-square exp-prod
60×pow-sqr
50×pow-plus +-commutative
44×exp-sum
38×pow-pow inv-pow pow-flip
28×pow2 associate--l+
24×div-sub
21×un-div-inv log-div
19×unpow3 cube-mult
16×sqrt-unprod
15×distribute-rgt-neg-in associate-+l+
14×difference-of-sqr-1
13×associate--l-
12×associate-+r+
10×rem-exp-log associate--r+
sum-cubes distribute-lft-neg-in
rem-cube-cbrt
sin-sum
e-exp-1 associate-+l-
distribute-neg-in rem-log-exp unpow2
rem-square-sqrt rem-cbrt-cube neg-mul-1
cos-sum sqrt-undiv difference-cubes sqrt-pow2 pow3 distribute-rgt-neg-out
associate-+r- distribute-rgt-out-- distribute-frac-neg log-rec neg-log

prune9.2m (32.0%)

sample3.2m (11.1%)

Algorithm
95×intervals
Results
1.2m11878×body10240exit
43.2s413274×body80valid
20.1s22393×body1280valid
8.3s17832×body640valid
6.0s1581×body1280nan
5.8s62247×body80nan
3.0s9070×body320valid
2.8s1351×body640nan
2.5s8938×body160valid
1.7s49536×pre80true
1.0s799×body2560valid
962.0ms636×body320nan
248.0ms290×body5120valid
230.0ms316×body160nan

series2.0m (7.0%)

Calls

480 calls:

26.8s
(- (pow 1.0 3) (/ (pow (* (* 1.0 (- (* (/ 2295300911148351.0 9007199254740992.0) (/ 2295300911148351.0 9007199254740992.0)) (* (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (+ (/ -5125037576950889.0 18014398509481984.0) (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (+ (/ 6401478394306903.0 4503599627370496.0) (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (+ (/ -6544414927309881.0 4503599627370496.0) (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (/ 4780145094533421.0 4503599627370496.0)))))))) (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (+ (/ -5125037576950889.0 18014398509481984.0) (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (+ (/ 6401478394306903.0 4503599627370496.0) (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (+ (/ -6544414927309881.0 4503599627370496.0) (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (/ 4780145094533421.0 4503599627370496.0))))))))))) (exp 0)) 3) (pow (* (* (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x))) (- (/ 2295300911148351.0 9007199254740992.0) (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (+ (/ -5125037576950889.0 18014398509481984.0) (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (+ (/ 6401478394306903.0 4503599627370496.0) (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (+ (/ -6544414927309881.0 4503599627370496.0) (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (/ 4780145094533421.0 4503599627370496.0)))))))))) (exp (* (fabs x) (fabs x)))) 3)))
4.8s
(- (pow 1.0 3) (pow (* (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (+ (/ 2295300911148351.0 9007199254740992.0) (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (+ (/ -5125037576950889.0 18014398509481984.0) (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (+ (/ 6401478394306903.0 4503599627370496.0) (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (+ (/ -6544414927309881.0 4503599627370496.0) (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (/ 4780145094533421.0 4503599627370496.0)))))))))) (exp (- (* (fabs x) (fabs x))))) 3))
3.1s
(/ (* (/ (/ (* i (+ (+ alpha beta) i)) (+ (+ alpha beta) (* 2.0 i))) (+ (+ (+ alpha beta) (* 2.0 i)) (sqrt 1.0))) (/ (+ (* beta alpha) (* i (+ (+ alpha beta) i))) (+ (+ alpha beta) (* 2.0 i)))) (- (+ (+ alpha beta) (* 2.0 i)) (sqrt 1.0)))
2.8s
(* (/ (/ (* i (+ (+ alpha beta) i)) (+ (+ alpha beta) (* 2.0 i))) (+ (+ (+ alpha beta) (* 2.0 i)) (sqrt 1.0))) (/ (/ (+ (* beta alpha) (* i (+ (+ alpha beta) i))) (+ (+ alpha beta) (* 2.0 i))) (- (+ (+ alpha beta) (* 2.0 i)) (sqrt 1.0))))
2.4s
(* (* (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (+ (/ 2295300911148351.0 9007199254740992.0) (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (+ (/ -5125037576950889.0 18014398509481984.0) (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (+ (/ 6401478394306903.0 4503599627370496.0) (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (+ (/ -6544414927309881.0 4503599627370496.0) (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (/ 4780145094533421.0 4503599627370496.0)))))))))) (exp (- (* (fabs x) (fabs x))))) (+ (* (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (+ (/ 2295300911148351.0 9007199254740992.0) (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (+ (/ -5125037576950889.0 18014398509481984.0) (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (+ (/ 6401478394306903.0 4503599627370496.0) (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (+ (/ -6544414927309881.0 4503599627370496.0) (* (/ 1.0 (+ 1.0 (* (/ 1475339155889891.0 4503599627370496.0) (fabs x)))) (/ 4780145094533421.0 4503599627370496.0)))))))))) (exp (- (* (fabs x) (fabs x))))) 1.0))

simplify57.5s (3.3%)

regimes11.1s (0.6%)

Accuracy

Total 61.7b remaining (29.8%)

Threshold costs 5.0b (2.4%)

10.2b59%math.log10 on complex, real part
10.1b59.3%math.log/1 on complex, real part
9.9b58.9%math.abs on complex
9.1b56.9%math.sqrt on complex, imaginary part, im greater than 0 branch
5.5b15%Octave 3.8, jcobi/2

localize6.2s (0.4%)

bsearch4.1s (0.2%)

end1.0ms (0.0%)