335 calls:
| 14.9s | (/ (/ (/ (+ (pow (+ 1.0 (/ i n)) (* 2 (* 2 n))) (- (* (* 1.0 1.0) (* 1.0 1.0)))) (+ (pow (+ 1.0 (/ i n)) (* 2 n)) (* 1.0 1.0))) (+ (pow (+ 1.0 (/ i n)) n) 1.0)) (/ i n)) |
| 1.9s | (/ (/ (+ (pow (+ 1.0 (/ i n)) (* 2 n)) (- (* 1.0 1.0))) (+ (pow (+ 1.0 (/ i n)) n) 1.0)) (/ i n)) |
| 401.0ms | (- (* 9.0 (pow x 4.0)) (pow y 4)) |
| 399.0ms | (cbrt (pow (- (* 9.0 (pow x 4.0)) (pow y 4)) 3)) |
| 397.0ms | (+ (* 9.0 (pow x 4.0)) (- (pow y 4))) |
| 180× | egg-herbie |
| 113× | rewrite-expression-head |
339 calls:
| 48.6s | (+ (* (* (* (+ (pow -2.0 3) (pow (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) 3)) (* 77617.0 77617.0)) (* (- (* -2.0 -2.0) (* (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))))) (* 77617.0 77617.0))) (* 333.75 (pow 33096.0 6.0))) (- (* (* (* (+ (pow -2.0 3) (pow (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) 3)) (* 77617.0 77617.0)) (* (- (* -2.0 -2.0) (* (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))))) (* 77617.0 77617.0))) (- (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))) (* (* (+ (* -2.0 -2.0) (- (* (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)))) (* -2.0 (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)))))) (- -2.0 (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))))) (* (- (* (* 333.75 (pow 33096.0 6.0)) (* 333.75 (pow 33096.0 6.0))) (* (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))) (+ (* 333.75 (pow 33096.0 6.0)) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0)))))))) |
| 12.9s | (- (* (* (* (+ (pow -2.0 3) (pow (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) 3)) (* 77617.0 77617.0)) (* (- (* -2.0 -2.0) (* (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))))) (* 77617.0 77617.0))) (- (* 333.75 (pow 33096.0 6.0)) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))) (* (* (+ (* -2.0 -2.0) (- (* (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)))) (* -2.0 (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)))))) (- -2.0 (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))))) (* (- (* (* 333.75 (pow 33096.0 6.0)) (* 333.75 (pow 33096.0 6.0))) (* (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))) (+ (* 333.75 (pow 33096.0 6.0)) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))))) |
| 12.5s | (- (* (* (* (+ (pow -2.0 3) (pow (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) 3)) (* 77617.0 77617.0)) (* (- (* -2.0 -2.0) (* (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))))) (* 77617.0 77617.0))) (- (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))) (* (* (+ (* -2.0 -2.0) (- (* (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)))) (* -2.0 (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)))))) (- -2.0 (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))))) (* (- (* (* 333.75 (pow 33096.0 6.0)) (* 333.75 (pow 33096.0 6.0))) (* (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))) (+ (* 333.75 (pow 33096.0 6.0)) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))))) |
| 4.8s | (* (* (+ (* -2.0 -2.0) (- (* (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)))) (* -2.0 (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)))))) (- -2.0 (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))))) (* (- (* (* 333.75 (pow 33096.0 6.0)) (* 333.75 (pow 33096.0 6.0))) (* (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))) (+ (* 333.75 (pow 33096.0 6.0)) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0)))))) |
| 4.6s | (* (* (+ (* -2.0 -2.0) (- (* (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))) (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)))) (* -2.0 (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0)))))) (- -2.0 (+ (* -121.0 (pow 33096.0 4.0)) (- (* (* 11.0 (* 77617.0 77617.0)) (* 33096.0 33096.0)) (pow 33096.0 6.0))))) (* (- (* (* 333.75 (pow 33096.0 6.0)) (* 333.75 (pow 33096.0 6.0))) (* (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0))))) (+ (* 333.75 (pow 33096.0 6.0)) (+ (* 5.5 (pow 33096.0 8.0)) (/ 77617.0 (* 2.0 33096.0)))))) |
| 97682× | associate-*l/ |
| 66777× | frac-times |
| 34632× | flip-+ flip3-+ |
| 28812× | flip-- flip3-- |
| 22967× | associate-*r/ |
| 20893× | frac-sub |
| 16861× | frac-add |
| 13379× | times-frac |
| 12966× | distribute-neg-frac |
| 9499× | *-un-lft-identity |
| 7463× | add-sqr-sqrt |
| 5817× | add-cube-cbrt |
| 2300× | add-exp-log |
| 1865× | add-cbrt-cube |
| 1445× | distribute-lft-out |
| 1274× | cbrt-prod |
| 1133× | sqrt-prod |
| 934× | associate-*r* |
| 841× | pow1 |
| 803× | associate-/r/ |
| 773× | prod-exp |
| 761× | unpow-prod-down |
| 752× | add-log-exp |
| 664× | div-exp |
| 644× | div-inv |
| 615× | difference-of-squares cbrt-unprod |
| 547× | associate-/l* |
| 530× | associate-/r* |
| 465× | associate-*l* |
| 460× | cbrt-undiv |
| 419× | distribute-lft-out-- |
| 330× | sqr-pow |
| 299× | cbrt-div |
| 196× | pow-prod-down |
| 185× | unpow2 |
| 182× | sqrt-div |
| 176× | unswap-sqr |
| 151× | sum-log |
| 139× | cube-prod |
| 136× | swap-sqr |
| 114× | sub-neg |
| 105× | associate-/l/ |
| 103× | pow-exp |
| 91× | pow-to-exp |
| 87× | diff-log |
| 84× | distribute-rgt-in distribute-lft-in |
| 79× | *-commutative |
| 69× | clear-num frac-2neg |
| 58× | log-prod |
| 56× | distribute-rgt-neg-in |
| 49× | +-commutative |
| 48× | 1-exp |
| 47× | sqrt-pow1 |
| 46× | pow1/2 |
| 45× | associate-+l+ |
| 42× | associate-+r+ |
| 41× | div-sub |
| 39× | rec-exp |
| 37× | pow-prod-up rem-sqrt-square |
| 36× | exp-sum |
| 31× | pow-sqr |
| 30× | pow-unpow distribute-lft-neg-in |
| 27× | exp-prod |
| 23× | cube-div |
| 22× | pow-plus |
| 20× | unpow3 cube-mult pow2 |
| 19× | pow-pow |
| 18× | associate--r+ |
| 16× | pow1/3 |
| 15× | neg-sub0 |
| 13× | rem-cube-cbrt |
| 12× | distribute-rgt-out-- log-pow log-div |
| 11× | neg-log associate--l+ |
| 10× | neg-mul-1 |
| 9× | associate--l- associate-+r- |
| 6× | inv-pow unsub-neg pow-flip sum-cubes rem-cbrt-cube |
| 5× | difference-cubes associate-+l- rem-log-exp |
| 4× | exp-diff distribute-lft-neg-out distribute-neg-in distribute-frac-neg exp-to-pow |
| 3× | rem-exp-log |
| 2× | distribute-lft1-in distribute-rgt-out associate--r- distribute-rgt-neg-out |
| 1× | sqrt-unprod cube-unmult sub-div rem-square-sqrt +-inverses |
| 71× | intervals |
| 9.4s | 291105× | body | 80 | valid |
| 3.0s | 11196× | body | 1280 | valid |
| 1.4s | 7992× | body | 640 | valid |
| 1.3s | 100608× | pre | 80 | true |
| 1.0s | 2128× | body | 10240 | exit |
| 640.0ms | 2833× | body | 2560 | valid |
| 583.0ms | 5999× | body | 320 | valid |
| 481.0ms | 8442× | body | 160 | valid |
| 473.0ms | 16940× | body | 80 | nan |
| 71.0ms | 241× | body | 5120 | valid |
| 3.0ms | 100× | pre | 80 | false |
Total 15.3b remaining (4.4%)
Threshold costs 4.8b (1.4%)
| 4.7b | 76.5% | Kahan p9 Example |
| 2.2b | 25.6% | Complex division, real part |
| 1.4b | 0% | Rosa's DopplerBench |
| 1.2b | 95% | The quadratic formula (r2) |
| 1.0b | 95.7% | The quadratic formula (r1) |