Time bar (total: 16.5s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.6% | 0.4% | 0% | 0% | 0% | 0 |
| 0% | 0% | 99.6% | 0.4% | 0% | 0% | 0% | 1 |
| 0% | 0% | 99.6% | 0.4% | 0% | 0% | 0% | 2 |
| 0% | 0% | 99.6% | 0.4% | 0% | 0% | 0% | 3 |
| 0% | 0% | 99.6% | 0.4% | 0% | 0% | 0% | 4 |
| 0% | 0% | 99.6% | 0.4% | 0% | 0% | 0% | 5 |
| 0% | 0% | 99.6% | 0.4% | 0% | 0% | 0% | 6 |
| 0% | 0% | 99.6% | 0.4% | 0% | 0% | 0% | 7 |
| 0% | 0% | 99.6% | 0.4% | 0% | 0% | 0% | 8 |
| 0% | 0% | 99.6% | 0.4% | 0% | 0% | 0% | 9 |
| 0% | 0% | 99.6% | 0.4% | 0% | 0% | 0% | 10 |
| 0% | 0% | 99.6% | 0.4% | 0% | 0% | 0% | 11 |
| 0% | 0% | 99.6% | 0.4% | 0% | 0% | 0% | 12 |
Compiled 24 to 16 computations (33.3% saved)
| 1.4s | 8256× | body | 256 | valid |
| 949.0ms | 5700× | body | 256 | infinite |
| 2× | egg-herbie |
| 771× | fma-def_binary64 |
| 329× | associate-+l+_binary64 |
| 267× | associate-+r+_binary64 |
| 212× | +-commutative_binary64 |
| 28× | *-commutative_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 133 | 580 |
| 1 | 363 | 464 |
| 2 | 1010 | 464 |
| 3 | 1727 | 464 |
| 4 | 1866 | 464 |
| 5 | 1872 | 464 |
| 0 | 8 | 8 |
| 1 | 8 | 8 |
| 1× | unsound |
| 1× | saturated |
| Inputs |
|---|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
| Outputs |
|---|
0 |
1 |
0 |
2 |
3 |
2 |
4 |
5 |
4 |
6 |
7 |
6 |
| Inputs |
|---|
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i)) |
(+.f64 (+.f64 (+.f64 (*.f64 y x) (*.f64 z t)) (*.f64 a b)) (*.f64 c i)) |
(+.f64 (+.f64 (+.f64 (*.f64 z y) (*.f64 x t)) (*.f64 a b)) (*.f64 c i)) |
(+.f64 (+.f64 (+.f64 (*.f64 t y) (*.f64 z x)) (*.f64 a b)) (*.f64 c i)) |
(+.f64 (+.f64 (+.f64 (*.f64 a y) (*.f64 z t)) (*.f64 x b)) (*.f64 c i)) |
(+.f64 (+.f64 (+.f64 (*.f64 b y) (*.f64 z t)) (*.f64 a x)) (*.f64 c i)) |
(+.f64 (+.f64 (+.f64 (*.f64 c y) (*.f64 z t)) (*.f64 a b)) (*.f64 x i)) |
(+.f64 (+.f64 (+.f64 (*.f64 i y) (*.f64 z t)) (*.f64 a b)) (*.f64 c x)) |
(+.f64 (+.f64 (+.f64 (*.f64 x z) (*.f64 y t)) (*.f64 a b)) (*.f64 c i)) |
(+.f64 (+.f64 (+.f64 (*.f64 x t) (*.f64 z y)) (*.f64 a b)) (*.f64 c i)) |
(+.f64 (+.f64 (+.f64 (*.f64 x a) (*.f64 z t)) (*.f64 y b)) (*.f64 c i)) |
(+.f64 (+.f64 (+.f64 (*.f64 x b) (*.f64 z t)) (*.f64 a y)) (*.f64 c i)) |
(+.f64 (+.f64 (+.f64 (*.f64 x c) (*.f64 z t)) (*.f64 a b)) (*.f64 y i)) |
(+.f64 (+.f64 (+.f64 (*.f64 x i) (*.f64 z t)) (*.f64 a b)) (*.f64 c y)) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 t z)) (*.f64 a b)) (*.f64 c i)) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 a t)) (*.f64 z b)) (*.f64 c i)) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 b t)) (*.f64 a z)) (*.f64 c i)) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 c t)) (*.f64 a b)) (*.f64 z i)) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 i t)) (*.f64 a b)) (*.f64 c z)) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z a)) (*.f64 t b)) (*.f64 c i)) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z b)) (*.f64 a t)) (*.f64 c i)) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z c)) (*.f64 a b)) (*.f64 t i)) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z i)) (*.f64 a b)) (*.f64 c t)) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 b a)) (*.f64 c i)) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 c b)) (*.f64 a i)) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 i b)) (*.f64 c a)) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a c)) (*.f64 b i)) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a i)) (*.f64 c b)) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 i c)) |
| Outputs |
|---|
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i)) |
(+.f64 (fma.f64 x y (*.f64 z t)) (+.f64 (*.f64 a b) (*.f64 c i))) |
(fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t)))) |
(fma.f64 c i (fma.f64 z t (fma.f64 a b (*.f64 x y)))) |
(+.f64 (+.f64 (+.f64 (*.f64 y x) (*.f64 z t)) (*.f64 a b)) (*.f64 c i)) |
(+.f64 (fma.f64 x y (*.f64 z t)) (+.f64 (*.f64 a b) (*.f64 c i))) |
(fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t)))) |
(fma.f64 c i (fma.f64 z t (fma.f64 a b (*.f64 x y)))) |
(+.f64 (+.f64 (+.f64 (*.f64 z y) (*.f64 x t)) (*.f64 a b)) (*.f64 c i)) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (fma.f64 x t (*.f64 y z)))) |
(fma.f64 c i (fma.f64 x t (fma.f64 y z (*.f64 a b)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 x t (*.f64 y z)))) |
(fma.f64 x t (fma.f64 c i (fma.f64 y z (*.f64 a b)))) |
(+.f64 (+.f64 (+.f64 (*.f64 t y) (*.f64 z x)) (*.f64 a b)) (*.f64 c i)) |
(+.f64 (fma.f64 t y (*.f64 x z)) (+.f64 (*.f64 a b) (*.f64 c i))) |
(fma.f64 c i (fma.f64 x z (fma.f64 y t (*.f64 a b)))) |
(fma.f64 y t (fma.f64 x z (fma.f64 a b (*.f64 c i)))) |
(fma.f64 x z (fma.f64 a b (fma.f64 c i (*.f64 y t)))) |
(+.f64 (+.f64 (+.f64 (*.f64 a y) (*.f64 z t)) (*.f64 x b)) (*.f64 c i)) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y a) (fma.f64 x b (*.f64 z t)))) |
(fma.f64 c i (fma.f64 x b (fma.f64 y a (*.f64 z t)))) |
(fma.f64 x b (fma.f64 z t (fma.f64 y a (*.f64 c i)))) |
(fma.f64 x b (fma.f64 y a (fma.f64 z t (*.f64 c i)))) |
(+.f64 (+.f64 (+.f64 (*.f64 b y) (*.f64 z t)) (*.f64 a x)) (*.f64 c i)) |
(+.f64 (*.f64 c i) (+.f64 (fma.f64 b y (*.f64 z t)) (*.f64 x a))) |
(fma.f64 c i (fma.f64 x a (fma.f64 y b (*.f64 z t)))) |
(fma.f64 z t (fma.f64 y b (fma.f64 x a (*.f64 c i)))) |
(+.f64 (+.f64 (+.f64 (*.f64 c y) (*.f64 z t)) (*.f64 a b)) (*.f64 x i)) |
(+.f64 (fma.f64 c y (*.f64 z t)) (+.f64 (*.f64 a b) (*.f64 x i))) |
(fma.f64 x i (fma.f64 y c (fma.f64 z t (*.f64 a b)))) |
(+.f64 (+.f64 (+.f64 (*.f64 i y) (*.f64 z t)) (*.f64 a b)) (*.f64 c x)) |
(+.f64 (fma.f64 i y (*.f64 z t)) (+.f64 (*.f64 a b) (*.f64 x c))) |
(fma.f64 x c (fma.f64 y i (fma.f64 z t (*.f64 a b)))) |
(+.f64 (+.f64 (+.f64 (*.f64 x z) (*.f64 y t)) (*.f64 a b)) (*.f64 c i)) |
(+.f64 (fma.f64 t y (*.f64 x z)) (+.f64 (*.f64 a b) (*.f64 c i))) |
(fma.f64 c i (fma.f64 x z (fma.f64 y t (*.f64 a b)))) |
(fma.f64 y t (fma.f64 x z (fma.f64 a b (*.f64 c i)))) |
(fma.f64 x z (fma.f64 a b (fma.f64 c i (*.f64 y t)))) |
(+.f64 (+.f64 (+.f64 (*.f64 x t) (*.f64 z y)) (*.f64 a b)) (*.f64 c i)) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (fma.f64 x t (*.f64 y z)))) |
(fma.f64 c i (fma.f64 x t (fma.f64 y z (*.f64 a b)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 x t (*.f64 y z)))) |
(fma.f64 x t (fma.f64 c i (fma.f64 y z (*.f64 a b)))) |
(+.f64 (+.f64 (+.f64 (*.f64 x a) (*.f64 z t)) (*.f64 y b)) (*.f64 c i)) |
(+.f64 (*.f64 c i) (+.f64 (fma.f64 b y (*.f64 z t)) (*.f64 x a))) |
(fma.f64 c i (fma.f64 x a (fma.f64 y b (*.f64 z t)))) |
(fma.f64 z t (fma.f64 y b (fma.f64 x a (*.f64 c i)))) |
(+.f64 (+.f64 (+.f64 (*.f64 x b) (*.f64 z t)) (*.f64 a y)) (*.f64 c i)) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y a) (fma.f64 x b (*.f64 z t)))) |
(fma.f64 c i (fma.f64 x b (fma.f64 y a (*.f64 z t)))) |
(fma.f64 x b (fma.f64 z t (fma.f64 y a (*.f64 c i)))) |
(fma.f64 x b (fma.f64 y a (fma.f64 z t (*.f64 c i)))) |
(+.f64 (+.f64 (+.f64 (*.f64 x c) (*.f64 z t)) (*.f64 a b)) (*.f64 y i)) |
(+.f64 (fma.f64 i y (*.f64 z t)) (+.f64 (*.f64 a b) (*.f64 x c))) |
(fma.f64 x c (fma.f64 y i (fma.f64 z t (*.f64 a b)))) |
(+.f64 (+.f64 (+.f64 (*.f64 x i) (*.f64 z t)) (*.f64 a b)) (*.f64 c y)) |
(+.f64 (fma.f64 c y (*.f64 z t)) (+.f64 (*.f64 a b) (*.f64 x i))) |
(fma.f64 x i (fma.f64 y c (fma.f64 z t (*.f64 a b)))) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 t z)) (*.f64 a b)) (*.f64 c i)) |
(+.f64 (fma.f64 x y (*.f64 z t)) (+.f64 (*.f64 a b) (*.f64 c i))) |
(fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t)))) |
(fma.f64 c i (fma.f64 z t (fma.f64 a b (*.f64 x y)))) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 a t)) (*.f64 z b)) (*.f64 c i)) |
(+.f64 (*.f64 c i) (+.f64 (fma.f64 x y (*.f64 t a)) (*.f64 z b))) |
(fma.f64 c i (fma.f64 x y (fma.f64 z b (*.f64 t a)))) |
(fma.f64 x y (fma.f64 z b (fma.f64 t a (*.f64 c i)))) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 b t)) (*.f64 a z)) (*.f64 c i)) |
(+.f64 (*.f64 c i) (+.f64 (fma.f64 x y (*.f64 t b)) (*.f64 z a))) |
(fma.f64 c i (fma.f64 t b (fma.f64 x y (*.f64 z a)))) |
(fma.f64 z a (fma.f64 c i (fma.f64 x y (*.f64 t b)))) |
(fma.f64 z a (fma.f64 t b (fma.f64 x y (*.f64 c i)))) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 c t)) (*.f64 a b)) (*.f64 z i)) |
(+.f64 (fma.f64 x y (*.f64 t c)) (+.f64 (*.f64 a b) (*.f64 z i))) |
(fma.f64 z i (fma.f64 x y (fma.f64 a b (*.f64 t c)))) |
(fma.f64 x y (fma.f64 z i (fma.f64 a b (*.f64 t c)))) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 i t)) (*.f64 a b)) (*.f64 c z)) |
(+.f64 (fma.f64 x y (*.f64 t i)) (+.f64 (*.f64 a b) (*.f64 z c))) |
(fma.f64 z c (fma.f64 x y (fma.f64 t i (*.f64 a b)))) |
(fma.f64 x y (fma.f64 t i (fma.f64 z c (*.f64 a b)))) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z a)) (*.f64 t b)) (*.f64 c i)) |
(+.f64 (*.f64 c i) (+.f64 (fma.f64 x y (*.f64 t b)) (*.f64 z a))) |
(fma.f64 c i (fma.f64 t b (fma.f64 x y (*.f64 z a)))) |
(fma.f64 z a (fma.f64 c i (fma.f64 x y (*.f64 t b)))) |
(fma.f64 z a (fma.f64 t b (fma.f64 x y (*.f64 c i)))) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z b)) (*.f64 a t)) (*.f64 c i)) |
(+.f64 (*.f64 c i) (+.f64 (fma.f64 x y (*.f64 t a)) (*.f64 z b))) |
(fma.f64 c i (fma.f64 x y (fma.f64 z b (*.f64 t a)))) |
(fma.f64 x y (fma.f64 z b (fma.f64 t a (*.f64 c i)))) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z c)) (*.f64 a b)) (*.f64 t i)) |
(+.f64 (fma.f64 x y (*.f64 t i)) (+.f64 (*.f64 a b) (*.f64 z c))) |
(fma.f64 z c (fma.f64 x y (fma.f64 t i (*.f64 a b)))) |
(fma.f64 x y (fma.f64 t i (fma.f64 z c (*.f64 a b)))) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z i)) (*.f64 a b)) (*.f64 c t)) |
(+.f64 (fma.f64 x y (*.f64 t c)) (+.f64 (*.f64 a b) (*.f64 z i))) |
(fma.f64 z i (fma.f64 x y (fma.f64 a b (*.f64 t c)))) |
(fma.f64 x y (fma.f64 z i (fma.f64 a b (*.f64 t c)))) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 b a)) (*.f64 c i)) |
(+.f64 (fma.f64 x y (*.f64 z t)) (+.f64 (*.f64 a b) (*.f64 c i))) |
(fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t)))) |
(fma.f64 c i (fma.f64 z t (fma.f64 a b (*.f64 x y)))) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 c b)) (*.f64 a i)) |
(+.f64 (fma.f64 x y (*.f64 z t)) (+.f64 (*.f64 b c) (*.f64 a i))) |
(fma.f64 a i (fma.f64 b c (fma.f64 x y (*.f64 z t)))) |
(fma.f64 a i (fma.f64 x y (fma.f64 b c (*.f64 z t)))) |
(fma.f64 x y (fma.f64 a i (fma.f64 b c (*.f64 z t)))) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 i b)) (*.f64 c a)) |
(+.f64 (fma.f64 x y (*.f64 z t)) (+.f64 (*.f64 b i) (*.f64 a c))) |
(fma.f64 a c (fma.f64 b i (fma.f64 x y (*.f64 z t)))) |
(fma.f64 a c (fma.f64 z t (fma.f64 x y (*.f64 b i)))) |
(fma.f64 x y (fma.f64 b i (fma.f64 a c (*.f64 z t)))) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a c)) (*.f64 b i)) |
(+.f64 (fma.f64 x y (*.f64 z t)) (+.f64 (*.f64 b i) (*.f64 a c))) |
(fma.f64 a c (fma.f64 b i (fma.f64 x y (*.f64 z t)))) |
(fma.f64 a c (fma.f64 z t (fma.f64 x y (*.f64 b i)))) |
(fma.f64 x y (fma.f64 b i (fma.f64 a c (*.f64 z t)))) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a i)) (*.f64 c b)) |
(+.f64 (fma.f64 x y (*.f64 z t)) (+.f64 (*.f64 b c) (*.f64 a i))) |
(fma.f64 a i (fma.f64 b c (fma.f64 x y (*.f64 z t)))) |
(fma.f64 a i (fma.f64 x y (fma.f64 b c (*.f64 z t)))) |
(fma.f64 x y (fma.f64 a i (fma.f64 b c (*.f64 z t)))) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 i c)) |
(+.f64 (fma.f64 x y (*.f64 z t)) (+.f64 (*.f64 a b) (*.f64 c i))) |
(fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t)))) |
(fma.f64 c i (fma.f64 z t (fma.f64 a b (*.f64 x y)))) |
(sort x y)
(sort z t)
(sort a b)
(sort c i)
Compiled 31 to 23 computations (25.8% saved)
| 1× | egg-herbie |
| 58× | fma-def_binary64 |
| 24× | associate-+l+_binary64 |
| 21× | associate-+r+_binary64 |
| 17× | +-commutative_binary64 |
| 4× | *-commutative_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 16 | 20 |
| 1 | 28 | 16 |
| 2 | 63 | 16 |
| 3 | 124 | 16 |
| 4 | 150 | 16 |
| 5 | 152 | 16 |
| 1× | saturated |
| Inputs |
|---|
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i)) |
| Outputs |
|---|
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i)) |
(+.f64 (fma.f64 x y (*.f64 z t)) (+.f64 (*.f64 a b) (*.f64 c i))) |
(fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t)))) |
(fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b)))) |
Compiled 35 to 18 computations (48.6% saved)
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 |
|---|---|---|
| ▶ | 0.0b | (fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b)))) |
| ▶ | 0.0b | (+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i)) |
Compiled 43 to 27 computations (37.2% saved)
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i)) |
| ✓ | 0.0b | (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) |
| ✓ | 0.0b | (+.f64 (*.f64 x y) (*.f64 z t)) |
Compiled 61 to 15 computations (75.4% saved)
54 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 2.0ms | x | @ | 0 | (+.f64 (*.f64 x y) (*.f64 z t)) |
| 1.0ms | a | @ | inf | (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) |
| 1.0ms | z | @ | 0 | (+.f64 (*.f64 x y) (*.f64 z t)) |
| 1.0ms | c | @ | 0 | (+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i)) |
| 1.0ms | x | @ | -inf | (+.f64 (*.f64 x y) (*.f64 z t)) |
| 1× | batch-egg-rewrite |
| 922× | log-prod_binary64 |
| 509× | fma-neg_binary64 |
| 330× | expm1-udef_binary64 |
| 330× | log1p-udef_binary64 |
| 276× | log-pow_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 16 | 42 |
| 1 | 348 | 36 |
| 2 | 5058 | 36 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (*.f64 x y) (*.f64 z t)) |
(+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 x y (*.f64 z t)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 x y) 2) (-.f64 (*.f64 x y) (*.f64 z t))) (/.f64 (pow.f64 (*.f64 z t) 2) (-.f64 (*.f64 x y) (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x y (*.f64 z t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2) (cbrt.f64 (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)) (/.f64 1 (-.f64 (*.f64 x y) (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)))) (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3)) (+.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3)) (+.f64 (pow.f64 (*.f64 z t) 2) (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 x y) (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)) (-.f64 (*.f64 x y) (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z t) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2))) (neg.f64 (-.f64 (*.f64 x y) (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 z t) 2) (pow.f64 (*.f64 x y) 2)) (-.f64 (*.f64 z t) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x y (*.f64 z t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (pow.f64 (exp.f64 t) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x) y) (+.f64 1 (expm1.f64 (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (+.f64 1 (expm1.f64 (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z t))) (pow.f64 (exp.f64 x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 t) z) (+.f64 1 (expm1.f64 (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z t))) (+.f64 1 (expm1.f64 (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 x y (*.f64 z t))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z t (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t z (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x y) (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 z t) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 z t)) 2) (cbrt.f64 (*.f64 z t)) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (cbrt.f64 (*.f64 x y)) (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 z t)) (sqrt.f64 (*.f64 z t)) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x y)) (sqrt.f64 (*.f64 x y)) (*.f64 z t)))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))) (/.f64 (pow.f64 (*.f64 a b) 2) (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 a b (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) (pow.f64 (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 2) (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) (sqrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3)) (/.f64 1 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (*.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (pow.f64 (*.f64 a b) 2)) (/.f64 1 (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (*.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))))) (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b)) (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (pow.f64 (*.f64 a b) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3)) (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (*.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3)) (+.f64 (pow.f64 (*.f64 a b) 2) (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (*.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (pow.f64 (*.f64 a b) 2)) (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (*.f64 a b) 3))) (neg.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (*.f64 (*.f64 a b) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (pow.f64 (*.f64 a b) 2))) (neg.f64 (-.f64 (fma.f64 x y (*.f64 z t)) (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (fma.f64 z t (*.f64 a b)) 3)) (+.f64 (pow.f64 (*.f64 x y) 2) (-.f64 (*.f64 (fma.f64 z t (*.f64 a b)) (fma.f64 z t (*.f64 a b))) (*.f64 (*.f64 x y) (fma.f64 z t (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (fma.f64 z t (*.f64 a b)) (fma.f64 z t (*.f64 a b)))) (-.f64 (*.f64 x y) (fma.f64 z t (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (fma.f64 x y (*.f64 z t)) 2)) (-.f64 (*.f64 a b) (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (exp.f64 (fma.f64 z t (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x) y) (*.f64 (pow.f64 (exp.f64 t) z) (pow.f64 (exp.f64 a) b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (*.f64 (pow.f64 (exp.f64 t) z) (pow.f64 (exp.f64 a) b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t)))) (pow.f64 (exp.f64 a) b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 x y (*.f64 z t))) (+.f64 1 (expm1.f64 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t)))) (+.f64 1 (expm1.f64 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a b))) (exp.f64 (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 a) b) (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a b))) (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 z t (*.f64 a b))) (pow.f64 (exp.f64 x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 t) z) (pow.f64 (exp.f64 a) b)) (pow.f64 (exp.f64 x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 z t (*.f64 a b))) (+.f64 1 (expm1.f64 (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 t) z) (pow.f64 (exp.f64 a) b)) (+.f64 1 (expm1.f64 (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (fma.f64 z t (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (fma.f64 z t (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 a b (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b a (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x y) (fma.f64 z t (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x y (*.f64 z t)) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 a b) (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 a b)) 2) (cbrt.f64 (*.f64 a b)) (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2) (cbrt.f64 (fma.f64 x y (*.f64 z t))) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (cbrt.f64 (*.f64 x y)) (fma.f64 z t (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)) (fma.f64 x y (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t))) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x y)) (sqrt.f64 (*.f64 x y)) (fma.f64 z t (*.f64 a b))))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2) (-.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) (*.f64 c i))) (/.f64 (pow.f64 (*.f64 c i) 2) (-.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))) (pow.f64 (cbrt.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))) 2) (cbrt.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))) (sqrt.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 3) (pow.f64 (*.f64 c i) 3)) (/.f64 1 (+.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2) (*.f64 (*.f64 c i) (-.f64 (*.f64 c i) (fma.f64 a b (fma.f64 x y (*.f64 z t))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2) (pow.f64 (*.f64 c i) 2)) (/.f64 1 (-.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2) (*.f64 (*.f64 c i) (-.f64 (*.f64 c i) (fma.f64 a b (fma.f64 x y (*.f64 z t)))))) (+.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 3) (pow.f64 (*.f64 c i) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) (*.f64 c i)) (-.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2) (pow.f64 (*.f64 c i) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 3) (pow.f64 (*.f64 c i) 3)) (+.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2) (*.f64 (*.f64 c i) (-.f64 (*.f64 c i) (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 3) (pow.f64 (*.f64 c i) 3)) (+.f64 (pow.f64 (*.f64 c i) 2) (-.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2) (*.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2) (pow.f64 (*.f64 c i) 2)) (-.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 3) (pow.f64 (*.f64 c i) 3))) (neg.f64 (+.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2) (*.f64 (*.f64 c i) (-.f64 (*.f64 c i) (fma.f64 a b (fma.f64 x y (*.f64 z t))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2) (pow.f64 (*.f64 c i) 2))) (neg.f64 (-.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) (pow.f64 (fma.f64 a b (*.f64 c i)) 3)) (+.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (-.f64 (*.f64 (fma.f64 a b (*.f64 c i)) (fma.f64 a b (*.f64 c i))) (*.f64 (fma.f64 x y (*.f64 z t)) (fma.f64 a b (*.f64 c i))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) (*.f64 (fma.f64 a b (*.f64 c i)) (fma.f64 a b (*.f64 c i)))) (-.f64 (fma.f64 x y (*.f64 z t)) (fma.f64 a b (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 c i) 2) (pow.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))) 2)) (-.f64 (*.f64 c i) (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t)))) (exp.f64 (fma.f64 a b (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 x y (*.f64 z t))) (*.f64 (pow.f64 (exp.f64 a) b) (pow.f64 (exp.f64 i) c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t)))) (*.f64 (pow.f64 (exp.f64 a) b) (pow.f64 (exp.f64 i) c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))))) (pow.f64 (exp.f64 i) c)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) (+.f64 1 (expm1.f64 (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))))) (+.f64 1 (expm1.f64 (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 c i))) (exp.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 i) c) (+.f64 1 (expm1.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 c i))) (+.f64 1 (expm1.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 a b (*.f64 c i))) (exp.f64 (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 a) b) (pow.f64 (exp.f64 i) c)) (exp.f64 (fma.f64 x y (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 a b (*.f64 c i))) (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 a) b) (pow.f64 (exp.f64 i) c)) (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 c i (fma.f64 a b (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 i c (fma.f64 a b (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x y (*.f64 z t)) (fma.f64 a b (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 a b (fma.f64 x y (*.f64 z t))) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 c i) (fma.f64 a b (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 c i)) 2) (cbrt.f64 (*.f64 c i)) (fma.f64 a b (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) 2) (cbrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2) (cbrt.f64 (fma.f64 x y (*.f64 z t))) (fma.f64 a b (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 c i)) (sqrt.f64 (*.f64 c i)) (fma.f64 a b (fma.f64 x y (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) (sqrt.f64 (fma.f64 a b (fma.f64 x y (*.f64 z t)))) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t))) (fma.f64 a b (*.f64 c i))))))) |
| 1× | egg-herbie |
| 56× | fma-def_binary64 |
| 22× | associate-+l+_binary64 |
| 17× | associate-+r+_binary64 |
| 16× | +-commutative_binary64 |
| 4× | *-commutative_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 22 | 2392 |
| 1 | 53 | 2392 |
| 2 | 104 | 2392 |
| 3 | 138 | 2392 |
| 4 | 142 | 2392 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 a b) (*.f64 t z)) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (*.f64 t z)) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 c i) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 c i) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 c i) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 c i) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
| Outputs |
|---|
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 t z)) |
(fma.f64 a b (*.f64 t z)) |
(fma.f64 t z (*.f64 a b)) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (*.f64 t z)) |
(fma.f64 a b (*.f64 t z)) |
(fma.f64 t z (*.f64 a b)) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(fma.f64 t z (fma.f64 a b (*.f64 c i))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(fma.f64 t z (fma.f64 a b (*.f64 c i))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 y x))) |
(fma.f64 c i (fma.f64 a b (*.f64 y x))) |
(fma.f64 a b (fma.f64 y x (*.f64 c i))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 y x))) |
(fma.f64 c i (fma.f64 a b (*.f64 y x))) |
(fma.f64 a b (fma.f64 y x (*.f64 c i))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 y x (*.f64 c i))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 y x (*.f64 c i))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(*.f64 c i) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(*.f64 c i) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 t z (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(*.f64 c i) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(*.f64 c i) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 y x (*.f64 t z)))) |
(fma.f64 a b (fma.f64 c i (fma.f64 t z (*.f64 y x)))) |
(fma.f64 a b (fma.f64 t z (fma.f64 y x (*.f64 c i)))) |
(fma.f64 t z (fma.f64 a b (fma.f64 y x (*.f64 c i)))) |
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b)))) |
| ✓ | 0.0b | (fma.f64 z t (fma.f64 c i (*.f64 a b))) |
Compiled 46 to 12 computations (73.9% saved)
42 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 2.0ms | b | @ | inf | (fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b)))) |
| 2.0ms | t | @ | -inf | (fma.f64 z t (fma.f64 c i (*.f64 a b))) |
| 1.0ms | z | @ | 0 | (fma.f64 z t (fma.f64 c i (*.f64 a b))) |
| 1.0ms | z | @ | inf | (fma.f64 z t (fma.f64 c i (*.f64 a b))) |
| 0.0ms | z | @ | -inf | (fma.f64 z t (fma.f64 c i (*.f64 a b))) |
| 1× | batch-egg-rewrite |
| 621× | log-prod_binary64 |
| 405× | pow-prod-down_binary64 |
| 350× | pow2_binary64 |
| 304× | prod-diff_binary64 |
| 245× | pow1/3_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 28 |
| 1 | 255 | 28 |
| 2 | 3038 | 28 |
| 1× | node limit |
| Inputs |
|---|
(fma.f64 z t (fma.f64 c i (*.f64 a b))) |
(fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b)))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 a b (*.f64 c i)) (*.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z t) (fma.f64 a b (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 z t (fma.f64 a b (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 z t) 1) (fma.f64 a b (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 z t (*.f64 c i)) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i)))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 z t (fma.f64 a b (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i)))) (pow.f64 (cbrt.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i)))) 2) (cbrt.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i)))) (sqrt.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (fma.f64 a b (*.f64 c i)) 3)) (+.f64 (pow.f64 (*.f64 z t) 2) (-.f64 (pow.f64 (fma.f64 a b (*.f64 c i)) 2) (*.f64 (*.f64 z t) (fma.f64 a b (*.f64 c i))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 z t) 2) (pow.f64 (fma.f64 a b (*.f64 c i)) 2)) (-.f64 (*.f64 z t) (fma.f64 a b (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 a b (*.f64 c i))) (exp.f64 (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 a b (*.f64 c i)))) (exp.f64 (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 z t)) (+.f64 1 (expm1.f64 (fma.f64 a b (*.f64 c i))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i)))) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i))) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x y) (fma.f64 z t (fma.f64 a b (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x y) 1) (fma.f64 z t (fma.f64 a b (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x y (*.f64 z t)) (fma.f64 a b (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i)))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i))))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i))))) (pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i))))) 2) (cbrt.f64 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i))))) (sqrt.f64 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i))) 3)) (+.f64 (pow.f64 (*.f64 x y) 2) (-.f64 (pow.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i))) 2) (*.f64 (*.f64 x y) (fma.f64 z t (fma.f64 a b (*.f64 c i)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i))) 2)) (-.f64 (*.f64 x y) (fma.f64 z t (fma.f64 a b (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i)))) (exp.f64 (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i))))) (exp.f64 (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 x y)) (+.f64 1 (expm1.f64 (fma.f64 z t (fma.f64 a b (*.f64 c i)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 x y (fma.f64 z t (fma.f64 a b (*.f64 c i))))) 1)))))) |
| 1× | egg-herbie |
| 56× | fma-def_binary64 |
| 15× | associate-+l+_binary64 |
| 14× | +-commutative_binary64 |
| 12× | associate-+r+_binary64 |
| 4× | *-commutative_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 25 | 2056 |
| 1 | 61 | 2056 |
| 2 | 103 | 2056 |
| 3 | 123 | 2056 |
| 4 | 127 | 2056 |
| 1× | saturated |
| Inputs |
|---|
(+.f64 (*.f64 c i) (*.f64 a b)) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 a b) (*.f64 t z)) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(*.f64 c i) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(*.f64 c i) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 a b) (*.f64 t z)) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(*.f64 c i) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(*.f64 c i) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 c i) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 c i) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 c i) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 c i) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
| Outputs |
|---|
(+.f64 (*.f64 c i) (*.f64 a b)) |
(fma.f64 c i (*.f64 a b)) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(fma.f64 c i (*.f64 a b)) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (*.f64 t z)) |
(fma.f64 a b (*.f64 t z)) |
(fma.f64 t z (*.f64 a b)) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(*.f64 c i) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(*.f64 c i) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (*.f64 t z)) |
(fma.f64 a b (*.f64 t z)) |
(fma.f64 t z (*.f64 a b)) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(*.f64 c i) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(*.f64 c i) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(fma.f64 c i (*.f64 t z)) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(fma.f64 c i (*.f64 t z)) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 t z))) |
(fma.f64 c i (fma.f64 a b (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 y x))) |
(fma.f64 c i (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (*.f64 y x))) |
(fma.f64 c i (fma.f64 a b (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 y x (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(*.f64 c i) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(*.f64 c i) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 a b (fma.f64 y x (*.f64 t z))) |
(fma.f64 a b (fma.f64 t z (*.f64 y x))) |
(fma.f64 y x (fma.f64 t z (*.f64 a b))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(*.f64 c i) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(*.f64 c i) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(fma.f64 c i (fma.f64 t z (*.f64 y x))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 y x (*.f64 t z)))) |
(fma.f64 c i (fma.f64 a b (fma.f64 t z (*.f64 y x)))) |
(fma.f64 c i (fma.f64 y x (fma.f64 t z (*.f64 a b)))) |
Compiled 5169 to 1134 computations (78.1% saved)
9 alts after pruning (9 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 253 | 9 | 262 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 1 | 0 | 1 |
| Total | 255 | 9 | 264 |
| Status | Error | Program |
|---|---|---|
| ▶ | 32.5b | (fma.f64 x y (*.f64 a b)) |
| ▶ | 48.4b | (*.f64 c i) |
| 16.7b | (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) | |
| 30.9b | (fma.f64 x y (*.f64 t z)) | |
| ▶ | 14.6b | (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
| ▶ | 32.5b | (+.f64 (*.f64 a b) (*.f64 c i)) |
| 16.7b | (fma.f64 x y (fma.f64 c i (*.f64 t z))) | |
| ▶ | 18.2b | (+.f64 (fma.f64 a b (*.f64 y x)) (*.f64 c i)) |
| 48.6b | (*.f64 y x) |
Compiled 276 to 196 computations (29% saved)
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
| ✓ | 0.0b | (+.f64 (*.f64 y x) (*.f64 t z)) |
Compiled 41 to 13 computations (68.3% saved)
30 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | y | @ | 0 | (+.f64 (*.f64 y x) (*.f64 t z)) |
| 0.0ms | y | @ | inf | (+.f64 (*.f64 y x) (*.f64 t z)) |
| 0.0ms | x | @ | inf | (+.f64 (*.f64 y x) (*.f64 t z)) |
| 0.0ms | y | @ | -inf | (+.f64 (*.f64 y x) (*.f64 t z)) |
| 0.0ms | x | @ | inf | (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
| 1× | batch-egg-rewrite |
| 681× | log-prod_binary64 |
| 679× | fma-def_binary64 |
| 358× | pow2_binary64 |
| 338× | fma-neg_binary64 |
| 245× | pow1/3_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 12 | 20 |
| 1 | 259 | 20 |
| 2 | 3658 | 20 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 y x (*.f64 t z)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 y x) 2) (-.f64 (*.f64 y x) (*.f64 t z))) (/.f64 (pow.f64 (*.f64 t z) 2) (-.f64 (*.f64 y x) (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y x (*.f64 t z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) 2) (cbrt.f64 (fma.f64 y x (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 y x (*.f64 t z))) (sqrt.f64 (fma.f64 y x (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (/.f64 1 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (/.f64 1 (-.f64 (*.f64 y x) (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2)) (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (+.f64 (pow.f64 (*.f64 t z) 2) (-.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 y x) (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3))) (neg.f64 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2))) (neg.f64 (-.f64 (*.f64 y x) (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 t z) 2) (pow.f64 (*.f64 y x) 2)) (-.f64 (*.f64 t z) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 y x (*.f64 t z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y x (*.f64 t z)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 y x (*.f64 t z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y x (*.f64 t z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2)) (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (*.f64 y x) (*.f64 t z)) (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 y x (*.f64 t z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 y x (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 y x (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y x))) (pow.f64 (exp.f64 t) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 y) x) (+.f64 1 (expm1.f64 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y x))) (+.f64 1 (expm1.f64 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 t z))) (pow.f64 (exp.f64 y) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 t) z) (+.f64 1 (expm1.f64 (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 t z))) (+.f64 1 (expm1.f64 (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 y x (*.f64 t z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 y x (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 y x (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 y x (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 y x (*.f64 t z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) 1 (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t z (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z t (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t z) 1 (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y x) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 t z) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 t) 2) (*.f64 (cbrt.f64 t) z) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) x) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) t) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 t z)) (pow.f64 (cbrt.f64 (*.f64 t z)) 2) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 t z)) 2) (cbrt.f64 (*.f64 t z)) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y x)) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (cbrt.f64 (*.f64 y x)) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 t) (*.f64 (sqrt.f64 t) z) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) t) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 t z)) (sqrt.f64 (*.f64 t z)) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 (*.f64 y x)) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (sqrt.f64 z)) (sqrt.f64 z) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (pow.f64 (cbrt.f64 t) 2)) (cbrt.f64 t) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (sqrt.f64 t)) (sqrt.f64 t) (*.f64 y x)))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 y x (fma.f64 t z (*.f64 a b))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 a b) 2) (-.f64 (*.f64 a b) (fma.f64 y x (*.f64 t z)))) (/.f64 (pow.f64 (fma.f64 y x (*.f64 t z)) 2) (-.f64 (*.f64 a b) (fma.f64 y x (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y x (fma.f64 t z (*.f64 a b))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 y x (fma.f64 t z (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 y x (fma.f64 t z (*.f64 a b)))) (pow.f64 (cbrt.f64 (fma.f64 y x (fma.f64 t z (*.f64 a b)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (fma.f64 t z (*.f64 a b)))) 2) (cbrt.f64 (fma.f64 y x (fma.f64 t z (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 y x (fma.f64 t z (*.f64 a b)))) (sqrt.f64 (fma.f64 y x (fma.f64 t z (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (fma.f64 y x (*.f64 t z)) 3)) (/.f64 1 (fma.f64 (fma.f64 y x (*.f64 t z)) (-.f64 (fma.f64 y x (*.f64 t z)) (*.f64 a b)) (pow.f64 (*.f64 a b) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (fma.f64 y x (*.f64 t z)) 2)) (/.f64 1 (-.f64 (*.f64 a b) (fma.f64 y x (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (fma.f64 y x (*.f64 t z)) (-.f64 (fma.f64 y x (*.f64 t z)) (*.f64 a b)) (pow.f64 (*.f64 a b) 2)) (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (fma.f64 y x (*.f64 t z)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 a b) (fma.f64 y x (*.f64 t z))) (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (fma.f64 y x (*.f64 t z)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (fma.f64 y x (*.f64 t z)) 3)) (fma.f64 (fma.f64 y x (*.f64 t z)) (-.f64 (fma.f64 y x (*.f64 t z)) (*.f64 a b)) (pow.f64 (*.f64 a b) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (fma.f64 y x (*.f64 t z)) 3)) (+.f64 (pow.f64 (fma.f64 y x (*.f64 t z)) 2) (-.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (fma.f64 y x (*.f64 t z)) (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (fma.f64 y x (*.f64 t z)) 2)) (-.f64 (*.f64 a b) (fma.f64 y x (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (fma.f64 y x (*.f64 t z)) 3))) (neg.f64 (fma.f64 (fma.f64 y x (*.f64 t z)) (-.f64 (fma.f64 y x (*.f64 t z)) (*.f64 a b)) (pow.f64 (*.f64 a b) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (fma.f64 y x (*.f64 t z)) 2))) (neg.f64 (-.f64 (*.f64 a b) (fma.f64 y x (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 y x (*.f64 a b)) 3) (pow.f64 (*.f64 t z) 3)) (+.f64 (pow.f64 (fma.f64 y x (*.f64 a b)) 2) (-.f64 (pow.f64 (*.f64 t z) 2) (*.f64 (fma.f64 y x (*.f64 a b)) (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 y x (*.f64 t z)) 2) (pow.f64 (*.f64 a b) 2)) (-.f64 (fma.f64 y x (*.f64 t z)) (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 y x (*.f64 a b)) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (fma.f64 y x (*.f64 a b)) (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 y x (fma.f64 t z (*.f64 a b))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y x (fma.f64 t z (*.f64 a b))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y x (fma.f64 t z (*.f64 a b))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 y x (fma.f64 t z (*.f64 a b)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 y x (fma.f64 t z (*.f64 a b)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (fma.f64 y x (*.f64 t z)) (-.f64 (fma.f64 y x (*.f64 t z)) (*.f64 a b)) (pow.f64 (*.f64 a b) 2)) (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (fma.f64 y x (*.f64 t z)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (*.f64 a b) (fma.f64 y x (*.f64 t z))) (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (fma.f64 y x (*.f64 t z)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 y x (fma.f64 t z (*.f64 a b))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 y x (fma.f64 t z (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 y x (fma.f64 t z (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 t) z) (exp.f64 (fma.f64 y x (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 t z))) (exp.f64 (fma.f64 y x (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 t) z) (*.f64 (pow.f64 (exp.f64 a) b) (pow.f64 (exp.f64 y) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 t z))) (*.f64 (pow.f64 (exp.f64 a) b) (pow.f64 (exp.f64 y) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 y x (*.f64 t z)))) (pow.f64 (exp.f64 a) b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 y x (*.f64 t z))) (+.f64 1 (expm1.f64 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 y x (*.f64 t z)))) (+.f64 1 (expm1.f64 (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a b))) (exp.f64 (fma.f64 y x (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 a) b) (+.f64 1 (expm1.f64 (fma.f64 y x (*.f64 t z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a b))) (+.f64 1 (expm1.f64 (fma.f64 y x (*.f64 t z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 a) b) (pow.f64 (exp.f64 y) x)) (pow.f64 (exp.f64 t) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 y x (*.f64 a b))) (+.f64 1 (expm1.f64 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 a) b) (pow.f64 (exp.f64 y) x)) (+.f64 1 (expm1.f64 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 y x (fma.f64 t z (*.f64 a b))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 y x (fma.f64 t z (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 y x (fma.f64 t z (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 y x (fma.f64 t z (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 y x (fma.f64 t z (*.f64 a b)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (fma.f64 t z (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (fma.f64 t z (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) 1 (fma.f64 t z (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t z (fma.f64 y x (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z t (fma.f64 y x (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t z) 1 (fma.f64 y x (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y x (*.f64 t z)) 1 (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 a b (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b a (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a b) 1 (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y x) (fma.f64 t z (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 t z) (fma.f64 y x (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 y x (*.f64 t z)) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 a b) (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 y x (*.f64 a b)) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 a b)) (pow.f64 (cbrt.f64 (*.f64 a b)) 2) (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 a b)) 2) (cbrt.f64 (*.f64 a b)) (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) 2) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) 2) (cbrt.f64 (fma.f64 y x (*.f64 t z))) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 t) 2) (*.f64 (cbrt.f64 t) z) (fma.f64 y x (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) x) (fma.f64 t z (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (cbrt.f64 a) b) (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) t) (fma.f64 y x (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) (fma.f64 t z (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (*.f64 (cbrt.f64 b) a) (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 t z)) (pow.f64 (cbrt.f64 (*.f64 t z)) 2) (fma.f64 y x (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 t z)) 2) (cbrt.f64 (*.f64 t z)) (fma.f64 y x (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y x)) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (fma.f64 t z (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (cbrt.f64 (*.f64 y x)) (fma.f64 t z (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)) (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 y x (*.f64 t z))) (sqrt.f64 (fma.f64 y x (*.f64 t z))) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 t) (*.f64 (sqrt.f64 t) z) (fma.f64 y x (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (fma.f64 t z (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) b) (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) t) (fma.f64 y x (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (fma.f64 t z (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) a) (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 t z)) (sqrt.f64 (*.f64 t z)) (fma.f64 y x (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 (*.f64 y x)) (fma.f64 t z (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (/.f64 1 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (/.f64 1 (-.f64 (*.f64 y x) (*.f64 t z))) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y x (*.f64 a b)) 1 (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 a b))) 2) (cbrt.f64 (fma.f64 y x (*.f64 a b))) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 y x (*.f64 a b))) (sqrt.f64 (fma.f64 y x (*.f64 a b))) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (fma.f64 t z (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (fma.f64 t z (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (fma.f64 t z (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (fma.f64 t z (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a (sqrt.f64 b)) (sqrt.f64 b) (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a) (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (sqrt.f64 a)) (sqrt.f64 a) (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (fma.f64 y x (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (sqrt.f64 z)) (sqrt.f64 z) (fma.f64 y x (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (pow.f64 (cbrt.f64 t) 2)) (cbrt.f64 t) (fma.f64 y x (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (sqrt.f64 t)) (sqrt.f64 t) (fma.f64 y x (*.f64 a b))))))) |
| 1× | egg-herbie |
| 12× | fma-def_binary64 |
| 3× | +-commutative_binary64 |
| 3× | *-commutative_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 144 |
| 1 | 22 | 144 |
| 2 | 31 | 144 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 t z) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 t z) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 t z) |
(*.f64 t z) |
(*.f64 y x) |
(*.f64 t z) |
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(*.f64 a b) |
(*.f64 a b) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(*.f64 a b) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (*.f64 t z)) |
(*.f64 y x) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 t z)) |
(*.f64 y x) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(*.f64 t z) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(*.f64 t z) |
(*.f64 t z) |
| Outputs |
|---|
(*.f64 t z) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 t z) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 y x) |
(*.f64 t z) |
(*.f64 t z) |
(*.f64 y x) |
(*.f64 t z) |
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 a b) |
(*.f64 a b) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 a b) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (*.f64 t z)) |
(fma.f64 a b (*.f64 t z)) |
(fma.f64 t z (*.f64 a b)) |
(*.f64 y x) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 t z)) |
(fma.f64 a b (*.f64 t z)) |
(fma.f64 t z (*.f64 a b)) |
(*.f64 y x) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(*.f64 t z) |
(*.f64 t z) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(*.f64 t z) |
(*.f64 t z) |
Compiled 13 to 9 computations (30.8% saved)
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f64 (*.f64 a b) (*.f64 c i)) |
Compiled 25 to 11 computations (56% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | a | @ | 0 | (+.f64 (*.f64 a b) (*.f64 c i)) |
| 0.0ms | c | @ | inf | (+.f64 (*.f64 a b) (*.f64 c i)) |
| 0.0ms | a | @ | -inf | (+.f64 (*.f64 a b) (*.f64 c i)) |
| 0.0ms | a | @ | inf | (+.f64 (*.f64 a b) (*.f64 c i)) |
| 0.0ms | i | @ | inf | (+.f64 (*.f64 a b) (*.f64 c i)) |
| 1× | batch-egg-rewrite |
| 903× | pow1_binary64 |
| 833× | add-log-exp_binary64 |
| 833× | log1p-expm1-u_binary64 |
| 833× | expm1-log1p-u_binary64 |
| 814× | add-exp-log_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 8 |
| 1 | 168 | 8 |
| 2 | 2270 | 8 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (*.f64 a b) (*.f64 c i)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 a b (*.f64 c i))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 a b) 2) (-.f64 (*.f64 a b) (*.f64 c i))) (/.f64 (pow.f64 (*.f64 c i) 2) (-.f64 (*.f64 a b) (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 a b (*.f64 c i)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 a b (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 a b (*.f64 c i))) (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 c i))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 c i))) 2) (cbrt.f64 (fma.f64 a b (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 a b (*.f64 c i))) (sqrt.f64 (fma.f64 a b (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 c i) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 c i) (-.f64 (*.f64 c i) (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 c i) 2)) (/.f64 1 (-.f64 (*.f64 a b) (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 c i) (-.f64 (*.f64 c i) (*.f64 a b)))) (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 c i) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 a b) (*.f64 c i)) (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 c i) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 c i) 3)) (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 c i) (-.f64 (*.f64 c i) (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 c i) 3)) (+.f64 (pow.f64 (*.f64 c i) 2) (-.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 a b) (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 c i) 2)) (-.f64 (*.f64 a b) (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 c i) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 c i) (-.f64 (*.f64 c i) (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 c i) 2))) (neg.f64 (-.f64 (*.f64 a b) (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 c i) 2) (pow.f64 (*.f64 a b) 2)) (-.f64 (*.f64 c i) (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 a b (*.f64 c i)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 a b (*.f64 c i)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 c i))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 a b (*.f64 c i))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 a b (*.f64 c i)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 a b (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 a b (*.f64 c i)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 a b (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 a b (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 a b (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 a b (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b a (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 c i (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 i c (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 a b) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 c i) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 c i)) 2) (cbrt.f64 (*.f64 c i)) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 a b)) 2) (cbrt.f64 (*.f64 a b)) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 c i)) (sqrt.f64 (*.f64 c i)) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)) (*.f64 c i)))))) |
| 1× | egg-herbie |
| 4× | fma-def_binary64 |
| 2× | *-commutative_binary64 |
| 1× | +-commutative_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 192 |
| 1 | 12 | 192 |
| 2 | 15 | 192 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 c i) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(*.f64 c i) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(*.f64 c i) |
(*.f64 c i) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(*.f64 c i) |
(*.f64 c i) |
| Outputs |
|---|
(*.f64 c i) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(fma.f64 c i (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(fma.f64 c i (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(fma.f64 c i (*.f64 a b)) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(fma.f64 c i (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(fma.f64 c i (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(fma.f64 c i (*.f64 a b)) |
(*.f64 c i) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(fma.f64 c i (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(fma.f64 c i (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(fma.f64 c i (*.f64 a b)) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(fma.f64 c i (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(fma.f64 c i (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(fma.f64 c i (*.f64 a b)) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(fma.f64 c i (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(fma.f64 c i (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(fma.f64 c i (*.f64 a b)) |
(*.f64 c i) |
(*.f64 c i) |
(*.f64 a b) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(fma.f64 c i (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(fma.f64 c i (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 a b)) |
(fma.f64 c i (*.f64 a b)) |
(*.f64 c i) |
(*.f64 c i) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (fma.f64 x y (*.f64 a b)) |
Compiled 21 to 10 computations (52.4% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 2.0ms | x | @ | 0 | (fma.f64 x y (*.f64 a b)) |
| 1.0ms | x | @ | inf | (fma.f64 x y (*.f64 a b)) |
| 1.0ms | x | @ | -inf | (fma.f64 x y (*.f64 a b)) |
| 0.0ms | y | @ | -inf | (fma.f64 x y (*.f64 a b)) |
| 0.0ms | y | @ | 0 | (fma.f64 x y (*.f64 a b)) |
| 1× | batch-egg-rewrite |
| 661× | pow1_binary64 |
| 602× | add-log-exp_binary64 |
| 602× | log1p-expm1-u_binary64 |
| 602× | expm1-log1p-u_binary64 |
| 587× | add-exp-log_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 8 |
| 1 | 137 | 8 |
| 2 | 1626 | 8 |
| 1× | node limit |
| Inputs |
|---|
(fma.f64 x y (*.f64 a b)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 a b) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x y) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x y) 1) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 x y (*.f64 a b))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x y (*.f64 a b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x y (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x y (*.f64 a b))) (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 a b))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 a b))) 2) (cbrt.f64 (fma.f64 x y (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x y (*.f64 a b))) (sqrt.f64 (fma.f64 x y (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 a b) 3)) (+.f64 (*.f64 (*.f64 x y) (*.f64 x y)) (-.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 x y) (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 x y) (*.f64 x y)) (pow.f64 (*.f64 a b) 2)) (-.f64 (*.f64 x y) (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x y (*.f64 a b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x y (*.f64 a b)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 a b))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x y (*.f64 a b))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x y (*.f64 a b)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x y (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x y (*.f64 a b)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x y (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x y (*.f64 a b))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x y (*.f64 a b)))))))) |
| 1× | egg-herbie |
| 4× | fma-def_binary64 |
| 2× | *-commutative_binary64 |
| 1× | +-commutative_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 336 |
| 1 | 12 | 336 |
| 2 | 15 | 336 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 a b) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
| Outputs |
|---|
(*.f64 a b) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (fma.f64 a b (*.f64 y x)) |
Compiled 36 to 12 computations (66.7% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | b | @ | -inf | (fma.f64 a b (*.f64 y x)) |
| 0.0ms | a | @ | inf | (fma.f64 a b (*.f64 y x)) |
| 0.0ms | a | @ | -inf | (fma.f64 a b (*.f64 y x)) |
| 0.0ms | b | @ | inf | (fma.f64 a b (*.f64 y x)) |
| 0.0ms | a | @ | 0 | (fma.f64 a b (*.f64 y x)) |
| 1× | batch-egg-rewrite |
| 661× | pow1_binary64 |
| 602× | add-log-exp_binary64 |
| 602× | log1p-expm1-u_binary64 |
| 602× | expm1-log1p-u_binary64 |
| 587× | add-exp-log_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 8 |
| 1 | 137 | 8 |
| 2 | 1626 | 8 |
| 1× | node limit |
| Inputs |
|---|
(fma.f64 a b (*.f64 y x)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y x) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 a b) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 a b) 1) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 a b (*.f64 y x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 a b (*.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 a b (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 a b (*.f64 y x))) (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 y x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 y x))) 2) (cbrt.f64 (fma.f64 a b (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 a b (*.f64 y x))) (sqrt.f64 (fma.f64 a b (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 y x) 3)) (+.f64 (*.f64 (*.f64 a b) (*.f64 a b)) (-.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 a b) (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 a b) (*.f64 a b)) (pow.f64 (*.f64 y x) 2)) (-.f64 (*.f64 a b) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 a b (*.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 a b (*.f64 y x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 y x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 a b (*.f64 y x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 a b (*.f64 y x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 a b (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 a b (*.f64 y x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 a b (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 a b (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 a b (*.f64 y x)))))))) |
| 1× | egg-herbie |
| 4× | fma-def_binary64 |
| 2× | *-commutative_binary64 |
| 1× | +-commutative_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 336 |
| 1 | 12 | 336 |
| 2 | 15 | 336 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
| Outputs |
|---|
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(*.f64 a b) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(*.f64 y x) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
(+.f64 (*.f64 a b) (*.f64 y x)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 y x (*.f64 a b)) |
Compiled 4133 to 1075 computations (74% saved)
13 alts after pruning (10 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 261 | 7 | 268 |
| Fresh | 1 | 3 | 4 |
| Picked | 1 | 0 | 1 |
| Done | 1 | 3 | 4 |
| Total | 264 | 13 | 277 |
| Status | Error | Program |
|---|---|---|
| ✓ | 32.5b | (fma.f64 x y (*.f64 a b)) |
| ✓ | 48.4b | (*.f64 c i) |
| ▶ | 16.7b | (fma.f64 x y (fma.f64 c i (*.f64 t z))) |
| ▶ | 34.6b | (+.f64 (*.f64 y x) (*.f64 c i)) |
| ▶ | 46.7b | (*.f64 a b) |
| ▶ | 28.8b | (+.f64 (*.f64 a b) (*.f64 t z)) |
| 32.6b | (+.f64 (*.f64 x y) (*.f64 a b)) | |
| ▶ | 16.7b | (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
| 30.9b | (fma.f64 x y (*.f64 t z)) | |
| 48.6b | (*.f64 y x) | |
| 30.9b | (+.f64 (*.f64 y x) (*.f64 t z)) | |
| 32.5b | (fma.f64 a b (*.f64 y x)) | |
| ✓ | 32.5b | (+.f64 (*.f64 a b) (*.f64 c i)) |
Compiled 332 to 242 computations (27.1% saved)
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (fma.f64 x y (fma.f64 c i (*.f64 t z))) |
Compiled 32 to 11 computations (65.6% saved)
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | x | @ | 0 | (fma.f64 x y (fma.f64 c i (*.f64 t z))) |
| 0.0ms | c | @ | 0 | (fma.f64 x y (fma.f64 c i (*.f64 t z))) |
| 0.0ms | x | @ | inf | (fma.f64 x y (fma.f64 c i (*.f64 t z))) |
| 0.0ms | t | @ | inf | (fma.f64 x y (fma.f64 c i (*.f64 t z))) |
| 0.0ms | t | @ | 0 | (fma.f64 x y (fma.f64 c i (*.f64 t z))) |
| 1× | batch-egg-rewrite |
| 956× | pow1_binary64 |
| 869× | add-log-exp_binary64 |
| 869× | log1p-expm1-u_binary64 |
| 869× | expm1-log1p-u_binary64 |
| 847× | add-exp-log_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 12 |
| 1 | 196 | 12 |
| 2 | 2332 | 12 |
| 1× | node limit |
| Inputs |
|---|
(fma.f64 x y (fma.f64 c i (*.f64 t z))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 c i (*.f64 t z)) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x y) (fma.f64 c i (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x y) 1) (fma.f64 c i (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 x y) (*.f64 c i)) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 x y (fma.f64 c i (*.f64 t z)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x y (fma.f64 c i (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))) (pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))) 2) (cbrt.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))) (sqrt.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (fma.f64 c i (*.f64 t z)) 3)) (+.f64 (*.f64 (*.f64 x y) (*.f64 x y)) (-.f64 (pow.f64 (fma.f64 c i (*.f64 t z)) 2) (*.f64 (*.f64 x y) (fma.f64 c i (*.f64 t z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 x y) (*.f64 x y)) (pow.f64 (fma.f64 c i (*.f64 t z)) 2)) (-.f64 (*.f64 x y) (fma.f64 c i (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x y (fma.f64 c i (*.f64 t z))))))))) |
| 1× | egg-herbie |
| 18× | fma-def_binary64 |
| 4× | +-commutative_binary64 |
| 3× | *-commutative_binary64 |
| 2× | associate-+r+_binary64 |
| 2× | associate-+l+_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 14 | 744 |
| 1 | 26 | 744 |
| 2 | 39 | 744 |
| 3 | 43 | 744 |
| 1× | saturated |
| Inputs |
|---|
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(*.f64 c i) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(*.f64 c i) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(*.f64 c i) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(*.f64 c i) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(*.f64 t z) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(*.f64 t z) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(*.f64 t z) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(*.f64 t z) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
| Outputs |
|---|
(+.f64 (*.f64 c i) (*.f64 t z)) |
(fma.f64 c i (*.f64 t z)) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(fma.f64 c i (*.f64 t z)) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(*.f64 c i) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(*.f64 c i) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(*.f64 c i) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(*.f64 c i) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(fma.f64 y x (*.f64 c i)) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(*.f64 t z) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(*.f64 t z) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(fma.f64 y x (*.f64 c i)) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(*.f64 t z) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(*.f64 t z) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(fma.f64 c i (fma.f64 y x (*.f64 t z))) |
Compiled 13 to 9 computations (30.8% saved)
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f64 (*.f64 a b) (*.f64 t z)) |
Compiled 25 to 11 computations (56% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | a | @ | 0 | (+.f64 (*.f64 a b) (*.f64 t z)) |
| 0.0ms | a | @ | inf | (+.f64 (*.f64 a b) (*.f64 t z)) |
| 0.0ms | a | @ | -inf | (+.f64 (*.f64 a b) (*.f64 t z)) |
| 0.0ms | t | @ | inf | (+.f64 (*.f64 a b) (*.f64 t z)) |
| 0.0ms | z | @ | inf | (+.f64 (*.f64 a b) (*.f64 t z)) |
| 1× | batch-egg-rewrite |
| 903× | pow1_binary64 |
| 833× | add-log-exp_binary64 |
| 833× | log1p-expm1-u_binary64 |
| 833× | expm1-log1p-u_binary64 |
| 814× | add-exp-log_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 8 |
| 1 | 168 | 8 |
| 2 | 2270 | 8 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (*.f64 a b) (*.f64 t z)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 a b (*.f64 t z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 a b) 2) (-.f64 (*.f64 a b) (*.f64 t z))) (/.f64 (pow.f64 (*.f64 t z) 2) (-.f64 (*.f64 a b) (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 a b (*.f64 t z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 a b (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 a b (*.f64 t z))) (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 t z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 t z))) 2) (cbrt.f64 (fma.f64 a b (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 a b (*.f64 t z))) (sqrt.f64 (fma.f64 a b (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 t z) 2)) (/.f64 1 (-.f64 (*.f64 a b) (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 a b)))) (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 a b) (*.f64 t z)) (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 t z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3)) (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 a b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3)) (+.f64 (pow.f64 (*.f64 t z) 2) (-.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 a b) (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 a b) (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 a b) 3) (pow.f64 (*.f64 t z) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 a b) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 a b))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 a b) 2) (pow.f64 (*.f64 t z) 2))) (neg.f64 (-.f64 (*.f64 a b) (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 t z) 2) (pow.f64 (*.f64 a b) 2)) (-.f64 (*.f64 t z) (*.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 a b (*.f64 t z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 a b (*.f64 t z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 a b (*.f64 t z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 a b (*.f64 t z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 a b (*.f64 t z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 a b (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 a b (*.f64 t z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 a b (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 a b (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 a b (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 a b (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b a (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t z (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z t (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 a b) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 t z) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 t z)) 2) (cbrt.f64 (*.f64 t z)) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 a b)) 2) (cbrt.f64 (*.f64 a b)) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 t z)) (sqrt.f64 (*.f64 t z)) (*.f64 a b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 a b)) (sqrt.f64 (*.f64 a b)) (*.f64 t z)))))) |
| 1× | egg-herbie |
| 2× | *-commutative_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 48 |
| 1 | 9 | 48 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 t z) |
(*.f64 a b) |
(*.f64 a b) |
(*.f64 t z) |
(*.f64 a b) |
(*.f64 a b) |
(*.f64 a b) |
(*.f64 t z) |
(*.f64 t z) |
(*.f64 a b) |
(*.f64 t z) |
(*.f64 t z) |
| Outputs |
|---|
(*.f64 t z) |
(*.f64 a b) |
(*.f64 a b) |
(*.f64 t z) |
(*.f64 a b) |
(*.f64 a b) |
(*.f64 a b) |
(*.f64 t z) |
(*.f64 t z) |
(*.f64 a b) |
(*.f64 t z) |
(*.f64 t z) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f64 (*.f64 y x) (*.f64 c i)) |
Compiled 25 to 11 computations (56% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 4.0ms | y | @ | 0 | (+.f64 (*.f64 y x) (*.f64 c i)) |
| 0.0ms | c | @ | -inf | (+.f64 (*.f64 y x) (*.f64 c i)) |
| 0.0ms | y | @ | inf | (+.f64 (*.f64 y x) (*.f64 c i)) |
| 0.0ms | y | @ | -inf | (+.f64 (*.f64 y x) (*.f64 c i)) |
| 0.0ms | i | @ | -inf | (+.f64 (*.f64 y x) (*.f64 c i)) |
| 1× | batch-egg-rewrite |
| 903× | pow1_binary64 |
| 833× | add-log-exp_binary64 |
| 833× | log1p-expm1-u_binary64 |
| 833× | expm1-log1p-u_binary64 |
| 814× | add-exp-log_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 8 |
| 1 | 168 | 8 |
| 2 | 2270 | 8 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (*.f64 y x) (*.f64 c i)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 y x (*.f64 c i))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 y x) 2) (-.f64 (*.f64 y x) (*.f64 c i))) (/.f64 (pow.f64 (*.f64 c i) 2) (-.f64 (*.f64 y x) (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y x (*.f64 c i)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 y x (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 y x (*.f64 c i))) (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 c i))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 c i))) 2) (cbrt.f64 (fma.f64 y x (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 y x (*.f64 c i))) (sqrt.f64 (fma.f64 y x (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 c i) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 c i) (-.f64 (*.f64 c i) (*.f64 y x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 c i) 2)) (/.f64 1 (-.f64 (*.f64 y x) (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 c i) (-.f64 (*.f64 c i) (*.f64 y x)))) (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 c i) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 y x) (*.f64 c i)) (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 c i) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 c i) 3)) (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 c i) (-.f64 (*.f64 c i) (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 c i) 3)) (+.f64 (pow.f64 (*.f64 c i) 2) (-.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 y x) (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 c i) 2)) (-.f64 (*.f64 y x) (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 c i) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 y x) 2) (*.f64 (*.f64 c i) (-.f64 (*.f64 c i) (*.f64 y x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 c i) 2))) (neg.f64 (-.f64 (*.f64 y x) (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 c i) 2) (pow.f64 (*.f64 y x) 2)) (-.f64 (*.f64 c i) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 y x (*.f64 c i)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y x (*.f64 c i)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 c i))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 y x (*.f64 c i))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 y x (*.f64 c i)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 y x (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 y x (*.f64 c i)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 y x (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 y x (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 y x (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 c i (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 i c (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y x) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 c i) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 c i)) 2) (cbrt.f64 (*.f64 c i)) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (cbrt.f64 (*.f64 y x)) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 c i)) (sqrt.f64 (*.f64 c i)) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 (*.f64 y x)) (*.f64 c i)))))) |
| 1× | egg-herbie |
| 4× | fma-def_binary64 |
| 2× | *-commutative_binary64 |
| 1× | +-commutative_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 336 |
| 1 | 12 | 336 |
| 2 | 15 | 336 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 c i) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(*.f64 c i) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(*.f64 c i) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(*.f64 c i) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(*.f64 c i) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(*.f64 c i) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
| Outputs |
|---|
(*.f64 c i) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(*.f64 c i) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(*.f64 c i) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(*.f64 c i) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(*.f64 c i) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(*.f64 c i) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
| 0.0b | (+.f64 (*.f64 y x) (*.f64 t z)) |
Compiled 41 to 13 computations (68.3% saved)
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | c | @ | 0 | (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
| 0.0ms | y | @ | -inf | (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
| 0.0ms | c | @ | inf | (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
| 0.0ms | c | @ | -inf | (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
| 0.0ms | i | @ | 0 | (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
| 1× | batch-egg-rewrite |
| 681× | log-prod_binary64 |
| 679× | fma-def_binary64 |
| 358× | pow2_binary64 |
| 338× | fma-neg_binary64 |
| 245× | pow1/3_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 12 | 12 |
| 1 | 259 | 12 |
| 2 | 3657 | 12 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 y x (fma.f64 t z (*.f64 c i))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 c i) 2) (-.f64 (*.f64 c i) (fma.f64 y x (*.f64 t z)))) (/.f64 (pow.f64 (fma.f64 y x (*.f64 t z)) 2) (-.f64 (*.f64 c i) (fma.f64 y x (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y x (fma.f64 t z (*.f64 c i))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 y x (fma.f64 t z (*.f64 c i))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 y x (fma.f64 t z (*.f64 c i)))) (pow.f64 (cbrt.f64 (fma.f64 y x (fma.f64 t z (*.f64 c i)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (fma.f64 t z (*.f64 c i)))) 2) (cbrt.f64 (fma.f64 y x (fma.f64 t z (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 y x (fma.f64 t z (*.f64 c i)))) (sqrt.f64 (fma.f64 y x (fma.f64 t z (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 c i) 3) (pow.f64 (fma.f64 y x (*.f64 t z)) 3)) (/.f64 1 (fma.f64 (fma.f64 y x (*.f64 t z)) (-.f64 (fma.f64 y x (*.f64 t z)) (*.f64 c i)) (pow.f64 (*.f64 c i) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 c i) 2) (pow.f64 (fma.f64 y x (*.f64 t z)) 2)) (/.f64 1 (-.f64 (*.f64 c i) (fma.f64 y x (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (fma.f64 y x (*.f64 t z)) (-.f64 (fma.f64 y x (*.f64 t z)) (*.f64 c i)) (pow.f64 (*.f64 c i) 2)) (+.f64 (pow.f64 (*.f64 c i) 3) (pow.f64 (fma.f64 y x (*.f64 t z)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 c i) (fma.f64 y x (*.f64 t z))) (-.f64 (pow.f64 (*.f64 c i) 2) (pow.f64 (fma.f64 y x (*.f64 t z)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 c i) 3) (pow.f64 (fma.f64 y x (*.f64 t z)) 3)) (fma.f64 (fma.f64 y x (*.f64 t z)) (-.f64 (fma.f64 y x (*.f64 t z)) (*.f64 c i)) (pow.f64 (*.f64 c i) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 c i) 3) (pow.f64 (fma.f64 y x (*.f64 t z)) 3)) (+.f64 (pow.f64 (fma.f64 y x (*.f64 t z)) 2) (-.f64 (pow.f64 (*.f64 c i) 2) (*.f64 c (*.f64 i (fma.f64 y x (*.f64 t z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 c i) 2) (pow.f64 (fma.f64 y x (*.f64 t z)) 2)) (-.f64 (*.f64 c i) (fma.f64 y x (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 c i) 3) (pow.f64 (fma.f64 y x (*.f64 t z)) 3))) (neg.f64 (fma.f64 (fma.f64 y x (*.f64 t z)) (-.f64 (fma.f64 y x (*.f64 t z)) (*.f64 c i)) (pow.f64 (*.f64 c i) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 c i) 2) (pow.f64 (fma.f64 y x (*.f64 t z)) 2))) (neg.f64 (-.f64 (*.f64 c i) (fma.f64 y x (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 c i (*.f64 y x)) 3) (pow.f64 (*.f64 t z) 3)) (+.f64 (pow.f64 (fma.f64 c i (*.f64 y x)) 2) (-.f64 (pow.f64 (*.f64 t z) 2) (*.f64 (fma.f64 c i (*.f64 y x)) (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 y x (*.f64 t z)) 2) (pow.f64 (*.f64 c i) 2)) (-.f64 (fma.f64 y x (*.f64 t z)) (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 c i (*.f64 y x)) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (fma.f64 c i (*.f64 y x)) (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 y x (fma.f64 t z (*.f64 c i))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y x (fma.f64 t z (*.f64 c i))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y x (fma.f64 t z (*.f64 c i))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 y x (fma.f64 t z (*.f64 c i)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 y x (fma.f64 t z (*.f64 c i)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (fma.f64 y x (*.f64 t z)) (-.f64 (fma.f64 y x (*.f64 t z)) (*.f64 c i)) (pow.f64 (*.f64 c i) 2)) (+.f64 (pow.f64 (*.f64 c i) 3) (pow.f64 (fma.f64 y x (*.f64 t z)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (*.f64 c i) (fma.f64 y x (*.f64 t z))) (-.f64 (pow.f64 (*.f64 c i) 2) (pow.f64 (fma.f64 y x (*.f64 t z)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 y x (fma.f64 t z (*.f64 c i))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 y x (fma.f64 t z (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 y x (fma.f64 t z (*.f64 c i))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 c i))) (exp.f64 (fma.f64 y x (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 c) i) (+.f64 1 (expm1.f64 (fma.f64 y x (*.f64 t z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 c i))) (+.f64 1 (expm1.f64 (fma.f64 y x (*.f64 t z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 t) z) (exp.f64 (fma.f64 c i (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 t z))) (exp.f64 (fma.f64 c i (*.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 t) z) (*.f64 (pow.f64 (exp.f64 c) i) (pow.f64 (exp.f64 y) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 t z))) (*.f64 (pow.f64 (exp.f64 c) i) (pow.f64 (exp.f64 y) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 y x (*.f64 t z)))) (pow.f64 (exp.f64 c) i)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 y x (*.f64 t z))) (+.f64 1 (expm1.f64 (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 y x (*.f64 t z)))) (+.f64 1 (expm1.f64 (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 c) i) (pow.f64 (exp.f64 y) x)) (pow.f64 (exp.f64 t) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 c i (*.f64 y x))) (+.f64 1 (expm1.f64 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 c) i) (pow.f64 (exp.f64 y) x)) (+.f64 1 (expm1.f64 (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 y x (fma.f64 t z (*.f64 c i))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 y x (fma.f64 t z (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 y x (fma.f64 t z (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 y x (fma.f64 t z (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 y x (fma.f64 t z (*.f64 c i)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 c i (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 i c (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 c i) 1 (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y x (fma.f64 t z (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x y (fma.f64 t z (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y x) 1 (fma.f64 t z (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t z (fma.f64 c i (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z t (fma.f64 c i (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t z) 1 (fma.f64 c i (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y x (*.f64 t z)) 1 (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 c i) (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y x) (fma.f64 t z (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 t z) (fma.f64 c i (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 y x (*.f64 t z)) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 c i (*.f64 y x)) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) 2) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) 2) (cbrt.f64 (fma.f64 y x (*.f64 t z))) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 t) 2) (*.f64 (cbrt.f64 t) z) (fma.f64 c i (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) x) (fma.f64 t z (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 c) 2) (*.f64 (cbrt.f64 c) i) (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) t) (fma.f64 c i (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) (fma.f64 t z (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 i) 2) (*.f64 (cbrt.f64 i) c) (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 t z)) (pow.f64 (cbrt.f64 (*.f64 t z)) 2) (fma.f64 c i (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 t z)) 2) (cbrt.f64 (*.f64 t z)) (fma.f64 c i (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y x)) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (fma.f64 t z (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (cbrt.f64 (*.f64 y x)) (fma.f64 t z (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 c i)) (pow.f64 (cbrt.f64 (*.f64 c i)) 2) (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 c i)) 2) (cbrt.f64 (*.f64 c i)) (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 y x (*.f64 t z))) (sqrt.f64 (fma.f64 y x (*.f64 t z))) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 t) (*.f64 (sqrt.f64 t) z) (fma.f64 c i (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (fma.f64 t z (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 c) (*.f64 (sqrt.f64 c) i) (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) t) (fma.f64 c i (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (fma.f64 t z (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 i) (*.f64 (sqrt.f64 i) c) (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 t z)) (sqrt.f64 (*.f64 t z)) (fma.f64 c i (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 (*.f64 y x)) (fma.f64 t z (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 c i)) (sqrt.f64 (*.f64 c i)) (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (/.f64 1 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (/.f64 1 (-.f64 (*.f64 y x) (*.f64 t z))) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 c i (*.f64 y x)) 1 (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 c i (*.f64 y x))) 2) (cbrt.f64 (fma.f64 c i (*.f64 y x))) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 c i (*.f64 y x))) (sqrt.f64 (fma.f64 c i (*.f64 y x))) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 c (pow.f64 (cbrt.f64 i) 2)) (cbrt.f64 i) (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 c (sqrt.f64 i)) (sqrt.f64 i) (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 i (pow.f64 (cbrt.f64 c) 2)) (cbrt.f64 c) (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 i (sqrt.f64 c)) (sqrt.f64 c) (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (fma.f64 c i (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (sqrt.f64 z)) (sqrt.f64 z) (fma.f64 c i (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (pow.f64 (cbrt.f64 t) 2)) (cbrt.f64 t) (fma.f64 c i (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (sqrt.f64 t)) (sqrt.f64 t) (fma.f64 c i (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (fma.f64 t z (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (fma.f64 t z (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (fma.f64 t z (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (fma.f64 t z (*.f64 c i))))))) |
| 1× | egg-herbie |
| 12× | fma-def_binary64 |
| 3× | +-commutative_binary64 |
| 3× | *-commutative_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 96 |
| 1 | 22 | 96 |
| 2 | 31 | 96 |
| 1× | saturated |
| Inputs |
|---|
(+.f64 (*.f64 y x) (*.f64 t z)) |
(*.f64 c i) |
(*.f64 c i) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(*.f64 c i) |
(*.f64 c i) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(*.f64 y x) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(*.f64 y x) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(*.f64 t z) |
(*.f64 t z) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(*.f64 t z) |
(*.f64 t z) |
| Outputs |
|---|
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(*.f64 c i) |
(*.f64 c i) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(*.f64 c i) |
(*.f64 c i) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(fma.f64 c i (*.f64 t z)) |
(fma.f64 t z (*.f64 c i)) |
(*.f64 y x) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(fma.f64 c i (*.f64 t z)) |
(fma.f64 t z (*.f64 c i)) |
(*.f64 y x) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(fma.f64 y x (*.f64 c i)) |
(*.f64 t z) |
(*.f64 t z) |
(+.f64 (*.f64 c i) (*.f64 y x)) |
(fma.f64 c i (*.f64 y x)) |
(fma.f64 y x (*.f64 c i)) |
(*.f64 t z) |
(*.f64 t z) |
Compiled 4474 to 1148 computations (74.3% saved)
14 alts after pruning (8 fresh and 6 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 288 | 5 | 293 |
| Fresh | 2 | 3 | 5 |
| Picked | 1 | 0 | 1 |
| Done | 1 | 6 | 7 |
| Total | 292 | 14 | 306 |
| Status | Error | Program |
|---|---|---|
| 48.6b | (*.f64 y x) | |
| ✓ | 48.4b | (*.f64 c i) |
| ✓ | 32.5b | (fma.f64 x y (*.f64 a b)) |
| ✓ | 34.6b | (+.f64 (*.f64 y x) (*.f64 c i)) |
| ✓ | 46.7b | (*.f64 a b) |
| ▶ | 30.9b | (+.f64 (*.f64 y x) (*.f64 t z)) |
| ▶ | 30.4b | (fma.f64 c i (*.f64 t z)) |
| ✓ | 28.8b | (+.f64 (*.f64 a b) (*.f64 t z)) |
| 32.6b | (+.f64 (*.f64 x y) (*.f64 a b)) | |
| ▶ | 30.4b | (+.f64 (*.f64 c i) (*.f64 t z)) |
| 32.5b | (fma.f64 a b (*.f64 y x)) | |
| ✓ | 32.5b | (+.f64 (*.f64 a b) (*.f64 c i)) |
| ▶ | 44.7b | (*.f64 t z) |
| ▶ | 30.9b | (fma.f64 y x (*.f64 t z)) |
Compiled 299 to 223 computations (25.4% saved)
Compiled 21 to 10 computations (52.4% saved)
Compiled 13 to 9 computations (30.8% saved)
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f64 (*.f64 c i) (*.f64 t z)) |
Compiled 25 to 11 computations (56% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | c | @ | 0 | (+.f64 (*.f64 c i) (*.f64 t z)) |
| 0.0ms | c | @ | inf | (+.f64 (*.f64 c i) (*.f64 t z)) |
| 0.0ms | c | @ | -inf | (+.f64 (*.f64 c i) (*.f64 t z)) |
| 0.0ms | i | @ | inf | (+.f64 (*.f64 c i) (*.f64 t z)) |
| 0.0ms | t | @ | 0 | (+.f64 (*.f64 c i) (*.f64 t z)) |
| 1× | batch-egg-rewrite |
| 903× | pow1_binary64 |
| 833× | add-log-exp_binary64 |
| 833× | log1p-expm1-u_binary64 |
| 833× | expm1-log1p-u_binary64 |
| 814× | add-exp-log_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 8 |
| 1 | 168 | 8 |
| 2 | 2270 | 8 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (*.f64 c i) (*.f64 t z)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 c i (*.f64 t z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 c i) 2) (-.f64 (*.f64 c i) (*.f64 t z))) (/.f64 (pow.f64 (*.f64 t z) 2) (-.f64 (*.f64 c i) (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 c i (*.f64 t z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 c i (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 c i (*.f64 t z))) (pow.f64 (cbrt.f64 (fma.f64 c i (*.f64 t z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 c i (*.f64 t z))) 2) (cbrt.f64 (fma.f64 c i (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 c i (*.f64 t z))) (sqrt.f64 (fma.f64 c i (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 c i) 3) (pow.f64 (*.f64 t z) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 c i) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 c i))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 c i) 2) (pow.f64 (*.f64 t z) 2)) (/.f64 1 (-.f64 (*.f64 c i) (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 c i) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 c i)))) (+.f64 (pow.f64 (*.f64 c i) 3) (pow.f64 (*.f64 t z) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 c i) (*.f64 t z)) (-.f64 (pow.f64 (*.f64 c i) 2) (pow.f64 (*.f64 t z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 c i) 3) (pow.f64 (*.f64 t z) 3)) (+.f64 (pow.f64 (*.f64 c i) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 c i)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 c i) 3) (pow.f64 (*.f64 t z) 3)) (+.f64 (pow.f64 (*.f64 t z) 2) (-.f64 (pow.f64 (*.f64 c i) 2) (*.f64 (*.f64 c i) (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 c i) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 c i) (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 c i) 3) (pow.f64 (*.f64 t z) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 c i) 2) (*.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 c i))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 c i) 2) (pow.f64 (*.f64 t z) 2))) (neg.f64 (-.f64 (*.f64 c i) (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 t z) 2) (pow.f64 (*.f64 c i) 2)) (-.f64 (*.f64 t z) (*.f64 c i)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 c i (*.f64 t z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 c i (*.f64 t z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 c i (*.f64 t z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 c i (*.f64 t z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 c i (*.f64 t z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 c i (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 c i (*.f64 t z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 c i (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 c i (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 c i (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 c i (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 i c (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t z (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z t (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 c i) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 t z) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 t z)) 2) (cbrt.f64 (*.f64 t z)) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 c i)) 2) (cbrt.f64 (*.f64 c i)) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 t z)) (sqrt.f64 (*.f64 t z)) (*.f64 c i))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 c i)) (sqrt.f64 (*.f64 c i)) (*.f64 t z)))))) |
| 1× | egg-herbie |
| 2× | *-commutative_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 48 |
| 1 | 9 | 48 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 t z) |
(*.f64 c i) |
(*.f64 c i) |
(*.f64 t z) |
(*.f64 c i) |
(*.f64 c i) |
(*.f64 c i) |
(*.f64 t z) |
(*.f64 t z) |
(*.f64 c i) |
(*.f64 t z) |
(*.f64 t z) |
| Outputs |
|---|
(*.f64 t z) |
(*.f64 c i) |
(*.f64 c i) |
(*.f64 t z) |
(*.f64 c i) |
(*.f64 c i) |
(*.f64 c i) |
(*.f64 t z) |
(*.f64 t z) |
(*.f64 c i) |
(*.f64 t z) |
(*.f64 t z) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| 0.0b | (+.f64 (*.f64 y x) (*.f64 t z)) |
Compiled 25 to 11 computations (56% saved)
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (fma.f64 y x (*.f64 t z)) |
Compiled 21 to 10 computations (52.4% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | y | @ | inf | (fma.f64 y x (*.f64 t z)) |
| 0.0ms | x | @ | -inf | (fma.f64 y x (*.f64 t z)) |
| 0.0ms | y | @ | 0 | (fma.f64 y x (*.f64 t z)) |
| 0.0ms | x | @ | inf | (fma.f64 y x (*.f64 t z)) |
| 0.0ms | y | @ | -inf | (fma.f64 y x (*.f64 t z)) |
| 1× | batch-egg-rewrite |
| 661× | pow1_binary64 |
| 602× | add-log-exp_binary64 |
| 602× | log1p-expm1-u_binary64 |
| 602× | expm1-log1p-u_binary64 |
| 587× | add-exp-log_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 8 |
| 1 | 137 | 8 |
| 2 | 1626 | 8 |
| 1× | node limit |
| Inputs |
|---|
(fma.f64 y x (*.f64 t z)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 t z) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y x) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 y x) 1) (*.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 y x (*.f64 t z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y x (*.f64 t z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 y x (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) 2) (cbrt.f64 (fma.f64 y x (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 y x (*.f64 t z))) (sqrt.f64 (fma.f64 y x (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 t z) 3)) (+.f64 (*.f64 (*.f64 y x) (*.f64 y x)) (-.f64 (pow.f64 (*.f64 t z) 2) (*.f64 (*.f64 y x) (*.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 y x) (*.f64 y x)) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 y x (*.f64 t z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y x (*.f64 t z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 y x (*.f64 t z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 y x (*.f64 t z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 y x (*.f64 t z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 y x (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 y x (*.f64 t z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 y x (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 y x (*.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 y x (*.f64 t z)))))))) |
| 1× | egg-herbie |
| 4× | fma-def_binary64 |
| 2× | *-commutative_binary64 |
| 1× | +-commutative_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 336 |
| 1 | 12 | 336 |
| 2 | 15 | 336 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
| Outputs |
|---|
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
Compiled 1705 to 510 computations (70.1% saved)
14 alts after pruning (3 fresh and 11 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 131 | 1 | 132 |
| Fresh | 1 | 2 | 3 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 10 | 10 |
| Total | 132 | 14 | 146 |
| Status | Error | Program |
|---|---|---|
| ✓ | 32.5b | (fma.f64 x y (*.f64 a b)) |
| ✓ | 48.4b | (*.f64 c i) |
| ✓ | 34.6b | (+.f64 (*.f64 y x) (*.f64 c i)) |
| ✓ | 46.7b | (*.f64 a b) |
| ✓ | 30.9b | (+.f64 (*.f64 y x) (*.f64 t z)) |
| ✓ | 30.4b | (fma.f64 c i (*.f64 t z)) |
| ✓ | 28.8b | (+.f64 (*.f64 a b) (*.f64 t z)) |
| 32.6b | (+.f64 (*.f64 x y) (*.f64 a b)) | |
| ✓ | 30.4b | (+.f64 (*.f64 c i) (*.f64 t z)) |
| 48.6b | (*.f64 y x) | |
| 32.5b | (fma.f64 a b (*.f64 y x)) | |
| ✓ | 32.5b | (+.f64 (*.f64 a b) (*.f64 c i)) |
| ✓ | 44.7b | (*.f64 t z) |
| ✓ | 30.9b | (fma.f64 y x (*.f64 t z)) |
Compiled 190 to 142 computations (25.3% saved)
| Inputs |
|---|
(*.f64 y x) |
(*.f64 y x) |
(*.f64 t z) |
(*.f64 a b) |
(*.f64 y x) |
(*.f64 c i) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 c i)) |
(+.f64 (*.f64 a b) (*.f64 t z)) |
(+.f64 (*.f64 x y) (*.f64 a b)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 a b) (*.f64 c i)) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i)) |
(fma.f64 c i (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 x y (*.f64 a b)) |
(fma.f64 x y (*.f64 t z)) |
(+.f64 (fma.f64 a b (*.f64 y x)) (*.f64 c i)) |
(fma.f64 x y (fma.f64 c i (*.f64 t z))) |
(fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b)))) |
| Outputs |
|---|
(fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b)))) |
20 calls:
| 15.0ms | z |
| 15.0ms | c |
| 14.0ms | (*.f64 x y) |
| 14.0ms | (+.f64 (*.f64 x y) (*.f64 z t)) |
| 14.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 0.0b | 1 | x |
| 0.0b | 1 | y |
| 0.0b | 1 | z |
| 0.0b | 1 | t |
| 0.0b | 1 | a |
| 0.0b | 1 | b |
| 0.0b | 1 | c |
| 0.0b | 1 | i |
| 0.0b | 1 | (+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i)) |
| 0.0b | 1 | (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) |
| 0.0b | 1 | (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) |
| 0.0b | 1 | (+.f64 (*.f64 x y) (*.f64 z t)) |
| 0.0b | 1 | (+.f64 (*.f64 x y) (*.f64 z t)) |
| 0.0b | 1 | (*.f64 x y) |
| 0.0b | 1 | (*.f64 x y) |
| 0.0b | 1 | (*.f64 z t) |
| 0.0b | 1 | (*.f64 z t) |
| 0.0b | 1 | (*.f64 a b) |
| 0.0b | 1 | (*.f64 c i) |
| 0.0b | 1 | (*.f64 c i) |
Compiled 409 to 225 computations (45% saved)
| Inputs |
|---|
(*.f64 y x) |
(*.f64 y x) |
(*.f64 t z) |
(*.f64 a b) |
(*.f64 y x) |
(*.f64 c i) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 c i)) |
(+.f64 (*.f64 a b) (*.f64 t z)) |
(+.f64 (*.f64 x y) (*.f64 a b)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 a b) (*.f64 c i)) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i)) |
(fma.f64 c i (*.f64 t z)) |
(fma.f64 y x (*.f64 t z)) |
(fma.f64 a b (*.f64 y x)) |
(fma.f64 x y (*.f64 a b)) |
(fma.f64 x y (*.f64 t z)) |
(+.f64 (fma.f64 a b (*.f64 y x)) (*.f64 c i)) |
(fma.f64 x y (fma.f64 c i (*.f64 t z))) |
| Outputs |
|---|
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i)) |
15 calls:
| 18.0ms | (*.f64 x y) |
| 13.0ms | (+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i)) |
| 13.0ms | b |
| 13.0ms | i |
| 13.0ms | c |
| Error | Segments | Branch |
|---|---|---|
| 0.0b | 1 | x |
| 0.0b | 1 | y |
| 0.0b | 1 | z |
| 0.0b | 1 | t |
| 0.0b | 1 | a |
| 0.0b | 1 | b |
| 0.0b | 1 | c |
| 0.0b | 1 | i |
| 0.0b | 1 | (+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i)) |
| 0.0b | 1 | (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) |
| 0.0b | 1 | (+.f64 (*.f64 x y) (*.f64 z t)) |
| 0.0b | 1 | (*.f64 x y) |
| 0.0b | 1 | (*.f64 z t) |
| 0.0b | 1 | (*.f64 a b) |
| 0.0b | 1 | (*.f64 c i) |
Compiled 330 to 171 computations (48.2% saved)
| Inputs |
|---|
(*.f64 y x) |
(*.f64 y x) |
(*.f64 t z) |
(*.f64 a b) |
(*.f64 y x) |
(*.f64 c i) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 c i)) |
(+.f64 (*.f64 a b) (*.f64 t z)) |
(+.f64 (*.f64 x y) (*.f64 a b)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 a b) (*.f64 c i)) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
| Outputs |
|---|
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) |
12 calls:
| 107.0ms | x |
| 103.0ms | z |
| 78.0ms | t |
| 69.0ms | c |
| 66.0ms | y |
| Error | Segments | Branch |
|---|---|---|
| 8.8b | 6 | x |
| 11.6b | 3 | y |
| 9.5b | 7 | z |
| 10.4b | 5 | t |
| 7.7b | 3 | a |
| 7.5b | 5 | b |
| 8.7b | 3 | c |
| 8.0b | 3 | i |
| 10.5b | 4 | (*.f64 x y) |
| 10.5b | 4 | (*.f64 x y) |
| 3.8b | 3 | (*.f64 a b) |
| 5.3b | 3 | (*.f64 c i) |
Compiled 209 to 121 computations (42.1% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 52.0ms | 647862829457.7161 | 13247377003254350.0 |
| 73.0ms | -1.7133184715305773e-7 | -1.9623525828821343e-10 |
Compiled 34 to 25 computations (26.5% saved)
| Inputs |
|---|
(*.f64 y x) |
(*.f64 y x) |
(*.f64 t z) |
(*.f64 a b) |
(*.f64 y x) |
(*.f64 c i) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 c i)) |
(+.f64 (*.f64 a b) (*.f64 t z)) |
(+.f64 (*.f64 x y) (*.f64 a b)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 a b) (*.f64 c i)) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
| Outputs |
|---|
(+.f64 (*.f64 a b) (*.f64 t z)) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) |
(+.f64 (*.f64 x y) (*.f64 a b)) |
12 calls:
| 100.0ms | a |
| 97.0ms | (*.f64 c i) |
| 85.0ms | c |
| 85.0ms | z |
| 83.0ms | y |
| Error | Segments | Branch |
|---|---|---|
| 11.1b | 6 | x |
| 10.6b | 6 | y |
| 12.7b | 6 | z |
| 12.4b | 5 | t |
| 7.3b | 9 | a |
| 10.0b | 5 | b |
| 12.9b | 5 | c |
| 11.1b | 7 | i |
| 12.7b | 3 | (*.f64 x y) |
| 12.7b | 3 | (*.f64 x y) |
| 6.5b | 3 | (*.f64 a b) |
| 11.2b | 7 | (*.f64 c i) |
Compiled 198 to 120 computations (39.4% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 25.0ms | 3.1637184468039277e+98 | 3.8929459012354156e+105 |
| 27.0ms | -1.4033230368514006e+107 | -4.515752963061405e+101 |
Compiled 34 to 25 computations (26.5% saved)
| Inputs |
|---|
(*.f64 y x) |
(*.f64 y x) |
(*.f64 t z) |
(*.f64 a b) |
(*.f64 y x) |
(*.f64 c i) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 c i)) |
(+.f64 (*.f64 a b) (*.f64 t z)) |
(+.f64 (*.f64 x y) (*.f64 a b)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 a b) (*.f64 c i)) |
| Outputs |
|---|
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 a b) (*.f64 c i)) |
(+.f64 (*.f64 y x) (*.f64 c i)) |
(+.f64 (*.f64 x y) (*.f64 a b)) |
(+.f64 (*.f64 a b) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 c i)) |
(+.f64 (*.f64 a b) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 a b) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 a b) (*.f64 c i)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 a b) (*.f64 c i)) |
12 calls:
| 110.0ms | (*.f64 a b) |
| 103.0ms | z |
| 96.0ms | c |
| 87.0ms | (*.f64 c i) |
| 85.0ms | i |
| Error | Segments | Branch |
|---|---|---|
| 16.8b | 7 | x |
| 14.5b | 8 | y |
| 14.1b | 13 | z |
| 15.2b | 8 | t |
| 15.0b | 11 | a |
| 16.3b | 9 | b |
| 13.1b | 13 | c |
| 15.1b | 10 | i |
| 14.3b | 6 | (*.f64 x y) |
| 14.3b | 6 | (*.f64 x y) |
| 14.4b | 7 | (*.f64 a b) |
| 13.5b | 8 | (*.f64 c i) |
Compiled 187 to 119 computations (36.4% saved)
| 12× | binary-search |
| Time | Left | Right |
|---|---|---|
| 27.0ms | 6.683106745506148e-27 | 1.1726276930385184e-23 |
| 28.0ms | 1.9911277113322299e-125 | 1.9532142639257838e-120 |
| 49.0ms | 1.3351196157635446e-170 | 1.0287310445265306e-168 |
| 50.0ms | -9.935589498688963e-298 | -1.0762562963697562e-299 |
| 49.0ms | -8.866393046620784e-116 | -3.2895870094588644e-120 |
| 47.0ms | -2.5853453954942436e-98 | -4.6893727755552814e-101 |
| 48.0ms | -1.213348884728547e-43 | -6.062767097287904e-47 |
| 49.0ms | -1.3810584533796385e-11 | -2.144413028364492e-14 |
| 48.0ms | -4.416404699707867e+43 | -7.844507981942717e+40 |
| 250.0ms | -7.786709480999204e+79 | -3.9344366443745516e+77 |
| 15.0ms | -6.229351910576114e+124 | -2.339621854325547e+118 |
| 6.0ms | -5.837978210489376e+253 | -2.4683409273615817e+252 |
Compiled 322 to 241 computations (25.2% saved)
| Inputs |
|---|
(*.f64 y x) |
(*.f64 y x) |
(*.f64 t z) |
(*.f64 a b) |
(*.f64 y x) |
(*.f64 c i) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 c i)) |
(+.f64 (*.f64 a b) (*.f64 t z)) |
(+.f64 (*.f64 x y) (*.f64 a b)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
| Outputs |
|---|
(+.f64 (*.f64 a b) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 c i)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 x y) (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 x y) (*.f64 a b)) |
(+.f64 (*.f64 y x) (*.f64 c i)) |
(+.f64 (*.f64 x y) (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 x y) (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 a b) (*.f64 t z)) |
12 calls:
| 88.0ms | x |
| 86.0ms | z |
| 79.0ms | a |
| 78.0ms | c |
| 70.0ms | i |
| Error | Segments | Branch |
|---|---|---|
| 18.3b | 6 | x |
| 15.6b | 5 | y |
| 14.0b | 13 | z |
| 15.2b | 8 | t |
| 15.0b | 11 | a |
| 16.3b | 9 | b |
| 15.6b | 12 | c |
| 15.1b | 10 | i |
| 16.1b | 4 | (*.f64 x y) |
| 16.1b | 4 | (*.f64 x y) |
| 14.4b | 7 | (*.f64 a b) |
| 14.2b | 8 | (*.f64 c i) |
Compiled 180 to 118 computations (34.4% saved)
| 12× | binary-search |
| Time | Left | Right |
|---|---|---|
| 28.0ms | 1.1305807991024928e-26 | 3.356275442514743e-21 |
| 31.0ms | 1.2382982087947776e-114 | 3.0629957269073647e-109 |
| 29.0ms | 2.920588260265729e-152 | 6.962840912079473e-146 |
| 28.0ms | 3.746613471948433e-194 | 4.989547114646386e-187 |
| 29.0ms | -2.3718968462187837e-294 | -9.135798259539724e-297 |
| 32.0ms | -2.4753945096812134e-228 | -1.9335469101952874e-228 |
| 30.0ms | -2.201343148291517e-128 | -2.5887706848193733e-134 |
| 31.0ms | -3.254748266135068e-111 | -6.476927352206065e-124 |
| 26.0ms | -4.524989730031518e-91 | -2.3283535383248028e-94 |
| 31.0ms | -3.633819394952762e-26 | -2.041314360194038e-28 |
| 151.0ms | -1.2334605817327e+63 | -1.581361475067993e+62 |
| 93.0ms | -1.1335566549396291e+108 | -4.543967920580692e+105 |
Compiled 450 to 337 computations (25.1% saved)
| Inputs |
|---|
(*.f64 y x) |
(*.f64 y x) |
(*.f64 t z) |
(*.f64 a b) |
(*.f64 y x) |
(*.f64 c i) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 c i)) |
(+.f64 (*.f64 a b) (*.f64 t z)) |
(+.f64 (*.f64 x y) (*.f64 a b)) |
| Outputs |
|---|
(+.f64 (*.f64 a b) (*.f64 t z)) |
(+.f64 (*.f64 x y) (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 x y) (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 x y) (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 x y) (*.f64 a b)) |
(+.f64 (*.f64 y x) (*.f64 c i)) |
(+.f64 (*.f64 x y) (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 x y) (*.f64 a b)) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 a b) (*.f64 t z)) |
12 calls:
| 88.0ms | z |
| 83.0ms | i |
| 81.0ms | c |
| 55.0ms | a |
| 52.0ms | t |
| Error | Segments | Branch |
|---|---|---|
| 19.3b | 6 | x |
| 15.6b | 5 | y |
| 14.3b | 14 | z |
| 15.2b | 8 | t |
| 16.1b | 9 | a |
| 17.9b | 8 | b |
| 16.3b | 12 | c |
| 15.0b | 13 | i |
| 16.4b | 4 | (*.f64 x y) |
| 16.4b | 4 | (*.f64 x y) |
| 15.7b | 5 | (*.f64 a b) |
| 17.2b | 5 | (*.f64 c i) |
Compiled 173 to 117 computations (32.4% saved)
| 13× | binary-search |
| Time | Left | Right |
|---|---|---|
| 25.0ms | 1.1305807991024928e-26 | 3.356275442514743e-21 |
| 26.0ms | 1.2382982087947776e-114 | 3.0629957269073647e-109 |
| 27.0ms | 2.920588260265729e-152 | 6.962840912079473e-146 |
| 25.0ms | 3.746613471948433e-194 | 4.989547114646386e-187 |
| 26.0ms | -2.3718968462187837e-294 | -9.135798259539724e-297 |
| 27.0ms | -2.4753945096812134e-228 | -1.9335469101952874e-228 |
| 26.0ms | -2.201343148291517e-128 | -2.5887706848193733e-134 |
| 27.0ms | -3.254748266135068e-111 | -6.476927352206065e-124 |
| 27.0ms | -4.524989730031518e-91 | -2.3283535383248028e-94 |
| 26.0ms | -5.82025291643974e+23 | -2.0371905268534825e+23 |
| 27.0ms | -9.575870123414639e+33 | -3.077199121723765e+30 |
| 69.0ms | -8.630577487505174e+73 | -5.1363207273821564e+73 |
| 85.0ms | -1.1335566549396291e+108 | -4.543967920580692e+105 |
Compiled 386 to 289 computations (25.1% saved)
| Inputs |
|---|
(*.f64 y x) |
(*.f64 y x) |
(*.f64 t z) |
(*.f64 a b) |
(*.f64 y x) |
(*.f64 c i) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 c i)) |
(+.f64 (*.f64 a b) (*.f64 t z)) |
| Outputs |
|---|
(+.f64 (*.f64 a b) (*.f64 t z)) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 c i)) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 c i)) |
(+.f64 (*.f64 a b) (*.f64 t z)) |
10 calls:
| 104.0ms | y |
| 61.0ms | c |
| 60.0ms | x |
| 57.0ms | a |
| 54.0ms | t |
| Error | Segments | Branch |
|---|---|---|
| 19.7b | 6 | x |
| 17.8b | 6 | y |
| 20.0b | 7 | z |
| 16.3b | 9 | t |
| 15.7b | 10 | a |
| 18.3b | 8 | b |
| 16.8b | 10 | c |
| 17.7b | 8 | i |
| 15.5b | 6 | (*.f64 a b) |
| 18.5b | 5 | (*.f64 c i) |
Compiled 144 to 97 computations (32.6% saved)
| 5× | binary-search |
| Time | Left | Right |
|---|---|---|
| 27.0ms | 647862829457.7161 | 13247377003254350.0 |
| 48.0ms | 5.597765517608566e-22 | 2.6868928383781977e-20 |
| 27.0ms | 3.4524827158117685e-272 | 1.1709733278264379e-270 |
| 51.0ms | -2.295004615232815e-307 | -0.0 |
| 26.0ms | -1.7133184715305773e-7 | -1.9623525828821343e-10 |
Compiled 34 to 25 computations (26.5% saved)
| Inputs |
|---|
(*.f64 y x) |
(*.f64 y x) |
(*.f64 t z) |
(*.f64 a b) |
(*.f64 y x) |
(*.f64 c i) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 c i)) |
| Outputs |
|---|
(*.f64 a b) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 c i)) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(+.f64 (*.f64 y x) (*.f64 c i)) |
(*.f64 a b) |
10 calls:
| 204.0ms | a |
| 158.0ms | b |
| 106.0ms | z |
| 102.0ms | t |
| 63.0ms | (*.f64 c i) |
| Error | Segments | Branch |
|---|---|---|
| 25.2b | 5 | x |
| 19.6b | 7 | y |
| 24.2b | 5 | z |
| 21.2b | 5 | t |
| 20.4b | 9 | a |
| 22.4b | 7 | b |
| 26.0b | 6 | c |
| 25.6b | 6 | i |
| 18.4b | 6 | (*.f64 a b) |
| 23.3b | 11 | (*.f64 c i) |
Compiled 137 to 96 computations (29.9% saved)
| 5× | binary-search |
| Time | Left | Right |
|---|---|---|
| 50.0ms | 3.1637184468039277e+98 | 3.8929459012354156e+105 |
| 68.0ms | 5.597765517608566e-22 | 2.6868928383781977e-20 |
| 193.0ms | 3.4524827158117685e-272 | 1.1709733278264379e-270 |
| 56.0ms | -2.295004615232815e-307 | -0.0 |
| 69.0ms | -1.2262941703047695e+137 | -2.3875713838198044e+132 |
Compiled 34 to 25 computations (26.5% saved)
| Inputs |
|---|
(*.f64 y x) |
(*.f64 y x) |
(*.f64 t z) |
(*.f64 a b) |
(*.f64 y x) |
(*.f64 c i) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
| Outputs |
|---|
(*.f64 a b) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(*.f64 y x) |
(+.f64 (*.f64 c i) (*.f64 t z)) |
(*.f64 a b) |
10 calls:
| 163.0ms | (*.f64 c i) |
| 124.0ms | (*.f64 a b) |
| 121.0ms | y |
| 108.0ms | x |
| 91.0ms | z |
| Error | Segments | Branch |
|---|---|---|
| 25.2b | 6 | x |
| 22.5b | 7 | y |
| 24.9b | 9 | z |
| 25.4b | 7 | t |
| 23.1b | 7 | a |
| 25.3b | 3 | b |
| 28.3b | 3 | c |
| 27.6b | 5 | i |
| 19.6b | 5 | (*.f64 a b) |
| 24.6b | 8 | (*.f64 c i) |
Compiled 130 to 95 computations (26.9% saved)
| 4× | binary-search |
| Time | Left | Right |
|---|---|---|
| 102.0ms | 3.1637184468039277e+98 | 3.8929459012354156e+105 |
| 64.0ms | 3.05383689775349e-5 | 3.6443751282281003 |
| 100.0ms | 5.597765517608566e-22 | 2.6868928383781977e-20 |
| 73.0ms | -1.2262941703047695e+137 | -2.3875713838198044e+132 |
Compiled 34 to 25 computations (26.5% saved)
| Inputs |
|---|
(*.f64 y x) |
(*.f64 y x) |
(*.f64 t z) |
(*.f64 a b) |
(*.f64 y x) |
(*.f64 c i) |
(*.f64 y x) |
| Outputs |
|---|
(*.f64 a b) |
(*.f64 t z) |
(*.f64 a b) |
(*.f64 c i) |
(*.f64 t z) |
(*.f64 c i) |
(*.f64 t z) |
(*.f64 y x) |
(*.f64 t z) |
(*.f64 y x) |
(*.f64 a b) |
10 calls:
| 122.0ms | (*.f64 c i) |
| 121.0ms | (*.f64 a b) |
| 113.0ms | a |
| 99.0ms | t |
| 73.0ms | z |
| Error | Segments | Branch |
|---|---|---|
| 33.6b | 8 | x |
| 34.7b | 5 | y |
| 32.5b | 9 | z |
| 32.2b | 7 | t |
| 30.4b | 12 | a |
| 31.9b | 9 | b |
| 34.3b | 8 | c |
| 35.2b | 6 | i |
| 28.8b | 11 | (*.f64 a b) |
| 29.2b | 9 | (*.f64 c i) |
Compiled 123 to 94 computations (23.6% saved)
| 10× | binary-search |
| Time | Left | Right |
|---|---|---|
| 27.0ms | 2.091612017628143e+77 | 5.0104663876806054e+82 |
| 24.0ms | 5.597765517608566e-22 | 2.6868928383781977e-20 |
| 29.0ms | 3.4524827158117685e-272 | 1.1709733278264379e-270 |
| 31.0ms | -2.295004615232815e-307 | -0.0 |
| 27.0ms | -2.2000216942998936e-160 | -3.326078565806741e-162 |
| 24.0ms | -1.1377419624280116e-120 | -2.0074670603190668e-125 |
| 25.0ms | -3.3717413330577254e-52 | -1.1661991896154851e-52 |
| 25.0ms | -1.7133184715305773e-7 | -1.9623525828821343e-10 |
| 26.0ms | -1.752068487092581e+41 | -3.6749257019570877e+39 |
| 25.0ms | -1.2262941703047695e+137 | -2.3875713838198044e+132 |
Compiled 34 to 25 computations (26.5% saved)
| Inputs |
|---|
(*.f64 y x) |
(*.f64 y x) |
(*.f64 t z) |
(*.f64 a b) |
(*.f64 y x) |
| Outputs |
|---|
(*.f64 a b) |
(*.f64 t z) |
(*.f64 a b) |
(*.f64 y x) |
(*.f64 a b) |
(*.f64 y x) |
(*.f64 t z) |
(*.f64 y x) |
(*.f64 t z) |
(*.f64 a b) |
9 calls:
| 39.0ms | a |
| 35.0ms | c |
| 35.0ms | b |
| 29.0ms | i |
| 28.0ms | z |
| Error | Segments | Branch |
|---|---|---|
| 36.7b | 4 | x |
| 34.7b | 5 | y |
| 35.2b | 7 | z |
| 33.9b | 6 | t |
| 31.6b | 10 | a |
| 33.3b | 9 | b |
| 38.3b | 8 | c |
| 39.2b | 6 | i |
| 31.8b | 6 | (*.f64 a b) |
Compiled 106 to 84 computations (20.8% saved)
| 9× | binary-search |
| Time | Left | Right |
|---|---|---|
| 27.0ms | 2.4726653561487757e-88 | 8.917716585468127e-83 |
| 27.0ms | 2.0538911176509357e-285 | 1.0987683304591856e-273 |
| 27.0ms | -2.732159090092539e-210 | -4.1291678961426904e-215 |
| 27.0ms | -196247603231.12012 | -4914500770.213065 |
| 28.0ms | -3.003169964668077e+34 | -1.3119995652070048e+32 |
| 148.0ms | -5.937846484319343e+74 | -2.1043782475157894e+74 |
| 99.0ms | -1.203259262785996e+97 | -1.2006644504659833e+95 |
| 36.0ms | -1.2925552901049052e+122 | -8.83208137738108e+121 |
| 73.0ms | -7.657313725444458e+176 | -2.3967054675912672e+169 |
Compiled 610 to 505 computations (17.2% saved)
| Inputs |
|---|
(*.f64 y x) |
(*.f64 y x) |
(*.f64 t z) |
| Outputs |
|---|
(*.f64 y x) |
(*.f64 t z) |
(*.f64 y x) |
8 calls:
| 22.0ms | z |
| 20.0ms | b |
| 17.0ms | i |
| 17.0ms | a |
| 14.0ms | y |
| Error | Segments | Branch |
|---|---|---|
| 40.5b | 3 | x |
| 36.4b | 3 | y |
| 38.5b | 5 | z |
| 36.5b | 3 | t |
| 40.8b | 5 | a |
| 40.4b | 6 | b |
| 41.3b | 4 | c |
| 41.4b | 5 | i |
Compiled 89 to 74 computations (16.9% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 27.0ms | 13320579269985864.0 | 9.211500350329284e+21 |
| 27.0ms | -1.2689455329832716e-85 | -2.3327680502088145e-91 |
Compiled 34 to 25 computations (26.5% saved)
Total -0.0b remaining (-0%)
Threshold costs -0.0b (-0%)
| Inputs |
|---|
(*.f64 y x) |
(*.f64 y x) |
| Outputs |
|---|
(*.f64 y x) |
8 calls:
| 5.0ms | c |
| 5.0ms | z |
| 3.0ms | y |
| 3.0ms | a |
| 3.0ms | i |
| Error | Segments | Branch |
|---|---|---|
| 48.6b | 1 | x |
| 48.6b | 1 | y |
| 48.6b | 1 | z |
| 48.6b | 1 | t |
| 48.6b | 1 | a |
| 48.6b | 1 | b |
| 48.6b | 1 | c |
| 48.6b | 1 | i |
Compiled 86 to 73 computations (15.1% saved)
| 1× | egg-herbie |
| 10× | +-commutative_binary64 |
| 4× | *-commutative_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 201 | 1302 |
| 1 | 216 | 1302 |
| 1× | fuel |
| 1× | saturated |
| Inputs |
|---|
(fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b)))) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i)) |
(if (<=.f64 (*.f64 a b) -6472734179549959/37778931862957161709568) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) (if (<=.f64 (*.f64 a b) 2653646149458805/4096) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))) |
(if (<=.f64 (*.f64 a b) -140332303685140056084842571785904986547726643732538145424172492362031747973915610630857644592188479569395712) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 (*.f64 a b) 316371844680392769046223323572550327618197839255580098149443383579813241630534559582217637294243840) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) (+.f64 (*.f64 x y) (*.f64 a b)))) |
(if (<=.f64 c -9999999999999999363587069377675917736425707327570073564839440723358156278052707548893386994586947577981035182609405692455150664165314335743772262409420005560181719702721238568128862437403998276353831973920663150777435958293799716241167969694049028276224) (+.f64 (*.f64 c i) (*.f64 t z)) (if (<=.f64 c -999999999999999980003468347394201181668805192897008518188648311830772414627428725464789434929992439754776075181077037056) (+.f64 (*.f64 a b) (*.f64 c i)) (if (<=.f64 c -74999999999999996728948283888863373093113435771199596858127251822957592490016768) (+.f64 (*.f64 y x) (*.f64 c i)) (if (<=.f64 c -44164046997078671684696066078688722110382080) (+.f64 (*.f64 x y) (*.f64 a b)) (if (<=.f64 c -8548337780160981/618970019642690137449562112) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 c -6093051511967245/50216813883093446110686315385661331328818843555712276103168) (+.f64 (*.f64 y x) (*.f64 c i)) (if (<=.f64 c -7958421507272197/307828173409331868845930000782371982852185463050511302093346042220669701339821957901673955116288403443801781174272) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 c -3933372687444635/44362715105933037753254626946289339254982993206013065202727673289833940924890009968639590497666233249558259375382457149263586525184) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 c -5852738693563439/5890680864316836766447387249177476247119386964598150177535756899376584320794655559932591384900650140340063891615625817543763223144510803885845624607194288107610698331745992221533871131893632012106238622173921469033288521558997823700137184806201826907368669534112523820726591354912103343876844956209126576528293888) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 c 3630759694781145/271942652322184754529069161754863937192751676276240344678115398758606622648756348282451201159797394262471336696958208519857448620878186106577674229128492724195241610667721328144244801536) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 c 237113954404655/11908525658859223294760121268437066290850060053501019099651935423375594096449911575776314174894302258147533153997065059263030913083222523904) (+.f64 (*.f64 a b) (*.f64 c i)) (if (<=.f64 c 2328722822908029/348449143727040986586495598010130648530944) (+.f64 (*.f64 y x) (*.f64 t z)) (+.f64 (*.f64 a b) (*.f64 c i)))))))))))))) |
(if (<=.f64 z -1100000000000000063472951381384528958674477003324228313943569225245646807038118668358096414989516629660925952) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 z -159999999999999991901941647531843018714183201762145611693424640) (+.f64 (*.f64 y x) (*.f64 c i)) (if (<=.f64 z -1582751570787505/43556142965880123323311949751266331066368) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 z -8302446146557259/18347988927920572092886567162416695526372519913346248989900710715095383008707878464560148424881005492436992) (+.f64 (*.f64 c i) (*.f64 t z)) (if (<=.f64 z -4406416933352037/1353842624082429130653522550851115089568572790710847937094960732721983060451965636249987502980536903367866802227247837807116288) (+.f64 (*.f64 x y) (*.f64 a b)) (if (<=.f64 z -8590049727408857/390218568789499028922699653724145788218574767833121393857394619953171467352470702515038262882936496394978366390175827861930996959911035663286272) (+.f64 (*.f64 c i) (*.f64 t z)) (if (<=.f64 z -8451054754624451/3414023389634485388328884116849283992138116261025744978122883999623187065762627620618973286846235796860380114223837819108295066446909114921146038298793384983600720680711175453933096082386848780661230088261573940214625662995187948181075905216512) (+.f64 (*.f64 x y) (*.f64 a b)) (if (<=.f64 z -6822308283278537/2876309015779705452366888305262439573788763166307690516374881298523722812888015410123335637158520576337921822077942293722540636301030665959885558890231585990044286294797847764420835513619937505911249327233360092301410410917479406103582609768653235794613608170953380771839155935015675460877365701273987586195456) (+.f64 (*.f64 y x) (*.f64 c i)) (if (<=.f64 z 6158655010318985/164379246923386672101280933840004020798448118838224183109321278220897879821783775691052079258674639100843217776755569303531857257818243870722744211582871276561100739722763893693489492433885084914727914116743168) (+.f64 (*.f64 x y) (*.f64 a b)) (if (<=.f64 z 6888868970386111/235872651551346334515097161311766805682307576276027526773512893765351510149509303255382920323603672971341773439422740306235661539370299539535089640714543502728087207936) (+.f64 (*.f64 c i) (*.f64 t z)) (if (<=.f64 z 3433391915809369/2772669694120814859578414184143083703436437075375816575170479580614621307805625623039974406104139578097391210961403571828974157824) (+.f64 (*.f64 x y) (*.f64 a b)) (if (<=.f64 z 7878998227229947/696898287454081973172991196020261297061888) (+.f64 (*.f64 c i) (*.f64 t z)) (+.f64 (*.f64 a b) (*.f64 t z)))))))))))))) |
(if (<=.f64 z -1100000000000000063472951381384528958674477003324228313943569225245646807038118668358096414989516629660925952) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 z -52000000000000001000882753953993170648344044213860137704266595176957345792) (+.f64 (*.f64 x y) (*.f64 a b)) (if (<=.f64 z -9575870123414639401407414167142400) (+.f64 (*.f64 c i) (*.f64 t z)) (if (<=.f64 z -582025291643974005555200) (+.f64 (*.f64 x y) (*.f64 a b)) (if (<=.f64 z -8302446146557259/18347988927920572092886567162416695526372519913346248989900710715095383008707878464560148424881005492436992) (+.f64 (*.f64 c i) (*.f64 t z)) (if (<=.f64 z -4406416933352037/1353842624082429130653522550851115089568572790710847937094960732721983060451965636249987502980536903367866802227247837807116288) (+.f64 (*.f64 x y) (*.f64 a b)) (if (<=.f64 z -8590049727408857/390218568789499028922699653724145788218574767833121393857394619953171467352470702515038262882936496394978366390175827861930996959911035663286272) (+.f64 (*.f64 c i) (*.f64 t z)) (if (<=.f64 z -8451054754624451/3414023389634485388328884116849283992138116261025744978122883999623187065762627620618973286846235796860380114223837819108295066446909114921146038298793384983600720680711175453933096082386848780661230088261573940214625662995187948181075905216512) (+.f64 (*.f64 x y) (*.f64 a b)) (if (<=.f64 z -6822308283278537/2876309015779705452366888305262439573788763166307690516374881298523722812888015410123335637158520576337921822077942293722540636301030665959885558890231585990044286294797847764420835513619937505911249327233360092301410410917479406103582609768653235794613608170953380771839155935015675460877365701273987586195456) (+.f64 (*.f64 y x) (*.f64 c i)) (if (<=.f64 z 6158655010318985/164379246923386672101280933840004020798448118838224183109321278220897879821783775691052079258674639100843217776755569303531857257818243870722744211582871276561100739722763893693489492433885084914727914116743168) (+.f64 (*.f64 x y) (*.f64 a b)) (if (<=.f64 z 6888868970386111/235872651551346334515097161311766805682307576276027526773512893765351510149509303255382920323603672971341773439422740306235661539370299539535089640714543502728087207936) (+.f64 (*.f64 c i) (*.f64 t z)) (if (<=.f64 z 3433391915809369/2772669694120814859578414184143083703436437075375816575170479580614621307805625623039974406104139578097391210961403571828974157824) (+.f64 (*.f64 x y) (*.f64 a b)) (if (<=.f64 z 7878998227229947/696898287454081973172991196020261297061888) (+.f64 (*.f64 c i) (*.f64 t z)) (+.f64 (*.f64 a b) (*.f64 t z))))))))))))))) |
(if (<=.f64 (*.f64 a b) -6472734179549959/37778931862957161709568) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 (*.f64 a b) -2903213159211245/12650140831706913647030959169932331690597290610258882397306334876714396222999709180747523981339820280949192366519800744461863046086612092304188337496296156870094839017285397585279181733880826021327485479904546566785125467714043293663631459728072472271300628532022423097020838413451906408261645469290375391456731733818343424) (+.f64 (*.f64 c i) (*.f64 t z)) (if (<=.f64 (*.f64 a b) 2628556889415371/76135265714062492815260799905274908678720522324960996303655519196976161646612703925512617702203205150197694658057880220183274764571899172238890525752442604840088107030909945545865544183516044127756246824056393584950668733792147460513643465745851293850216709399252168336576785859311828992) (+.f64 (*.f64 y x) (*.f64 c i)) (if (<=.f64 (*.f64 a b) 5952565311875797/10633823966279326983230456482242756608) (+.f64 (*.f64 c i) (*.f64 t z)) (if (<=.f64 (*.f64 a b) 2653646149458805/4096) (+.f64 (*.f64 y x) (*.f64 c i)) (+.f64 (*.f64 a b) (*.f64 t z))))))) |
(if (<=.f64 (*.f64 a b) -122629417030476946694103263219526235565963714681842482060770573077471772883160572189466529871905866357496234595216452318068565113183404032) (*.f64 a b) (if (<=.f64 (*.f64 a b) -2903213159211245/12650140831706913647030959169932331690597290610258882397306334876714396222999709180747523981339820280949192366519800744461863046086612092304188337496296156870094839017285397585279181733880826021327485479904546566785125467714043293663631459728072472271300628532022423097020838413451906408261645469290375391456731733818343424) (+.f64 (*.f64 c i) (*.f64 t z)) (if (<=.f64 (*.f64 a b) 2628556889415371/76135265714062492815260799905274908678720522324960996303655519196976161646612703925512617702203205150197694658057880220183274764571899172238890525752442604840088107030909945545865544183516044127756246824056393584950668733792147460513643465745851293850216709399252168336576785859311828992) (+.f64 (*.f64 y x) (*.f64 c i)) (if (<=.f64 (*.f64 a b) 5952565311875797/10633823966279326983230456482242756608) (+.f64 (*.f64 c i) (*.f64 t z)) (if (<=.f64 (*.f64 a b) 316371844680392769046223323572550327618197839255580098149443383579813241630534559582217637294243840) (+.f64 (*.f64 y x) (*.f64 c i)) (*.f64 a b)))))) |
(if (<=.f64 (*.f64 a b) -122629417030476946694103263219526235565963714681842482060770573077471772883160572189466529871905866357496234595216452318068565113183404032) (*.f64 a b) (if (<=.f64 (*.f64 a b) 5952565311875797/10633823966279326983230456482242756608) (+.f64 (*.f64 c i) (*.f64 t z)) (if (<=.f64 (*.f64 a b) 1126666953914195/36893488147419103232) (*.f64 y x) (if (<=.f64 (*.f64 a b) 316371844680392769046223323572550327618197839255580098149443383579813241630534559582217637294243840) (+.f64 (*.f64 c i) (*.f64 t z)) (*.f64 a b))))) |
(if (<=.f64 (*.f64 a b) -122629417030476946694103263219526235565963714681842482060770573077471772883160572189466529871905866357496234595216452318068565113183404032) (*.f64 a b) (if (<=.f64 (*.f64 a b) -175206848709258098322996381766423161077760) (*.f64 t z) (if (<=.f64 (*.f64 a b) -6472734179549959/37778931862957161709568) (*.f64 a b) (if (<=.f64 (*.f64 a b) -71017161339581/210624583337114373395836055367340864637790190801098222508621955072) (*.f64 c i) (if (<=.f64 (*.f64 a b) -3307819666195025/2907354897182427562197295231552018137414565442749272241125960796722557152453591693304764202855054262243050086425064711734138406514458624) (*.f64 t z) (if (<=.f64 (*.f64 a b) -3482446392964687/15829145694278690179872161345257420162248406342477557754500035589945422406818039498900249667919554879334250971265032917718487362195632077437922953926521162746662833417516744704) (*.f64 c i) (if (<=.f64 (*.f64 a b) -2903213159211245/12650140831706913647030959169932331690597290610258882397306334876714396222999709180747523981339820280949192366519800744461863046086612092304188337496296156870094839017285397585279181733880826021327485479904546566785125467714043293663631459728072472271300628532022423097020838413451906408261645469290375391456731733818343424) (*.f64 t z) (if (<=.f64 (*.f64 a b) 2628556889415371/76135265714062492815260799905274908678720522324960996303655519196976161646612703925512617702203205150197694658057880220183274764571899172238890525752442604840088107030909945545865544183516044127756246824056393584950668733792147460513643465745851293850216709399252168336576785859311828992) (*.f64 y x) (if (<=.f64 (*.f64 a b) 5952565311875797/10633823966279326983230456482242756608) (*.f64 t z) (if (<=.f64 (*.f64 a b) 209161201762814288145875956872184458043403247722029418633231477284506339115008) (*.f64 y x) (*.f64 a b))))))))))) |
(if (<=.f64 a -749999999999999949350312944765785133449764857862592168398517927210521975591417462549820148886831914818340625653452770338782692455596140847214601237158433015215964412205781221376) (*.f64 a b) (if (<=.f64 a -90000000000000006800931961228246274890770824743556794624097057445823731332426732992791834475517349840499420929268257914880) (*.f64 t z) (if (<=.f64 a -12000000000000000124055450146859579749176467229675875251904857976880110483573405688201329179099136) (*.f64 a b) (if (<=.f64 a -215000000000000000275433395533360523974013614679511620983498918080706248704) (*.f64 y x) (if (<=.f64 a -30031699646680768373111535599353856) (*.f64 a b) (if (<=.f64 a -200957545708667/1024) (*.f64 y x) (if (<=.f64 a -4045225542461881/1480596630383213935040454376661779933220754639736839877261211431528140022932412039118650826290747144651878100106364319997951107067217649833149230265656644000248389221211290269422784124023054547143233298486439198256390425542656) (*.f64 t z) (if (<=.f64 a 343869064185375/167423219872854268898191413915625282900219501828989626163085998182867351738271269139562246689952477832436667643367679191435491450889424069312259024604665231311477621481628609147204290704099549091843034096141351171618467832303105743111961624157454108040174944963852221369694216119572256044331338563584) (*.f64 y x) (if (<=.f64 a 8861022768959085/35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852416) (*.f64 t z) (*.f64 a b)))))))))) |
(if (<=.f64 y -2220401629382261/17498005798264095394980017816940970922825355447145699491406164851279623993595007385788105416184430592) (*.f64 y x) (if (<=.f64 y 13320579269985864) (*.f64 t z) (*.f64 y x))) |
(*.f64 y x) |
| Outputs |
|---|
(fma.f64 x y (fma.f64 z t (fma.f64 c i (*.f64 a b)))) |
(+.f64 (+.f64 (+.f64 (*.f64 x y) (*.f64 z t)) (*.f64 a b)) (*.f64 c i)) |
(+.f64 (*.f64 c i) (+.f64 (*.f64 a b) (+.f64 (*.f64 x y) (*.f64 z t)))) |
(if (<=.f64 (*.f64 a b) -6472734179549959/37778931862957161709568) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))) (if (<=.f64 (*.f64 a b) 2653646149458805/4096) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) (+.f64 (*.f64 a b) (+.f64 (*.f64 y x) (*.f64 t z))))) |
(if (<=.f64 (*.f64 a b) -6472734179549959/37778931862957161709568) (+.f64 (*.f64 a b) (+.f64 (*.f64 x y) (*.f64 z t))) (if (<=.f64 (*.f64 a b) 2653646149458805/4096) (+.f64 (*.f64 c i) (+.f64 (*.f64 x y) (*.f64 z t))) (+.f64 (*.f64 a b) (+.f64 (*.f64 x y) (*.f64 z t))))) |
(if (<=.f64 (*.f64 a b) -140332303685140056084842571785904986547726643732538145424172492362031747973915610630857644592188479569395712) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 (*.f64 a b) 316371844680392769046223323572550327618197839255580098149443383579813241630534559582217637294243840) (+.f64 (*.f64 c i) (+.f64 (*.f64 y x) (*.f64 t z))) (+.f64 (*.f64 x y) (*.f64 a b)))) |
(if (<=.f64 (*.f64 a b) -140332303685140056084842571785904986547726643732538145424172492362031747973915610630857644592188479569395712) (+.f64 (*.f64 a b) (*.f64 z t)) (if (<=.f64 (*.f64 a b) 316371844680392769046223323572550327618197839255580098149443383579813241630534559582217637294243840) (+.f64 (*.f64 c i) (+.f64 (*.f64 x y) (*.f64 z t))) (+.f64 (*.f64 a b) (*.f64 x y)))) |
(if (<=.f64 c -9999999999999999363587069377675917736425707327570073564839440723358156278052707548893386994586947577981035182609405692455150664165314335743772262409420005560181719702721238568128862437403998276353831973920663150777435958293799716241167969694049028276224) (+.f64 (*.f64 c i) (*.f64 t z)) (if (<=.f64 c -999999999999999980003468347394201181668805192897008518188648311830772414627428725464789434929992439754776075181077037056) (+.f64 (*.f64 a b) (*.f64 c i)) (if (<=.f64 c -74999999999999996728948283888863373093113435771199596858127251822957592490016768) (+.f64 (*.f64 y x) (*.f64 c i)) (if (<=.f64 c -44164046997078671684696066078688722110382080) (+.f64 (*.f64 x y) (*.f64 a b)) (if (<=.f64 c -8548337780160981/618970019642690137449562112) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 c -6093051511967245/50216813883093446110686315385661331328818843555712276103168) (+.f64 (*.f64 y x) (*.f64 c i)) (if (<=.f64 c -7958421507272197/307828173409331868845930000782371982852185463050511302093346042220669701339821957901673955116288403443801781174272) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 c -3933372687444635/44362715105933037753254626946289339254982993206013065202727673289833940924890009968639590497666233249558259375382457149263586525184) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 c -5852738693563439/5890680864316836766447387249177476247119386964598150177535756899376584320794655559932591384900650140340063891615625817543763223144510803885845624607194288107610698331745992221533871131893632012106238622173921469033288521558997823700137184806201826907368669534112523820726591354912103343876844956209126576528293888) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 c 3630759694781145/271942652322184754529069161754863937192751676276240344678115398758606622648756348282451201159797394262471336696958208519857448620878186106577674229128492724195241610667721328144244801536) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 c 237113954404655/11908525658859223294760121268437066290850060053501019099651935423375594096449911575776314174894302258147533153997065059263030913083222523904) (+.f64 (*.f64 a b) (*.f64 c i)) (if (<=.f64 c 2328722822908029/348449143727040986586495598010130648530944) (+.f64 (*.f64 y x) (*.f64 t z)) (+.f64 (*.f64 a b) (*.f64 c i)))))))))))))) |
(if (<=.f64 c -9999999999999999363587069377675917736425707327570073564839440723358156278052707548893386994586947577981035182609405692455150664165314335743772262409420005560181719702721238568128862437403998276353831973920663150777435958293799716241167969694049028276224) (+.f64 (*.f64 c i) (*.f64 z t)) (if (<=.f64 c -999999999999999980003468347394201181668805192897008518188648311830772414627428725464789434929992439754776075181077037056) (+.f64 (*.f64 a b) (*.f64 c i)) (if (<=.f64 c -74999999999999996728948283888863373093113435771199596858127251822957592490016768) (+.f64 (*.f64 c i) (*.f64 x y)) (if (<=.f64 c -44164046997078671684696066078688722110382080) (+.f64 (*.f64 a b) (*.f64 x y)) (if (<=.f64 c -8548337780160981/618970019642690137449562112) (+.f64 (*.f64 a b) (*.f64 z t)) (if (<=.f64 c -6093051511967245/50216813883093446110686315385661331328818843555712276103168) (+.f64 (*.f64 c i) (*.f64 x y)) (if (<=.f64 c -7958421507272197/307828173409331868845930000782371982852185463050511302093346042220669701339821957901673955116288403443801781174272) (+.f64 (*.f64 a b) (*.f64 z t)) (if (<=.f64 c -3933372687444635/44362715105933037753254626946289339254982993206013065202727673289833940924890009968639590497666233249558259375382457149263586525184) (+.f64 (*.f64 x y) (*.f64 z t)) (if (<=.f64 c -5852738693563439/5890680864316836766447387249177476247119386964598150177535756899376584320794655559932591384900650140340063891615625817543763223144510803885845624607194288107610698331745992221533871131893632012106238622173921469033288521558997823700137184806201826907368669534112523820726591354912103343876844956209126576528293888) (+.f64 (*.f64 a b) (*.f64 z t)) (if (<=.f64 c 3630759694781145/271942652322184754529069161754863937192751676276240344678115398758606622648756348282451201159797394262471336696958208519857448620878186106577674229128492724195241610667721328144244801536) (+.f64 (*.f64 x y) (*.f64 z t)) (if (<=.f64 c 237113954404655/11908525658859223294760121268437066290850060053501019099651935423375594096449911575776314174894302258147533153997065059263030913083222523904) (+.f64 (*.f64 a b) (*.f64 c i)) (if (<=.f64 c 2328722822908029/348449143727040986586495598010130648530944) (+.f64 (*.f64 x y) (*.f64 z t)) (+.f64 (*.f64 a b) (*.f64 c i)))))))))))))) |
(if (<=.f64 z -1100000000000000063472951381384528958674477003324228313943569225245646807038118668358096414989516629660925952) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 z -159999999999999991901941647531843018714183201762145611693424640) (+.f64 (*.f64 y x) (*.f64 c i)) (if (<=.f64 z -1582751570787505/43556142965880123323311949751266331066368) (+.f64 (*.f64 y x) (*.f64 t z)) (if (<=.f64 z -8302446146557259/18347988927920572092886567162416695526372519913346248989900710715095383008707878464560148424881005492436992) (+.f64 (*.f64 c i) (*.f64 t z)) (if (<=.f64 z -4406416933352037/1353842624082429130653522550851115089568572790710847937094960732721983060451965636249987502980536903367866802227247837807116288) (+.f64 (*.f64 x y) (*.f64 a b)) (if (<=.f64 z -8590049727408857/390218568789499028922699653724145788218574767833121393857394619953171467352470702515038262882936496394978366390175827861930996959911035663286272) (+.f64 (*.f64 c i) (*.f64 t z)) (if (<=.f64 z -8451054754624451/3414023389634485388328884116849283992138116261025744978122883999623187065762627620618973286846235796860380114223837819108295066446909114921146038298793384983600720680711175453933096082386848780661230088261573940214625662995187948181075905216512) (+.f64 (*.f64 x y) (*.f64 a b)) (if (<=.f64 z -6822308283278537/2876309015779705452366888305262439573788763166307690516374881298523722812888015410123335637158520576337921822077942293722540636301030665959885558890231585990044286294797847764420835513619937505911249327233360092301410410917479406103582609768653235794613608170953380771839155935015675460877365701273987586195456) (+.f64 (*.f64 y x) (*.f64 c i)) (if (<=.f64 z 6158655010318985/164379246923386672101280933840004020798448118838224183109321278220897879821783775691052079258674639100843217776755569303531857257818243870722744211582871276561100739722763893693489492433885084914727914116743168) (+.f64 (*.f64 x y) (*.f64 a b)) (if (<=.f64 z 6888868970386111/235872651551346334515097161311766805682307576276027526773512893765351510149509303255382920323603672971341773439422740306235661539370299539535089640714543502728087207936) (+.f64 (*.f64 c i) (*.f64 t z)) (if (<=.f64 z 3433391915809369/2772669694120814859578414184143083703436437075375816575170479580614621307805625623039974406104139578097391210961403571828974157824) (+.f64 (*.f64 x y) (*.f64 a b)) (if (<=.f64 z 7878998227229947/696898287454081973172991196020261297061888) (+.f64 (*.f64 c i) (*.f64 t z)) (+.f64 (*.f64 a b) (*.f64 t z)))))))))))))) |
(if (<=.f64 z -1100000000000000063472951381384528958674477003324228313943569225245646807038118668358096414989516629660925952) (+.f64 (*.f64 a b) (*.f64 z t)) (if (<=.f64 z -159999999999999991901941647531843018714183201762145611693424640) (+.f64 (*.f64 c i) (*.f64 x y)) (if (<=.f64 z -1582751570787505/43556142965880123323311949751266331066368) (+.f64 (*.f64 x y) (*.f64 z t)) (if (<=.f64 z -8302446146557259/18347988927920572092886567162416695526372519913346248989900710715095383008707878464560148424881005492436992) (+.f64 (*.f64 c i) (*.f64 z t)) (if (<=.f64 z -4406416933352037/1353842624082429130653522550851115089568572790710847937094960732721983060451965636249987502980536903367866802227247837807116288) (+.f64 (*.f64 a b) (*.f64 x y)) (if (<=.f64 z -8590049727408857/390218568789499028922699653724145788218574767833121393857394619953171467352470702515038262882936496394978366390175827861930996959911035663286272) (+.f64 (*.f64 c i) (*.f64 z t)) (if (<=.f64 z -8451054754624451/3414023389634485388328884116849283992138116261025744978122883999623187065762627620618973286846235796860380114223837819108295066446909114921146038298793384983600720680711175453933096082386848780661230088261573940214625662995187948181075905216512) (+.f64 (*.f64 a b) (*.f64 x y)) (if (<=.f64 z -6822308283278537/2876309015779705452366888305262439573788763166307690516374881298523722812888015410123335637158520576337921822077942293722540636301030665959885558890231585990044286294797847764420835513619937505911249327233360092301410410917479406103582609768653235794613608170953380771839155935015675460877365701273987586195456) (+.f64 (*.f64 c i) (*.f64 x y)) (if (<=.f64 z 6158655010318985/164379246923386672101280933840004020798448118838224183109321278220897879821783775691052079258674639100843217776755569303531857257818243870722744211582871276561100739722763893693489492433885084914727914116743168) (+.f64 (*.f64 a b) (*.f64 x y)) (if (<=.f64 z 6888868970386111/235872651551346334515097161311766805682307576276027526773512893765351510149509303255382920323603672971341773439422740306235661539370299539535089640714543502728087207936) (+.f64 (*.f64 c i) (*.f64 z t)) (if (<=.f64 z 3433391915809369/2772669694120814859578414184143083703436437075375816575170479580614621307805625623039974406104139578097391210961403571828974157824) (+.f64 (*.f64 a b) (*.f64 x y)) (if (<=.f64 z 7878998227229947/696898287454081973172991196020261297061888) (+.f64 (*.f64 c i) (*.f64 z t)) (+.f64 (*.f64 a b) (*.f64 z t)))))))))))))) |
(if (<=.f64 z -1100000000000000063472951381384528958674477003324228313943569225245646807038118668358096414989516629660925952) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 z -52000000000000001000882753953993170648344044213860137704266595176957345792) (+.f64 (*.f64 x y) (*.f64 a b)) (if (<=.f64 z -9575870123414639401407414167142400) (+.f64 (*.f64 c i) (*.f64 t z)) (if (<=.f64 z -582025291643974005555200) (+.f64 (*.f64 x y) (*.f64 a b)) (if (<=.f64 z -8302446146557259/18347988927920572092886567162416695526372519913346248989900710715095383008707878464560148424881005492436992) (+.f64 (*.f64 c i) (*.f64 t z)) (if (<=.f64 z -4406416933352037/1353842624082429130653522550851115089568572790710847937094960732721983060451965636249987502980536903367866802227247837807116288) (+.f64 (*.f64 x y) (*.f64 a b)) (if (<=.f64 z -8590049727408857/390218568789499028922699653724145788218574767833121393857394619953171467352470702515038262882936496394978366390175827861930996959911035663286272) (+.f64 (*.f64 c i) (*.f64 t z)) (if (<=.f64 z -8451054754624451/3414023389634485388328884116849283992138116261025744978122883999623187065762627620618973286846235796860380114223837819108295066446909114921146038298793384983600720680711175453933096082386848780661230088261573940214625662995187948181075905216512) (+.f64 (*.f64 x y) (*.f64 a b)) (if (<=.f64 z -6822308283278537/2876309015779705452366888305262439573788763166307690516374881298523722812888015410123335637158520576337921822077942293722540636301030665959885558890231585990044286294797847764420835513619937505911249327233360092301410410917479406103582609768653235794613608170953380771839155935015675460877365701273987586195456) (+.f64 (*.f64 y x) (*.f64 c i)) (if (<=.f64 z 6158655010318985/164379246923386672101280933840004020798448118838224183109321278220897879821783775691052079258674639100843217776755569303531857257818243870722744211582871276561100739722763893693489492433885084914727914116743168) (+.f64 (*.f64 x y) (*.f64 a b)) (if (<=.f64 z 6888868970386111/235872651551346334515097161311766805682307576276027526773512893765351510149509303255382920323603672971341773439422740306235661539370299539535089640714543502728087207936) (+.f64 (*.f64 c i) (*.f64 t z)) (if (<=.f64 z 3433391915809369/2772669694120814859578414184143083703436437075375816575170479580614621307805625623039974406104139578097391210961403571828974157824) (+.f64 (*.f64 x y) (*.f64 a b)) (if (<=.f64 z 7878998227229947/696898287454081973172991196020261297061888) (+.f64 (*.f64 c i) (*.f64 t z)) (+.f64 (*.f64 a b) (*.f64 t z))))))))))))))) |
(if (<=.f64 z -1100000000000000063472951381384528958674477003324228313943569225245646807038118668358096414989516629660925952) (+.f64 (*.f64 a b) (*.f64 z t)) (if (<=.f64 z -52000000000000001000882753953993170648344044213860137704266595176957345792) (+.f64 (*.f64 a b) (*.f64 x y)) (if (<=.f64 z -9575870123414639401407414167142400) (+.f64 (*.f64 c i) (*.f64 z t)) (if (<=.f64 z -582025291643974005555200) (+.f64 (*.f64 a b) (*.f64 x y)) (if (<=.f64 z -8302446146557259/18347988927920572092886567162416695526372519913346248989900710715095383008707878464560148424881005492436992) (+.f64 (*.f64 c i) (*.f64 z t)) (if (<=.f64 z -4406416933352037/1353842624082429130653522550851115089568572790710847937094960732721983060451965636249987502980536903367866802227247837807116288) (+.f64 (*.f64 a b) (*.f64 x y)) (if (<=.f64 z -8590049727408857/390218568789499028922699653724145788218574767833121393857394619953171467352470702515038262882936496394978366390175827861930996959911035663286272) (+.f64 (*.f64 c i) (*.f64 z t)) (if (<=.f64 z -8451054754624451/3414023389634485388328884116849283992138116261025744978122883999623187065762627620618973286846235796860380114223837819108295066446909114921146038298793384983600720680711175453933096082386848780661230088261573940214625662995187948181075905216512) (+.f64 (*.f64 a b) (*.f64 x y)) (if (<=.f64 z -6822308283278537/2876309015779705452366888305262439573788763166307690516374881298523722812888015410123335637158520576337921822077942293722540636301030665959885558890231585990044286294797847764420835513619937505911249327233360092301410410917479406103582609768653235794613608170953380771839155935015675460877365701273987586195456) (+.f64 (*.f64 c i) (*.f64 x y)) (if (<=.f64 z 6158655010318985/164379246923386672101280933840004020798448118838224183109321278220897879821783775691052079258674639100843217776755569303531857257818243870722744211582871276561100739722763893693489492433885084914727914116743168) (+.f64 (*.f64 a b) (*.f64 x y)) (if (<=.f64 z 6888868970386111/235872651551346334515097161311766805682307576276027526773512893765351510149509303255382920323603672971341773439422740306235661539370299539535089640714543502728087207936) (+.f64 (*.f64 c i) (*.f64 z t)) (if (<=.f64 z 3433391915809369/2772669694120814859578414184143083703436437075375816575170479580614621307805625623039974406104139578097391210961403571828974157824) (+.f64 (*.f64 a b) (*.f64 x y)) (if (<=.f64 z 7878998227229947/696898287454081973172991196020261297061888) (+.f64 (*.f64 c i) (*.f64 z t)) (+.f64 (*.f64 a b) (*.f64 z t))))))))))))))) |
(if (<=.f64 (*.f64 a b) -6472734179549959/37778931862957161709568) (+.f64 (*.f64 a b) (*.f64 t z)) (if (<=.f64 (*.f64 a b) -2903213159211245/12650140831706913647030959169932331690597290610258882397306334876714396222999709180747523981339820280949192366519800744461863046086612092304188337496296156870094839017285397585279181733880826021327485479904546566785125467714043293663631459728072472271300628532022423097020838413451906408261645469290375391456731733818343424) (+.f64 (*.f64 c i) (*.f64 t z)) (if (<=.f64 (*.f64 a b) 2628556889415371/76135265714062492815260799905274908678720522324960996303655519196976161646612703925512617702203205150197694658057880220183274764571899172238890525752442604840088107030909945545865544183516044127756246824056393584950668733792147460513643465745851293850216709399252168336576785859311828992) (+.f64 (*.f64 y x) (*.f64 c i)) (if (<=.f64 (*.f64 a b) 5952565311875797/10633823966279326983230456482242756608) (+.f64 (*.f64 c i) (*.f64 t z)) (if (<=.f64 (*.f64 a b) 2653646149458805/4096) (+.f64 (*.f64 y x) (*.f64 c i)) (+.f64 (*.f64 a b) (*.f64 t z))))))) |
(if (<=.f64 (*.f64 a b) -6472734179549959/37778931862957161709568) (+.f64 (*.f64 a b) (*.f64 z t)) (if (<=.f64 (*.f64 a b) -2903213159211245/12650140831706913647030959169932331690597290610258882397306334876714396222999709180747523981339820280949192366519800744461863046086612092304188337496296156870094839017285397585279181733880826021327485479904546566785125467714043293663631459728072472271300628532022423097020838413451906408261645469290375391456731733818343424) (+.f64 (*.f64 c i) (*.f64 z t)) (if (<=.f64 (*.f64 a b) 2628556889415371/76135265714062492815260799905274908678720522324960996303655519196976161646612703925512617702203205150197694658057880220183274764571899172238890525752442604840088107030909945545865544183516044127756246824056393584950668733792147460513643465745851293850216709399252168336576785859311828992) (+.f64 (*.f64 c i) (*.f64 x y)) (if (<=.f64 (*.f64 a b) 5952565311875797/10633823966279326983230456482242756608) (+.f64 (*.f64 c i) (*.f64 z t)) (if (<=.f64 (*.f64 a b) 2653646149458805/4096) (+.f64 (*.f64 c i) (*.f64 x y)) (+.f64 (*.f64 a b) (*.f64 z t))))))) |
(if (<=.f64 (*.f64 a b) -122629417030476946694103263219526235565963714681842482060770573077471772883160572189466529871905866357496234595216452318068565113183404032) (*.f64 a b) (if (<=.f64 (*.f64 a b) -2903213159211245/12650140831706913647030959169932331690597290610258882397306334876714396222999709180747523981339820280949192366519800744461863046086612092304188337496296156870094839017285397585279181733880826021327485479904546566785125467714043293663631459728072472271300628532022423097020838413451906408261645469290375391456731733818343424) (+.f64 (*.f64 c i) (*.f64 t z)) (if (<=.f64 (*.f64 a b) 2628556889415371/76135265714062492815260799905274908678720522324960996303655519196976161646612703925512617702203205150197694658057880220183274764571899172238890525752442604840088107030909945545865544183516044127756246824056393584950668733792147460513643465745851293850216709399252168336576785859311828992) (+.f64 (*.f64 y x) (*.f64 c i)) (if (<=.f64 (*.f64 a b) 5952565311875797/10633823966279326983230456482242756608) (+.f64 (*.f64 c i) (*.f64 t z)) (if (<=.f64 (*.f64 a b) 316371844680392769046223323572550327618197839255580098149443383579813241630534559582217637294243840) (+.f64 (*.f64 y x) (*.f64 c i)) (*.f64 a b)))))) |
(if (<=.f64 (*.f64 a b) -122629417030476946694103263219526235565963714681842482060770573077471772883160572189466529871905866357496234595216452318068565113183404032) (*.f64 a b) (if (<=.f64 (*.f64 a b) -2903213159211245/12650140831706913647030959169932331690597290610258882397306334876714396222999709180747523981339820280949192366519800744461863046086612092304188337496296156870094839017285397585279181733880826021327485479904546566785125467714043293663631459728072472271300628532022423097020838413451906408261645469290375391456731733818343424) (+.f64 (*.f64 c i) (*.f64 z t)) (if (<=.f64 (*.f64 a b) 2628556889415371/76135265714062492815260799905274908678720522324960996303655519196976161646612703925512617702203205150197694658057880220183274764571899172238890525752442604840088107030909945545865544183516044127756246824056393584950668733792147460513643465745851293850216709399252168336576785859311828992) (+.f64 (*.f64 c i) (*.f64 x y)) (if (<=.f64 (*.f64 a b) 5952565311875797/10633823966279326983230456482242756608) (+.f64 (*.f64 c i) (*.f64 z t)) (if (<=.f64 (*.f64 a b) 316371844680392769046223323572550327618197839255580098149443383579813241630534559582217637294243840) (+.f64 (*.f64 c i) (*.f64 x y)) (*.f64 a b)))))) |
(if (<=.f64 (*.f64 a b) -122629417030476946694103263219526235565963714681842482060770573077471772883160572189466529871905866357496234595216452318068565113183404032) (*.f64 a b) (if (<=.f64 (*.f64 a b) 5952565311875797/10633823966279326983230456482242756608) (+.f64 (*.f64 c i) (*.f64 t z)) (if (<=.f64 (*.f64 a b) 1126666953914195/36893488147419103232) (*.f64 y x) (if (<=.f64 (*.f64 a b) 316371844680392769046223323572550327618197839255580098149443383579813241630534559582217637294243840) (+.f64 (*.f64 c i) (*.f64 t z)) (*.f64 a b))))) |
(if (<=.f64 (*.f64 a b) -122629417030476946694103263219526235565963714681842482060770573077471772883160572189466529871905866357496234595216452318068565113183404032) (*.f64 a b) (if (<=.f64 (*.f64 a b) 5952565311875797/10633823966279326983230456482242756608) (+.f64 (*.f64 c i) (*.f64 z t)) (if (<=.f64 (*.f64 a b) 1126666953914195/36893488147419103232) (*.f64 x y) (if (<=.f64 (*.f64 a b) 316371844680392769046223323572550327618197839255580098149443383579813241630534559582217637294243840) (+.f64 (*.f64 c i) (*.f64 z t)) (*.f64 a b))))) |
(if (<=.f64 (*.f64 a b) -122629417030476946694103263219526235565963714681842482060770573077471772883160572189466529871905866357496234595216452318068565113183404032) (*.f64 a b) (if (<=.f64 (*.f64 a b) -175206848709258098322996381766423161077760) (*.f64 t z) (if (<=.f64 (*.f64 a b) -6472734179549959/37778931862957161709568) (*.f64 a b) (if (<=.f64 (*.f64 a b) -71017161339581/210624583337114373395836055367340864637790190801098222508621955072) (*.f64 c i) (if (<=.f64 (*.f64 a b) -3307819666195025/2907354897182427562197295231552018137414565442749272241125960796722557152453591693304764202855054262243050086425064711734138406514458624) (*.f64 t z) (if (<=.f64 (*.f64 a b) -3482446392964687/15829145694278690179872161345257420162248406342477557754500035589945422406818039498900249667919554879334250971265032917718487362195632077437922953926521162746662833417516744704) (*.f64 c i) (if (<=.f64 (*.f64 a b) -2903213159211245/12650140831706913647030959169932331690597290610258882397306334876714396222999709180747523981339820280949192366519800744461863046086612092304188337496296156870094839017285397585279181733880826021327485479904546566785125467714043293663631459728072472271300628532022423097020838413451906408261645469290375391456731733818343424) (*.f64 t z) (if (<=.f64 (*.f64 a b) 2628556889415371/76135265714062492815260799905274908678720522324960996303655519196976161646612703925512617702203205150197694658057880220183274764571899172238890525752442604840088107030909945545865544183516044127756246824056393584950668733792147460513643465745851293850216709399252168336576785859311828992) (*.f64 y x) (if (<=.f64 (*.f64 a b) 5952565311875797/10633823966279326983230456482242756608) (*.f64 t z) (if (<=.f64 (*.f64 a b) 209161201762814288145875956872184458043403247722029418633231477284506339115008) (*.f64 y x) (*.f64 a b))))))))))) |
(if (<=.f64 (*.f64 a b) -122629417030476946694103263219526235565963714681842482060770573077471772883160572189466529871905866357496234595216452318068565113183404032) (*.f64 a b) (if (<=.f64 (*.f64 a b) -175206848709258098322996381766423161077760) (*.f64 z t) (if (<=.f64 (*.f64 a b) -6472734179549959/37778931862957161709568) (*.f64 a b) (if (<=.f64 (*.f64 a b) -71017161339581/210624583337114373395836055367340864637790190801098222508621955072) (*.f64 c i) (if (<=.f64 (*.f64 a b) -3307819666195025/2907354897182427562197295231552018137414565442749272241125960796722557152453591693304764202855054262243050086425064711734138406514458624) (*.f64 z t) (if (<=.f64 (*.f64 a b) -3482446392964687/15829145694278690179872161345257420162248406342477557754500035589945422406818039498900249667919554879334250971265032917718487362195632077437922953926521162746662833417516744704) (*.f64 c i) (if (<=.f64 (*.f64 a b) -2903213159211245/12650140831706913647030959169932331690597290610258882397306334876714396222999709180747523981339820280949192366519800744461863046086612092304188337496296156870094839017285397585279181733880826021327485479904546566785125467714043293663631459728072472271300628532022423097020838413451906408261645469290375391456731733818343424) (*.f64 z t) (if (<=.f64 (*.f64 a b) 2628556889415371/76135265714062492815260799905274908678720522324960996303655519196976161646612703925512617702203205150197694658057880220183274764571899172238890525752442604840088107030909945545865544183516044127756246824056393584950668733792147460513643465745851293850216709399252168336576785859311828992) (*.f64 x y) (if (<=.f64 (*.f64 a b) 5952565311875797/10633823966279326983230456482242756608) (*.f64 z t) (if (<=.f64 (*.f64 a b) 209161201762814288145875956872184458043403247722029418633231477284506339115008) (*.f64 x y) (*.f64 a b))))))))))) |
(if (<=.f64 a -749999999999999949350312944765785133449764857862592168398517927210521975591417462549820148886831914818340625653452770338782692455596140847214601237158433015215964412205781221376) (*.f64 a b) (if (<=.f64 a -90000000000000006800931961228246274890770824743556794624097057445823731332426732992791834475517349840499420929268257914880) (*.f64 t z) (if (<=.f64 a -12000000000000000124055450146859579749176467229675875251904857976880110483573405688201329179099136) (*.f64 a b) (if (<=.f64 a -215000000000000000275433395533360523974013614679511620983498918080706248704) (*.f64 y x) (if (<=.f64 a -30031699646680768373111535599353856) (*.f64 a b) (if (<=.f64 a -200957545708667/1024) (*.f64 y x) (if (<=.f64 a -4045225542461881/1480596630383213935040454376661779933220754639736839877261211431528140022932412039118650826290747144651878100106364319997951107067217649833149230265656644000248389221211290269422784124023054547143233298486439198256390425542656) (*.f64 t z) (if (<=.f64 a 343869064185375/167423219872854268898191413915625282900219501828989626163085998182867351738271269139562246689952477832436667643367679191435491450889424069312259024604665231311477621481628609147204290704099549091843034096141351171618467832303105743111961624157454108040174944963852221369694216119572256044331338563584) (*.f64 y x) (if (<=.f64 a 8861022768959085/35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852416) (*.f64 t z) (*.f64 a b)))))))))) |
(if (<=.f64 a -749999999999999949350312944765785133449764857862592168398517927210521975591417462549820148886831914818340625653452770338782692455596140847214601237158433015215964412205781221376) (*.f64 a b) (if (<=.f64 a -90000000000000006800931961228246274890770824743556794624097057445823731332426732992791834475517349840499420929268257914880) (*.f64 z t) (if (<=.f64 a -12000000000000000124055450146859579749176467229675875251904857976880110483573405688201329179099136) (*.f64 a b) (if (<=.f64 a -215000000000000000275433395533360523974013614679511620983498918080706248704) (*.f64 x y) (if (<=.f64 a -30031699646680768373111535599353856) (*.f64 a b) (if (<=.f64 a -200957545708667/1024) (*.f64 x y) (if (<=.f64 a -4045225542461881/1480596630383213935040454376661779933220754639736839877261211431528140022932412039118650826290747144651878100106364319997951107067217649833149230265656644000248389221211290269422784124023054547143233298486439198256390425542656) (*.f64 z t) (if (<=.f64 a 343869064185375/167423219872854268898191413915625282900219501828989626163085998182867351738271269139562246689952477832436667643367679191435491450889424069312259024604665231311477621481628609147204290704099549091843034096141351171618467832303105743111961624157454108040174944963852221369694216119572256044331338563584) (*.f64 x y) (if (<=.f64 a 8861022768959085/35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852416) (*.f64 z t) (*.f64 a b)))))))))) |
(if (<=.f64 y -2220401629382261/17498005798264095394980017816940970922825355447145699491406164851279623993595007385788105416184430592) (*.f64 y x) (if (<=.f64 y 13320579269985864) (*.f64 t z) (*.f64 y x))) |
(if (<=.f64 y -2220401629382261/17498005798264095394980017816940970922825355447145699491406164851279623993595007385788105416184430592) (*.f64 x y) (if (<=.f64 y 13320579269985864) (*.f64 z t) (*.f64 x y))) |
(*.f64 y x) |
(*.f64 x y) |
Compiled 1011 to 421 computations (58.4% saved)
| 1× | egg-herbie |
| 58× | fma-def_binary64 |
| 24× | associate-+l+_binary64 |
| 21× | associate-+r+_binary64 |
| 17× | +-commutative_binary64 |
| 4× | *-commutative_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 16 | 20 |
| 1 | 28 | 16 |
| 2 | 63 | 16 |
| 3 | 124 | 16 |
| 4 | 150 | 16 |
| 5 | 152 | 16 |
| 1× | saturated |
Compiled 153 to 97 computations (36.6% saved)
(sort c i)
(sort a b)
(sort z t)
(sort x y)
Compiled 1067 to 348 computations (67.4% saved)
Loading profile data...