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)
| 27.3s | 65665× | body | 128 | invalid |
| 3.4s | 8256× | body | 128 | valid |
Compiled 224 to 128 computations (42.9% saved)
| 2× | egg-herbie |
| 864× | cancel-sign-sub-inv_binary64 |
| 864× | sub-neg_binary64 |
| 743× | fma-neg_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 2029 | 17182 |
| 0 | 16 | 16 |
| 1× | saturated |
| 1× | node limit |
Compiled 111 to 63 computations (43.2% saved)
| 1× | egg-herbie |
| 555× | distribute-rgt-in_binary64 |
| 517× | cancel-sign-sub-inv_binary64 |
| 396× | fma-neg_binary64 |
| 217× | distribute-rgt-neg-in_binary64 |
| 212× | sub-neg_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 64 | 142 |
| 1 | 182 | 136 |
| 2 | 528 | 132 |
| 3 | 2607 | 132 |
| 1× | node limit |
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 |
| ▶ | 25.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 y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (fma.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.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 i y1) (*.f64 b y0)))))))) |
| 25.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 |
| ✓ | 5.1b | (fma.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.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 i y1) (*.f64 b y0))))) |
| ✓ | 6.4b | (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (fma.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.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 i y1) (*.f64 b y0))))))) |
| ✓ | 6.8b | (fma.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 i y1) (*.f64 b y0)))) |
| ✓ | 9.4b | (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (-.f64 (*.f64 i y1) (*.f64 b y0))) |
150 calls:
| 60.0ms | (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (fma.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.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 i y1) (*.f64 b y0))))))) | x | -inf |
| 56.0ms | (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (fma.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.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 i y1) (*.f64 b y0))))))) | a | 0 |
| 39.0ms | (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (fma.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.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 i y1) (*.f64 b y0))))))) | y2 | inf |
| 36.0ms | (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (fma.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.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 i y1) (*.f64 b y0))))))) | y5 | 0 |
| 33.0ms | (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (fma.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.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 i y1) (*.f64 b y0))))))) | y | 0 |
| 1× | batch-egg-rewrite |
| 597× | log1p-expm1-u_binary64 |
| 597× | expm1-log1p-u_binary64 |
| 260× | prod-diff_binary64 |
| 198× | log-prod_binary64 |
| 150× | fma-def_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 52 | 242 |
| 1 | 1242 | 242 |
| 1× | node limit |
| 1× | egg-herbie |
| 860× | fma-def_binary64 |
| 852× | +-commutative_binary64 |
| 733× | associate-+r+_binary64 |
| 304× | *-commutative_binary64 |
| 217× | sub-neg_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 1404 | 63215 |
| 1× | node limit |
19 alts after pruning (19 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 384 | 19 | 403 |
| Fresh | 1 | 0 | 1 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 386 | 19 | 405 |
| Status | Error | Program |
| 45.6b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 b (-.f64 (fma.f64 y4 (*.f64 j t) (fma.f64 k (*.f64 z y0) (*.f64 y (*.f64 x a)))) (fma.f64 y0 (*.f64 j x) (fma.f64 k (*.f64 y y4) (*.f64 (*.f64 z t) a)))))) | |
| 29.5b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (-.f64 (fma.f64 a (*.f64 t (*.f64 y2 y5)) (fma.f64 y4 (*.f64 t (*.f64 b j)) (fma.f64 y1 (*.f64 a (*.f64 z y3)) (+.f64 (*.f64 c (fma.f64 y4 (*.f64 y y3) (*.f64 (*.f64 i t) z))) (fma.f64 c (*.f64 y0 (*.f64 x y2)) (fma.f64 y (*.f64 (*.f64 b x) a) (fma.f64 k (*.f64 (*.f64 y0 b) z) (fma.f64 y1 (*.f64 (*.f64 i j) x) (*.f64 k (*.f64 y (*.f64 i y5))))))))))) (fma.f64 y (*.f64 a (*.f64 y3 y5)) (fma.f64 c (*.f64 y0 (*.f64 z y3)) (fma.f64 c (*.f64 i (*.f64 x y)) (fma.f64 c (*.f64 y4 (*.f64 t y2)) (fma.f64 i (*.f64 t (*.f64 j y5)) (fma.f64 k (*.f64 (*.f64 b y) y4) (fma.f64 a (*.f64 y1 (*.f64 x y2)) (fma.f64 y0 (*.f64 b (*.f64 j x)) (fma.f64 a (*.f64 (*.f64 z b) t) (*.f64 (*.f64 k i) (*.f64 z y1))))))))))))) | |
| 43.3b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 (-.f64 (+.f64 (*.f64 a (*.f64 y b)) (+.f64 (*.f64 c (*.f64 y0 y2)) (*.f64 i (*.f64 y1 j)))) (+.f64 (*.f64 c (*.f64 y i)) (+.f64 (*.f64 y0 (*.f64 b j)) (*.f64 y1 (*.f64 a y2))))) x)) | |
| 30.4b | (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 y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (fma.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (*.f64 i (-.f64 (fma.f64 y1 (*.f64 j x) (*.f64 c (*.f64 z t))) (fma.f64 c (*.f64 x y) (*.f64 k (*.f64 z y1))))))))) | |
| ▶ | 25.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 y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (+.f64 (*.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5))) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0)))))))) |
| 37.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 y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 k (*.f64 i y)) (*.f64 i (*.f64 t 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 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (-.f64 (+.f64 (*.f64 k (*.f64 y0 (*.f64 z b))) (+.f64 (*.f64 y (*.f64 a (*.f64 b x))) (+.f64 (*.f64 y4 (*.f64 t (*.f64 b j))) (+.f64 (*.f64 i (*.f64 y1 (*.f64 j x))) (+.f64 (*.f64 c (*.f64 i (*.f64 t z))) (*.f64 k (*.f64 y (*.f64 i y5)))))))) (+.f64 (*.f64 y0 (*.f64 j (*.f64 b x))) (+.f64 (*.f64 c (*.f64 y (*.f64 i x))) (+.f64 (*.f64 a (*.f64 t (*.f64 z b))) (+.f64 (*.f64 i (*.f64 t (*.f64 j y5))) (+.f64 (*.f64 k (*.f64 y1 (*.f64 i z))) (*.f64 k (*.f64 y4 (*.f64 y b)))))))))))) | |
| 40.6b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 c (-.f64 (fma.f64 y0 (*.f64 x y2) (fma.f64 y4 (*.f64 y y3) (*.f64 (*.f64 i t) z))) (fma.f64 y4 (*.f64 t y2) (fma.f64 y0 (*.f64 z y3) (*.f64 i (*.f64 x y))))))) | |
| 48.3b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 y3 (-.f64 (fma.f64 c (*.f64 y y4) (*.f64 (*.f64 y1 a) z)) (fma.f64 c (*.f64 z y0) (*.f64 y (*.f64 a y5)))))) | |
| 46.2b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 t (-.f64 (fma.f64 a (*.f64 y2 y5) (fma.f64 c (*.f64 z i) (*.f64 (*.f64 b j) y4))) (fma.f64 i (*.f64 j y5) (fma.f64 c (*.f64 y2 y4) (*.f64 (*.f64 z b) a)))))) | |
| 25.6b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 (*.f64 (cbrt.f64 (fma.f64 (fma.f64 t y2 (neg.f64 (*.f64 y y3))) (fma.f64 a y5 (*.f64 (neg.f64 c) y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)) (fma.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0)))))))) (cbrt.f64 (fma.f64 (fma.f64 t y2 (neg.f64 (*.f64 y y3))) (fma.f64 a y5 (*.f64 (neg.f64 c) y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)) (fma.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0))))))))) (cbrt.f64 (fma.f64 (fma.f64 t y2 (neg.f64 (*.f64 y y3))) (fma.f64 a y5 (*.f64 (neg.f64 c) y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)) (fma.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0)))))))))) | |
| 42.2b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 y (-.f64 (fma.f64 a (*.f64 b x) (fma.f64 c (*.f64 y3 y4) (*.f64 k (*.f64 i y5)))) (fma.f64 c (*.f64 i x) (fma.f64 k (*.f64 b y4) (*.f64 a (*.f64 y3 y5))))))) | |
| 42.9b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (neg.f64 (*.f64 x (-.f64 (fma.f64 y0 (*.f64 b j) (fma.f64 a (*.f64 y1 y2) (*.f64 c (*.f64 i y)))) (fma.f64 y (*.f64 b a) (fma.f64 c (*.f64 y0 y2) (*.f64 y1 (*.f64 i j)))))))) | |
| 47.6b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 -1 (*.f64 (-.f64 (+.f64 (*.f64 c (*.f64 y4 t)) (*.f64 y1 (*.f64 a x))) (+.f64 (*.f64 c (*.f64 y0 x)) (*.f64 a (*.f64 t y5)))) y2))) | |
| 29.4b | (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 y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (fma.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (*.f64 j (*.f64 (-.f64 (*.f64 y1 i) (*.f64 y0 b)) x))))))) | |
| 46.0b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 y4 (-.f64 (fma.f64 t (*.f64 b j) (*.f64 c (*.f64 y y3))) (fma.f64 k (*.f64 b y) (*.f64 c (*.f64 t y2)))))) | |
| 53.1b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (cbrt.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 t y2 (neg.f64 (*.f64 y y3))) (fma.f64 a y5 (*.f64 (neg.f64 c) y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)) (fma.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0))))))) (fma.f64 (fma.f64 t y2 (neg.f64 (*.f64 y y3))) (fma.f64 a y5 (*.f64 (neg.f64 c) y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)) (fma.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0)))))))) (fma.f64 (fma.f64 t y2 (neg.f64 (*.f64 y y3))) (fma.f64 a y5 (*.f64 (neg.f64 c) y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)) (fma.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0)))))))))) | |
| 46.8b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 z (-.f64 (fma.f64 k (*.f64 y0 b) (fma.f64 a (*.f64 y1 y3) (*.f64 c (*.f64 i t)))) (fma.f64 k (*.f64 y1 i) (fma.f64 c (*.f64 y0 y3) (*.f64 a (*.f64 b t))))))) | |
| 31.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)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (-.f64 (+.f64 (*.f64 a (*.f64 y (*.f64 b x))) (+.f64 (*.f64 k (*.f64 y0 (*.f64 b z))) (+.f64 (*.f64 y4 (*.f64 t (*.f64 b j))) (+.f64 (*.f64 c (*.f64 i (*.f64 t z))) (*.f64 k (*.f64 y (*.f64 i y5))))))) (+.f64 (*.f64 y0 (*.f64 j (*.f64 b x))) (+.f64 (*.f64 c (*.f64 y (*.f64 i x))) (+.f64 (*.f64 a (*.f64 t (*.f64 b z))) (+.f64 (*.f64 i (*.f64 t (*.f64 j y5))) (*.f64 k (*.f64 y4 (*.f64 y b))))))))))) |
Compiled 46625 to 5189 computations (88.9% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 6.4b | (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (+.f64 (*.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5))) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0))))))) |
| ✓ | 6.7b | (*.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5))) |
| ✓ | 6.8b | (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0)))) |
| ✓ | 9.4b | (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0))) |
132 calls:
| 27.0ms | (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (+.f64 (*.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5))) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0))))))) | y5 | 0 |
| 26.0ms | (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (+.f64 (*.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5))) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0))))))) | y2 | -inf |
| 26.0ms | (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (+.f64 (*.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5))) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0))))))) | y4 | -inf |
| 26.0ms | (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (+.f64 (*.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5))) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0))))))) | k | 0 |
| 25.0ms | (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (+.f64 (*.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5))) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0))))))) | y2 | 0 |
| 1× | batch-egg-rewrite |
| 594× | log1p-expm1-u_binary64 |
| 594× | expm1-log1p-u_binary64 |
| 225× | prod-diff_binary64 |
| 203× | log-prod_binary64 |
| 129× | fma-def_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 53 | 198 |
| 1 | 1240 | 198 |
| 1× | node limit |
| 1× | egg-herbie |
| 713× | fma-def_binary64 |
| 707× | +-commutative_binary64 |
| 602× | associate-+r+_binary64 |
| 298× | *-commutative_binary64 |
| 186× | associate-*r*_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 1204 | 49621 |
| 1× | node limit |
22 alts after pruning (21 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 340 | 8 | 348 |
| Fresh | 5 | 13 | 18 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 345 | 22 | 367 |
| Status | Error | Program |
| 42.9b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (neg.f64 (*.f64 x (-.f64 (fma.f64 y0 (*.f64 b j) (fma.f64 a (*.f64 y1 y2) (*.f64 c (*.f64 i y)))) (fma.f64 y (*.f64 b a) (fma.f64 c (*.f64 y0 y2) (*.f64 y1 (*.f64 i j)))))))) | |
| 30.4b | (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 y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (+.f64 (*.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5))) (*.f64 i (-.f64 (fma.f64 y1 (*.f64 j x) (*.f64 c (*.f64 z t))) (fma.f64 c (*.f64 x y) (*.f64 k (*.f64 z y1))))))))) | |
| 45.6b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 b (-.f64 (fma.f64 y4 (*.f64 j t) (fma.f64 k (*.f64 z y0) (*.f64 y (*.f64 x a)))) (fma.f64 y0 (*.f64 j x) (fma.f64 k (*.f64 y y4) (*.f64 (*.f64 z t) a)))))) | |
| 29.5b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (-.f64 (fma.f64 a (*.f64 t (*.f64 y2 y5)) (fma.f64 y4 (*.f64 t (*.f64 b j)) (fma.f64 y1 (*.f64 a (*.f64 z y3)) (+.f64 (*.f64 c (fma.f64 y4 (*.f64 y y3) (*.f64 (*.f64 i t) z))) (fma.f64 c (*.f64 y0 (*.f64 x y2)) (fma.f64 y (*.f64 (*.f64 b x) a) (fma.f64 k (*.f64 (*.f64 y0 b) z) (fma.f64 y1 (*.f64 (*.f64 i j) x) (*.f64 k (*.f64 y (*.f64 i y5))))))))))) (fma.f64 y (*.f64 a (*.f64 y3 y5)) (fma.f64 c (*.f64 y0 (*.f64 z y3)) (fma.f64 c (*.f64 i (*.f64 x y)) (fma.f64 c (*.f64 y4 (*.f64 t y2)) (fma.f64 i (*.f64 t (*.f64 j y5)) (fma.f64 k (*.f64 (*.f64 b y) y4) (fma.f64 a (*.f64 y1 (*.f64 x y2)) (fma.f64 y0 (*.f64 b (*.f64 j x)) (fma.f64 a (*.f64 (*.f64 z b) t) (*.f64 (*.f64 k i) (*.f64 z y1))))))))))))) | |
| 46.0b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 y4 (-.f64 (fma.f64 t (*.f64 b j) (*.f64 c (*.f64 y y3))) (fma.f64 k (*.f64 b y) (*.f64 c (*.f64 t y2)))))) | |
| 53.1b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (cbrt.f64 (pow.f64 (fma.f64 (fma.f64 t y2 (neg.f64 (*.f64 y y3))) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)) (fma.f64 (fma.f64 j t (*.f64 (neg.f64 k) y)) (fma.f64 b y4 (neg.f64 (*.f64 i y5))) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (*.f64 (neg.f64 i) c)) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0))))))) 3))) | |
| 42.6b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 x (-.f64 (fma.f64 a (*.f64 b y) (fma.f64 c (*.f64 y0 y2) (*.f64 y1 (*.f64 i j)))) (fma.f64 c (*.f64 i y) (fma.f64 y0 (*.f64 b j) (*.f64 y1 (*.f64 a y2))))))) | |
| ✓ | 25.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 y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (+.f64 (*.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5))) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0)))))))) |
| 37.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 y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 k (*.f64 i y)) (*.f64 i (*.f64 t j))) y5)))) | |
| 46.2b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 t (-.f64 (fma.f64 a (*.f64 y2 y5) (fma.f64 c (*.f64 z i) (*.f64 (*.f64 b j) y4))) (fma.f64 i (*.f64 j y5) (fma.f64 c (*.f64 y2 y4) (*.f64 (*.f64 z b) a)))))) | |
| 45.1b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 y0 (-.f64 (fma.f64 k (*.f64 z b) (*.f64 (*.f64 c y2) x)) (fma.f64 c (*.f64 z y3) (*.f64 b (*.f64 j x)))))) | |
| 40.6b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 c (-.f64 (fma.f64 y0 (*.f64 x y2) (fma.f64 y4 (*.f64 y y3) (*.f64 (*.f64 i t) z))) (fma.f64 y4 (*.f64 t y2) (fma.f64 y0 (*.f64 z y3) (*.f64 i (*.f64 x y))))))) | |
| 48.3b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 y3 (-.f64 (fma.f64 c (*.f64 y y4) (*.f64 (*.f64 y1 a) z)) (fma.f64 c (*.f64 z y0) (*.f64 y (*.f64 a y5)))))) | |
| ▶ | 25.6b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 (*.f64 (cbrt.f64 (fma.f64 (fma.f64 t y2 (neg.f64 (*.f64 y y3))) (fma.f64 a y5 (*.f64 (neg.f64 c) y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)) (fma.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0)))))))) (cbrt.f64 (fma.f64 (fma.f64 t y2 (neg.f64 (*.f64 y y3))) (fma.f64 a y5 (*.f64 (neg.f64 c) y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)) (fma.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0))))))))) (cbrt.f64 (fma.f64 (fma.f64 t y2 (neg.f64 (*.f64 y y3))) (fma.f64 a y5 (*.f64 (neg.f64 c) y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)) (fma.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0)))))))))) |
| 46.8b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 z (-.f64 (fma.f64 k (*.f64 y0 b) (fma.f64 a (*.f64 y1 y3) (*.f64 c (*.f64 i t)))) (fma.f64 k (*.f64 y1 i) (fma.f64 c (*.f64 y0 y3) (*.f64 a (*.f64 b t))))))) | |
| 47.6b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (neg.f64 (*.f64 y2 (-.f64 (fma.f64 c (*.f64 t y4) (*.f64 y1 (*.f64 x a))) (fma.f64 c (*.f64 y0 x) (*.f64 a (*.f64 t y5))))))) | |
| 42.2b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 y (-.f64 (fma.f64 a (*.f64 b x) (fma.f64 c (*.f64 y3 y4) (*.f64 k (*.f64 i y5)))) (fma.f64 c (*.f64 i x) (fma.f64 k (*.f64 b y4) (*.f64 a (*.f64 y3 y5))))))) | |
| 35.4b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (-.f64 (fma.f64 a (*.f64 t (*.f64 y5 y2)) (fma.f64 c (*.f64 y0 (*.f64 x y2)) (fma.f64 y1 (*.f64 (*.f64 i j) x) (fma.f64 a (*.f64 y1 (*.f64 z y3)) (+.f64 (*.f64 c (fma.f64 y4 (*.f64 y y3) (*.f64 (*.f64 i t) z))) (*.f64 k (*.f64 y (*.f64 i y5)))))))) (fma.f64 a (*.f64 y (*.f64 y5 y3)) (fma.f64 c (*.f64 (*.f64 y0 y3) z) (fma.f64 a (*.f64 (*.f64 y1 x) y2) (fma.f64 c (*.f64 (*.f64 i y) x) (fma.f64 c (*.f64 (*.f64 t y4) y2) (fma.f64 i (*.f64 t (*.f64 j y5)) (*.f64 (*.f64 k i) (*.f64 z y1)))))))))) | |
| 29.4b | (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 y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (fma.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (*.f64 j (*.f64 (-.f64 (*.f64 y1 i) (*.f64 y0 b)) x))))))) | |
| 27.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 y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (+.f64 (*.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5))) (-.f64 (+.f64 (*.f64 y1 (*.f64 i (*.f64 j x))) (+.f64 (*.f64 c (*.f64 i (*.f64 t z))) (+.f64 (*.f64 y (*.f64 a (*.f64 b x))) (*.f64 k (*.f64 y0 (*.f64 b z)))))) (+.f64 (*.f64 a (*.f64 t (*.f64 b z))) (+.f64 (*.f64 y0 (*.f64 j (*.f64 b x))) (+.f64 (*.f64 c (*.f64 i (*.f64 y x))) (*.f64 k (*.f64 y1 (*.f64 i z))))))))))) | |
| 38.0b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (-.f64 (fma.f64 k (*.f64 (*.f64 y0 b) z) (fma.f64 a (*.f64 t (*.f64 y5 y2)) (fma.f64 c (*.f64 y0 (*.f64 x y2)) (fma.f64 y4 (*.f64 t (*.f64 b j)) (fma.f64 i (*.f64 y1 (*.f64 j x)) (fma.f64 a (*.f64 y1 (*.f64 z y3)) (*.f64 c (*.f64 (*.f64 i t) z)))))))) (fma.f64 c (*.f64 (*.f64 y0 y3) z) (fma.f64 y1 (*.f64 a (*.f64 x y2)) (fma.f64 y0 (*.f64 b (*.f64 j x)) (fma.f64 a (*.f64 (*.f64 z b) t) (fma.f64 c (*.f64 (*.f64 t y4) y2) (fma.f64 i (*.f64 t (*.f64 j y5)) (*.f64 (*.f64 k i) (*.f64 z y1)))))))))) | |
| 31.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)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (-.f64 (+.f64 (*.f64 a (*.f64 y (*.f64 b x))) (+.f64 (*.f64 k (*.f64 y0 (*.f64 b z))) (+.f64 (*.f64 y4 (*.f64 t (*.f64 b j))) (+.f64 (*.f64 c (*.f64 i (*.f64 t z))) (*.f64 k (*.f64 y (*.f64 i y5))))))) (+.f64 (*.f64 y0 (*.f64 j (*.f64 b x))) (+.f64 (*.f64 c (*.f64 y (*.f64 i x))) (+.f64 (*.f64 a (*.f64 t (*.f64 b z))) (+.f64 (*.f64 i (*.f64 t (*.f64 j y5))) (*.f64 k (*.f64 y4 (*.f64 y b))))))))))) |
Compiled 40908 to 4989 computations (87.8% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 5.1b | (fma.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0))))) |
| ✓ | 6.4b | (fma.f64 (fma.f64 t y2 (neg.f64 (*.f64 y y3))) (fma.f64 a y5 (*.f64 (neg.f64 c) y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)) (fma.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0))))))) |
| 6.8b | (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0)))) | |
| 9.4b | (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0))) |
90 calls:
| 46.0ms | (fma.f64 (fma.f64 t y2 (neg.f64 (*.f64 y y3))) (fma.f64 a y5 (*.f64 (neg.f64 c) y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)) (fma.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0))))))) | y1 | 0 |
| 45.0ms | (fma.f64 (fma.f64 t y2 (neg.f64 (*.f64 y y3))) (fma.f64 a y5 (*.f64 (neg.f64 c) y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)) (fma.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0))))))) | c | 0 |
| 28.0ms | (fma.f64 (fma.f64 t y2 (neg.f64 (*.f64 y y3))) (fma.f64 a y5 (*.f64 (neg.f64 c) y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)) (fma.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0))))))) | t | -inf |
| 25.0ms | (fma.f64 (fma.f64 t y2 (neg.f64 (*.f64 y y3))) (fma.f64 a y5 (*.f64 (neg.f64 c) y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)) (fma.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0))))))) | y5 | inf |
| 23.0ms | (fma.f64 (fma.f64 t y2 (neg.f64 (*.f64 y y3))) (fma.f64 a y5 (*.f64 (neg.f64 c) y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)) (fma.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0))))))) | i | 0 |
| 1× | batch-egg-rewrite |
| 557× | log1p-expm1-u_binary64 |
| 557× | expm1-log1p-u_binary64 |
| 198× | log-prod_binary64 |
| 167× | unpow-prod-down_binary64 |
| 156× | pow2_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 52 | 176 |
| 1 | 1176 | 176 |
| 1× | node limit |
| 1× | egg-herbie |
| 785× | fma-def_binary64 |
| 782× | +-commutative_binary64 |
| 684× | associate-+r+_binary64 |
| 267× | *-commutative_binary64 |
| 169× | associate-*r*_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 1224 | 49680 |
| 1× | node limit |
22 alts after pruning (20 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 1298 | 1 | 1299 |
| Fresh | 1 | 19 | 20 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 1 | 1 |
| Total | 1299 | 22 | 1321 |
| Status | Error | Program |
| 42.9b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (neg.f64 (*.f64 x (-.f64 (fma.f64 y0 (*.f64 b j) (fma.f64 a (*.f64 y1 y2) (*.f64 c (*.f64 i y)))) (fma.f64 y (*.f64 b a) (fma.f64 c (*.f64 y0 y2) (*.f64 y1 (*.f64 i j)))))))) | |
| 30.4b | (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 y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (+.f64 (*.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5))) (*.f64 i (-.f64 (fma.f64 y1 (*.f64 j x) (*.f64 c (*.f64 z t))) (fma.f64 c (*.f64 x y) (*.f64 k (*.f64 z y1))))))))) | |
| 45.6b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 b (-.f64 (fma.f64 y4 (*.f64 j t) (fma.f64 k (*.f64 z y0) (*.f64 y (*.f64 x a)))) (fma.f64 y0 (*.f64 j x) (fma.f64 k (*.f64 y y4) (*.f64 (*.f64 z t) a)))))) | |
| 29.5b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (-.f64 (fma.f64 a (*.f64 t (*.f64 y2 y5)) (fma.f64 y4 (*.f64 t (*.f64 b j)) (fma.f64 y1 (*.f64 a (*.f64 z y3)) (+.f64 (*.f64 c (fma.f64 y4 (*.f64 y y3) (*.f64 (*.f64 i t) z))) (fma.f64 c (*.f64 y0 (*.f64 x y2)) (fma.f64 y (*.f64 (*.f64 b x) a) (fma.f64 k (*.f64 (*.f64 y0 b) z) (fma.f64 y1 (*.f64 (*.f64 i j) x) (*.f64 k (*.f64 y (*.f64 i y5))))))))))) (fma.f64 y (*.f64 a (*.f64 y3 y5)) (fma.f64 c (*.f64 y0 (*.f64 z y3)) (fma.f64 c (*.f64 i (*.f64 x y)) (fma.f64 c (*.f64 y4 (*.f64 t y2)) (fma.f64 i (*.f64 t (*.f64 j y5)) (fma.f64 k (*.f64 (*.f64 b y) y4) (fma.f64 a (*.f64 y1 (*.f64 x y2)) (fma.f64 y0 (*.f64 b (*.f64 j x)) (fma.f64 a (*.f64 (*.f64 z b) t) (*.f64 (*.f64 k i) (*.f64 z y1))))))))))))) | |
| 50.7b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 (*.f64 (cbrt.f64 (fma.f64 (fma.f64 t y2 (neg.f64 (*.f64 y y3))) (fma.f64 a y5 (*.f64 (neg.f64 c) y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)) (fma.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0)))))))) (cbrt.f64 (neg.f64 (*.f64 y2 (-.f64 (fma.f64 c (*.f64 y4 t) (*.f64 a (*.f64 x y1))) (fma.f64 c (*.f64 y0 x) (*.f64 (*.f64 a t) y5))))))) (cbrt.f64 (fma.f64 (fma.f64 t y2 (neg.f64 (*.f64 y y3))) (fma.f64 a y5 (*.f64 (neg.f64 c) y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)) (fma.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0)))))))))) | |
| 29.4b | (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 y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (fma.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (*.f64 j (*.f64 (-.f64 (*.f64 y1 i) (*.f64 y0 b)) x))))))) | |
| 42.6b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 x (-.f64 (fma.f64 a (*.f64 b y) (fma.f64 c (*.f64 y0 y2) (*.f64 y1 (*.f64 i j)))) (fma.f64 c (*.f64 i y) (fma.f64 y0 (*.f64 b j) (*.f64 y1 (*.f64 a y2))))))) | |
| ✓ | 25.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 y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (+.f64 (*.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5))) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0)))))))) |
| 37.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 y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 k (*.f64 i y)) (*.f64 i (*.f64 t j))) y5)))) | |
| 46.2b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 t (-.f64 (fma.f64 a (*.f64 y2 y5) (fma.f64 c (*.f64 z i) (*.f64 (*.f64 b j) y4))) (fma.f64 i (*.f64 j y5) (fma.f64 c (*.f64 y2 y4) (*.f64 (*.f64 z b) a)))))) | |
| 45.1b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 y0 (-.f64 (fma.f64 k (*.f64 z b) (*.f64 (*.f64 c y2) x)) (fma.f64 c (*.f64 z y3) (*.f64 b (*.f64 j x)))))) | |
| 40.6b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 c (-.f64 (fma.f64 y0 (*.f64 x y2) (fma.f64 y4 (*.f64 y y3) (*.f64 (*.f64 i t) z))) (fma.f64 y4 (*.f64 t y2) (fma.f64 y0 (*.f64 z y3) (*.f64 i (*.f64 x y))))))) | |
| 48.3b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 y3 (-.f64 (fma.f64 c (*.f64 y y4) (*.f64 (*.f64 y1 a) z)) (fma.f64 c (*.f64 z y0) (*.f64 y (*.f64 a y5)))))) | |
| ✓ | 25.6b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 (*.f64 (cbrt.f64 (fma.f64 (fma.f64 t y2 (neg.f64 (*.f64 y y3))) (fma.f64 a y5 (*.f64 (neg.f64 c) y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)) (fma.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0)))))))) (cbrt.f64 (fma.f64 (fma.f64 t y2 (neg.f64 (*.f64 y y3))) (fma.f64 a y5 (*.f64 (neg.f64 c) y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)) (fma.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0))))))))) (cbrt.f64 (fma.f64 (fma.f64 t y2 (neg.f64 (*.f64 y y3))) (fma.f64 a y5 (*.f64 (neg.f64 c) y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)) (fma.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0)))))))))) |
| 46.8b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 z (-.f64 (fma.f64 k (*.f64 y0 b) (fma.f64 a (*.f64 y1 y3) (*.f64 c (*.f64 i t)))) (fma.f64 k (*.f64 y1 i) (fma.f64 c (*.f64 y0 y3) (*.f64 a (*.f64 b t))))))) | |
| 47.6b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (neg.f64 (*.f64 y2 (-.f64 (fma.f64 c (*.f64 t y4) (*.f64 y1 (*.f64 x a))) (fma.f64 c (*.f64 y0 x) (*.f64 a (*.f64 t y5))))))) | |
| 42.2b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 y (-.f64 (fma.f64 a (*.f64 b x) (fma.f64 c (*.f64 y3 y4) (*.f64 k (*.f64 i y5)))) (fma.f64 c (*.f64 i x) (fma.f64 k (*.f64 b y4) (*.f64 a (*.f64 y3 y5))))))) | |
| 35.4b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (-.f64 (fma.f64 a (*.f64 t (*.f64 y5 y2)) (fma.f64 c (*.f64 y0 (*.f64 x y2)) (fma.f64 y1 (*.f64 (*.f64 i j) x) (fma.f64 a (*.f64 y1 (*.f64 z y3)) (+.f64 (*.f64 c (fma.f64 y4 (*.f64 y y3) (*.f64 (*.f64 i t) z))) (*.f64 k (*.f64 y (*.f64 i y5)))))))) (fma.f64 a (*.f64 y (*.f64 y5 y3)) (fma.f64 c (*.f64 (*.f64 y0 y3) z) (fma.f64 a (*.f64 (*.f64 y1 x) y2) (fma.f64 c (*.f64 (*.f64 i y) x) (fma.f64 c (*.f64 (*.f64 t y4) y2) (fma.f64 i (*.f64 t (*.f64 j y5)) (*.f64 (*.f64 k i) (*.f64 z y1)))))))))) | |
| 46.0b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 y4 (-.f64 (fma.f64 t (*.f64 b j) (*.f64 c (*.f64 y y3))) (fma.f64 k (*.f64 b y) (*.f64 c (*.f64 t y2)))))) | |
| ▶ | 27.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 y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (+.f64 (*.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5))) (-.f64 (+.f64 (*.f64 y1 (*.f64 i (*.f64 j x))) (+.f64 (*.f64 c (*.f64 i (*.f64 t z))) (+.f64 (*.f64 y (*.f64 a (*.f64 b x))) (*.f64 k (*.f64 y0 (*.f64 b z)))))) (+.f64 (*.f64 a (*.f64 t (*.f64 b z))) (+.f64 (*.f64 y0 (*.f64 j (*.f64 b x))) (+.f64 (*.f64 c (*.f64 i (*.f64 y x))) (*.f64 k (*.f64 y1 (*.f64 i z))))))))))) |
| 38.0b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (-.f64 (fma.f64 k (*.f64 (*.f64 y0 b) z) (fma.f64 a (*.f64 t (*.f64 y5 y2)) (fma.f64 c (*.f64 y0 (*.f64 x y2)) (fma.f64 y4 (*.f64 t (*.f64 b j)) (fma.f64 i (*.f64 y1 (*.f64 j x)) (fma.f64 a (*.f64 y1 (*.f64 z y3)) (*.f64 c (*.f64 (*.f64 i t) z)))))))) (fma.f64 c (*.f64 (*.f64 y0 y3) z) (fma.f64 y1 (*.f64 a (*.f64 x y2)) (fma.f64 y0 (*.f64 b (*.f64 j x)) (fma.f64 a (*.f64 (*.f64 z b) t) (fma.f64 c (*.f64 (*.f64 t y4) y2) (fma.f64 i (*.f64 t (*.f64 j y5)) (*.f64 (*.f64 k i) (*.f64 z y1)))))))))) | |
| 31.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)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (-.f64 (+.f64 (*.f64 a (*.f64 y (*.f64 b x))) (+.f64 (*.f64 k (*.f64 y0 (*.f64 b z))) (+.f64 (*.f64 y4 (*.f64 t (*.f64 b j))) (+.f64 (*.f64 c (*.f64 i (*.f64 t z))) (*.f64 k (*.f64 y (*.f64 i y5))))))) (+.f64 (*.f64 y0 (*.f64 j (*.f64 b x))) (+.f64 (*.f64 c (*.f64 y (*.f64 i x))) (+.f64 (*.f64 a (*.f64 t (*.f64 b z))) (+.f64 (*.f64 i (*.f64 t (*.f64 j y5))) (*.f64 k (*.f64 y4 (*.f64 y b))))))))))) |
Compiled 339253 to 9836 computations (97.1% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 5.7b | (*.f64 i (*.f64 j x)) |
| ✓ | 6.0b | (*.f64 c (*.f64 i (*.f64 y x))) |
| ✓ | 6.4b | (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (+.f64 (*.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5))) (-.f64 (+.f64 (*.f64 y1 (*.f64 i (*.f64 j x))) (+.f64 (*.f64 c (*.f64 i (*.f64 t z))) (+.f64 (*.f64 y (*.f64 a (*.f64 b x))) (*.f64 k (*.f64 y0 (*.f64 b z)))))) (+.f64 (*.f64 a (*.f64 t (*.f64 b z))) (+.f64 (*.f64 y0 (*.f64 j (*.f64 b x))) (+.f64 (*.f64 c (*.f64 i (*.f64 y x))) (*.f64 k (*.f64 y1 (*.f64 i z)))))))))) |
| 6.7b | (*.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5))) |
69 calls:
| 32.0ms | (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (+.f64 (*.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5))) (-.f64 (+.f64 (*.f64 y1 (*.f64 i (*.f64 j x))) (+.f64 (*.f64 c (*.f64 i (*.f64 t z))) (+.f64 (*.f64 y (*.f64 a (*.f64 b x))) (*.f64 k (*.f64 y0 (*.f64 b z)))))) (+.f64 (*.f64 a (*.f64 t (*.f64 b z))) (+.f64 (*.f64 y0 (*.f64 j (*.f64 b x))) (+.f64 (*.f64 c (*.f64 i (*.f64 y x))) (*.f64 k (*.f64 y1 (*.f64 i z)))))))))) | y0 | 0 |
| 30.0ms | (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (+.f64 (*.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5))) (-.f64 (+.f64 (*.f64 y1 (*.f64 i (*.f64 j x))) (+.f64 (*.f64 c (*.f64 i (*.f64 t z))) (+.f64 (*.f64 y (*.f64 a (*.f64 b x))) (*.f64 k (*.f64 y0 (*.f64 b z)))))) (+.f64 (*.f64 a (*.f64 t (*.f64 b z))) (+.f64 (*.f64 y0 (*.f64 j (*.f64 b x))) (+.f64 (*.f64 c (*.f64 i (*.f64 y x))) (*.f64 k (*.f64 y1 (*.f64 i z)))))))))) | y4 | 0 |
| 28.0ms | (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (+.f64 (*.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5))) (-.f64 (+.f64 (*.f64 y1 (*.f64 i (*.f64 j x))) (+.f64 (*.f64 c (*.f64 i (*.f64 t z))) (+.f64 (*.f64 y (*.f64 a (*.f64 b x))) (*.f64 k (*.f64 y0 (*.f64 b z)))))) (+.f64 (*.f64 a (*.f64 t (*.f64 b z))) (+.f64 (*.f64 y0 (*.f64 j (*.f64 b x))) (+.f64 (*.f64 c (*.f64 i (*.f64 y x))) (*.f64 k (*.f64 y1 (*.f64 i z)))))))))) | j | inf |
| 28.0ms | (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (+.f64 (*.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5))) (-.f64 (+.f64 (*.f64 y1 (*.f64 i (*.f64 j x))) (+.f64 (*.f64 c (*.f64 i (*.f64 t z))) (+.f64 (*.f64 y (*.f64 a (*.f64 b x))) (*.f64 k (*.f64 y0 (*.f64 b z)))))) (+.f64 (*.f64 a (*.f64 t (*.f64 b z))) (+.f64 (*.f64 y0 (*.f64 j (*.f64 b x))) (+.f64 (*.f64 c (*.f64 i (*.f64 y x))) (*.f64 k (*.f64 y1 (*.f64 i z)))))))))) | y2 | -inf |
| 27.0ms | (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (+.f64 (*.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5))) (-.f64 (+.f64 (*.f64 y1 (*.f64 i (*.f64 j x))) (+.f64 (*.f64 c (*.f64 i (*.f64 t z))) (+.f64 (*.f64 y (*.f64 a (*.f64 b x))) (*.f64 k (*.f64 y0 (*.f64 b z)))))) (+.f64 (*.f64 a (*.f64 t (*.f64 b z))) (+.f64 (*.f64 y0 (*.f64 j (*.f64 b x))) (+.f64 (*.f64 c (*.f64 i (*.f64 y x))) (*.f64 k (*.f64 y1 (*.f64 i z)))))))))) | y3 | inf |
| 1× | batch-egg-rewrite |
| 778× | log1p-expm1-u_binary64 |
| 778× | expm1-log1p-u_binary64 |
| 366× | prod-diff_binary64 |
| 68× | *-un-lft-identity_binary64 |
| 68× | add-sqr-sqrt_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 68 | 165 |
| 1 | 1609 | 165 |
| 1× | node limit |
| 1× | egg-herbie |
| 652× | fma-def_binary64 |
| 649× | +-commutative_binary64 |
| 577× | associate-+r+_binary64 |
| 315× | sub-neg_binary64 |
| 259× | cancel-sign-sub-inv_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 1004 | 32888 |
| 1 | 4452 | 32888 |
| 1× | node limit |
21 alts after pruning (19 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 218 | 2 | 220 |
| Fresh | 2 | 17 | 19 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 2 | 2 |
| Total | 221 | 21 | 242 |
| Status | Error | Program |
| 42.9b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (neg.f64 (*.f64 x (-.f64 (fma.f64 y0 (*.f64 b j) (fma.f64 a (*.f64 y1 y2) (*.f64 c (*.f64 i y)))) (fma.f64 y (*.f64 b a) (fma.f64 c (*.f64 y0 y2) (*.f64 y1 (*.f64 i j)))))))) | |
| 30.4b | (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 y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (+.f64 (*.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5))) (*.f64 i (-.f64 (fma.f64 y1 (*.f64 j x) (*.f64 c (*.f64 z t))) (fma.f64 c (*.f64 x y) (*.f64 k (*.f64 z y1))))))))) | |
| 45.6b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 b (-.f64 (fma.f64 y4 (*.f64 j t) (fma.f64 k (*.f64 z y0) (*.f64 y (*.f64 x a)))) (fma.f64 y0 (*.f64 j x) (fma.f64 k (*.f64 y y4) (*.f64 (*.f64 z t) a)))))) | |
| 29.5b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (-.f64 (fma.f64 a (*.f64 t (*.f64 y2 y5)) (fma.f64 y4 (*.f64 t (*.f64 b j)) (fma.f64 y1 (*.f64 a (*.f64 z y3)) (+.f64 (*.f64 c (fma.f64 y4 (*.f64 y y3) (*.f64 (*.f64 i t) z))) (fma.f64 c (*.f64 y0 (*.f64 x y2)) (fma.f64 y (*.f64 (*.f64 b x) a) (fma.f64 k (*.f64 (*.f64 y0 b) z) (fma.f64 y1 (*.f64 (*.f64 i j) x) (*.f64 k (*.f64 y (*.f64 i y5))))))))))) (fma.f64 y (*.f64 a (*.f64 y3 y5)) (fma.f64 c (*.f64 y0 (*.f64 z y3)) (fma.f64 c (*.f64 i (*.f64 x y)) (fma.f64 c (*.f64 y4 (*.f64 t y2)) (fma.f64 i (*.f64 t (*.f64 j y5)) (fma.f64 k (*.f64 (*.f64 b y) y4) (fma.f64 a (*.f64 y1 (*.f64 x y2)) (fma.f64 y0 (*.f64 b (*.f64 j x)) (fma.f64 a (*.f64 (*.f64 z b) t) (*.f64 (*.f64 k i) (*.f64 z y1))))))))))))) | |
| 42.6b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 x (-.f64 (fma.f64 a (*.f64 b y) (fma.f64 c (*.f64 y0 y2) (*.f64 y1 (*.f64 i j)))) (fma.f64 c (*.f64 i y) (fma.f64 y0 (*.f64 b j) (*.f64 y1 (*.f64 a y2))))))) | |
| ✓ | 25.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 y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (+.f64 (*.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5))) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0)))))))) |
| 37.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 y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (*.f64 (-.f64 (*.f64 k (*.f64 i y)) (*.f64 i (*.f64 t j))) y5)))) | |
| 38.0b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (-.f64 (fma.f64 k (*.f64 (*.f64 y0 b) z) (fma.f64 a (*.f64 t (*.f64 y5 y2)) (fma.f64 c (*.f64 y0 (*.f64 x y2)) (fma.f64 y4 (*.f64 t (*.f64 b j)) (fma.f64 i (*.f64 y1 (*.f64 j x)) (fma.f64 a (*.f64 y1 (*.f64 z y3)) (*.f64 c (*.f64 (*.f64 i t) z)))))))) (fma.f64 c (*.f64 (*.f64 y0 y3) z) (fma.f64 y1 (*.f64 a (*.f64 x y2)) (fma.f64 y0 (*.f64 b (*.f64 j x)) (fma.f64 a (*.f64 (*.f64 z b) t) (fma.f64 c (*.f64 (*.f64 t y4) y2) (fma.f64 i (*.f64 t (*.f64 j y5)) (*.f64 (*.f64 k i) (*.f64 z y1)))))))))) | |
| 32.7b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (-.f64 (fma.f64 k (*.f64 y0 (*.f64 z b)) (fma.f64 c (*.f64 y0 (*.f64 y2 x)) (fma.f64 a (*.f64 y (*.f64 b x)) (fma.f64 i (*.f64 y1 (*.f64 x j)) (fma.f64 y1 (*.f64 a (*.f64 z y3)) (fma.f64 c (*.f64 y4 (*.f64 y y3)) (*.f64 k (*.f64 y (*.f64 i y5))))))))) (fma.f64 c (*.f64 y0 (*.f64 z y3)) (fma.f64 a (*.f64 y (*.f64 y3 y5)) (fma.f64 a (*.f64 (*.f64 x y1) y2) (fma.f64 y0 (*.f64 b (*.f64 x j)) (fma.f64 c (*.f64 y (*.f64 x i)) (*.f64 k (fma.f64 i (*.f64 z y1) (*.f64 y4 (*.f64 b y))))))))))) | |
| 46.2b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 t (-.f64 (fma.f64 a (*.f64 y2 y5) (fma.f64 c (*.f64 z i) (*.f64 (*.f64 b j) y4))) (fma.f64 i (*.f64 j y5) (fma.f64 c (*.f64 y2 y4) (*.f64 (*.f64 z b) a)))))) | |
| 45.1b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 y0 (-.f64 (fma.f64 k (*.f64 z b) (*.f64 (*.f64 c y2) x)) (fma.f64 c (*.f64 z y3) (*.f64 b (*.f64 j x)))))) | |
| 40.6b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 c (-.f64 (fma.f64 y0 (*.f64 x y2) (fma.f64 y4 (*.f64 y y3) (*.f64 (*.f64 i t) z))) (fma.f64 y4 (*.f64 t y2) (fma.f64 y0 (*.f64 z y3) (*.f64 i (*.f64 x y))))))) | |
| 48.3b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 y3 (-.f64 (fma.f64 c (*.f64 y y4) (*.f64 (*.f64 y1 a) z)) (fma.f64 c (*.f64 z y0) (*.f64 y (*.f64 a y5)))))) | |
| ✓ | 25.6b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 (*.f64 (cbrt.f64 (fma.f64 (fma.f64 t y2 (neg.f64 (*.f64 y y3))) (fma.f64 a y5 (*.f64 (neg.f64 c) y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)) (fma.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0)))))))) (cbrt.f64 (fma.f64 (fma.f64 t y2 (neg.f64 (*.f64 y y3))) (fma.f64 a y5 (*.f64 (neg.f64 c) y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)) (fma.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0))))))))) (cbrt.f64 (fma.f64 (fma.f64 t y2 (neg.f64 (*.f64 y y3))) (fma.f64 a y5 (*.f64 (neg.f64 c) y4)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 y0 c) (*.f64 y1 a)) (fma.f64 (-.f64 (*.f64 j t) (*.f64 k y)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (fma.f64 b a (neg.f64 (*.f64 i c))) (*.f64 (-.f64 (*.f64 x j) (*.f64 z k)) (fma.f64 i y1 (*.f64 (neg.f64 b) y0)))))))))) |
| 46.8b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 z (-.f64 (fma.f64 k (*.f64 y0 b) (fma.f64 a (*.f64 y1 y3) (*.f64 c (*.f64 i t)))) (fma.f64 k (*.f64 y1 i) (fma.f64 c (*.f64 y0 y3) (*.f64 a (*.f64 b t))))))) | |
| 47.6b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (neg.f64 (*.f64 y2 (-.f64 (fma.f64 c (*.f64 t y4) (*.f64 y1 (*.f64 x a))) (fma.f64 c (*.f64 y0 x) (*.f64 a (*.f64 t y5))))))) | |
| 42.2b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 y (-.f64 (fma.f64 a (*.f64 b x) (fma.f64 c (*.f64 y3 y4) (*.f64 k (*.f64 i y5)))) (fma.f64 c (*.f64 i x) (fma.f64 k (*.f64 b y4) (*.f64 a (*.f64 y3 y5))))))) | |
| 53.8b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (cbrt.f64 (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (fma.f64 x y2 (neg.f64 (*.f64 y3 z))) (-.f64 (*.f64 c y0) (*.f64 a y1)) (fma.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 y4 b) (*.f64 y5 i)) (-.f64 (fma.f64 y1 (*.f64 (*.f64 i j) x) (fma.f64 c (*.f64 i (*.f64 t z)) (fma.f64 y (*.f64 (*.f64 a b) x) (*.f64 (*.f64 k y0) (*.f64 z b))))) (fma.f64 a (*.f64 t (*.f64 z b)) (fma.f64 y0 (*.f64 j (*.f64 x b)) (fma.f64 c (*.f64 i (*.f64 y x)) (*.f64 k (*.f64 y1 (*.f64 z i)))))))))) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (fma.f64 x y2 (neg.f64 (*.f64 y3 z))) (-.f64 (*.f64 c y0) (*.f64 a y1)) (fma.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 y4 b) (*.f64 y5 i)) (-.f64 (fma.f64 y1 (*.f64 (*.f64 i j) x) (fma.f64 c (*.f64 i (*.f64 t z)) (fma.f64 y (*.f64 (*.f64 a b) x) (*.f64 (*.f64 k y0) (*.f64 z b))))) (fma.f64 a (*.f64 t (*.f64 z b)) (fma.f64 y0 (*.f64 j (*.f64 x b)) (fma.f64 c (*.f64 i (*.f64 y x)) (*.f64 k (*.f64 y1 (*.f64 z i))))))))))) (fma.f64 (-.f64 (*.f64 t y2) (*.f64 y y3)) (-.f64 (*.f64 a y5) (*.f64 c y4)) (fma.f64 (fma.f64 x y2 (neg.f64 (*.f64 y3 z))) (-.f64 (*.f64 c y0) (*.f64 a y1)) (fma.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 y4 b) (*.f64 y5 i)) (-.f64 (fma.f64 y1 (*.f64 (*.f64 i j) x) (fma.f64 c (*.f64 i (*.f64 t z)) (fma.f64 y (*.f64 (*.f64 a b) x) (*.f64 (*.f64 k y0) (*.f64 z b))))) (fma.f64 a (*.f64 t (*.f64 z b)) (fma.f64 y0 (*.f64 j (*.f64 x b)) (fma.f64 c (*.f64 i (*.f64 y x)) (*.f64 k (*.f64 y1 (*.f64 z i))))))))))))) | |
| 29.4b | (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 y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (fma.f64 (-.f64 (*.f64 t j) (*.f64 y k)) (-.f64 (*.f64 b y4) (*.f64 i y5)) (fma.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 a b) (*.f64 c i)) (*.f64 j (*.f64 (-.f64 (*.f64 y1 i) (*.f64 y0 b)) x))))))) | |
| 46.0b | (fma.f64 (-.f64 (*.f64 k y2) (*.f64 j y3)) (-.f64 (*.f64 y1 y4) (*.f64 y0 y5)) (*.f64 y4 (-.f64 (fma.f64 t (*.f64 b j) (*.f64 c (*.f64 y y3))) (fma.f64 k (*.f64 b y) (*.f64 c (*.f64 t y2)))))) | |
| 31.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)) (fma.f64 (-.f64 (*.f64 x y2) (*.f64 z y3)) (-.f64 (*.f64 c y0) (*.f64 a y1)) (-.f64 (+.f64 (*.f64 a (*.f64 y (*.f64 b x))) (+.f64 (*.f64 k (*.f64 y0 (*.f64 b z))) (+.f64 (*.f64 y4 (*.f64 t (*.f64 b j))) (+.f64 (*.f64 c (*.f64 i (*.f64 t z))) (*.f64 k (*.f64 y (*.f64 i y5))))))) (+.f64 (*.f64 y0 (*.f64 j (*.f64 b x))) (+.f64 (*.f64 c (*.f64 y (*.f64 i x))) (+.f64 (*.f64 a (*.f64 t (*.f64 b z))) (+.f64 (*.f64 i (*.f64 t (*.f64 j y5))) (*.f64 k (*.f64 y4 (*.f64 y b))))))))))) |
Compiled 28354 to 3086 computations (89.1% saved)
Total 12.5b remaining (64%)
Threshold costs 0b (0%)
Compiled 1549976 to 641470 computations (58.6% saved)
| 2× | left-value |
2 calls:
| 0.0ms | (+.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)))) |
| 0.0ms | (+.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)))) |
| Iters | Point | Range | ||||
|---|---|---|---|---|---|---|
2.231801371985882e+306 | ∈ [ | 2.231801371985882e+306 | , | 1.8810719748779222e+307 | ] | |
#hash((type . real) (value . -inf)) | ∈ [ | #hash((type . real) (value . -inf)) | , | -6.78899019334388e+306 | ] | |
Compiled 111 to 63 computations (43.2% saved)
| 1× | egg-herbie |
| 538× | neg-sub0_binary64 |
| 538× | neg-mul-1_binary64 |
| 466× | distribute-rgt-neg-in_binary64 |
| 397× | distribute-rgt-neg-out_binary64 |
| 375× | distribute-lft-neg-out_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 193 | 801 |
| 1 | 412 | 801 |
| 2 | 562 | 801 |
| 3 | 697 | 801 |
| 4 | 855 | 801 |
| 5 | 1091 | 801 |
| 6 | 1640 | 801 |
| 7 | 2412 | 801 |
| 8 | 3034 | 801 |
| 9 | 3516 | 801 |
| 10 | 3919 | 801 |
| 11 | 4003 | 801 |
| 12 | 4043 | 801 |
| 13 | 4268 | 801 |
| 14 | 4508 | 801 |
| 15 | 4604 | 801 |
| 16 | 4760 | 801 |
| 17 | 4861 | 801 |
| 18 | 4941 | 801 |
| 1× | node limit |
| 1× | fuel |
Compiled 3333 to 1361 computations (59.2% saved)
Loading profile data...