
Time bar (total: 2.0s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 0 |
| 100% | 99.8% | 0% | 0.2% | 0% | 0% | 0% | 1 |
Compiled 12 to 8 computations (33.3% saved)
| 653.0ms | 6332× | body | 256 | valid |
| 227.0ms | 1924× | body | 256 | infinite |
| 1× | egg-herbie |
| 1016× | fma-def |
| 160× | unsub-neg |
| 96× | associate-*r* |
| 78× | distribute-lft-neg-out |
| 68× | distribute-lft-in |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 36 | 181 |
| 1 | 75 | 181 |
| 2 | 108 | 181 |
| 3 | 141 | 181 |
| 4 | 198 | 181 |
| 5 | 301 | 181 |
| 6 | 472 | 181 |
| 7 | 806 | 181 |
| 8 | 1031 | 181 |
| 9 | 1165 | 181 |
| 10 | 1193 | 181 |
| 11 | 1197 | 181 |
| 1× | saturated |
| Inputs |
|---|
(+.f64 (*.f64 x y) (*.f64 z t)) |
(+.f64 (*.f64 (neg.f64 x) y) (*.f64 z t)) |
(+.f64 (*.f64 x (neg.f64 y)) (*.f64 z t)) |
(+.f64 (*.f64 x y) (*.f64 (neg.f64 z) t)) |
(+.f64 (*.f64 x y) (*.f64 z (neg.f64 t))) |
(+.f64 (*.f64 y x) (*.f64 z t)) |
(+.f64 (*.f64 z y) (*.f64 x t)) |
(+.f64 (*.f64 t y) (*.f64 z x)) |
(+.f64 (*.f64 x z) (*.f64 y t)) |
(+.f64 (*.f64 x t) (*.f64 z y)) |
(+.f64 (*.f64 x y) (*.f64 t z)) |
| Outputs |
|---|
(+.f64 (*.f64 x y) (*.f64 z t)) |
(fma.f64 x y (*.f64 z t)) |
(+.f64 (*.f64 (neg.f64 x) y) (*.f64 z t)) |
(fma.f64 x (neg.f64 y) (*.f64 z t)) |
(-.f64 (*.f64 z t) (*.f64 x y)) |
(+.f64 (*.f64 x (neg.f64 y)) (*.f64 z t)) |
(fma.f64 x (neg.f64 y) (*.f64 z t)) |
(-.f64 (*.f64 z t) (*.f64 x y)) |
(+.f64 (*.f64 x y) (*.f64 (neg.f64 z) t)) |
(fma.f64 x y (*.f64 z (neg.f64 t))) |
(-.f64 (*.f64 x y) (*.f64 z t)) |
(+.f64 (*.f64 x y) (*.f64 z (neg.f64 t))) |
(fma.f64 x y (*.f64 z (neg.f64 t))) |
(-.f64 (*.f64 x y) (*.f64 z t)) |
(+.f64 (*.f64 y x) (*.f64 z t)) |
(fma.f64 x y (*.f64 z t)) |
(+.f64 (*.f64 z y) (*.f64 x t)) |
(fma.f64 z y (*.f64 x t)) |
(fma.f64 y z (*.f64 x t)) |
(fma.f64 x t (*.f64 y z)) |
(+.f64 (*.f64 t y) (*.f64 z x)) |
(fma.f64 x z (*.f64 y t)) |
(+.f64 (*.f64 x z) (*.f64 y t)) |
(fma.f64 x z (*.f64 y t)) |
(+.f64 (*.f64 x t) (*.f64 z y)) |
(fma.f64 z y (*.f64 x t)) |
(fma.f64 y z (*.f64 x t)) |
(fma.f64 x t (*.f64 y z)) |
(+.f64 (*.f64 x y) (*.f64 t z)) |
(fma.f64 x y (*.f64 z t)) |
(sort x y)
(sort z t)
Compiled 15 to 11 computations (26.7% saved)
| 1× | egg-herbie |
| 8× | fma-def |
| 4× | *-commutative |
| 2× | +-commutative |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 15 |
| 1 | 14 | 15 |
| 2 | 17 | 15 |
| 1× | saturated |
| Inputs |
|---|
(+.f64 (*.f64 x y) (*.f64 z t)) |
| Outputs |
|---|
(+.f64 (*.f64 x y) (*.f64 z t)) |
(fma.f64 x y (*.f64 z t)) |
Compiled 17 to 8 computations (52.9% 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 | Accuracy | Program |
|---|---|---|
| ▶ | 99.6% | (fma.f64 x y (*.f64 z t)) |
| ▶ | 99.6% | (+.f64 (*.f64 x y) (*.f64 z t)) |
| ▶ | 99.6% | (fma.f64 x y (*.f64 z t)) |
| ▶ | 99.6% | (+.f64 (*.f64 x y) (*.f64 z t)) |
Compiled 42 to 26 computations (38.1% saved)
Found 2 expressions with local accuracy:
| New | Accuracy | Program |
|---|---|---|
| ✓ | 99.6% | (fma.f64 x y (*.f64 z t)) |
| ✓ | 99.6% | (+.f64 (*.f64 x y) (*.f64 z t)) |
Compiled 35 to 9 computations (74.3% saved)
24 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | y | @ | 0 | (fma.f64 x y (*.f64 z t)) |
| 0.0ms | z | @ | 0 | (+.f64 (*.f64 x y) (*.f64 z t)) |
| 0.0ms | x | @ | 0 | (+.f64 (*.f64 x y) (*.f64 z t)) |
| 0.0ms | x | @ | -inf | (+.f64 (*.f64 x y) (*.f64 z t)) |
| 0.0ms | y | @ | inf | (+.f64 (*.f64 x y) (*.f64 z t)) |
| 1× | batch-egg-rewrite |
| 1062× | log-prod |
| 812× | prod-exp |
| 752× | pow-prod-down |
| 714× | fma-def |
| 526× | pow-prod-up |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 30 |
| 1 | 227 | 30 |
| 2 | 2759 | 30 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (*.f64 x y) (*.f64 z t)) |
(fma.f64 x y (*.f64 z t)) |
| Outputs |
|---|
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x y (*.f64 z t)))) 1) |
(-.f64 (/.f64 (pow.f64 (*.f64 x y) 2) (fma.f64 x y (*.f64 (neg.f64 z) t))) (/.f64 (pow.f64 (*.f64 z t) 2) (fma.f64 x y (*.f64 (neg.f64 z) t)))) |
(*.f64 (fma.f64 x y (*.f64 z t)) 1) |
(*.f64 1 (fma.f64 x y (*.f64 z t))) |
(*.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2) (cbrt.f64 (fma.f64 x y (*.f64 z t)))) |
(*.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t)))) |
(*.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)) (/.f64 1 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)))) |
(*.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)) (/.f64 1 (fma.f64 x y (*.f64 (neg.f64 z) t)))) |
(/.f64 1 (/.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)) (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)))) |
(/.f64 1 (/.f64 (fma.f64 x y (*.f64 (neg.f64 z) t)) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)) (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2))) |
(/.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)) (+.f64 (pow.f64 (*.f64 z t) 2) (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 x y) (*.f64 z t))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)) (fma.f64 x y (*.f64 (neg.f64 z) t))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3))) (neg.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2))) (neg.f64 (fma.f64 x y (*.f64 (neg.f64 z) t)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 z t) 2) (pow.f64 (*.f64 x y) 2)) (-.f64 (*.f64 z t) (*.f64 x y))) |
(pow.f64 (fma.f64 x y (*.f64 z t)) 1) |
(pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 3) |
(pow.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) 1/2) |
(pow.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) 1/3) |
(pow.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) 2) |
(pow.f64 (/.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)) (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3))) -1) |
(pow.f64 (/.f64 (fma.f64 x y (*.f64 (neg.f64 z) t)) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2))) -1) |
(sqrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2)) |
(log.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t))))) |
(log.f64 (*.f64 (pow.f64 (exp.f64 x) y) (+.f64 1 (expm1.f64 (*.f64 z t))))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (pow.f64 (exp.f64 z) t))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (+.f64 1 (expm1.f64 (*.f64 z t))))) |
(log.f64 (*.f64 (pow.f64 (exp.f64 z) t) (+.f64 1 (expm1.f64 (*.f64 x y))))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z t))) (pow.f64 (exp.f64 x) y))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z t))) (+.f64 1 (expm1.f64 (*.f64 x y))))) |
(cbrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3)) |
(expm1.f64 (log1p.f64 (fma.f64 x y (*.f64 z t)))) |
(exp.f64 (log.f64 (fma.f64 x y (*.f64 z t)))) |
(exp.f64 (*.f64 (log.f64 (fma.f64 x y (*.f64 z t))) 1)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 x y (*.f64 z t))) 1) 1)) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t)))) 3)) |
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 x y (*.f64 z t)))) 1/3)) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t)))) 2)) |
(log1p.f64 (expm1.f64 (fma.f64 x y (*.f64 z t)))) |
(fma.f64 x y (*.f64 z t)) |
(fma.f64 y x (*.f64 z t)) |
(fma.f64 (*.f64 x y) 1 (*.f64 z t)) |
(fma.f64 z t (*.f64 x y)) |
(fma.f64 t z (*.f64 x y)) |
(fma.f64 (*.f64 z t) 1 (*.f64 x y)) |
(fma.f64 1 (*.f64 x y) (*.f64 z t)) |
(fma.f64 1 (*.f64 z t) (*.f64 x y)) |
(fma.f64 (cbrt.f64 (*.f64 z t)) (pow.f64 (cbrt.f64 (*.f64 z t)) 2) (*.f64 x y)) |
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z t)) 2) (cbrt.f64 (*.f64 z t)) (*.f64 x y)) |
(fma.f64 (cbrt.f64 (*.f64 x y)) (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (*.f64 z t)) |
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (cbrt.f64 (*.f64 x y)) (*.f64 z t)) |
(fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) t) (*.f64 x y)) |
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) (*.f64 z t)) |
(fma.f64 (pow.f64 (cbrt.f64 t) 2) (*.f64 (cbrt.f64 t) z) (*.f64 x y)) |
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) x) (*.f64 z t)) |
(fma.f64 (sqrt.f64 (*.f64 z t)) (sqrt.f64 (*.f64 z t)) (*.f64 x y)) |
(fma.f64 (sqrt.f64 (*.f64 x y)) (sqrt.f64 (*.f64 x y)) (*.f64 z t)) |
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) t) (*.f64 x y)) |
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (*.f64 z t)) |
(fma.f64 (sqrt.f64 t) (*.f64 (sqrt.f64 t) z) (*.f64 x y)) |
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (*.f64 z t)) |
(fma.f64 (*.f64 z (pow.f64 (cbrt.f64 t) 2)) (cbrt.f64 t) (*.f64 x y)) |
(fma.f64 (*.f64 z (sqrt.f64 t)) (sqrt.f64 t) (*.f64 x y)) |
(fma.f64 (*.f64 t (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (*.f64 x y)) |
(fma.f64 (*.f64 t (sqrt.f64 z)) (sqrt.f64 z) (*.f64 x y)) |
(fma.f64 (*.f64 x (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (*.f64 z t)) |
(fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (*.f64 z t)) |
(fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 z t)) |
(fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (*.f64 z t)) |
(+.f64 (*.f64 x y) (*.f64 z t)) |
(+.f64 (*.f64 z t) (*.f64 x y)) |
(+.f64 0 (fma.f64 x y (*.f64 z t))) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))))) |
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x y (*.f64 z t))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))))) |
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x y (*.f64 z t)))) 1) |
(-.f64 (/.f64 (pow.f64 (*.f64 x y) 2) (fma.f64 x y (*.f64 (neg.f64 z) t))) (/.f64 (pow.f64 (*.f64 z t) 2) (fma.f64 x y (*.f64 (neg.f64 z) t)))) |
(*.f64 (fma.f64 x y (*.f64 z t)) 1) |
(*.f64 1 (fma.f64 x y (*.f64 z t))) |
(*.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2) (cbrt.f64 (fma.f64 x y (*.f64 z t)))) |
(*.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t)))) |
(*.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)) (/.f64 1 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)))) |
(*.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)) (/.f64 1 (fma.f64 x y (*.f64 (neg.f64 z) t)))) |
(/.f64 1 (/.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)) (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)))) |
(/.f64 1 (/.f64 (fma.f64 x y (*.f64 (neg.f64 z) t)) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)) (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2))) |
(/.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)) (+.f64 (pow.f64 (*.f64 z t) 2) (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 x y) (*.f64 z t))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)) (fma.f64 x y (*.f64 (neg.f64 z) t))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3))) (neg.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2))) (neg.f64 (fma.f64 x y (*.f64 (neg.f64 z) t)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 z t) 2) (pow.f64 (*.f64 x y) 2)) (-.f64 (*.f64 z t) (*.f64 x y))) |
(pow.f64 (fma.f64 x y (*.f64 z t)) 1) |
(pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 3) |
(pow.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) 1/2) |
(pow.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) 1/3) |
(pow.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) 2) |
(pow.f64 (/.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)) (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3))) -1) |
(pow.f64 (/.f64 (fma.f64 x y (*.f64 (neg.f64 z) t)) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2))) -1) |
(sqrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2)) |
(log.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t))))) |
(log.f64 (*.f64 (pow.f64 (exp.f64 x) y) (+.f64 1 (expm1.f64 (*.f64 z t))))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (pow.f64 (exp.f64 z) t))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (+.f64 1 (expm1.f64 (*.f64 z t))))) |
(log.f64 (*.f64 (pow.f64 (exp.f64 z) t) (+.f64 1 (expm1.f64 (*.f64 x y))))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z t))) (pow.f64 (exp.f64 x) y))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z t))) (+.f64 1 (expm1.f64 (*.f64 x y))))) |
(cbrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3)) |
(expm1.f64 (log1p.f64 (fma.f64 x y (*.f64 z t)))) |
(exp.f64 (log.f64 (fma.f64 x y (*.f64 z t)))) |
(exp.f64 (*.f64 (log.f64 (fma.f64 x y (*.f64 z t))) 1)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 x y (*.f64 z t))) 1) 1)) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t)))) 3)) |
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 x y (*.f64 z t)))) 1/3)) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t)))) 2)) |
(log1p.f64 (expm1.f64 (fma.f64 x y (*.f64 z t)))) |
| 1× | egg-herbie |
| 1158× | fma-def |
| 792× | cancel-sign-sub-inv |
| 640× | div-sub |
| 620× | distribute-lft-neg-in |
| 594× | fma-neg |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 195 | 4507 |
| 1 | 465 | 4403 |
| 2 | 1248 | 4403 |
| 3 | 4709 | 3927 |
| 1× | node limit |
| 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 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 (exp.f64 (log1p.f64 (fma.f64 x y (*.f64 z t)))) 1) |
(-.f64 (/.f64 (pow.f64 (*.f64 x y) 2) (fma.f64 x y (*.f64 (neg.f64 z) t))) (/.f64 (pow.f64 (*.f64 z t) 2) (fma.f64 x y (*.f64 (neg.f64 z) t)))) |
(*.f64 (fma.f64 x y (*.f64 z t)) 1) |
(*.f64 1 (fma.f64 x y (*.f64 z t))) |
(*.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2) (cbrt.f64 (fma.f64 x y (*.f64 z t)))) |
(*.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t)))) |
(*.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)) (/.f64 1 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)))) |
(*.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)) (/.f64 1 (fma.f64 x y (*.f64 (neg.f64 z) t)))) |
(/.f64 1 (/.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)) (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)))) |
(/.f64 1 (/.f64 (fma.f64 x y (*.f64 (neg.f64 z) t)) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)) (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2))) |
(/.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)) (+.f64 (pow.f64 (*.f64 z t) 2) (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 x y) (*.f64 z t))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)) (fma.f64 x y (*.f64 (neg.f64 z) t))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3))) (neg.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2))) (neg.f64 (fma.f64 x y (*.f64 (neg.f64 z) t)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 z t) 2) (pow.f64 (*.f64 x y) 2)) (-.f64 (*.f64 z t) (*.f64 x y))) |
(pow.f64 (fma.f64 x y (*.f64 z t)) 1) |
(pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 3) |
(pow.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) 1/2) |
(pow.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) 1/3) |
(pow.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) 2) |
(pow.f64 (/.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)) (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3))) -1) |
(pow.f64 (/.f64 (fma.f64 x y (*.f64 (neg.f64 z) t)) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2))) -1) |
(sqrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2)) |
(log.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t))))) |
(log.f64 (*.f64 (pow.f64 (exp.f64 x) y) (+.f64 1 (expm1.f64 (*.f64 z t))))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (pow.f64 (exp.f64 z) t))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (+.f64 1 (expm1.f64 (*.f64 z t))))) |
(log.f64 (*.f64 (pow.f64 (exp.f64 z) t) (+.f64 1 (expm1.f64 (*.f64 x y))))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z t))) (pow.f64 (exp.f64 x) y))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z t))) (+.f64 1 (expm1.f64 (*.f64 x y))))) |
(cbrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3)) |
(expm1.f64 (log1p.f64 (fma.f64 x y (*.f64 z t)))) |
(exp.f64 (log.f64 (fma.f64 x y (*.f64 z t)))) |
(exp.f64 (*.f64 (log.f64 (fma.f64 x y (*.f64 z t))) 1)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 x y (*.f64 z t))) 1) 1)) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t)))) 3)) |
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 x y (*.f64 z t)))) 1/3)) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t)))) 2)) |
(log1p.f64 (expm1.f64 (fma.f64 x y (*.f64 z t)))) |
(fma.f64 x y (*.f64 z t)) |
(fma.f64 y x (*.f64 z t)) |
(fma.f64 (*.f64 x y) 1 (*.f64 z t)) |
(fma.f64 z t (*.f64 x y)) |
(fma.f64 t z (*.f64 x y)) |
(fma.f64 (*.f64 z t) 1 (*.f64 x y)) |
(fma.f64 1 (*.f64 x y) (*.f64 z t)) |
(fma.f64 1 (*.f64 z t) (*.f64 x y)) |
(fma.f64 (cbrt.f64 (*.f64 z t)) (pow.f64 (cbrt.f64 (*.f64 z t)) 2) (*.f64 x y)) |
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z t)) 2) (cbrt.f64 (*.f64 z t)) (*.f64 x y)) |
(fma.f64 (cbrt.f64 (*.f64 x y)) (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (*.f64 z t)) |
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (cbrt.f64 (*.f64 x y)) (*.f64 z t)) |
(fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) t) (*.f64 x y)) |
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) (*.f64 z t)) |
(fma.f64 (pow.f64 (cbrt.f64 t) 2) (*.f64 (cbrt.f64 t) z) (*.f64 x y)) |
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) x) (*.f64 z t)) |
(fma.f64 (sqrt.f64 (*.f64 z t)) (sqrt.f64 (*.f64 z t)) (*.f64 x y)) |
(fma.f64 (sqrt.f64 (*.f64 x y)) (sqrt.f64 (*.f64 x y)) (*.f64 z t)) |
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) t) (*.f64 x y)) |
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (*.f64 z t)) |
(fma.f64 (sqrt.f64 t) (*.f64 (sqrt.f64 t) z) (*.f64 x y)) |
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (*.f64 z t)) |
(fma.f64 (*.f64 z (pow.f64 (cbrt.f64 t) 2)) (cbrt.f64 t) (*.f64 x y)) |
(fma.f64 (*.f64 z (sqrt.f64 t)) (sqrt.f64 t) (*.f64 x y)) |
(fma.f64 (*.f64 t (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (*.f64 x y)) |
(fma.f64 (*.f64 t (sqrt.f64 z)) (sqrt.f64 z) (*.f64 x y)) |
(fma.f64 (*.f64 x (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (*.f64 z t)) |
(fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (*.f64 z t)) |
(fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 z t)) |
(fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (*.f64 z t)) |
(+.f64 (*.f64 x y) (*.f64 z t)) |
(+.f64 (*.f64 z t) (*.f64 x y)) |
(+.f64 0 (fma.f64 x y (*.f64 z t))) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))))) |
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x y (*.f64 z t))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))))) |
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x y (*.f64 z t)))) 1) |
(-.f64 (/.f64 (pow.f64 (*.f64 x y) 2) (fma.f64 x y (*.f64 (neg.f64 z) t))) (/.f64 (pow.f64 (*.f64 z t) 2) (fma.f64 x y (*.f64 (neg.f64 z) t)))) |
(*.f64 (fma.f64 x y (*.f64 z t)) 1) |
(*.f64 1 (fma.f64 x y (*.f64 z t))) |
(*.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2) (cbrt.f64 (fma.f64 x y (*.f64 z t)))) |
(*.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t)))) |
(*.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)) (/.f64 1 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)))) |
(*.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)) (/.f64 1 (fma.f64 x y (*.f64 (neg.f64 z) t)))) |
(/.f64 1 (/.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)) (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)))) |
(/.f64 1 (/.f64 (fma.f64 x y (*.f64 (neg.f64 z) t)) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)) (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2))) |
(/.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)) (+.f64 (pow.f64 (*.f64 z t) 2) (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 x y) (*.f64 z t))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)) (fma.f64 x y (*.f64 (neg.f64 z) t))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3))) (neg.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2))) (neg.f64 (fma.f64 x y (*.f64 (neg.f64 z) t)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 z t) 2) (pow.f64 (*.f64 x y) 2)) (-.f64 (*.f64 z t) (*.f64 x y))) |
(pow.f64 (fma.f64 x y (*.f64 z t)) 1) |
(pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 3) |
(pow.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) 1/2) |
(pow.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) 1/3) |
(pow.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) 2) |
(pow.f64 (/.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)) (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3))) -1) |
(pow.f64 (/.f64 (fma.f64 x y (*.f64 (neg.f64 z) t)) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2))) -1) |
(sqrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2)) |
(log.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t))))) |
(log.f64 (*.f64 (pow.f64 (exp.f64 x) y) (+.f64 1 (expm1.f64 (*.f64 z t))))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (pow.f64 (exp.f64 z) t))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (+.f64 1 (expm1.f64 (*.f64 z t))))) |
(log.f64 (*.f64 (pow.f64 (exp.f64 z) t) (+.f64 1 (expm1.f64 (*.f64 x y))))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z t))) (pow.f64 (exp.f64 x) y))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z t))) (+.f64 1 (expm1.f64 (*.f64 x y))))) |
(cbrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3)) |
(expm1.f64 (log1p.f64 (fma.f64 x y (*.f64 z t)))) |
(exp.f64 (log.f64 (fma.f64 x y (*.f64 z t)))) |
(exp.f64 (*.f64 (log.f64 (fma.f64 x y (*.f64 z t))) 1)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 x y (*.f64 z t))) 1) 1)) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t)))) 3)) |
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 x y (*.f64 z t)))) 1/3)) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t)))) 2)) |
(log1p.f64 (expm1.f64 (fma.f64 x y (*.f64 z t)))) |
| Outputs |
|---|
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.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 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.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 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.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 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.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 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.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 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.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 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.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 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.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 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.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 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.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 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.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 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.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 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.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 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.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 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.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 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.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 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.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 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.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 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.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 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.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 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.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 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.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 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.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 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 t z (*.f64 y x)) |
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x y (*.f64 z t)))) 1) |
(fma.f64 t z (*.f64 y x)) |
(-.f64 (/.f64 (pow.f64 (*.f64 x y) 2) (fma.f64 x y (*.f64 (neg.f64 z) t))) (/.f64 (pow.f64 (*.f64 z t) 2) (fma.f64 x y (*.f64 (neg.f64 z) t)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (fma.f64 x y (*.f64 t (neg.f64 z)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z))) |
(/.f64 (fma.f64 t z (*.f64 y x)) 1) |
(*.f64 (fma.f64 x y (*.f64 z t)) 1) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 1 (fma.f64 x y (*.f64 z t))) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2) (cbrt.f64 (fma.f64 x y (*.f64 z t)))) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t)))) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)) (/.f64 1 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)))) |
(*.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 y x))) (pow.f64 (*.f64 y x) 2))) |
(*.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)) (/.f64 1 (fma.f64 x y (*.f64 (neg.f64 z) t)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (fma.f64 x y (*.f64 t (neg.f64 z)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z))) |
(/.f64 (fma.f64 t z (*.f64 y x)) 1) |
(/.f64 1 (/.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)) (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)))) |
(*.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 y x))) (pow.f64 (*.f64 y x) 2))) |
(/.f64 1 (/.f64 (fma.f64 x y (*.f64 (neg.f64 z) t)) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (fma.f64 x y (*.f64 t (neg.f64 z)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z))) |
(/.f64 (fma.f64 t z (*.f64 y x)) 1) |
(/.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)) (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2))) |
(*.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 y x))) (pow.f64 (*.f64 y x) 2))) |
(/.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)) (+.f64 (pow.f64 (*.f64 z t) 2) (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 x y) (*.f64 z t))))) |
(*.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 y x))) (pow.f64 (*.f64 y x) 2))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)) (fma.f64 x y (*.f64 (neg.f64 z) t))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (fma.f64 x y (*.f64 t (neg.f64 z)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z))) |
(/.f64 (fma.f64 t z (*.f64 y x)) 1) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3))) (neg.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)))) |
(*.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 y x))) (pow.f64 (*.f64 y x) 2))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2))) (neg.f64 (fma.f64 x y (*.f64 (neg.f64 z) t)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (fma.f64 x y (*.f64 t (neg.f64 z)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z))) |
(/.f64 (fma.f64 t z (*.f64 y x)) 1) |
(/.f64 (-.f64 (pow.f64 (*.f64 z t) 2) (pow.f64 (*.f64 x y) 2)) (-.f64 (*.f64 z t) (*.f64 x y))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (fma.f64 x y (*.f64 t (neg.f64 z)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z))) |
(/.f64 (fma.f64 t z (*.f64 y x)) 1) |
(pow.f64 (fma.f64 x y (*.f64 z t)) 1) |
(fma.f64 t z (*.f64 y x)) |
(pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 3) |
(fma.f64 t z (*.f64 y x)) |
(pow.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) 1/2) |
(fma.f64 t z (*.f64 y x)) |
(pow.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) 1/3) |
(fma.f64 t z (*.f64 y x)) |
(pow.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) 2) |
(fma.f64 t z (*.f64 y x)) |
(pow.f64 (/.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)) (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3))) -1) |
(*.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 y x))) (pow.f64 (*.f64 y x) 2))) |
(pow.f64 (/.f64 (fma.f64 x y (*.f64 (neg.f64 z) t)) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2))) -1) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (fma.f64 x y (*.f64 t (neg.f64 z)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z))) |
(/.f64 (fma.f64 t z (*.f64 y x)) 1) |
(sqrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2)) |
(fma.f64 t z (*.f64 y x)) |
(log.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))) |
(fma.f64 t z (*.f64 y x)) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t))))) |
(fma.f64 t z (*.f64 y x)) |
(log.f64 (*.f64 (pow.f64 (exp.f64 x) y) (+.f64 1 (expm1.f64 (*.f64 z t))))) |
(fma.f64 t z (*.f64 y x)) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (pow.f64 (exp.f64 z) t))) |
(fma.f64 t z (*.f64 y x)) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (+.f64 1 (expm1.f64 (*.f64 z t))))) |
(fma.f64 t z (*.f64 y x)) |
(log.f64 (*.f64 (pow.f64 (exp.f64 z) t) (+.f64 1 (expm1.f64 (*.f64 x y))))) |
(fma.f64 t z (*.f64 y x)) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z t))) (pow.f64 (exp.f64 x) y))) |
(fma.f64 t z (*.f64 y x)) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z t))) (+.f64 1 (expm1.f64 (*.f64 x y))))) |
(fma.f64 t z (*.f64 y x)) |
(cbrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3)) |
(fma.f64 t z (*.f64 y x)) |
(expm1.f64 (log1p.f64 (fma.f64 x y (*.f64 z t)))) |
(fma.f64 t z (*.f64 y x)) |
(exp.f64 (log.f64 (fma.f64 x y (*.f64 z t)))) |
(fma.f64 t z (*.f64 y x)) |
(exp.f64 (*.f64 (log.f64 (fma.f64 x y (*.f64 z t))) 1)) |
(fma.f64 t z (*.f64 y x)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 x y (*.f64 z t))) 1) 1)) |
(fma.f64 t z (*.f64 y x)) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t)))) 3)) |
(fma.f64 t z (*.f64 y x)) |
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 x y (*.f64 z t)))) 1/3)) |
(fma.f64 t z (*.f64 y x)) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t)))) 2)) |
(fma.f64 t z (*.f64 y x)) |
(log1p.f64 (expm1.f64 (fma.f64 x y (*.f64 z t)))) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 x y (*.f64 z t)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 y x (*.f64 z t)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 (*.f64 x y) 1 (*.f64 z t)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 z t (*.f64 x y)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 t z (*.f64 x y)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 (*.f64 z t) 1 (*.f64 x y)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 1 (*.f64 x y) (*.f64 z t)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 1 (*.f64 z t) (*.f64 x y)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 (cbrt.f64 (*.f64 z t)) (pow.f64 (cbrt.f64 (*.f64 z t)) 2) (*.f64 x y)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z t)) 2) (cbrt.f64 (*.f64 z t)) (*.f64 x y)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 (cbrt.f64 (*.f64 x y)) (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (*.f64 z t)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x y)) 2) (cbrt.f64 (*.f64 x y)) (*.f64 z t)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) t) (*.f64 x y)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) y) (*.f64 z t)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 (pow.f64 (cbrt.f64 t) 2) (*.f64 (cbrt.f64 t) z) (*.f64 x y)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) x) (*.f64 z t)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 (sqrt.f64 (*.f64 z t)) (sqrt.f64 (*.f64 z t)) (*.f64 x y)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 (sqrt.f64 (*.f64 x y)) (sqrt.f64 (*.f64 x y)) (*.f64 z t)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) t) (*.f64 x y)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (*.f64 z t)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 (sqrt.f64 t) (*.f64 (sqrt.f64 t) z) (*.f64 x y)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (*.f64 z t)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 (*.f64 z (pow.f64 (cbrt.f64 t) 2)) (cbrt.f64 t) (*.f64 x y)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 (*.f64 z (sqrt.f64 t)) (sqrt.f64 t) (*.f64 x y)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 (*.f64 t (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (*.f64 x y)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 (*.f64 t (sqrt.f64 z)) (sqrt.f64 z) (*.f64 x y)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 (*.f64 x (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (*.f64 z t)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (*.f64 z t)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 z t)) |
(fma.f64 t z (*.f64 y x)) |
(fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (*.f64 z t)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 x y) (*.f64 z t)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 z t) (*.f64 x y)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 0 (fma.f64 x y (*.f64 z t))) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))))) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 t z (*.f64 y x)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 t z (*.f64 y x)))))) |
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (fma.f64 t z (*.f64 y x)))))) |
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x y (*.f64 z t))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))))) |
(fma.f64 t z (*.f64 y x)) |
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x y (*.f64 z t)))) 1) |
(fma.f64 t z (*.f64 y x)) |
(-.f64 (/.f64 (pow.f64 (*.f64 x y) 2) (fma.f64 x y (*.f64 (neg.f64 z) t))) (/.f64 (pow.f64 (*.f64 z t) 2) (fma.f64 x y (*.f64 (neg.f64 z) t)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (fma.f64 x y (*.f64 t (neg.f64 z)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z))) |
(/.f64 (fma.f64 t z (*.f64 y x)) 1) |
(*.f64 (fma.f64 x y (*.f64 z t)) 1) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 1 (fma.f64 x y (*.f64 z t))) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2) (cbrt.f64 (fma.f64 x y (*.f64 z t)))) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t)))) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)) (/.f64 1 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)))) |
(*.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 y x))) (pow.f64 (*.f64 y x) 2))) |
(*.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)) (/.f64 1 (fma.f64 x y (*.f64 (neg.f64 z) t)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (fma.f64 x y (*.f64 t (neg.f64 z)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z))) |
(/.f64 (fma.f64 t z (*.f64 y x)) 1) |
(/.f64 1 (/.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)) (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)))) |
(*.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 y x))) (pow.f64 (*.f64 y x) 2))) |
(/.f64 1 (/.f64 (fma.f64 x y (*.f64 (neg.f64 z) t)) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (fma.f64 x y (*.f64 t (neg.f64 z)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z))) |
(/.f64 (fma.f64 t z (*.f64 y x)) 1) |
(/.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)) (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2))) |
(*.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 y x))) (pow.f64 (*.f64 y x) 2))) |
(/.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)) (+.f64 (pow.f64 (*.f64 z t) 2) (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 x y) (*.f64 z t))))) |
(*.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 y x))) (pow.f64 (*.f64 y x) 2))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2)) (fma.f64 x y (*.f64 (neg.f64 z) t))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (fma.f64 x y (*.f64 t (neg.f64 z)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z))) |
(/.f64 (fma.f64 t z (*.f64 y x)) 1) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3))) (neg.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)))) |
(*.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 y x))) (pow.f64 (*.f64 y x) 2))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2))) (neg.f64 (fma.f64 x y (*.f64 (neg.f64 z) t)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (fma.f64 x y (*.f64 t (neg.f64 z)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z))) |
(/.f64 (fma.f64 t z (*.f64 y x)) 1) |
(/.f64 (-.f64 (pow.f64 (*.f64 z t) 2) (pow.f64 (*.f64 x y) 2)) (-.f64 (*.f64 z t) (*.f64 x y))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (fma.f64 x y (*.f64 t (neg.f64 z)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z))) |
(/.f64 (fma.f64 t z (*.f64 y x)) 1) |
(pow.f64 (fma.f64 x y (*.f64 z t)) 1) |
(fma.f64 t z (*.f64 y x)) |
(pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 3) |
(fma.f64 t z (*.f64 y x)) |
(pow.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) 1/2) |
(fma.f64 t z (*.f64 y x)) |
(pow.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) 1/3) |
(fma.f64 t z (*.f64 y x)) |
(pow.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) 2) |
(fma.f64 t z (*.f64 y x)) |
(pow.f64 (/.f64 (fma.f64 (*.f64 z t) (-.f64 (*.f64 z t) (*.f64 x y)) (pow.f64 (*.f64 x y) 2)) (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3))) -1) |
(*.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 (*.f64 t z) (-.f64 (*.f64 t z) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 t (*.f64 z (-.f64 (*.f64 t z) (*.f64 y x))) (pow.f64 (*.f64 y x) 2))) |
(pow.f64 (/.f64 (fma.f64 x y (*.f64 (neg.f64 z) t)) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z t) 2))) -1) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (fma.f64 x y (*.f64 t (neg.f64 z)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 t z) 2)) (-.f64 (*.f64 y x) (*.f64 t z))) |
(/.f64 (fma.f64 t z (*.f64 y x)) 1) |
(sqrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2)) |
(fma.f64 t z (*.f64 y x)) |
(log.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))) |
(fma.f64 t z (*.f64 y x)) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t))))) |
(fma.f64 t z (*.f64 y x)) |
(log.f64 (*.f64 (pow.f64 (exp.f64 x) y) (+.f64 1 (expm1.f64 (*.f64 z t))))) |
(fma.f64 t z (*.f64 y x)) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (pow.f64 (exp.f64 z) t))) |
(fma.f64 t z (*.f64 y x)) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (+.f64 1 (expm1.f64 (*.f64 z t))))) |
(fma.f64 t z (*.f64 y x)) |
(log.f64 (*.f64 (pow.f64 (exp.f64 z) t) (+.f64 1 (expm1.f64 (*.f64 x y))))) |
(fma.f64 t z (*.f64 y x)) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z t))) (pow.f64 (exp.f64 x) y))) |
(fma.f64 t z (*.f64 y x)) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z t))) (+.f64 1 (expm1.f64 (*.f64 x y))))) |
(fma.f64 t z (*.f64 y x)) |
(cbrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3)) |
(fma.f64 t z (*.f64 y x)) |
(expm1.f64 (log1p.f64 (fma.f64 x y (*.f64 z t)))) |
(fma.f64 t z (*.f64 y x)) |
(exp.f64 (log.f64 (fma.f64 x y (*.f64 z t)))) |
(fma.f64 t z (*.f64 y x)) |
(exp.f64 (*.f64 (log.f64 (fma.f64 x y (*.f64 z t))) 1)) |
(fma.f64 t z (*.f64 y x)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 x y (*.f64 z t))) 1) 1)) |
(fma.f64 t z (*.f64 y x)) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t)))) 3)) |
(fma.f64 t z (*.f64 y x)) |
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 x y (*.f64 z t)))) 1/3)) |
(fma.f64 t z (*.f64 y x)) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t)))) 2)) |
(fma.f64 t z (*.f64 y x)) |
(log1p.f64 (expm1.f64 (fma.f64 x y (*.f64 z t)))) |
(fma.f64 t z (*.f64 y x)) |
Compiled 1202 to 389 computations (67.6% saved)
4 alts after pruning (3 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 86 | 3 | 89 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 1 | 2 |
| Done | 0 | 0 | 0 |
| Total | 87 | 4 | 91 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 76.8% | (fma.f64 (*.f64 z (sqrt.f64 t)) (sqrt.f64 t) (*.f64 x y)) |
| ✓ | 99.6% | (+.f64 (*.f64 x y) (*.f64 z t)) |
| ▶ | 56.3% | (*.f64 y x) |
| ▶ | 48.4% | (*.f64 t z) |
| ▶ | 76.8% | (fma.f64 (*.f64 z (sqrt.f64 t)) (sqrt.f64 t) (*.f64 x y)) |
| ✓ | 99.6% | (+.f64 (*.f64 x y) (*.f64 z t)) |
| ▶ | 56.3% | (*.f64 y x) |
| ▶ | 48.4% | (*.f64 t z) |
Compiled 78 to 50 computations (35.9% saved)
Found 2 expressions with local accuracy:
| New | Accuracy | Program |
|---|---|---|
| ✓ | 99.9% | (fma.f64 (*.f64 z (sqrt.f64 t)) (sqrt.f64 t) (*.f64 x y)) |
| ✓ | 99.7% | (*.f64 z (sqrt.f64 t)) |
Compiled 38 to 11 computations (71.1% saved)
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | t | @ | inf | (fma.f64 (*.f64 z (sqrt.f64 t)) (sqrt.f64 t) (*.f64 x y)) |
| 1.0ms | t | @ | -inf | (fma.f64 (*.f64 z (sqrt.f64 t)) (sqrt.f64 t) (*.f64 x y)) |
| 0.0ms | z | @ | 0 | (*.f64 z (sqrt.f64 t)) |
| 0.0ms | t | @ | -inf | (*.f64 z (sqrt.f64 t)) |
| 0.0ms | t | @ | 0 | (*.f64 z (sqrt.f64 t)) |
| 1× | batch-egg-rewrite |
| 1150× | log-prod |
| 876× | prod-exp |
| 770× | pow-prod-down |
| 616× | pow-prod-up |
| 548× | pow-exp |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 12 | 40 |
| 1 | 234 | 30 |
| 2 | 2758 | 26 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 z (sqrt.f64 t)) |
(fma.f64 (*.f64 z (sqrt.f64 t)) (sqrt.f64 t) (*.f64 x y)) |
| Outputs |
|---|
(+.f64 0 (*.f64 z (sqrt.f64 t))) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sqrt.f64 t)) z)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sqrt.f64 t)) z)))) |
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sqrt.f64 t)) z))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sqrt.f64 t)) z)))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 z (sqrt.f64 t)))) 1) |
(pow.f64 (*.f64 z (sqrt.f64 t)) 1) |
(pow.f64 (cbrt.f64 (*.f64 z (sqrt.f64 t))) 3) |
(pow.f64 (*.f64 z (*.f64 z t)) 1/2) |
(pow.f64 (pow.f64 (*.f64 z (sqrt.f64 t)) 3) 1/3) |
(pow.f64 (sqrt.f64 (*.f64 z (sqrt.f64 t))) 2) |
(sqrt.f64 (*.f64 z (*.f64 z t))) |
(log.f64 (pow.f64 (exp.f64 (sqrt.f64 t)) z)) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 z (sqrt.f64 t))))) |
(cbrt.f64 (pow.f64 (*.f64 z (sqrt.f64 t)) 3)) |
(expm1.f64 (log1p.f64 (*.f64 z (sqrt.f64 t)))) |
(exp.f64 (log.f64 (*.f64 z (sqrt.f64 t)))) |
(exp.f64 (*.f64 (log.f64 (*.f64 z (sqrt.f64 t))) 1)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 z (sqrt.f64 t))) 1) 1)) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 z (sqrt.f64 t)))) 3)) |
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 z (sqrt.f64 t)))) 1/3)) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 z (sqrt.f64 t)))) 2)) |
(exp.f64 (+.f64 (log.f64 z) (*.f64 (log.f64 t) 1/2))) |
(exp.f64 (+.f64 (log.f64 z) (*.f64 (log.f64 (sqrt.f64 t)) 1))) |
(exp.f64 (+.f64 (*.f64 (log.f64 z) 1) (log.f64 (sqrt.f64 t)))) |
(exp.f64 (+.f64 (*.f64 (log.f64 z) 1) (*.f64 (log.f64 t) 1/2))) |
(exp.f64 (+.f64 (*.f64 (log.f64 z) 1) (*.f64 (log.f64 (sqrt.f64 t)) 1))) |
(exp.f64 (+.f64 (log.f64 (sqrt.f64 t)) (*.f64 (log.f64 z) 1))) |
(exp.f64 (+.f64 (*.f64 (log.f64 t) 1/2) (log.f64 z))) |
(exp.f64 (+.f64 (*.f64 (log.f64 t) 1/2) (*.f64 (log.f64 z) 1))) |
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 t)) 1) (log.f64 z))) |
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 t)) 1) (*.f64 (log.f64 z) 1))) |
(log1p.f64 (expm1.f64 (*.f64 z (sqrt.f64 t)))) |
(+.f64 (*.f64 x y) (*.f64 z t)) |
(+.f64 (*.f64 z t) (*.f64 x y)) |
(+.f64 0 (fma.f64 x y (*.f64 z t))) |
(+.f64 (*.f64 (*.f64 z t) 1) (*.f64 x y)) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))))) |
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x y (*.f64 z t))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))))) |
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x y (*.f64 z t)))) 1) |
(*.f64 (fma.f64 x y (*.f64 z t)) 1) |
(*.f64 1 (fma.f64 x y (*.f64 z t))) |
(*.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2) (cbrt.f64 (fma.f64 x y (*.f64 z t)))) |
(*.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)) (+.f64 (pow.f64 (*.f64 z t) 2) (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 z t) (*.f64 x y))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 z t) 2) (pow.f64 (*.f64 x y) 2)) (-.f64 (*.f64 z t) (*.f64 x y))) |
(pow.f64 (fma.f64 x y (*.f64 z t)) 1) |
(pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 3) |
(pow.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) 1/2) |
(pow.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) 1/3) |
(pow.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) 2) |
(sqrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2)) |
(log.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t))))) |
(log.f64 (*.f64 (pow.f64 (exp.f64 x) y) (pow.f64 (exp.f64 z) t))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (pow.f64 (exp.f64 z) t))) |
(log.f64 (*.f64 (pow.f64 (exp.f64 z) t) (+.f64 1 (expm1.f64 (*.f64 x y))))) |
(cbrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3)) |
(expm1.f64 (log1p.f64 (fma.f64 x y (*.f64 z t)))) |
(exp.f64 (log.f64 (fma.f64 x y (*.f64 z t)))) |
(exp.f64 (*.f64 (log.f64 (fma.f64 x y (*.f64 z t))) 1)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 x y (*.f64 z t))) 1) 1)) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t)))) 3)) |
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3)) 1/3)) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t)))) 2)) |
(log1p.f64 (expm1.f64 (fma.f64 x y (*.f64 z t)))) |
| 1× | egg-herbie |
| 988× | fma-def |
| 740× | log-prod |
| 622× | times-frac |
| 604× | unswap-sqr |
| 560× | distribute-lft-in |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 174 | 1682 |
| 1 | 382 | 1616 |
| 2 | 1171 | 1612 |
| 3 | 4850 | 1574 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (sqrt.f64 t) z) |
(*.f64 (sqrt.f64 t) z) |
(*.f64 (sqrt.f64 t) z) |
(*.f64 (sqrt.f64 t) z) |
(*.f64 (sqrt.f64 t) z) |
(*.f64 (sqrt.f64 t) z) |
(*.f64 (sqrt.f64 t) z) |
(*.f64 (sqrt.f64 t) z) |
(*.f64 (sqrt.f64 t) z) |
(*.f64 (sqrt.f64 t) z) |
(*.f64 (sqrt.f64 t) z) |
(*.f64 (sqrt.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 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 0 (*.f64 z (sqrt.f64 t))) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sqrt.f64 t)) z)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sqrt.f64 t)) z)))) |
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sqrt.f64 t)) z))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sqrt.f64 t)) z)))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 z (sqrt.f64 t)))) 1) |
(pow.f64 (*.f64 z (sqrt.f64 t)) 1) |
(pow.f64 (cbrt.f64 (*.f64 z (sqrt.f64 t))) 3) |
(pow.f64 (*.f64 z (*.f64 z t)) 1/2) |
(pow.f64 (pow.f64 (*.f64 z (sqrt.f64 t)) 3) 1/3) |
(pow.f64 (sqrt.f64 (*.f64 z (sqrt.f64 t))) 2) |
(sqrt.f64 (*.f64 z (*.f64 z t))) |
(log.f64 (pow.f64 (exp.f64 (sqrt.f64 t)) z)) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 z (sqrt.f64 t))))) |
(cbrt.f64 (pow.f64 (*.f64 z (sqrt.f64 t)) 3)) |
(expm1.f64 (log1p.f64 (*.f64 z (sqrt.f64 t)))) |
(exp.f64 (log.f64 (*.f64 z (sqrt.f64 t)))) |
(exp.f64 (*.f64 (log.f64 (*.f64 z (sqrt.f64 t))) 1)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 z (sqrt.f64 t))) 1) 1)) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 z (sqrt.f64 t)))) 3)) |
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 z (sqrt.f64 t)))) 1/3)) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 z (sqrt.f64 t)))) 2)) |
(exp.f64 (+.f64 (log.f64 z) (*.f64 (log.f64 t) 1/2))) |
(exp.f64 (+.f64 (log.f64 z) (*.f64 (log.f64 (sqrt.f64 t)) 1))) |
(exp.f64 (+.f64 (*.f64 (log.f64 z) 1) (log.f64 (sqrt.f64 t)))) |
(exp.f64 (+.f64 (*.f64 (log.f64 z) 1) (*.f64 (log.f64 t) 1/2))) |
(exp.f64 (+.f64 (*.f64 (log.f64 z) 1) (*.f64 (log.f64 (sqrt.f64 t)) 1))) |
(exp.f64 (+.f64 (log.f64 (sqrt.f64 t)) (*.f64 (log.f64 z) 1))) |
(exp.f64 (+.f64 (*.f64 (log.f64 t) 1/2) (log.f64 z))) |
(exp.f64 (+.f64 (*.f64 (log.f64 t) 1/2) (*.f64 (log.f64 z) 1))) |
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 t)) 1) (log.f64 z))) |
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 t)) 1) (*.f64 (log.f64 z) 1))) |
(log1p.f64 (expm1.f64 (*.f64 z (sqrt.f64 t)))) |
(+.f64 (*.f64 x y) (*.f64 z t)) |
(+.f64 (*.f64 z t) (*.f64 x y)) |
(+.f64 0 (fma.f64 x y (*.f64 z t))) |
(+.f64 (*.f64 (*.f64 z t) 1) (*.f64 x y)) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))))) |
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x y (*.f64 z t))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))))) |
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x y (*.f64 z t)))) 1) |
(*.f64 (fma.f64 x y (*.f64 z t)) 1) |
(*.f64 1 (fma.f64 x y (*.f64 z t))) |
(*.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2) (cbrt.f64 (fma.f64 x y (*.f64 z t)))) |
(*.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)) (+.f64 (pow.f64 (*.f64 z t) 2) (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 z t) (*.f64 x y))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 z t) 2) (pow.f64 (*.f64 x y) 2)) (-.f64 (*.f64 z t) (*.f64 x y))) |
(pow.f64 (fma.f64 x y (*.f64 z t)) 1) |
(pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 3) |
(pow.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) 1/2) |
(pow.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) 1/3) |
(pow.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) 2) |
(sqrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2)) |
(log.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t))))) |
(log.f64 (*.f64 (pow.f64 (exp.f64 x) y) (pow.f64 (exp.f64 z) t))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (pow.f64 (exp.f64 z) t))) |
(log.f64 (*.f64 (pow.f64 (exp.f64 z) t) (+.f64 1 (expm1.f64 (*.f64 x y))))) |
(cbrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3)) |
(expm1.f64 (log1p.f64 (fma.f64 x y (*.f64 z t)))) |
(exp.f64 (log.f64 (fma.f64 x y (*.f64 z t)))) |
(exp.f64 (*.f64 (log.f64 (fma.f64 x y (*.f64 z t))) 1)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 x y (*.f64 z t))) 1) 1)) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t)))) 3)) |
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3)) 1/3)) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t)))) 2)) |
(log1p.f64 (expm1.f64 (fma.f64 x y (*.f64 z t)))) |
| Outputs |
|---|
(*.f64 (sqrt.f64 t) z) |
(*.f64 (sqrt.f64 t) z) |
(*.f64 (sqrt.f64 t) z) |
(*.f64 (sqrt.f64 t) z) |
(*.f64 (sqrt.f64 t) z) |
(*.f64 (sqrt.f64 t) z) |
(*.f64 (sqrt.f64 t) z) |
(*.f64 (sqrt.f64 t) z) |
(*.f64 (sqrt.f64 t) z) |
(*.f64 (sqrt.f64 t) z) |
(*.f64 (sqrt.f64 t) z) |
(*.f64 (sqrt.f64 t) z) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 y x) |
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 t z) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 y x) (*.f64 t z)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 0 (*.f64 z (sqrt.f64 t))) |
(*.f64 (sqrt.f64 t) z) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sqrt.f64 t)) z)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sqrt.f64 t)) z)))) |
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sqrt.f64 t)) z)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sqrt.f64 t)) z)))) |
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sqrt.f64 t)) z)))) |
(*.f64 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sqrt.f64 t)) z))) 3) |
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sqrt.f64 t)) z))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sqrt.f64 t)) z)))) |
(*.f64 (sqrt.f64 t) z) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 z (sqrt.f64 t)))) 1) |
(*.f64 (sqrt.f64 t) z) |
(pow.f64 (*.f64 z (sqrt.f64 t)) 1) |
(*.f64 (sqrt.f64 t) z) |
(pow.f64 (cbrt.f64 (*.f64 z (sqrt.f64 t))) 3) |
(*.f64 (sqrt.f64 t) z) |
(pow.f64 (*.f64 z (*.f64 z t)) 1/2) |
(sqrt.f64 (*.f64 (*.f64 z z) t)) |
(sqrt.f64 (*.f64 t (*.f64 z z))) |
(fabs.f64 (*.f64 (sqrt.f64 t) z)) |
(pow.f64 (pow.f64 (*.f64 z (sqrt.f64 t)) 3) 1/3) |
(*.f64 (sqrt.f64 t) z) |
(pow.f64 (sqrt.f64 (*.f64 z (sqrt.f64 t))) 2) |
(*.f64 (sqrt.f64 t) z) |
(sqrt.f64 (*.f64 z (*.f64 z t))) |
(sqrt.f64 (*.f64 (*.f64 z z) t)) |
(sqrt.f64 (*.f64 t (*.f64 z z))) |
(fabs.f64 (*.f64 (sqrt.f64 t) z)) |
(log.f64 (pow.f64 (exp.f64 (sqrt.f64 t)) z)) |
(*.f64 (sqrt.f64 t) z) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 z (sqrt.f64 t))))) |
(*.f64 (sqrt.f64 t) z) |
(cbrt.f64 (pow.f64 (*.f64 z (sqrt.f64 t)) 3)) |
(*.f64 (sqrt.f64 t) z) |
(expm1.f64 (log1p.f64 (*.f64 z (sqrt.f64 t)))) |
(*.f64 (sqrt.f64 t) z) |
(exp.f64 (log.f64 (*.f64 z (sqrt.f64 t)))) |
(*.f64 (sqrt.f64 t) z) |
(exp.f64 (*.f64 (log.f64 (*.f64 z (sqrt.f64 t))) 1)) |
(*.f64 (sqrt.f64 t) z) |
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 z (sqrt.f64 t))) 1) 1)) |
(*.f64 (sqrt.f64 t) z) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 z (sqrt.f64 t)))) 3)) |
(*.f64 (sqrt.f64 t) z) |
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 z (sqrt.f64 t)))) 1/3)) |
(*.f64 (sqrt.f64 t) z) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 z (sqrt.f64 t)))) 2)) |
(*.f64 (sqrt.f64 t) z) |
(exp.f64 (+.f64 (log.f64 z) (*.f64 (log.f64 t) 1/2))) |
(*.f64 (sqrt.f64 t) z) |
(exp.f64 (+.f64 (log.f64 z) (*.f64 (log.f64 (sqrt.f64 t)) 1))) |
(*.f64 (sqrt.f64 t) z) |
(exp.f64 (+.f64 (*.f64 (log.f64 z) 1) (log.f64 (sqrt.f64 t)))) |
(*.f64 (sqrt.f64 t) z) |
(exp.f64 (+.f64 (*.f64 (log.f64 z) 1) (*.f64 (log.f64 t) 1/2))) |
(*.f64 (sqrt.f64 t) z) |
(exp.f64 (+.f64 (*.f64 (log.f64 z) 1) (*.f64 (log.f64 (sqrt.f64 t)) 1))) |
(*.f64 (sqrt.f64 t) z) |
(exp.f64 (+.f64 (log.f64 (sqrt.f64 t)) (*.f64 (log.f64 z) 1))) |
(*.f64 (sqrt.f64 t) z) |
(exp.f64 (+.f64 (*.f64 (log.f64 t) 1/2) (log.f64 z))) |
(*.f64 (sqrt.f64 t) z) |
(exp.f64 (+.f64 (*.f64 (log.f64 t) 1/2) (*.f64 (log.f64 z) 1))) |
(*.f64 (sqrt.f64 t) z) |
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 t)) 1) (log.f64 z))) |
(*.f64 (sqrt.f64 t) z) |
(exp.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 t)) 1) (*.f64 (log.f64 z) 1))) |
(*.f64 (sqrt.f64 t) z) |
(log1p.f64 (expm1.f64 (*.f64 z (sqrt.f64 t)))) |
(*.f64 (sqrt.f64 t) z) |
(+.f64 (*.f64 x y) (*.f64 z t)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 z t) (*.f64 x y)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 0 (fma.f64 x y (*.f64 z t))) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (*.f64 (*.f64 z t) 1) (*.f64 x y)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))))) |
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (fma.f64 z t (*.f64 y x)))))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 z t (*.f64 y x)))))) |
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (fma.f64 t z (*.f64 y x)))))) |
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x y (*.f64 z t))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))))) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x y (*.f64 z t)))) 1) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 (fma.f64 x y (*.f64 z t)) 1) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 1 (fma.f64 x y (*.f64 z t))) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 2) (cbrt.f64 (fma.f64 x y (*.f64 z t)))) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(*.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) (sqrt.f64 (fma.f64 x y (*.f64 z t)))) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(/.f64 (+.f64 (pow.f64 (*.f64 z t) 3) (pow.f64 (*.f64 x y) 3)) (+.f64 (pow.f64 (*.f64 z t) 2) (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 z t) (*.f64 x y))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (-.f64 (+.f64 (pow.f64 (*.f64 t z) 2) (pow.f64 (*.f64 y x) 2)) (*.f64 z (*.f64 t (*.f64 y x))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (+.f64 (pow.f64 (*.f64 t z) 2) (*.f64 (*.f64 y x) (-.f64 (*.f64 y x) (*.f64 t z))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 t z) 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 (*.f64 y x) (-.f64 (*.f64 y x) (*.f64 t z)) (pow.f64 (*.f64 t z) 2))) |
(/.f64 (-.f64 (pow.f64 (*.f64 z t) 2) (pow.f64 (*.f64 x y) 2)) (-.f64 (*.f64 z t) (*.f64 x y))) |
(/.f64 (-.f64 (pow.f64 (*.f64 t z) 2) (pow.f64 (*.f64 y x) 2)) (-.f64 (*.f64 t z) (*.f64 y x))) |
(/.f64 (fma.f64 t z (*.f64 y x)) 1) |
(pow.f64 (fma.f64 x y (*.f64 z t)) 1) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(pow.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t))) 3) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(pow.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2) 1/2) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(pow.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3) 1/3) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(pow.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t))) 2) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(sqrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 2)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(log.f64 (exp.f64 (fma.f64 x y (*.f64 z t)))) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x y (*.f64 z t))))) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(log.f64 (*.f64 (pow.f64 (exp.f64 x) y) (pow.f64 (exp.f64 z) t))) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (pow.f64 (exp.f64 z) t))) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(log.f64 (*.f64 (pow.f64 (exp.f64 z) t) (+.f64 1 (expm1.f64 (*.f64 x y))))) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(cbrt.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(expm1.f64 (log1p.f64 (fma.f64 x y (*.f64 z t)))) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(exp.f64 (log.f64 (fma.f64 x y (*.f64 z t)))) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(exp.f64 (*.f64 (log.f64 (fma.f64 x y (*.f64 z t))) 1)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 x y (*.f64 z t))) 1) 1)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 x y (*.f64 z t)))) 3)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 x y (*.f64 z t)) 3)) 1/3)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 x y (*.f64 z t)))) 2)) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
(log1p.f64 (expm1.f64 (fma.f64 x y (*.f64 z t)))) |
(fma.f64 z t (*.f64 y x)) |
(fma.f64 t z (*.f64 y x)) |
Compiled 1118 to 357 computations (68.1% saved)
4 alts after pruning (0 fresh and 4 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 84 | 0 | 84 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 3 | 3 |
| Done | 0 | 1 | 1 |
| Total | 84 | 4 | 88 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 76.8% | (fma.f64 (*.f64 z (sqrt.f64 t)) (sqrt.f64 t) (*.f64 x y)) |
| ✓ | 99.6% | (+.f64 (*.f64 x y) (*.f64 z t)) |
| ✓ | 56.3% | (*.f64 y x) |
| ✓ | 48.4% | (*.f64 t z) |
Compiled 72 to 38 computations (47.2% saved)
| Inputs |
|---|
(*.f64 t z) |
(*.f64 y x) |
(+.f64 (*.f64 x y) (*.f64 z t)) |
(fma.f64 x y (*.f64 z t)) |
(fma.f64 (*.f64 z (sqrt.f64 t)) (sqrt.f64 t) (*.f64 x y)) |
| Outputs |
|---|
(fma.f64 x y (*.f64 z t)) |
7 calls:
| 5.0ms | t |
| 5.0ms | y |
| 4.0ms | (*.f64 x y) |
| 4.0ms | x |
| 4.0ms | z |
| Accuracy | Segments | Branch |
|---|---|---|
| 99.6% | 1 | x |
| 99.6% | 1 | y |
| 99.6% | 1 | z |
| 99.6% | 1 | t |
| 99.6% | 1 | (+.f64 (*.f64 x y) (*.f64 z t)) |
| 99.6% | 1 | (*.f64 x y) |
| 99.6% | 1 | (*.f64 z t) |
Compiled 78 to 46 computations (41% saved)
| Inputs |
|---|
(*.f64 t z) |
(*.f64 y x) |
(+.f64 (*.f64 x y) (*.f64 z t)) |
| Outputs |
|---|
(+.f64 (*.f64 x y) (*.f64 z t)) |
7 calls:
| 4.0ms | (*.f64 z t) |
| 4.0ms | t |
| 4.0ms | y |
| 3.0ms | x |
| 3.0ms | z |
| Accuracy | Segments | Branch |
|---|---|---|
| 99.6% | 1 | x |
| 99.6% | 1 | y |
| 99.6% | 1 | z |
| 99.6% | 1 | t |
| 99.6% | 1 | (+.f64 (*.f64 x y) (*.f64 z t)) |
| 99.6% | 1 | (*.f64 x y) |
| 99.6% | 1 | (*.f64 z t) |
Compiled 62 to 42 computations (32.3% saved)
| Inputs |
|---|
(*.f64 t z) |
(*.f64 y x) |
| Outputs |
|---|
(*.f64 y x) |
(*.f64 t z) |
(*.f64 y x) |
(*.f64 t z) |
(*.f64 y x) |
4 calls:
| 25.0ms | z |
| 17.0ms | y |
| 16.0ms | x |
| 14.0ms | t |
| Accuracy | Segments | Branch |
|---|---|---|
| 73.7% | 5 | x |
| 77.5% | 5 | y |
| 77.4% | 5 | z |
| 75.8% | 5 | t |
Compiled 30 to 22 computations (26.7% saved)
Total 0.0b remaining (0%)
Threshold costs 0b (0%)
| Inputs |
|---|
(*.f64 t z) |
| Outputs |
|---|
(*.f64 t z) |
4 calls:
| 3.0ms | z |
| 3.0ms | t |
| 3.0ms | x |
| 2.0ms | y |
| Accuracy | Segments | Branch |
|---|---|---|
| 48.4% | 1 | x |
| 48.4% | 1 | t |
| 48.4% | 1 | z |
| 48.4% | 1 | y |
Compiled 27 to 21 computations (22.2% saved)
| 4× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 53.0ms | 22062394182673.465 | 21968675320316572.0 |
| 15.0ms | 6.4622874544571104e-27 | 9.070374089890541e-21 |
| 12.0ms | 9.613007938273877e-39 | 1.1091980328497172e-36 |
| 17.0ms | -3.0228641543974484e-133 | -5.694592314255169e-143 |
| 84.0ms | 483× | body | 256 | valid |
| 6.0ms | 61× | body | 256 | infinite |
Compiled 562 to 421 computations (25.1% saved)
| 1× | egg-herbie |
| 8× | not-or |
| 6× | not-not |
| 6× | if-if-or-not |
| 6× | if-not |
| 4× | *-commutative |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 28 | 112 |
| 1 | 39 | 112 |
| 2 | 42 | 112 |
| 3 | 48 | 108 |
| 4 | 52 | 108 |
| 5 | 56 | 108 |
| 6 | 57 | 108 |
| 7 | 58 | 108 |
| 1× | done |
| 1× | saturated |
| Inputs |
|---|
(fma.f64 x y (*.f64 z t)) |
(+.f64 (*.f64 x y) (*.f64 z t)) |
(if (<=.f64 y -7672009237256583/51146728248377216718956089012931236753385031969422887335676427626502090568823039920051095192592252455482604439493126109519019633529459266458258243584) (*.f64 y x) (if (<=.f64 y 5363734393030611/383123885216472214589586756787577295904684780545900544) (*.f64 t z) (if (<=.f64 y 8166776806102523/10889035741470030830827987437816582766592) (*.f64 y x) (if (<=.f64 y 54000000000000) (*.f64 t z) (*.f64 y x))))) |
(*.f64 t z) |
| Outputs |
|---|
(fma.f64 x y (*.f64 z t)) |
(+.f64 (*.f64 x y) (*.f64 z t)) |
(+.f64 (*.f64 z t) (*.f64 x y)) |
(if (<=.f64 y -7672009237256583/51146728248377216718956089012931236753385031969422887335676427626502090568823039920051095192592252455482604439493126109519019633529459266458258243584) (*.f64 y x) (if (<=.f64 y 5363734393030611/383123885216472214589586756787577295904684780545900544) (*.f64 t z) (if (<=.f64 y 8166776806102523/10889035741470030830827987437816582766592) (*.f64 y x) (if (<=.f64 y 54000000000000) (*.f64 t z) (*.f64 y x))))) |
(if (<=.f64 y -7672009237256583/51146728248377216718956089012931236753385031969422887335676427626502090568823039920051095192592252455482604439493126109519019633529459266458258243584) (*.f64 x y) (if (<=.f64 y 5363734393030611/383123885216472214589586756787577295904684780545900544) (*.f64 z t) (if (<=.f64 y 8166776806102523/10889035741470030830827987437816582766592) (*.f64 x y) (if (<=.f64 y 54000000000000) (*.f64 z t) (*.f64 x y))))) |
(if (<=.f64 y -7672009237256583/51146728248377216718956089012931236753385031969422887335676427626502090568823039920051095192592252455482604439493126109519019633529459266458258243584) (*.f64 x y) (if (or (<=.f64 y 5363734393030611/383123885216472214589586756787577295904684780545900544) (and (not (<=.f64 y 8166776806102523/10889035741470030830827987437816582766592)) (<=.f64 y 54000000000000))) (*.f64 z t) (*.f64 x y))) |
(*.f64 t z) |
(*.f64 z t) |
Compiled 58 to 37 computations (36.2% saved)
| 8× | fma-def |
| 4× | *-commutative |
| 2× | +-commutative |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 15 |
| 1 | 14 | 15 |
| 2 | 17 | 15 |
| 1× | saturated |
Compiled 17 to 8 computations (52.9% saved)
(sort z t)
(sort x y)
Compiled 154 to 80 computations (48.1% saved)
Loading profile data...