Time bar (total: 2.4min)
| 1× | search |
| True | Other | False | Iter |
|---|---|---|---|
| 0% | 99.2% | 0.8% | 0 |
| 0% | 99.2% | 0.8% | 1 |
| 0% | 99.2% | 0.8% | 2 |
| 0% | 99.2% | 0.8% | 3 |
| 0% | 99.2% | 0.8% | 4 |
| 0% | 99.2% | 0.8% | 5 |
| 0% | 99.2% | 0.8% | 6 |
| 0% | 99.2% | 0.8% | 7 |
| 0% | 99.2% | 0.8% | 8 |
| 0% | 99.2% | 0.8% | 9 |
| 0% | 99.2% | 0.8% | 10 |
| 0% | 99.2% | 0.8% | 11 |
| 0% | 99.2% | 0.8% | 12 |
| 0% | 99.2% | 0.8% | 13 |
| 0% | 99.2% | 0.8% | 14 |
Compiled 112 to 64 computations (42.9% saved)
| 30.0s | 66644× | body | 128 | invalid |
| 3.6s | 8256× | body | 128 | valid |
Compiled 335 to 191 computations (43% saved)
| 1× | egg-herbie |
| 759× | fma-neg_binary64 |
| 565× | distribute-rgt-in_binary64 |
| 513× | cancel-sign-sub-inv_binary64 |
| 437× | neg-mul-1_binary64 |
| 217× | distribute-rgt-neg-in_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 64 | 142 |
| 1 | 182 | 136 |
| 2 | 467 | 132 |
| 3 | 2132 | 132 |
| 4 | 4408 | 132 |
| 5 | 5050 | 132 |
3 alts after pruning (3 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 2 | 2 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 0 | 3 | 3 |
| Status | Error | Program |
| ▶ | 29.2b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (fma.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))))) |
| 29.2b | (+.f64 (-.f64 (+.f64 (+.f64 (-.f64 (*.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 y0 b) (*.f64 y1 i)))) (*.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)))) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 y4 b) (*.f64 y5 i)))) (*.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 y4 c) (*.f64 y5 a)))) (*.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y4 y1) (*.f64 y5 y0)))) |
Compiled 635 to 326 computations (48.7% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 6.7b | (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))) |
| ✓ | 7.2b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (fma.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))))) |
| ✓ | 7.3b | (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (fma.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))) |
| ✓ | 10.1b | (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5))) |
4 calls:
| 1.3s | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (fma.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))))) |
| 810.0ms | (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (fma.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))) |
| 291.0ms | (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))) |
| 98.0ms | (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5))) |
| 2× | batch-egg-rewrite |
| 684× | log1p-expm1-u_binary64 |
| 684× | expm1-log1p-u_binary64 |
| 312× | prod-diff_binary64 |
| 209× | fma-udef_binary64 |
| 180× | fma-def_binary64 |
4 calls:
| 83.0ms | (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))) |
| 83.0ms | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (fma.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))))) |
| 82.0ms | (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (fma.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))) |
| 82.0ms | (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5))) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 59 | 286 |
| 1 | 1376 | 286 |
| 2 | 4973 | 286 |
| 3 | 5017 | 286 |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 1× | egg-herbie |
| 1254× | fma-def_binary64 |
| 1141× | associate-+r+_binary64 |
| 222× | sub-neg_binary64 |
| 211× | associate-*r*_binary64 |
| 188× | associate--r+_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 1843 | 82201 |
| 1 | 6019 | 82201 |
21 alts after pruning (21 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 464 | 21 | 485 |
| Fresh | 1 | 0 | 1 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 466 | 21 | 487 |
| Status | Error | Program |
| 50.9b | (*.f64 y4 (-.f64 (fma.f64 k (*.f64 y1 y2) (fma.f64 t (*.f64 b j) (*.f64 c (*.f64 y y3)))) (fma.f64 y1 (*.f64 y3 j) (fma.f64 k (*.f64 y b) (*.f64 c (*.f64 t y2)))))) | |
| 50.0b | (neg.f64 (*.f64 y2 (-.f64 (fma.f64 c (*.f64 y4 t) (fma.f64 a (*.f64 y1 x) (*.f64 k (*.f64 y0 y5)))) (fma.f64 c (*.f64 y0 x) (fma.f64 k (*.f64 y4 y1) (*.f64 a (*.f64 t y5))))))) | |
| 33.4b | (-.f64 (fma.f64 a (*.f64 t (*.f64 y5 y2)) (fma.f64 y4 (*.f64 t (*.f64 j b)) (fma.f64 y0 (*.f64 y3 (*.f64 j y5)) (fma.f64 y1 (*.f64 a (*.f64 y3 z)) (fma.f64 c (*.f64 i (*.f64 t z)) (fma.f64 c (*.f64 y4 (*.f64 y y3)) (fma.f64 c (*.f64 y0 (*.f64 y2 x)) (fma.f64 a (*.f64 y (*.f64 b x)) (*.f64 y1 (*.f64 i (*.f64 j x))))))))))) (fma.f64 c (*.f64 y0 (*.f64 y3 z)) (fma.f64 a (*.f64 y (*.f64 y3 y5)) (fma.f64 c (*.f64 y (*.f64 i x)) (fma.f64 c (*.f64 y4 (*.f64 t y2)) (fma.f64 i (*.f64 t (*.f64 j y5)) (fma.f64 a (*.f64 y1 (*.f64 y2 x)) (fma.f64 y4 (*.f64 y1 (*.f64 y3 j)) (fma.f64 y0 (*.f64 b (*.f64 j x)) (*.f64 a (*.f64 t (*.f64 b z)))))))))))) | |
| 42.1b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (*.f64 (-.f64 (fma.f64 i (*.f64 j x) (*.f64 a (*.f64 y3 z))) (fma.f64 k (*.f64 i z) (*.f64 a (*.f64 x y2)))) y1))) | |
| 31.5b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (fma.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (neg.f64 (*.f64 k (*.f64 (-.f64 (*.f64 y4 b) (*.f64 i y5)) y)))))))) | |
| 29.9b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (fma.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (-.f64 (fma.f64 c (*.f64 y0 (*.f64 x y2)) (fma.f64 a (*.f64 y1 (*.f64 y3 z)) (fma.f64 k (*.f64 y (*.f64 i y5)) (*.f64 y4 (*.f64 t (*.f64 b j)))))) (fma.f64 c (*.f64 y0 (*.f64 y3 z)) (fma.f64 y1 (*.f64 a (*.f64 x y2)) (fma.f64 i (*.f64 t (*.f64 j y5)) (*.f64 k (*.f64 y4 (*.f64 y b))))))))))) | |
| 51.7b | (*.f64 (-.f64 (fma.f64 a (*.f64 b x) (fma.f64 c (*.f64 y4 y3) (*.f64 k (*.f64 i y5)))) (fma.f64 k (*.f64 y4 b) (fma.f64 c (*.f64 i x) (*.f64 a (*.f64 y3 y5))))) y) | |
| 52.6b | (*.f64 t (-.f64 (fma.f64 y4 (*.f64 j b) (fma.f64 a (*.f64 y5 y2) (*.f64 c (*.f64 i z)))) (fma.f64 a (*.f64 b z) (fma.f64 c (*.f64 y4 y2) (*.f64 i (*.f64 j y5)))))) | |
| 52.5b | (*.f64 y1 (-.f64 (fma.f64 i (*.f64 j x) (fma.f64 k (*.f64 y4 y2) (*.f64 a (*.f64 y3 z)))) (fma.f64 y4 (*.f64 y3 j) (fma.f64 k (*.f64 i z) (*.f64 a (*.f64 x y2)))))) | |
| 50.0b | (*.f64 (-.f64 (fma.f64 y0 (*.f64 y3 j) (fma.f64 k (*.f64 i y) (*.f64 a (*.f64 t y2)))) (fma.f64 k (*.f64 y0 y2) (fma.f64 y (*.f64 a y3) (*.f64 i (*.f64 t j))))) y5) | |
| 53.0b | (neg.f64 (*.f64 k (-.f64 (fma.f64 y0 (*.f64 y5 y2) (fma.f64 y1 (*.f64 i z) (*.f64 y4 (*.f64 y b)))) (fma.f64 y (*.f64 i y5) (fma.f64 y4 (*.f64 y1 y2) (*.f64 y0 (*.f64 b z))))))) | |
| 36.9b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (*.f64 b (-.f64 (fma.f64 y4 (*.f64 t j) (fma.f64 k (*.f64 y0 z) (*.f64 y (*.f64 a x)))) (fma.f64 y0 (*.f64 j x) (fma.f64 a (*.f64 t z) (*.f64 k (*.f64 y4 y)))))))) | |
| 41.3b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (*.f64 z (-.f64 (fma.f64 k (*.f64 y0 b) (fma.f64 a (*.f64 y1 y3) (*.f64 c (*.f64 i t)))) (fma.f64 k (*.f64 i y1) (fma.f64 c (*.f64 y0 y3) (*.f64 a (*.f64 t b)))))))) | |
| 29.7b | (*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y4 y1) (*.f64 y5 y0)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 y5 a) (*.f64 y4 c)) (fma.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (*.f64 b a) (*.f64 i c)) (fma.f64 (-.f64 (*.f64 j x) (*.f64 k z)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5))))))))) (cbrt.f64 (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y4 y1) (*.f64 y5 y0)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 y5 a) (*.f64 y4 c)) (fma.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (*.f64 b a) (*.f64 i c)) (fma.f64 (-.f64 (*.f64 j x) (*.f64 k z)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))))))) (cbrt.f64 (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y4 y1) (*.f64 y5 y0)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 y5 a) (*.f64 y4 c)) (fma.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (*.f64 b a) (*.f64 i c)) (fma.f64 (-.f64 (*.f64 j x) (*.f64 k z)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))))))) | |
| 30.6b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (fma.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (-.f64 (fma.f64 y1 (*.f64 a (*.f64 y3 z)) (fma.f64 c (*.f64 y0 (*.f64 y2 x)) (*.f64 y4 (*.f64 t (*.f64 j b))))) (fma.f64 c (*.f64 y0 (*.f64 y3 z)) (fma.f64 a (*.f64 y1 (*.f64 y2 x)) (*.f64 i (*.f64 t (*.f64 j y5)))))))))) | |
| 40.6b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (*.f64 y0 (-.f64 (fma.f64 c (*.f64 y2 x) (*.f64 k (*.f64 b z))) (fma.f64 c (*.f64 y3 z) (*.f64 j (*.f64 b x))))))) | |
| ▶ | 29.2b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (*.f64 b a) (*.f64 i c)) (fma.f64 (-.f64 (*.f64 j x) (*.f64 k z)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))))) |
| 34.1b | (-.f64 (fma.f64 a (*.f64 t (*.f64 y5 y2)) (fma.f64 k (*.f64 y4 (*.f64 y1 y2)) (fma.f64 a (*.f64 y1 (*.f64 y3 z)) (fma.f64 c (*.f64 y4 (*.f64 y y3)) (fma.f64 c (*.f64 i (*.f64 t z)) (fma.f64 c (*.f64 y0 (*.f64 x y2)) (fma.f64 a (*.f64 y (*.f64 b x)) (*.f64 k (+.f64 (*.f64 y0 (*.f64 b z)) (*.f64 y (*.f64 i y5))))))))))) (fma.f64 c (*.f64 y0 (*.f64 y3 z)) (fma.f64 a (*.f64 y (*.f64 y3 y5)) (fma.f64 c (*.f64 y (*.f64 i x)) (fma.f64 c (*.f64 y4 (*.f64 t y2)) (fma.f64 k (*.f64 y4 (*.f64 y b)) (fma.f64 a (*.f64 y1 (*.f64 y2 x)) (fma.f64 k (*.f64 y0 (*.f64 y5 y2)) (fma.f64 a (*.f64 t (*.f64 b z)) (*.f64 k (*.f64 y1 (*.f64 i z)))))))))))) | |
| 48.7b | (neg.f64 (*.f64 y3 (-.f64 (fma.f64 y4 (*.f64 y1 j) (fma.f64 c (*.f64 y0 z) (*.f64 y (*.f64 a y5)))) (fma.f64 c (*.f64 y4 y) (fma.f64 y1 (*.f64 a z) (*.f64 y0 (*.f64 j y5))))))) | |
| 37.9b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (*.f64 (-.f64 (fma.f64 a (*.f64 y b) (fma.f64 c (*.f64 y0 y2) (*.f64 y1 (*.f64 i j)))) (fma.f64 c (*.f64 y i) (fma.f64 y0 (*.f64 b j) (*.f64 y1 (*.f64 a y2))))) x))) | |
| 51.7b | (*.f64 (-.f64 (fma.f64 y0 (*.f64 y3 y5) (fma.f64 y4 (*.f64 t b) (*.f64 y1 (*.f64 i x)))) (fma.f64 y0 (*.f64 b x) (fma.f64 y4 (*.f64 y1 y3) (*.f64 i (*.f64 t y5))))) j) |
Compiled 58691 to 6337 computations (89.2% saved)
Found 4 expressions with local error:
| New | Error | Program |
| 6.7b | (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))) | |
| ✓ | 7.2b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (*.f64 b a) (*.f64 i c)) (fma.f64 (-.f64 (*.f64 j x) (*.f64 k z)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))))) |
| ✓ | 7.3b | (fma.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (*.f64 b a) (*.f64 i c)) (fma.f64 (-.f64 (*.f64 j x) (*.f64 k z)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))) |
| 10.1b | (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5))) |
2 calls:
| 1.6s | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (*.f64 b a) (*.f64 i c)) (fma.f64 (-.f64 (*.f64 j x) (*.f64 k z)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))))) |
| 739.0ms | (fma.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (*.f64 b a) (*.f64 i c)) (fma.f64 (-.f64 (*.f64 j x) (*.f64 k z)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))) |
| 2× | batch-egg-rewrite |
| 684× | log1p-expm1-u_binary64 |
| 684× | expm1-log1p-u_binary64 |
| 312× | prod-diff_binary64 |
| 209× | fma-udef_binary64 |
| 180× | fma-def_binary64 |
2 calls:
| 82.0ms | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (*.f64 b a) (*.f64 i c)) (fma.f64 (-.f64 (*.f64 j x) (*.f64 k z)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))))) |
| 82.0ms | (fma.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (*.f64 b a) (*.f64 i c)) (fma.f64 (-.f64 (*.f64 j x) (*.f64 k z)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 59 | 220 |
| 1 | 1376 | 220 |
| 2 | 4973 | 220 |
| 3 | 5017 | 220 |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 1× | egg-herbie |
| 1206× | fma-def_binary64 |
| 1104× | associate-+r+_binary64 |
| 191× | associate-*r*_binary64 |
| 168× | sub-neg_binary64 |
| 160× | associate--r+_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 1693 | 65359 |
| 1 | 5442 | 65359 |
20 alts after pruning (19 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 484 | 1 | 485 |
| Fresh | 2 | 18 | 20 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 486 | 20 | 506 |
| Status | Error | Program |
| 50.9b | (*.f64 y4 (-.f64 (fma.f64 k (*.f64 y1 y2) (fma.f64 t (*.f64 b j) (*.f64 c (*.f64 y y3)))) (fma.f64 y1 (*.f64 y3 j) (fma.f64 k (*.f64 y b) (*.f64 c (*.f64 t y2)))))) | |
| 50.0b | (neg.f64 (*.f64 y2 (-.f64 (fma.f64 c (*.f64 y4 t) (fma.f64 a (*.f64 y1 x) (*.f64 k (*.f64 y0 y5)))) (fma.f64 c (*.f64 y0 x) (fma.f64 k (*.f64 y4 y1) (*.f64 a (*.f64 t y5))))))) | |
| 33.4b | (-.f64 (fma.f64 a (*.f64 t (*.f64 y5 y2)) (fma.f64 y4 (*.f64 t (*.f64 j b)) (fma.f64 y0 (*.f64 y3 (*.f64 j y5)) (fma.f64 y1 (*.f64 a (*.f64 y3 z)) (fma.f64 c (*.f64 i (*.f64 t z)) (fma.f64 c (*.f64 y4 (*.f64 y y3)) (fma.f64 c (*.f64 y0 (*.f64 y2 x)) (fma.f64 a (*.f64 y (*.f64 b x)) (*.f64 y1 (*.f64 i (*.f64 j x))))))))))) (fma.f64 c (*.f64 y0 (*.f64 y3 z)) (fma.f64 a (*.f64 y (*.f64 y3 y5)) (fma.f64 c (*.f64 y (*.f64 i x)) (fma.f64 c (*.f64 y4 (*.f64 t y2)) (fma.f64 i (*.f64 t (*.f64 j y5)) (fma.f64 a (*.f64 y1 (*.f64 y2 x)) (fma.f64 y4 (*.f64 y1 (*.f64 y3 j)) (fma.f64 y0 (*.f64 b (*.f64 j x)) (*.f64 a (*.f64 t (*.f64 b z)))))))))))) | |
| 31.5b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (fma.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (neg.f64 (*.f64 k (*.f64 (-.f64 (*.f64 y4 b) (*.f64 i y5)) y)))))))) | |
| 52.6b | (*.f64 t (-.f64 (fma.f64 y4 (*.f64 j b) (fma.f64 a (*.f64 y5 y2) (*.f64 c (*.f64 i z)))) (fma.f64 a (*.f64 b z) (fma.f64 c (*.f64 y4 y2) (*.f64 i (*.f64 j y5)))))) | |
| 52.5b | (*.f64 y1 (-.f64 (fma.f64 i (*.f64 j x) (fma.f64 k (*.f64 y4 y2) (*.f64 a (*.f64 y3 z)))) (fma.f64 y4 (*.f64 y3 j) (fma.f64 k (*.f64 i z) (*.f64 a (*.f64 x y2)))))) | |
| 50.0b | (*.f64 (-.f64 (fma.f64 y0 (*.f64 y3 j) (fma.f64 k (*.f64 i y) (*.f64 a (*.f64 t y2)))) (fma.f64 k (*.f64 y0 y2) (fma.f64 y (*.f64 a y3) (*.f64 i (*.f64 t j))))) y5) | |
| 53.0b | (neg.f64 (*.f64 k (-.f64 (fma.f64 y0 (*.f64 y5 y2) (fma.f64 y1 (*.f64 i z) (*.f64 y4 (*.f64 y b)))) (fma.f64 y (*.f64 i y5) (fma.f64 y4 (*.f64 y1 y2) (*.f64 y0 (*.f64 b z))))))) | |
| 36.9b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (*.f64 b (-.f64 (fma.f64 y4 (*.f64 t j) (fma.f64 k (*.f64 y0 z) (*.f64 y (*.f64 a x)))) (fma.f64 y0 (*.f64 j x) (fma.f64 a (*.f64 t z) (*.f64 k (*.f64 y4 y)))))))) | |
| 41.3b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (*.f64 z (-.f64 (fma.f64 k (*.f64 y0 b) (fma.f64 a (*.f64 y1 y3) (*.f64 c (*.f64 i t)))) (fma.f64 k (*.f64 i y1) (fma.f64 c (*.f64 y0 y3) (*.f64 a (*.f64 t b)))))))) | |
| ▶ | 29.7b | (*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y4 y1) (*.f64 y5 y0)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 y5 a) (*.f64 y4 c)) (fma.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (*.f64 b a) (*.f64 i c)) (fma.f64 (-.f64 (*.f64 j x) (*.f64 k z)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5))))))))) (cbrt.f64 (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y4 y1) (*.f64 y5 y0)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 y5 a) (*.f64 y4 c)) (fma.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (*.f64 b a) (*.f64 i c)) (fma.f64 (-.f64 (*.f64 j x) (*.f64 k z)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))))))) (cbrt.f64 (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y4 y1) (*.f64 y5 y0)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 y5 a) (*.f64 y4 c)) (fma.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (*.f64 b a) (*.f64 i c)) (fma.f64 (-.f64 (*.f64 j x) (*.f64 k z)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))))))) |
| 30.6b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (fma.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (-.f64 (fma.f64 y1 (*.f64 a (*.f64 y3 z)) (fma.f64 c (*.f64 y0 (*.f64 y2 x)) (*.f64 y4 (*.f64 t (*.f64 j b))))) (fma.f64 c (*.f64 y0 (*.f64 y3 z)) (fma.f64 a (*.f64 y1 (*.f64 y2 x)) (*.f64 i (*.f64 t (*.f64 j y5)))))))))) | |
| 40.6b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (*.f64 y0 (-.f64 (fma.f64 c (*.f64 y2 x) (*.f64 k (*.f64 b z))) (fma.f64 c (*.f64 y3 z) (*.f64 j (*.f64 b x))))))) | |
| ✓ | 29.2b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (*.f64 b a) (*.f64 i c)) (fma.f64 (-.f64 (*.f64 j x) (*.f64 k z)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))))) |
| 34.1b | (-.f64 (fma.f64 a (*.f64 t (*.f64 y5 y2)) (fma.f64 k (*.f64 y4 (*.f64 y1 y2)) (fma.f64 a (*.f64 y1 (*.f64 y3 z)) (fma.f64 c (*.f64 y4 (*.f64 y y3)) (fma.f64 c (*.f64 i (*.f64 t z)) (fma.f64 c (*.f64 y0 (*.f64 x y2)) (fma.f64 a (*.f64 y (*.f64 b x)) (*.f64 k (+.f64 (*.f64 y0 (*.f64 b z)) (*.f64 y (*.f64 i y5))))))))))) (fma.f64 c (*.f64 y0 (*.f64 y3 z)) (fma.f64 a (*.f64 y (*.f64 y3 y5)) (fma.f64 c (*.f64 y (*.f64 i x)) (fma.f64 c (*.f64 y4 (*.f64 t y2)) (fma.f64 k (*.f64 y4 (*.f64 y b)) (fma.f64 a (*.f64 y1 (*.f64 y2 x)) (fma.f64 k (*.f64 y0 (*.f64 y5 y2)) (fma.f64 a (*.f64 t (*.f64 b z)) (*.f64 k (*.f64 y1 (*.f64 i z)))))))))))) | |
| 51.7b | (*.f64 (-.f64 (fma.f64 a (*.f64 b x) (fma.f64 c (*.f64 y4 y3) (*.f64 k (*.f64 i y5)))) (fma.f64 k (*.f64 y4 b) (fma.f64 c (*.f64 i x) (*.f64 a (*.f64 y3 y5))))) y) | |
| 33.8b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (-.f64 (fma.f64 c (*.f64 y0 (*.f64 x y2)) (fma.f64 y (*.f64 a (*.f64 b x)) (fma.f64 y4 (*.f64 t (*.f64 j b)) (fma.f64 i (*.f64 y1 (*.f64 j x)) (fma.f64 y1 (*.f64 a (*.f64 y3 z)) (*.f64 c (*.f64 i (*.f64 t z)))))))) (fma.f64 c (*.f64 y0 (*.f64 y3 z)) (fma.f64 a (*.f64 y1 (*.f64 y2 x)) (fma.f64 y0 (*.f64 b (*.f64 j x)) (fma.f64 c (*.f64 y (*.f64 i x)) (fma.f64 a (*.f64 t (*.f64 b z)) (*.f64 i (*.f64 t (*.f64 j y5))))))))))) | |
| 48.7b | (neg.f64 (*.f64 y3 (-.f64 (fma.f64 y4 (*.f64 y1 j) (fma.f64 c (*.f64 y0 z) (*.f64 y (*.f64 a y5)))) (fma.f64 c (*.f64 y4 y) (fma.f64 y1 (*.f64 a z) (*.f64 y0 (*.f64 j y5))))))) | |
| 37.9b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (*.f64 (-.f64 (fma.f64 a (*.f64 y b) (fma.f64 c (*.f64 y0 y2) (*.f64 y1 (*.f64 i j)))) (fma.f64 c (*.f64 y i) (fma.f64 y0 (*.f64 b j) (*.f64 y1 (*.f64 a y2))))) x))) | |
| 51.7b | (*.f64 (-.f64 (fma.f64 y0 (*.f64 y3 y5) (fma.f64 y4 (*.f64 t b) (*.f64 y1 (*.f64 i x)))) (fma.f64 y0 (*.f64 b x) (fma.f64 y4 (*.f64 y1 y3) (*.f64 i (*.f64 t y5))))) j) |
Compiled 58443 to 6183 computations (89.4% saved)
Found 4 expressions with local error:
| New | Error | Program |
| 6.7b | (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))) | |
| ✓ | 7.2b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y4 y1) (*.f64 y5 y0)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 y5 a) (*.f64 y4 c)) (fma.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (*.f64 b a) (*.f64 i c)) (fma.f64 (-.f64 (*.f64 j x) (*.f64 k z)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))))) |
| 7.3b | (fma.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (*.f64 b a) (*.f64 i c)) (fma.f64 (-.f64 (*.f64 j x) (*.f64 k z)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))) | |
| 10.1b | (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5))) |
1 calls:
| 1.3s | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y4 y1) (*.f64 y5 y0)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 y5 a) (*.f64 y4 c)) (fma.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (*.f64 b a) (*.f64 i c)) (fma.f64 (-.f64 (*.f64 j x) (*.f64 k z)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))))) |
| 2× | batch-egg-rewrite |
| 684× | log1p-expm1-u_binary64 |
| 684× | expm1-log1p-u_binary64 |
| 312× | prod-diff_binary64 |
| 209× | fma-udef_binary64 |
| 180× | fma-def_binary64 |
1 calls:
| 78.0ms | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y4 y1) (*.f64 y5 y0)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 y5 a) (*.f64 y4 c)) (fma.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (*.f64 b a) (*.f64 i c)) (fma.f64 (-.f64 (*.f64 j x) (*.f64 k z)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))))) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 59 | 132 |
| 1 | 1376 | 132 |
| 2 | 4973 | 132 |
| 3 | 5017 | 132 |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 1× | egg-herbie |
| 860× | +-commutative_binary64 |
| 860× | fma-def_binary64 |
| 787× | associate-+r+_binary64 |
| 361× | neg-mul-1_binary64 |
| 329× | sub-neg_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 1231 | 39292 |
| 1 | 3526 | 39079 |
| 2 | 4969 | 39079 |
| 3 | 5214 | 39079 |
20 alts after pruning (18 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 1491 | 0 | 1491 |
| Fresh | 0 | 18 | 18 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 1 | 1 |
| Total | 1491 | 20 | 1511 |
| Status | Error | Program |
| 50.9b | (*.f64 y4 (-.f64 (fma.f64 k (*.f64 y1 y2) (fma.f64 t (*.f64 b j) (*.f64 c (*.f64 y y3)))) (fma.f64 y1 (*.f64 y3 j) (fma.f64 k (*.f64 y b) (*.f64 c (*.f64 t y2)))))) | |
| 50.0b | (neg.f64 (*.f64 y2 (-.f64 (fma.f64 c (*.f64 y4 t) (fma.f64 a (*.f64 y1 x) (*.f64 k (*.f64 y0 y5)))) (fma.f64 c (*.f64 y0 x) (fma.f64 k (*.f64 y4 y1) (*.f64 a (*.f64 t y5))))))) | |
| 33.4b | (-.f64 (fma.f64 a (*.f64 t (*.f64 y5 y2)) (fma.f64 y4 (*.f64 t (*.f64 j b)) (fma.f64 y0 (*.f64 y3 (*.f64 j y5)) (fma.f64 y1 (*.f64 a (*.f64 y3 z)) (fma.f64 c (*.f64 i (*.f64 t z)) (fma.f64 c (*.f64 y4 (*.f64 y y3)) (fma.f64 c (*.f64 y0 (*.f64 y2 x)) (fma.f64 a (*.f64 y (*.f64 b x)) (*.f64 y1 (*.f64 i (*.f64 j x))))))))))) (fma.f64 c (*.f64 y0 (*.f64 y3 z)) (fma.f64 a (*.f64 y (*.f64 y3 y5)) (fma.f64 c (*.f64 y (*.f64 i x)) (fma.f64 c (*.f64 y4 (*.f64 t y2)) (fma.f64 i (*.f64 t (*.f64 j y5)) (fma.f64 a (*.f64 y1 (*.f64 y2 x)) (fma.f64 y4 (*.f64 y1 (*.f64 y3 j)) (fma.f64 y0 (*.f64 b (*.f64 j x)) (*.f64 a (*.f64 t (*.f64 b z)))))))))))) | |
| 31.5b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (fma.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (neg.f64 (*.f64 k (*.f64 (-.f64 (*.f64 y4 b) (*.f64 i y5)) y)))))))) | |
| 52.6b | (*.f64 t (-.f64 (fma.f64 y4 (*.f64 j b) (fma.f64 a (*.f64 y5 y2) (*.f64 c (*.f64 i z)))) (fma.f64 a (*.f64 b z) (fma.f64 c (*.f64 y4 y2) (*.f64 i (*.f64 j y5)))))) | |
| 52.5b | (*.f64 y1 (-.f64 (fma.f64 i (*.f64 j x) (fma.f64 k (*.f64 y4 y2) (*.f64 a (*.f64 y3 z)))) (fma.f64 y4 (*.f64 y3 j) (fma.f64 k (*.f64 i z) (*.f64 a (*.f64 x y2)))))) | |
| 50.0b | (*.f64 (-.f64 (fma.f64 y0 (*.f64 y3 j) (fma.f64 k (*.f64 i y) (*.f64 a (*.f64 t y2)))) (fma.f64 k (*.f64 y0 y2) (fma.f64 y (*.f64 a y3) (*.f64 i (*.f64 t j))))) y5) | |
| 53.0b | (neg.f64 (*.f64 k (-.f64 (fma.f64 y0 (*.f64 y5 y2) (fma.f64 y1 (*.f64 i z) (*.f64 y4 (*.f64 y b)))) (fma.f64 y (*.f64 i y5) (fma.f64 y4 (*.f64 y1 y2) (*.f64 y0 (*.f64 b z))))))) | |
| 36.9b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (*.f64 b (-.f64 (fma.f64 y4 (*.f64 t j) (fma.f64 k (*.f64 y0 z) (*.f64 y (*.f64 a x)))) (fma.f64 y0 (*.f64 j x) (fma.f64 a (*.f64 t z) (*.f64 k (*.f64 y4 y)))))))) | |
| 41.3b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (*.f64 z (-.f64 (fma.f64 k (*.f64 y0 b) (fma.f64 a (*.f64 y1 y3) (*.f64 c (*.f64 i t)))) (fma.f64 k (*.f64 i y1) (fma.f64 c (*.f64 y0 y3) (*.f64 a (*.f64 t b)))))))) | |
| ✓ | 29.7b | (*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y4 y1) (*.f64 y5 y0)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 y5 a) (*.f64 y4 c)) (fma.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (*.f64 b a) (*.f64 i c)) (fma.f64 (-.f64 (*.f64 j x) (*.f64 k z)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5))))))))) (cbrt.f64 (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y4 y1) (*.f64 y5 y0)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 y5 a) (*.f64 y4 c)) (fma.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (*.f64 b a) (*.f64 i c)) (fma.f64 (-.f64 (*.f64 j x) (*.f64 k z)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))))))) (cbrt.f64 (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y4 y1) (*.f64 y5 y0)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 y5 a) (*.f64 y4 c)) (fma.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (*.f64 b a) (*.f64 i c)) (fma.f64 (-.f64 (*.f64 j x) (*.f64 k z)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))))))) |
| ▶ | 30.6b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (fma.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (-.f64 (fma.f64 y1 (*.f64 a (*.f64 y3 z)) (fma.f64 c (*.f64 y0 (*.f64 y2 x)) (*.f64 y4 (*.f64 t (*.f64 j b))))) (fma.f64 c (*.f64 y0 (*.f64 y3 z)) (fma.f64 a (*.f64 y1 (*.f64 y2 x)) (*.f64 i (*.f64 t (*.f64 j y5)))))))))) |
| 40.6b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (*.f64 y0 (-.f64 (fma.f64 c (*.f64 y2 x) (*.f64 k (*.f64 b z))) (fma.f64 c (*.f64 y3 z) (*.f64 j (*.f64 b x))))))) | |
| ✓ | 29.2b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (*.f64 b a) (*.f64 i c)) (fma.f64 (-.f64 (*.f64 j x) (*.f64 k z)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))))) |
| 34.1b | (-.f64 (fma.f64 a (*.f64 t (*.f64 y5 y2)) (fma.f64 k (*.f64 y4 (*.f64 y1 y2)) (fma.f64 a (*.f64 y1 (*.f64 y3 z)) (fma.f64 c (*.f64 y4 (*.f64 y y3)) (fma.f64 c (*.f64 i (*.f64 t z)) (fma.f64 c (*.f64 y0 (*.f64 x y2)) (fma.f64 a (*.f64 y (*.f64 b x)) (*.f64 k (+.f64 (*.f64 y0 (*.f64 b z)) (*.f64 y (*.f64 i y5))))))))))) (fma.f64 c (*.f64 y0 (*.f64 y3 z)) (fma.f64 a (*.f64 y (*.f64 y3 y5)) (fma.f64 c (*.f64 y (*.f64 i x)) (fma.f64 c (*.f64 y4 (*.f64 t y2)) (fma.f64 k (*.f64 y4 (*.f64 y b)) (fma.f64 a (*.f64 y1 (*.f64 y2 x)) (fma.f64 k (*.f64 y0 (*.f64 y5 y2)) (fma.f64 a (*.f64 t (*.f64 b z)) (*.f64 k (*.f64 y1 (*.f64 i z)))))))))))) | |
| 51.7b | (*.f64 (-.f64 (fma.f64 a (*.f64 b x) (fma.f64 c (*.f64 y4 y3) (*.f64 k (*.f64 i y5)))) (fma.f64 k (*.f64 y4 b) (fma.f64 c (*.f64 i x) (*.f64 a (*.f64 y3 y5))))) y) | |
| 33.8b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (-.f64 (fma.f64 c (*.f64 y0 (*.f64 x y2)) (fma.f64 y (*.f64 a (*.f64 b x)) (fma.f64 y4 (*.f64 t (*.f64 j b)) (fma.f64 i (*.f64 y1 (*.f64 j x)) (fma.f64 y1 (*.f64 a (*.f64 y3 z)) (*.f64 c (*.f64 i (*.f64 t z)))))))) (fma.f64 c (*.f64 y0 (*.f64 y3 z)) (fma.f64 a (*.f64 y1 (*.f64 y2 x)) (fma.f64 y0 (*.f64 b (*.f64 j x)) (fma.f64 c (*.f64 y (*.f64 i x)) (fma.f64 a (*.f64 t (*.f64 b z)) (*.f64 i (*.f64 t (*.f64 j y5))))))))))) | |
| 48.7b | (neg.f64 (*.f64 y3 (-.f64 (fma.f64 y4 (*.f64 y1 j) (fma.f64 c (*.f64 y0 z) (*.f64 y (*.f64 a y5)))) (fma.f64 c (*.f64 y4 y) (fma.f64 y1 (*.f64 a z) (*.f64 y0 (*.f64 j y5))))))) | |
| 37.9b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (*.f64 (-.f64 (fma.f64 a (*.f64 y b) (fma.f64 c (*.f64 y0 y2) (*.f64 y1 (*.f64 i j)))) (fma.f64 c (*.f64 y i) (fma.f64 y0 (*.f64 b j) (*.f64 y1 (*.f64 a y2))))) x))) | |
| 51.7b | (*.f64 (-.f64 (fma.f64 y0 (*.f64 y3 y5) (fma.f64 y4 (*.f64 t b) (*.f64 y1 (*.f64 i x)))) (fma.f64 y0 (*.f64 b x) (fma.f64 y4 (*.f64 y1 y3) (*.f64 i (*.f64 t y5))))) j) |
Compiled 443406 to 9461 computations (97.9% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 5.4b | (*.f64 t (*.f64 j b)) |
| ✓ | 6.5b | (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (fma.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (-.f64 (fma.f64 y1 (*.f64 a (*.f64 y3 z)) (fma.f64 c (*.f64 y0 (*.f64 y2 x)) (*.f64 y4 (*.f64 t (*.f64 j b))))) (fma.f64 c (*.f64 y0 (*.f64 y3 z)) (fma.f64 a (*.f64 y1 (*.f64 y2 x)) (*.f64 i (*.f64 t (*.f64 j y5))))))))) |
| ✓ | 7.2b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (fma.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (-.f64 (fma.f64 y1 (*.f64 a (*.f64 y3 z)) (fma.f64 c (*.f64 y0 (*.f64 y2 x)) (*.f64 y4 (*.f64 t (*.f64 j b))))) (fma.f64 c (*.f64 y0 (*.f64 y3 z)) (fma.f64 a (*.f64 y1 (*.f64 y2 x)) (*.f64 i (*.f64 t (*.f64 j y5)))))))))) |
| ✓ | 7.3b | (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (fma.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (-.f64 (fma.f64 y1 (*.f64 a (*.f64 y3 z)) (fma.f64 c (*.f64 y0 (*.f64 y2 x)) (*.f64 y4 (*.f64 t (*.f64 j b))))) (fma.f64 c (*.f64 y0 (*.f64 y3 z)) (fma.f64 a (*.f64 y1 (*.f64 y2 x)) (*.f64 i (*.f64 t (*.f64 j y5)))))))) |
4 calls:
| 1.3s | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (fma.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (-.f64 (fma.f64 y1 (*.f64 a (*.f64 y3 z)) (fma.f64 c (*.f64 y0 (*.f64 y2 x)) (*.f64 y4 (*.f64 t (*.f64 j b))))) (fma.f64 c (*.f64 y0 (*.f64 y3 z)) (fma.f64 a (*.f64 y1 (*.f64 y2 x)) (*.f64 i (*.f64 t (*.f64 j y5)))))))))) |
| 1.1s | (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (fma.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (-.f64 (fma.f64 y1 (*.f64 a (*.f64 y3 z)) (fma.f64 c (*.f64 y0 (*.f64 y2 x)) (*.f64 y4 (*.f64 t (*.f64 j b))))) (fma.f64 c (*.f64 y0 (*.f64 y3 z)) (fma.f64 a (*.f64 y1 (*.f64 y2 x)) (*.f64 i (*.f64 t (*.f64 j y5))))))))) |
| 735.0ms | (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (fma.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (-.f64 (fma.f64 y1 (*.f64 a (*.f64 y3 z)) (fma.f64 c (*.f64 y0 (*.f64 y2 x)) (*.f64 y4 (*.f64 t (*.f64 j b))))) (fma.f64 c (*.f64 y0 (*.f64 y3 z)) (fma.f64 a (*.f64 y1 (*.f64 y2 x)) (*.f64 i (*.f64 t (*.f64 j y5)))))))) |
| 9.0ms | (*.f64 t (*.f64 j b)) |
| 2× | batch-egg-rewrite |
| 684× | log1p-expm1-u_binary64 |
| 684× | expm1-log1p-u_binary64 |
| 218× | prod-diff_binary64 |
| 176× | fma-def_binary64 |
| 155× | fma-udef_binary64 |
4 calls:
| 169.0ms | (*.f64 t (*.f64 j b)) |
| 169.0ms | (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (fma.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (-.f64 (fma.f64 y1 (*.f64 a (*.f64 y3 z)) (fma.f64 c (*.f64 y0 (*.f64 y2 x)) (*.f64 y4 (*.f64 t (*.f64 j b))))) (fma.f64 c (*.f64 y0 (*.f64 y3 z)) (fma.f64 a (*.f64 y1 (*.f64 y2 x)) (*.f64 i (*.f64 t (*.f64 j y5))))))))) |
| 169.0ms | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (fma.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (-.f64 (fma.f64 y1 (*.f64 a (*.f64 y3 z)) (fma.f64 c (*.f64 y0 (*.f64 y2 x)) (*.f64 y4 (*.f64 t (*.f64 j b))))) (fma.f64 c (*.f64 y0 (*.f64 y3 z)) (fma.f64 a (*.f64 y1 (*.f64 y2 x)) (*.f64 i (*.f64 t (*.f64 j y5)))))))))) |
| 169.0ms | (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (fma.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (-.f64 (fma.f64 y1 (*.f64 a (*.f64 y3 z)) (fma.f64 c (*.f64 y0 (*.f64 y2 x)) (*.f64 y4 (*.f64 t (*.f64 j b))))) (fma.f64 c (*.f64 y0 (*.f64 y3 z)) (fma.f64 a (*.f64 y1 (*.f64 y2 x)) (*.f64 i (*.f64 t (*.f64 j y5)))))))) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 62 | 391 |
| 1 | 1399 | 391 |
| 2 | 4951 | 391 |
| 3 | 4990 | 391 |
| 4 | 5037 | 391 |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 1× | egg-herbie |
| 1321× | fma-def_binary64 |
| 1207× | associate-+r+_binary64 |
| 237× | sub-neg_binary64 |
| 225× | associate--r+_binary64 |
| 225× | associate--l+_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 1889 | 88842 |
| 1 | 6219 | 88842 |
19 alts after pruning (16 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 518 | 3 | 521 |
| Fresh | 4 | 13 | 17 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 2 | 2 |
| Total | 522 | 19 | 541 |
| Status | Error | Program |
| 50.9b | (*.f64 y4 (-.f64 (fma.f64 k (*.f64 y1 y2) (fma.f64 t (*.f64 b j) (*.f64 c (*.f64 y y3)))) (fma.f64 y1 (*.f64 y3 j) (fma.f64 k (*.f64 y b) (*.f64 c (*.f64 t y2)))))) | |
| 50.0b | (neg.f64 (*.f64 y2 (-.f64 (fma.f64 c (*.f64 y4 t) (fma.f64 a (*.f64 y1 x) (*.f64 k (*.f64 y0 y5)))) (fma.f64 c (*.f64 y0 x) (fma.f64 k (*.f64 y4 y1) (*.f64 a (*.f64 t y5))))))) | |
| 33.4b | (-.f64 (fma.f64 a (*.f64 t (*.f64 y5 y2)) (fma.f64 y4 (*.f64 t (*.f64 j b)) (fma.f64 y0 (*.f64 y3 (*.f64 j y5)) (fma.f64 y1 (*.f64 a (*.f64 y3 z)) (fma.f64 c (*.f64 i (*.f64 t z)) (fma.f64 c (*.f64 y4 (*.f64 y y3)) (fma.f64 c (*.f64 y0 (*.f64 y2 x)) (fma.f64 a (*.f64 y (*.f64 b x)) (*.f64 y1 (*.f64 i (*.f64 j x))))))))))) (fma.f64 c (*.f64 y0 (*.f64 y3 z)) (fma.f64 a (*.f64 y (*.f64 y3 y5)) (fma.f64 c (*.f64 y (*.f64 i x)) (fma.f64 c (*.f64 y4 (*.f64 t y2)) (fma.f64 i (*.f64 t (*.f64 j y5)) (fma.f64 a (*.f64 y1 (*.f64 y2 x)) (fma.f64 y4 (*.f64 y1 (*.f64 y3 j)) (fma.f64 y0 (*.f64 b (*.f64 j x)) (*.f64 a (*.f64 t (*.f64 b z)))))))))))) | |
| 31.5b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (fma.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (neg.f64 (*.f64 k (*.f64 (-.f64 (*.f64 y4 b) (*.f64 i y5)) y)))))))) | |
| 51.7b | (*.f64 (-.f64 (fma.f64 a (*.f64 b x) (fma.f64 c (*.f64 y4 y3) (*.f64 k (*.f64 i y5)))) (fma.f64 k (*.f64 y4 b) (fma.f64 c (*.f64 i x) (*.f64 a (*.f64 y3 y5))))) y) | |
| 40.9b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (*.f64 z (-.f64 (fma.f64 k (*.f64 y0 b) (fma.f64 y1 (*.f64 a y3) (*.f64 c (*.f64 i t)))) (fma.f64 k (*.f64 i y1) (fma.f64 c (*.f64 y0 y3) (*.f64 a (*.f64 t b)))))))) | |
| 50.0b | (*.f64 (-.f64 (fma.f64 y0 (*.f64 y3 j) (fma.f64 k (*.f64 i y) (*.f64 a (*.f64 t y2)))) (fma.f64 k (*.f64 y0 y2) (fma.f64 y (*.f64 a y3) (*.f64 i (*.f64 t j))))) y5) | |
| 53.0b | (neg.f64 (*.f64 k (-.f64 (fma.f64 y0 (*.f64 y5 y2) (fma.f64 y1 (*.f64 i z) (*.f64 y4 (*.f64 y b)))) (fma.f64 y (*.f64 i y5) (fma.f64 y4 (*.f64 y1 y2) (*.f64 y0 (*.f64 b z))))))) | |
| 51.7b | (*.f64 (-.f64 (fma.f64 y0 (*.f64 y3 y5) (fma.f64 y4 (*.f64 t b) (*.f64 y1 (*.f64 i x)))) (fma.f64 y0 (*.f64 b x) (fma.f64 y4 (*.f64 y1 y3) (*.f64 i (*.f64 t y5))))) j) | |
| 46.4b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (neg.f64 (*.f64 (-.f64 (fma.f64 i (*.f64 j y5) (fma.f64 c (*.f64 y4 y2) (*.f64 a (*.f64 z b)))) (fma.f64 y4 (*.f64 j b) (fma.f64 a (*.f64 y5 y2) (*.f64 c (*.f64 i z))))) t))) | |
| ✓ | 29.7b | (*.f64 (*.f64 (cbrt.f64 (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y4 y1) (*.f64 y5 y0)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 y5 a) (*.f64 y4 c)) (fma.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (*.f64 b a) (*.f64 i c)) (fma.f64 (-.f64 (*.f64 j x) (*.f64 k z)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5))))))))) (cbrt.f64 (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y4 y1) (*.f64 y5 y0)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 y5 a) (*.f64 y4 c)) (fma.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (*.f64 b a) (*.f64 i c)) (fma.f64 (-.f64 (*.f64 j x) (*.f64 k z)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))))))) (cbrt.f64 (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y4 y1) (*.f64 y5 y0)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 y5 a) (*.f64 y4 c)) (fma.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (*.f64 b a) (*.f64 i c)) (fma.f64 (-.f64 (*.f64 j x) (*.f64 k z)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))))))) |
| ✓ | 30.6b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (fma.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (-.f64 (fma.f64 y1 (*.f64 a (*.f64 y3 z)) (fma.f64 c (*.f64 y0 (*.f64 y2 x)) (*.f64 y4 (*.f64 t (*.f64 j b))))) (fma.f64 c (*.f64 y0 (*.f64 y3 z)) (fma.f64 a (*.f64 y1 (*.f64 y2 x)) (*.f64 i (*.f64 t (*.f64 j y5)))))))))) |
| ✓ | 29.2b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (*.f64 b a) (*.f64 i c)) (fma.f64 (-.f64 (*.f64 j x) (*.f64 k z)) (-.f64 (*.f64 i y1) (*.f64 b y0)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)))))))) |
| 34.1b | (-.f64 (fma.f64 a (*.f64 t (*.f64 y5 y2)) (fma.f64 k (*.f64 y4 (*.f64 y1 y2)) (fma.f64 a (*.f64 y1 (*.f64 y3 z)) (fma.f64 c (*.f64 y4 (*.f64 y y3)) (fma.f64 c (*.f64 i (*.f64 t z)) (fma.f64 c (*.f64 y0 (*.f64 x y2)) (fma.f64 a (*.f64 y (*.f64 b x)) (*.f64 k (+.f64 (*.f64 y0 (*.f64 b z)) (*.f64 y (*.f64 i y5))))))))))) (fma.f64 c (*.f64 y0 (*.f64 y3 z)) (fma.f64 a (*.f64 y (*.f64 y3 y5)) (fma.f64 c (*.f64 y (*.f64 i x)) (fma.f64 c (*.f64 y4 (*.f64 t y2)) (fma.f64 k (*.f64 y4 (*.f64 y b)) (fma.f64 a (*.f64 y1 (*.f64 y2 x)) (fma.f64 k (*.f64 y0 (*.f64 y5 y2)) (fma.f64 a (*.f64 t (*.f64 b z)) (*.f64 k (*.f64 y1 (*.f64 i z)))))))))))) | |
| 31.8b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (-.f64 (fma.f64 k (*.f64 y0 (*.f64 z b)) (fma.f64 c (*.f64 y0 (*.f64 y2 x)) (fma.f64 y (*.f64 a (*.f64 b x)) (fma.f64 y4 (*.f64 t (*.f64 j b)) (+.f64 (*.f64 y1 (fma.f64 i (*.f64 j x) (*.f64 a (*.f64 y3 z)))) (*.f64 c (*.f64 i (*.f64 t z)))))))) (fma.f64 c (*.f64 y0 (*.f64 y3 z)) (fma.f64 y1 (*.f64 a (*.f64 y2 x)) (fma.f64 y0 (*.f64 j (*.f64 b x)) (fma.f64 c (*.f64 y (*.f64 i x)) (fma.f64 a (*.f64 t (*.f64 z b)) (fma.f64 i (*.f64 t (*.f64 j y5)) (*.f64 k (*.f64 i (*.f64 y1 z)))))))))))) | |
| 52.5b | (*.f64 y1 (-.f64 (fma.f64 i (*.f64 j x) (fma.f64 k (*.f64 y4 y2) (*.f64 a (*.f64 y3 z)))) (fma.f64 y4 (*.f64 y3 j) (fma.f64 k (*.f64 i z) (*.f64 a (*.f64 x y2)))))) | |
| 48.7b | (neg.f64 (*.f64 y3 (-.f64 (fma.f64 y4 (*.f64 y1 j) (fma.f64 c (*.f64 y0 z) (*.f64 y (*.f64 a y5)))) (fma.f64 c (*.f64 y4 y) (fma.f64 y1 (*.f64 a z) (*.f64 y0 (*.f64 j y5))))))) | |
| 37.9b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (*.f64 (-.f64 (fma.f64 a (*.f64 y b) (fma.f64 c (*.f64 y0 y2) (*.f64 y1 (*.f64 i j)))) (fma.f64 c (*.f64 y i) (fma.f64 y0 (*.f64 b j) (*.f64 y1 (*.f64 a y2))))) x))) | |
| 36.9b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (*.f64 b (-.f64 (fma.f64 y4 (*.f64 t j) (fma.f64 k (*.f64 y0 z) (*.f64 y (*.f64 a x)))) (fma.f64 y0 (*.f64 j x) (fma.f64 a (*.f64 t z) (*.f64 k (*.f64 y4 y)))))))) |
Compiled 60506 to 5147 computations (91.5% saved)
Total 30.1b remaining (95.7%)
Threshold costs 0b (0%)
Compiled 1114504 to 493553 computations (55.7% saved)
| Iters | Range | Point | |
|---|---|---|---|
| 8 | 2.1578644193839632e+102 | 1.890638462740793e+105 | 1.6946691162658363e+105 |
| 6 | 4.62793139639059e-178 | 3.7245247819359825e-177 | 4.685986071442351e-178 |
| 7 | 1.1370210272987201e-183 | 5.1142323284091886e-182 | 4.791229121418049e-182 |
| 7 | 1.6848250158199e-234 | 2.9064427470063065e-233 | 1.7049963016687547e-234 |
| 6 | 5.336640844011616e-280 | 5.899960254457047e-279 | 5.932732561557061e-280 |
| 7 | 1.9455683908642245e-296 | 2.0508477409566457e-294 | 1.8453630550298972e-294 |
| 9 | -1.3388932738684196e-250 | -3.0262333956871955e-256 | -2.0572121222689872e-253 |
| 7 | -4.9762179743273085e-238 | -2.5598300299642964e-239 | -3.041983578273041e-239 |
| 10 | -5.294461351105737e-177 | -5.3241694709179945e-189 | -3.1540217871317115e-181 |
| 6 | -6.899010118886025e-133 | -5.02982872714267e-134 | -1.0442895886732236e-133 |
| 8 | -1.3290337944270931e-93 | -4.081797977838712e-96 | -1.1594032005236588e-94 |
| 7 | -3.980779672784873e-42 | -1.591479362661522e-44 | -3.176915614601973e-42 |
| 5 | -1.0089985591773857e+67 | -4.346424840269265e+66 | -9.70855797092903e+66 |
| 9 | -1.158568838479973e+160 | -8.402848425137369e+154 | -1.9805993181254517e+156 |
Compiled 17 to 16 computations (5.9% saved)
| 1× | egg-herbie |
| 619× | distribute-rgt-neg-in_binary64 |
| 477× | neg-sub0_binary64 |
| 477× | neg-mul-1_binary64 |
| 438× | distribute-rgt-neg-out_binary64 |
| 426× | distribute-lft-neg-in_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 309 | 2260 |
| 1 | 493 | 2260 |
| 2 | 627 | 2260 |
| 3 | 753 | 2254 |
| 4 | 837 | 2254 |
| 5 | 923 | 2254 |
| 6 | 1066 | 2254 |
| 7 | 1329 | 2254 |
| 8 | 1621 | 2254 |
| 9 | 2014 | 2254 |
| 10 | 2463 | 2254 |
| 11 | 2741 | 2254 |
| 12 | 2809 | 2254 |
| 13 | 2864 | 2254 |
| 14 | 2870 | 2254 |
| 15 | 2908 | 2254 |
| 16 | 3152 | 2254 |
| 17 | 3279 | 2254 |
| 18 | 3353 | 2254 |
| 19 | 3378 | 2254 |
| 20 | 3392 | 2254 |
| 21 | 3396 | 2254 |
| 22 | 3396 | 2254 |
| 23 | 3392 | 2254 |
Compiled 4899 to 1428 computations (70.9% saved)
Loading profile data...