| 163× | rewrite-expression-head |
504 calls:
| 5.6s | (* (/ (+ (+ (* (pow (* x x) 4) (+ 0.0005064034 (* (* x x) 0.0001789971))) (+ 1.0 (* 0.1049934947 (* x x)))) (* (pow x 4) (+ 0.0424060604 (* (* x x) 0.0072644182)))) (fabs (cbrt (+ (+ (* (* x (* (pow (* x x) 3) (pow x 3))) (+ 0.0008327945 (* (* x x) (* 2.0 0.0001789971)))) (+ (* (* x x) (+ 0.7715471019 (* 0.2909738639 (* x x)))) 1.0)) (* (pow x 6) (+ 0.0694555761 (* (* x x) 0.0140005442))))))) (/ x (/ (sqrt (cbrt (+ (+ (* (* x (* (pow (* x x) 3) (pow x 3))) (+ 0.0008327945 (* (* x x) (* 2.0 0.0001789971)))) (+ (* (* x x) (+ 0.7715471019 (* 0.2909738639 (* x x)))) 1.0)) (* (pow x 6) (+ 0.0694555761 (* (* x x) 0.0140005442)))))) (/ 1 (sqrt (+ (+ (* (* x (* (pow (* x x) 3) (pow x 3))) (+ 0.0008327945 (* (* x x) (* 2.0 0.0001789971)))) (+ (* (* x x) (+ 0.7715471019 (* 0.2909738639 (* x x)))) 1.0)) (* (pow x 6) (+ 0.0694555761 (* (* x x) 0.0140005442))))))))) |
| 5.0s | (* (sqrt (/ 1.0 (sqrt PI))) (* (sqrt (/ 1.0 (sqrt PI))) (+ (+ (+ (* 2.0 (fabs x)) (* (/ 2.0 3.0) (* (* (fabs x) (fabs x)) (fabs x)))) (* (/ 1.0 5.0) (* (* (* (* (fabs x) (fabs x)) (fabs x)) (fabs x)) (fabs x)))) (* (/ 1.0 21.0) (* (* (* (* (* (* (fabs x) (fabs x)) (fabs x)) (fabs x)) (fabs x)) (fabs x)) (fabs x)))))) |
| 3.0s | (/ (* (+ (+ (* (* (* (pow (fabs x) 3) (* (fabs x) (fabs x))) (* (fabs x) (fabs x))) (/ 1.0 21.0)) (+ (/ (* 2.0 (pow (fabs x) 3)) 3.0) (* 2.0 (fabs x)))) (* (* (pow (fabs x) 3) (* (fabs x) (fabs x))) (/ 1.0 5.0))) 1.0) (sqrt PI)) |
| 3.0s | (/ (sqrt (+ (+ (* (* x (* (pow (* x x) 3) (pow x 3))) (+ 0.0008327945 (* (* x x) (* 2.0 0.0001789971)))) (+ (* (* x x) (+ 0.7715471019 (* 0.2909738639 (* x x)))) 1.0)) (* (pow x 6) (+ 0.0694555761 (* (* x x) 0.0140005442))))) (/ (+ (+ (* (pow (* x x) 4) (+ 0.0005064034 (* (* x x) 0.0001789971))) (+ 1.0 (* 0.1049934947 (* x x)))) (* (pow x 4) (+ 0.0424060604 (* (* x x) 0.0072644182)))) (sqrt (+ (+ (* (* x (* (pow (* x x) 3) (pow x 3))) (+ 0.0008327945 (* (* x x) (* 2.0 0.0001789971)))) (+ (* (* x x) (+ 0.7715471019 (* 0.2909738639 (* x x)))) 1.0)) (* (pow x 6) (+ 0.0694555761 (* (* x x) 0.0140005442))))))) |
| 2.5s | (/ (+ (+ (* (* x (* (pow (* x x) 3) (pow x 3))) (+ 0.0008327945 (* (* x x) (* 2.0 0.0001789971)))) (+ (* (* x x) (+ 0.7715471019 (* 0.2909738639 (* x x)))) 1.0)) (* (pow x 6) (+ 0.0694555761 (* (* x x) 0.0140005442)))) (+ (+ (* (pow (* x x) 4) (+ 0.0005064034 (* (* x x) 0.0001789971))) (+ 1.0 (* 0.1049934947 (* x x)))) (* (pow x 4) (+ 0.0424060604 (* (* x x) 0.0072644182))))) |
| 15618× | times-frac |
| 11593× | *-un-lft-identity |
| 10484× | add-sqr-sqrt |
| 7913× | add-cube-cbrt |
| 6828× | sqrt-prod |
| 3220× | associate-*r* |
| 3217× | add-exp-log |
| 2502× | add-cbrt-cube |
| 2334× | associate-*r/ |
| 2147× | flip-+ flip3-+ |
| 1851× | associate-*l* |
| 1780× | pow1 |
| 1755× | associate-/r/ |
| 1710× | frac-add |
| 1426× | distribute-lft-out |
| 1271× | sqrt-div |
| 1184× | prod-exp |
| 946× | frac-times |
| 938× | cbrt-prod |
| 815× | cbrt-unprod |
| 797× | flip3-- flip-- |
| 783× | div-exp |
| 775× | add-log-exp |
| 741× | associate-/r* |
| 592× | associate-/l* |
| 576× | cbrt-undiv |
| 513× | associate-*l/ unswap-sqr |
| 507× | distribute-lft-out-- |
| 504× | div-inv |
| 477× | difference-of-squares |
| 470× | frac-sub |
| 429× | pow-prod-down |
| 415× | cbrt-div |
| 349× | unpow-prod-down |
| 317× | associate-/l/ |
| 303× | swap-sqr |
| 261× | log-prod |
| 227× | log-pow |
| 217× | cube-prod |
| 191× | pow-exp |
| 180× | sqrt-pow1 |
| 166× | *-commutative |
| 155× | distribute-rgt-in distribute-lft-in |
| 135× | sqr-pow |
| 121× | pow-to-exp |
| 119× | pow-prod-up |
| 116× | pow1/2 |
| 93× | sub-neg |
| 92× | clear-num frac-2neg |
| 91× | pow1/3 |
| 80× | pow-plus |
| 74× | sum-log diff-log |
| 71× | pow-sqr |
| 70× | rem-sqrt-square exp-prod |
| 64× | 1-exp |
| 61× | associate-+l+ rec-exp |
| 60× | distribute-neg-frac |
| 55× | pow-unpow |
| 53× | +-commutative |
| 49× | associate--l+ |
| 43× | pow2 |
| 40× | associate-+r+ |
| 39× | distribute-rgt-neg-in |
| 37× | distribute-lft-neg-in exp-sum |
| 25× | log-div |
| 20× | pow-pow |
| 18× | unpow3 cube-mult div-sub rem-log-exp |
| 17× | inv-pow pow-flip |
| 15× | cube-div unpow2 |
| 14× | associate--r+ |
| 13× | exp-diff associate--l- |
| 12× | neg-mul-1 |
| 11× | rem-exp-log |
| 10× | distribute-rgt-out |
| 8× | un-div-inv sum-cubes |
| 7× | distribute-neg-in |
| 6× | rem-cube-cbrt sin-sum |
| 5× | difference-cubes exp-neg distribute-lft1-in |
| 4× | pow-div pow3 sub-div neg-log distribute-rgt-neg-out exp-to-pow mul-1-neg |
| 3× | sqrt-unprod rem-square-sqrt associate-+l- |
| 2× | cos-sum associate-+r- log-rec rem-cbrt-cube |
| 1× | distribute-rgt-out-- unpow-prod-up pow-sub neg-sub0 |
| 99× | intervals |
| 1.2m | 12188× | body | 10240 | exit |
| 1.0m | 487521× | body | 80 | valid |
| 27.4s | 27367× | body | 1280 | valid |
| 12.3s | 20960× | body | 640 | valid |
| 6.6s | 70254× | body | 80 | nan |
| 4.6s | 1683× | body | 1280 | nan |
| 4.3s | 10614× | body | 320 | valid |
| 3.6s | 1326× | body | 640 | nan |
| 3.5s | 9284× | body | 160 | valid |
| 2.2s | 49536× | pre | 80 | true |
| 1.5s | 669× | body | 320 | nan |
| 1.3s | 1485× | body | 2560 | valid |
| 358.0ms | 614× | body | 5120 | valid |
| 199.0ms | 291× | body | 160 | nan |
502 calls:
| 13.6s | (+ (* (- (/ (* (* 1.0 (- (* 0.254829592 0.254829592) (* (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ 1.421413741 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429))))))) (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ 1.421413741 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429)))))))))) (* 1.0 (+ 0.254829592 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ 1.421413741 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429)))))))))) (* (pow (+ (* 0.3275911 (fabs x)) 1.0) 2) (- 0.254829592 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ 1.421413741 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429))))))))))) (exp (+ (- (pow (fabs x) 2)) (- (pow (fabs x) 2))))) (* 1.0 1.0)) |
| 13.5s | (exp (log (+ (* (- (/ (* (* 1.0 (- (* 0.254829592 0.254829592) (* (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ 1.421413741 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429))))))) (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ 1.421413741 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429)))))))))) (* 1.0 (+ 0.254829592 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ 1.421413741 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429)))))))))) (* (pow (+ (* 0.3275911 (fabs x)) 1.0) 2) (- 0.254829592 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ 1.421413741 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429))))))))))) (exp (+ (- (pow (fabs x) 2)) (- (pow (fabs x) 2))))) (* 1.0 1.0)))) |
| 13.1s | (+ (* (- (/ (* (* 1.0 (- (* 0.254829592 0.254829592) (* (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ 1.421413741 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429))))))) (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ 1.421413741 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429)))))))))) (* 1.0 (+ 0.254829592 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ 1.421413741 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429)))))))))) (* (pow (+ (* 0.3275911 (fabs x)) 1.0) 2) (- 0.254829592 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ 1.421413741 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429))))))))))) (exp (+ (- (pow (fabs x) 2)) (- (pow (fabs x) 2))))) (* 1.0 1.0)) |
| 4.1s | (/ (- (* (- d2 d3) (- d2 d3)) (* (- d4 d1) (- d4 d1))) (cbrt (- (- d2 d3) (- d4 d1)))) |
| 3.4s | (* (/ (/ (* 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)))) |
Total 104.0b remaining (37.6%)
Threshold costs 4.5b (1.6%)
| 16.9b | 46.3% | math.abs on complex |
| 16.5b | 48.6% | math.sqrt on complex, imaginary part, im greater than 0 branch |
| 10.5b | 57% | math.log/2 on complex, real part |
| 10.0b | 59.9% | math.log10 on complex, real part |
| 9.8b | 60.5% | math.log/1 on complex, real part |