
Time bar (total: 2.6s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 0 |
| 100% | 99.9% | 0% | 0.1% | 0% | 0% | 0% | 1 |
Compiled 13 to 9 computations (30.8% saved)
| 624.0ms | 6574× | body | 256 | valid |
| 151.0ms | 1682× | body | 256 | infinite |
| 1× | egg-herbie |
| 2858× | fma-def |
| 436× | unsub-neg |
| 316× | distribute-rgt-in |
| 272× | distribute-lft-out |
| 234× | sub-neg |
Useful iterations: 5 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 33 | 163 |
| 1 | 77 | 159 |
| 2 | 162 | 155 |
| 3 | 386 | 145 |
| 4 | 1148 | 117 |
| 5 | 2347 | 113 |
| 6 | 3089 | 113 |
| 7 | 3174 | 113 |
| 8 | 3178 | 113 |
| 9 | 3178 | 113 |
| 10 | 3811 | 113 |
| 11 | 3811 | 113 |
| 1× | saturated |
| Inputs |
|---|
(+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
(+.f64 (*.f64 (neg.f64 x) y) (*.f64 z (-.f64 1 y))) |
(+.f64 (*.f64 x (neg.f64 y)) (*.f64 z (-.f64 1 (neg.f64 y)))) |
(+.f64 (*.f64 x y) (*.f64 (neg.f64 z) (-.f64 1 y))) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 x))) |
(+.f64 (*.f64 z y) (*.f64 x (-.f64 1 y))) |
(+.f64 (*.f64 x z) (*.f64 y (-.f64 1 z))) |
| Outputs |
|---|
(+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
(fma.f64 x y (*.f64 z (-.f64 1 y))) |
(-.f64 (fma.f64 x y z) (*.f64 y z)) |
(fma.f64 y (-.f64 x z) z) |
(+.f64 (*.f64 (neg.f64 x) y) (*.f64 z (-.f64 1 y))) |
(fma.f64 (neg.f64 x) y (*.f64 z (-.f64 1 y))) |
(-.f64 (*.f64 z (-.f64 1 y)) (*.f64 x y)) |
(+.f64 z (*.f64 y (-.f64 (neg.f64 z) x))) |
(fma.f64 y (-.f64 (neg.f64 z) x) z) |
(-.f64 z (*.f64 y (+.f64 x z))) |
(+.f64 (*.f64 x (neg.f64 y)) (*.f64 z (-.f64 1 (neg.f64 y)))) |
(fma.f64 x (neg.f64 y) (*.f64 z (-.f64 1 (neg.f64 y)))) |
(-.f64 (*.f64 z (+.f64 y 1)) (*.f64 x y)) |
(+.f64 z (-.f64 (*.f64 y z) (*.f64 x y))) |
(+.f64 z (*.f64 y (-.f64 z x))) |
(fma.f64 y (-.f64 z x) z) |
(+.f64 (*.f64 x y) (*.f64 (neg.f64 z) (-.f64 1 y))) |
(fma.f64 x y (*.f64 (-.f64 1 y) (neg.f64 z))) |
(-.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
(fma.f64 x y (*.f64 z (+.f64 y -1))) |
(fma.f64 x y (-.f64 (*.f64 y z) z)) |
(fma.f64 y (+.f64 x z) (neg.f64 z)) |
(-.f64 (*.f64 y (+.f64 x z)) z) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 x))) |
(fma.f64 y x (*.f64 z (-.f64 1 x))) |
(fma.f64 x y (*.f64 z (-.f64 1 x))) |
(fma.f64 z (-.f64 1 x) (*.f64 x y)) |
(fma.f64 x (fma.f64 z -1 y) z) |
(fma.f64 x (-.f64 y z) z) |
(+.f64 (*.f64 z y) (*.f64 x (-.f64 1 y))) |
(fma.f64 z y (*.f64 x (-.f64 1 y))) |
(fma.f64 x (-.f64 1 y) (*.f64 y z)) |
(+.f64 x (*.f64 y (-.f64 z x))) |
(fma.f64 y (-.f64 z x) x) |
(+.f64 (*.f64 x z) (*.f64 y (-.f64 1 z))) |
(fma.f64 x z (*.f64 y (-.f64 1 z))) |
(-.f64 (fma.f64 x z y) (*.f64 y z)) |
(fma.f64 z (fma.f64 y -1 x) y) |
(fma.f64 z (-.f64 x y) y) |
Compiled 15 to 11 computations (26.7% saved)
| 1× | egg-herbie |
| 1074× | fma-def |
| 142× | fma-neg |
| 90× | cancel-sign-sub-inv |
| 84× | sub-neg |
| 70× | distribute-rgt-in |
Useful iterations: 5 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 21 |
| 1 | 20 | 21 |
| 2 | 33 | 21 |
| 3 | 60 | 21 |
| 4 | 129 | 17 |
| 5 | 221 | 15 |
| 6 | 351 | 15 |
| 7 | 563 | 15 |
| 8 | 972 | 15 |
| 9 | 1160 | 15 |
| 10 | 1219 | 15 |
| 11 | 1229 | 15 |
| 1× | saturated |
| Inputs |
|---|
(+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
| Outputs |
|---|
(+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
(fma.f64 x y (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 x y)) |
(-.f64 (fma.f64 x y z) (*.f64 y z)) |
(fma.f64 y (fma.f64 z -1 x) z) |
(fma.f64 y (-.f64 x z) z) |
Compiled 49 to 23 computations (53.1% saved)
3 alts after pruning (3 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 4 | 2 | 6 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 4 | 3 | 7 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 100.0% | (fma.f64 y (-.f64 x z) z) |
| ▶ | 97.7% | (+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
| ▶ | 100.0% | (fma.f64 y (-.f64 x z) z) |
| ▶ | 97.7% | (+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
Compiled 42 to 26 computations (38.1% saved)
Found 2 expressions with local accuracy:
| New | Accuracy | Program |
|---|---|---|
| ✓ | 100.0% | (*.f64 z (-.f64 1 y)) |
| ✓ | 97.8% | (+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
Compiled 40 to 17 computations (57.5% saved)
15 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | y | @ | inf | (+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
| 0.0ms | x | @ | 0 | (+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
| 0.0ms | y | @ | 0 | (+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
| 0.0ms | z | @ | -inf | (+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
| 0.0ms | y | @ | -inf | (+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
| 1× | batch-egg-rewrite |
| 1052× | log-prod |
| 868× | prod-exp |
| 838× | fma-def |
| 770× | pow-prod-down |
| 498× | pow-prod-up |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 34 |
| 1 | 213 | 34 |
| 2 | 2900 | 34 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
(*.f64 z (-.f64 1 y)) |
| Outputs |
|---|
(-.f64 (exp.f64 (log1p.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) 1) |
(-.f64 (/.f64 (pow.f64 (*.f64 x y) 2) (-.f64 (*.f64 x y) (*.f64 z (-.f64 1 y)))) (/.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 2) (-.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))))) |
(*.f64 1 (fma.f64 z (-.f64 1 y) (*.f64 x y))) |
(*.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)) 1) |
(*.f64 (cbrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))) (pow.f64 (cbrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))) 2) (cbrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) |
(*.f64 (sqrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))) (sqrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) |
(*.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z (-.f64 1 y)) 3)) (/.f64 1 (fma.f64 (*.f64 z (-.f64 1 y)) (fma.f64 z (-.f64 1 y) (neg.f64 (*.f64 x y))) (pow.f64 (*.f64 x y) 2)))) |
(*.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z (-.f64 1 y)) 2)) (/.f64 1 (-.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))))) |
(/.f64 1 (/.f64 (fma.f64 (*.f64 z (-.f64 1 y)) (fma.f64 z (-.f64 1 y) (neg.f64 (*.f64 x y))) (pow.f64 (*.f64 x y) 2)) (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z (-.f64 1 y)) 3)))) |
(/.f64 1 (/.f64 (-.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z (-.f64 1 y)) 2)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z (-.f64 1 y)) 3)) (fma.f64 (*.f64 z (-.f64 1 y)) (fma.f64 z (-.f64 1 y) (neg.f64 (*.f64 x y))) (pow.f64 (*.f64 x y) 2))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z (-.f64 1 y)) 3)) (+.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 2) (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 x y) (*.f64 z (-.f64 1 y)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z (-.f64 1 y)) 2)) (-.f64 (*.f64 x y) (*.f64 z (-.f64 1 y)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z (-.f64 1 y)) 3))) (neg.f64 (fma.f64 (*.f64 z (-.f64 1 y)) (fma.f64 z (-.f64 1 y) (neg.f64 (*.f64 x y))) (pow.f64 (*.f64 x y) 2)))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z (-.f64 1 y)) 2))) (neg.f64 (-.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 2) (pow.f64 (*.f64 x y) 2)) (fma.f64 z (-.f64 1 y) (neg.f64 (*.f64 x y)))) |
(pow.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)) 1) |
(pow.f64 (cbrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))) 3) |
(pow.f64 (pow.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)) 2) 1/2) |
(pow.f64 (pow.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)) 3) 1/3) |
(pow.f64 (sqrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))) 2) |
(pow.f64 (/.f64 (fma.f64 (*.f64 z (-.f64 1 y)) (fma.f64 z (-.f64 1 y) (neg.f64 (*.f64 x y))) (pow.f64 (*.f64 x y) 2)) (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z (-.f64 1 y)) 3))) -1) |
(pow.f64 (/.f64 (-.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z (-.f64 1 y)) 2))) -1) |
(sqrt.f64 (pow.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)) 2)) |
(log.f64 (exp.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))))) |
(log.f64 (*.f64 (pow.f64 (exp.f64 x) y) (+.f64 1 (expm1.f64 (*.f64 z (-.f64 1 y)))))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (pow.f64 (exp.f64 z) (-.f64 1 y)))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (+.f64 1 (expm1.f64 (*.f64 z (-.f64 1 y)))))) |
(log.f64 (*.f64 (pow.f64 (exp.f64 z) (-.f64 1 y)) (+.f64 1 (expm1.f64 (*.f64 x y))))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z (-.f64 1 y)))) (pow.f64 (exp.f64 x) y))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z (-.f64 1 y)))) (+.f64 1 (expm1.f64 (*.f64 x y))))) |
(cbrt.f64 (pow.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)) 3)) |
(expm1.f64 (log1p.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) |
(exp.f64 (log.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) |
(exp.f64 (*.f64 (log.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))) 1)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))) 1) 1)) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) 3)) |
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) 1/3)) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) 2)) |
(log1p.f64 (expm1.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) |
(fma.f64 x y (*.f64 z (-.f64 1 y))) |
(fma.f64 y x (*.f64 z (-.f64 1 y))) |
(fma.f64 (*.f64 x y) 1 (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 x y)) |
(fma.f64 1 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
(fma.f64 1 (*.f64 z (-.f64 1 y)) (*.f64 x y)) |
(fma.f64 (-.f64 1 y) z (*.f64 x y)) |
(fma.f64 (*.f64 z (-.f64 1 y)) 1 (*.f64 x y)) |
(fma.f64 (cbrt.f64 (pow.f64 (-.f64 1 y) 2)) (*.f64 (cbrt.f64 (-.f64 1 y)) z) (*.f64 x y)) |
(fma.f64 (cbrt.f64 (*.f64 x y)) (cbrt.f64 (pow.f64 (*.f64 x y) 2)) (*.f64 z (-.f64 1 y))) |
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 x y) 2)) (cbrt.f64 (*.f64 x y)) (*.f64 z (-.f64 1 y))) |
(fma.f64 (cbrt.f64 (*.f64 z (-.f64 1 y))) (pow.f64 (cbrt.f64 (*.f64 z (-.f64 1 y))) 2) (*.f64 x y)) |
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z (-.f64 1 y))) 2) (cbrt.f64 (*.f64 z (-.f64 1 y))) (*.f64 x y)) |
(fma.f64 (cbrt.f64 (*.f64 z z)) (*.f64 (cbrt.f64 z) (-.f64 1 y)) (*.f64 x y)) |
(fma.f64 (cbrt.f64 (*.f64 x x)) (*.f64 (cbrt.f64 x) y) (*.f64 z (-.f64 1 y))) |
(fma.f64 (cbrt.f64 (*.f64 y y)) (*.f64 (cbrt.f64 y) x) (*.f64 z (-.f64 1 y))) |
(fma.f64 (sqrt.f64 (-.f64 1 y)) (*.f64 (sqrt.f64 (-.f64 1 y)) z) (*.f64 x y)) |
(fma.f64 (sqrt.f64 (*.f64 x y)) (sqrt.f64 (*.f64 x y)) (*.f64 z (-.f64 1 y))) |
(fma.f64 (sqrt.f64 (*.f64 z (-.f64 1 y))) (sqrt.f64 (*.f64 z (-.f64 1 y))) (*.f64 x y)) |
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (-.f64 1 y)) (*.f64 x y)) |
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (*.f64 z (-.f64 1 y))) |
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (*.f64 z (-.f64 1 y))) |
(fma.f64 (*.f64 x (cbrt.f64 (*.f64 y y))) (cbrt.f64 y) (*.f64 z (-.f64 1 y))) |
(fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (*.f64 z (-.f64 1 y))) |
(fma.f64 (*.f64 y (cbrt.f64 (*.f64 x x))) (cbrt.f64 x) (*.f64 z (-.f64 1 y))) |
(fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (*.f64 z (-.f64 1 y))) |
(fma.f64 (*.f64 z (cbrt.f64 (pow.f64 (-.f64 1 y) 2))) (cbrt.f64 (-.f64 1 y)) (*.f64 x y)) |
(fma.f64 (*.f64 z (sqrt.f64 (-.f64 1 y))) (sqrt.f64 (-.f64 1 y)) (*.f64 x y)) |
(fma.f64 (*.f64 (-.f64 1 y) (cbrt.f64 (*.f64 z z))) (cbrt.f64 z) (*.f64 x y)) |
(fma.f64 (*.f64 (-.f64 1 y) (sqrt.f64 z)) (sqrt.f64 z) (*.f64 x y)) |
(+.f64 z (*.f64 z (neg.f64 y))) |
(+.f64 z (*.f64 (neg.f64 y) z)) |
(+.f64 0 (*.f64 z (-.f64 1 y))) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 1 y))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 1 y))))) |
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 1 y)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 1 y))))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 z (-.f64 1 y)))) 1) |
(/.f64 (*.f64 z (-.f64 1 (pow.f64 y 3))) (+.f64 1 (fma.f64 y y y))) |
(/.f64 (*.f64 z (-.f64 1 (*.f64 y y))) (+.f64 y 1)) |
(/.f64 (*.f64 (-.f64 1 (pow.f64 y 3)) z) (+.f64 1 (fma.f64 y y y))) |
(/.f64 (*.f64 (-.f64 1 (*.f64 y y)) z) (+.f64 y 1)) |
(pow.f64 (*.f64 z (-.f64 1 y)) 1) |
(pow.f64 (cbrt.f64 (*.f64 z (-.f64 1 y))) 3) |
(pow.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 2) 1/2) |
(pow.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 3) 1/3) |
(pow.f64 (sqrt.f64 (*.f64 z (-.f64 1 y))) 2) |
(sqrt.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 2)) |
(log.f64 (pow.f64 (exp.f64 z) (-.f64 1 y))) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 z (-.f64 1 y))))) |
(cbrt.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 3)) |
(expm1.f64 (log1p.f64 (*.f64 z (-.f64 1 y)))) |
(exp.f64 (log.f64 (*.f64 z (-.f64 1 y)))) |
(exp.f64 (*.f64 (log.f64 (*.f64 z (-.f64 1 y))) 1)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 z (-.f64 1 y))) 1) 1)) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 z (-.f64 1 y)))) 3)) |
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 z (-.f64 1 y)))) 1/3)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 z (-.f64 1 y))) 3) 1/3)) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 z (-.f64 1 y)))) 2)) |
(exp.f64 (+.f64 (log.f64 z) (*.f64 (log1p.f64 (neg.f64 y)) 1))) |
(exp.f64 (+.f64 (*.f64 (log.f64 z) 1) (log1p.f64 (neg.f64 y)))) |
(exp.f64 (+.f64 (*.f64 (log.f64 z) 1) (*.f64 (log1p.f64 (neg.f64 y)) 1))) |
(exp.f64 (+.f64 (log1p.f64 (neg.f64 y)) (*.f64 (log.f64 z) 1))) |
(exp.f64 (+.f64 (*.f64 (log1p.f64 (neg.f64 y)) 1) (log.f64 z))) |
(exp.f64 (+.f64 (*.f64 (log1p.f64 (neg.f64 y)) 1) (*.f64 (log.f64 z) 1))) |
(log1p.f64 (expm1.f64 (*.f64 z (-.f64 1 y)))) |
(fma.f64 z 1 (*.f64 z (neg.f64 y))) |
(fma.f64 z 1 (*.f64 (neg.f64 y) z)) |
(fma.f64 1 z (*.f64 z (neg.f64 y))) |
(fma.f64 1 z (*.f64 (neg.f64 y) z)) |
(fma.f64 (cbrt.f64 z) (cbrt.f64 (*.f64 z z)) (*.f64 z (neg.f64 y))) |
(fma.f64 (cbrt.f64 z) (cbrt.f64 (*.f64 z z)) (*.f64 (neg.f64 y) z)) |
(fma.f64 (cbrt.f64 (*.f64 z z)) (cbrt.f64 z) (*.f64 z (neg.f64 y))) |
(fma.f64 (cbrt.f64 (*.f64 z z)) (cbrt.f64 z) (*.f64 (neg.f64 y) z)) |
(fma.f64 (sqrt.f64 z) (sqrt.f64 z) (*.f64 z (neg.f64 y))) |
(fma.f64 (sqrt.f64 z) (sqrt.f64 z) (*.f64 (neg.f64 y) z)) |
| 1× | egg-herbie |
| 1160× | distribute-lft-in |
| 1116× | distribute-rgt-in |
| 728× | unswap-sqr |
| 548× | times-frac |
| 522× | cancel-sign-sub-inv |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 284 | 4148 |
| 1 | 664 | 3622 |
| 2 | 2003 | 3622 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 z (-.f64 1 y)) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
z |
(+.f64 z (*.f64 y (+.f64 (*.f64 -1 z) x))) |
(+.f64 z (*.f64 y (+.f64 (*.f64 -1 z) x))) |
(+.f64 z (*.f64 y (+.f64 (*.f64 -1 z) x))) |
(*.f64 y (+.f64 (*.f64 -1 z) x)) |
(+.f64 z (*.f64 y (+.f64 (*.f64 -1 z) x))) |
(+.f64 z (*.f64 y (+.f64 (*.f64 -1 z) x))) |
(+.f64 z (*.f64 y (+.f64 (*.f64 -1 z) x))) |
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 x) z))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 x) z))) z) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 x) z))) z) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 x) z))) z) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(*.f64 z (-.f64 1 y)) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(*.f64 z (-.f64 1 y)) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
z |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(*.f64 -1 (*.f64 y z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(*.f64 -1 (*.f64 y z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(-.f64 (exp.f64 (log1p.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) 1) |
(-.f64 (/.f64 (pow.f64 (*.f64 x y) 2) (-.f64 (*.f64 x y) (*.f64 z (-.f64 1 y)))) (/.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 2) (-.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))))) |
(*.f64 1 (fma.f64 z (-.f64 1 y) (*.f64 x y))) |
(*.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)) 1) |
(*.f64 (cbrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))) (pow.f64 (cbrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))) 2) (cbrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) |
(*.f64 (sqrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))) (sqrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) |
(*.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z (-.f64 1 y)) 3)) (/.f64 1 (fma.f64 (*.f64 z (-.f64 1 y)) (fma.f64 z (-.f64 1 y) (neg.f64 (*.f64 x y))) (pow.f64 (*.f64 x y) 2)))) |
(*.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z (-.f64 1 y)) 2)) (/.f64 1 (-.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))))) |
(/.f64 1 (/.f64 (fma.f64 (*.f64 z (-.f64 1 y)) (fma.f64 z (-.f64 1 y) (neg.f64 (*.f64 x y))) (pow.f64 (*.f64 x y) 2)) (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z (-.f64 1 y)) 3)))) |
(/.f64 1 (/.f64 (-.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z (-.f64 1 y)) 2)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z (-.f64 1 y)) 3)) (fma.f64 (*.f64 z (-.f64 1 y)) (fma.f64 z (-.f64 1 y) (neg.f64 (*.f64 x y))) (pow.f64 (*.f64 x y) 2))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z (-.f64 1 y)) 3)) (+.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 2) (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 x y) (*.f64 z (-.f64 1 y)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z (-.f64 1 y)) 2)) (-.f64 (*.f64 x y) (*.f64 z (-.f64 1 y)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z (-.f64 1 y)) 3))) (neg.f64 (fma.f64 (*.f64 z (-.f64 1 y)) (fma.f64 z (-.f64 1 y) (neg.f64 (*.f64 x y))) (pow.f64 (*.f64 x y) 2)))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z (-.f64 1 y)) 2))) (neg.f64 (-.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 2) (pow.f64 (*.f64 x y) 2)) (fma.f64 z (-.f64 1 y) (neg.f64 (*.f64 x y)))) |
(pow.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)) 1) |
(pow.f64 (cbrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))) 3) |
(pow.f64 (pow.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)) 2) 1/2) |
(pow.f64 (pow.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)) 3) 1/3) |
(pow.f64 (sqrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))) 2) |
(pow.f64 (/.f64 (fma.f64 (*.f64 z (-.f64 1 y)) (fma.f64 z (-.f64 1 y) (neg.f64 (*.f64 x y))) (pow.f64 (*.f64 x y) 2)) (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z (-.f64 1 y)) 3))) -1) |
(pow.f64 (/.f64 (-.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z (-.f64 1 y)) 2))) -1) |
(sqrt.f64 (pow.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)) 2)) |
(log.f64 (exp.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))))) |
(log.f64 (*.f64 (pow.f64 (exp.f64 x) y) (+.f64 1 (expm1.f64 (*.f64 z (-.f64 1 y)))))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (pow.f64 (exp.f64 z) (-.f64 1 y)))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (+.f64 1 (expm1.f64 (*.f64 z (-.f64 1 y)))))) |
(log.f64 (*.f64 (pow.f64 (exp.f64 z) (-.f64 1 y)) (+.f64 1 (expm1.f64 (*.f64 x y))))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z (-.f64 1 y)))) (pow.f64 (exp.f64 x) y))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z (-.f64 1 y)))) (+.f64 1 (expm1.f64 (*.f64 x y))))) |
(cbrt.f64 (pow.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)) 3)) |
(expm1.f64 (log1p.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) |
(exp.f64 (log.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) |
(exp.f64 (*.f64 (log.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))) 1)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))) 1) 1)) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) 3)) |
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) 1/3)) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) 2)) |
(log1p.f64 (expm1.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) |
(fma.f64 x y (*.f64 z (-.f64 1 y))) |
(fma.f64 y x (*.f64 z (-.f64 1 y))) |
(fma.f64 (*.f64 x y) 1 (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 x y)) |
(fma.f64 1 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
(fma.f64 1 (*.f64 z (-.f64 1 y)) (*.f64 x y)) |
(fma.f64 (-.f64 1 y) z (*.f64 x y)) |
(fma.f64 (*.f64 z (-.f64 1 y)) 1 (*.f64 x y)) |
(fma.f64 (cbrt.f64 (pow.f64 (-.f64 1 y) 2)) (*.f64 (cbrt.f64 (-.f64 1 y)) z) (*.f64 x y)) |
(fma.f64 (cbrt.f64 (*.f64 x y)) (cbrt.f64 (pow.f64 (*.f64 x y) 2)) (*.f64 z (-.f64 1 y))) |
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 x y) 2)) (cbrt.f64 (*.f64 x y)) (*.f64 z (-.f64 1 y))) |
(fma.f64 (cbrt.f64 (*.f64 z (-.f64 1 y))) (pow.f64 (cbrt.f64 (*.f64 z (-.f64 1 y))) 2) (*.f64 x y)) |
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z (-.f64 1 y))) 2) (cbrt.f64 (*.f64 z (-.f64 1 y))) (*.f64 x y)) |
(fma.f64 (cbrt.f64 (*.f64 z z)) (*.f64 (cbrt.f64 z) (-.f64 1 y)) (*.f64 x y)) |
(fma.f64 (cbrt.f64 (*.f64 x x)) (*.f64 (cbrt.f64 x) y) (*.f64 z (-.f64 1 y))) |
(fma.f64 (cbrt.f64 (*.f64 y y)) (*.f64 (cbrt.f64 y) x) (*.f64 z (-.f64 1 y))) |
(fma.f64 (sqrt.f64 (-.f64 1 y)) (*.f64 (sqrt.f64 (-.f64 1 y)) z) (*.f64 x y)) |
(fma.f64 (sqrt.f64 (*.f64 x y)) (sqrt.f64 (*.f64 x y)) (*.f64 z (-.f64 1 y))) |
(fma.f64 (sqrt.f64 (*.f64 z (-.f64 1 y))) (sqrt.f64 (*.f64 z (-.f64 1 y))) (*.f64 x y)) |
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (-.f64 1 y)) (*.f64 x y)) |
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (*.f64 z (-.f64 1 y))) |
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (*.f64 z (-.f64 1 y))) |
(fma.f64 (*.f64 x (cbrt.f64 (*.f64 y y))) (cbrt.f64 y) (*.f64 z (-.f64 1 y))) |
(fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (*.f64 z (-.f64 1 y))) |
(fma.f64 (*.f64 y (cbrt.f64 (*.f64 x x))) (cbrt.f64 x) (*.f64 z (-.f64 1 y))) |
(fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (*.f64 z (-.f64 1 y))) |
(fma.f64 (*.f64 z (cbrt.f64 (pow.f64 (-.f64 1 y) 2))) (cbrt.f64 (-.f64 1 y)) (*.f64 x y)) |
(fma.f64 (*.f64 z (sqrt.f64 (-.f64 1 y))) (sqrt.f64 (-.f64 1 y)) (*.f64 x y)) |
(fma.f64 (*.f64 (-.f64 1 y) (cbrt.f64 (*.f64 z z))) (cbrt.f64 z) (*.f64 x y)) |
(fma.f64 (*.f64 (-.f64 1 y) (sqrt.f64 z)) (sqrt.f64 z) (*.f64 x y)) |
(+.f64 z (*.f64 z (neg.f64 y))) |
(+.f64 z (*.f64 (neg.f64 y) z)) |
(+.f64 0 (*.f64 z (-.f64 1 y))) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 1 y))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 1 y))))) |
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 1 y)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 1 y))))) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 z (-.f64 1 y)))) 1) |
(/.f64 (*.f64 z (-.f64 1 (pow.f64 y 3))) (+.f64 1 (fma.f64 y y y))) |
(/.f64 (*.f64 z (-.f64 1 (*.f64 y y))) (+.f64 y 1)) |
(/.f64 (*.f64 (-.f64 1 (pow.f64 y 3)) z) (+.f64 1 (fma.f64 y y y))) |
(/.f64 (*.f64 (-.f64 1 (*.f64 y y)) z) (+.f64 y 1)) |
(pow.f64 (*.f64 z (-.f64 1 y)) 1) |
(pow.f64 (cbrt.f64 (*.f64 z (-.f64 1 y))) 3) |
(pow.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 2) 1/2) |
(pow.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 3) 1/3) |
(pow.f64 (sqrt.f64 (*.f64 z (-.f64 1 y))) 2) |
(sqrt.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 2)) |
(log.f64 (pow.f64 (exp.f64 z) (-.f64 1 y))) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 z (-.f64 1 y))))) |
(cbrt.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 3)) |
(expm1.f64 (log1p.f64 (*.f64 z (-.f64 1 y)))) |
(exp.f64 (log.f64 (*.f64 z (-.f64 1 y)))) |
(exp.f64 (*.f64 (log.f64 (*.f64 z (-.f64 1 y))) 1)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 z (-.f64 1 y))) 1) 1)) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 z (-.f64 1 y)))) 3)) |
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 z (-.f64 1 y)))) 1/3)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 z (-.f64 1 y))) 3) 1/3)) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 z (-.f64 1 y)))) 2)) |
(exp.f64 (+.f64 (log.f64 z) (*.f64 (log1p.f64 (neg.f64 y)) 1))) |
(exp.f64 (+.f64 (*.f64 (log.f64 z) 1) (log1p.f64 (neg.f64 y)))) |
(exp.f64 (+.f64 (*.f64 (log.f64 z) 1) (*.f64 (log1p.f64 (neg.f64 y)) 1))) |
(exp.f64 (+.f64 (log1p.f64 (neg.f64 y)) (*.f64 (log.f64 z) 1))) |
(exp.f64 (+.f64 (*.f64 (log1p.f64 (neg.f64 y)) 1) (log.f64 z))) |
(exp.f64 (+.f64 (*.f64 (log1p.f64 (neg.f64 y)) 1) (*.f64 (log.f64 z) 1))) |
(log1p.f64 (expm1.f64 (*.f64 z (-.f64 1 y)))) |
(fma.f64 z 1 (*.f64 z (neg.f64 y))) |
(fma.f64 z 1 (*.f64 (neg.f64 y) z)) |
(fma.f64 1 z (*.f64 z (neg.f64 y))) |
(fma.f64 1 z (*.f64 (neg.f64 y) z)) |
(fma.f64 (cbrt.f64 z) (cbrt.f64 (*.f64 z z)) (*.f64 z (neg.f64 y))) |
(fma.f64 (cbrt.f64 z) (cbrt.f64 (*.f64 z z)) (*.f64 (neg.f64 y) z)) |
(fma.f64 (cbrt.f64 (*.f64 z z)) (cbrt.f64 z) (*.f64 z (neg.f64 y))) |
(fma.f64 (cbrt.f64 (*.f64 z z)) (cbrt.f64 z) (*.f64 (neg.f64 y) z)) |
(fma.f64 (sqrt.f64 z) (sqrt.f64 z) (*.f64 z (neg.f64 y))) |
(fma.f64 (sqrt.f64 z) (sqrt.f64 z) (*.f64 (neg.f64 y) z)) |
| Outputs |
|---|
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
z |
(+.f64 z (*.f64 y (+.f64 (*.f64 -1 z) x))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(+.f64 z (*.f64 y (+.f64 (*.f64 -1 z) x))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(+.f64 z (*.f64 y (+.f64 (*.f64 -1 z) x))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(*.f64 y (+.f64 (*.f64 -1 z) x)) |
(*.f64 y (fma.f64 -1 z x)) |
(*.f64 y (-.f64 x z)) |
(+.f64 z (*.f64 y (+.f64 (*.f64 -1 z) x))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(+.f64 z (*.f64 y (+.f64 (*.f64 -1 z) x))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(+.f64 z (*.f64 y (+.f64 (*.f64 -1 z) x))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 x) z))) |
(*.f64 y (fma.f64 -1 z x)) |
(*.f64 y (-.f64 x z)) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 x) z))) z) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 x) z))) z) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 x) z))) z) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(*.f64 y x) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(+.f64 (*.f64 y x) (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
z |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(*.f64 -1 (*.f64 y z)) |
(neg.f64 (*.f64 z y)) |
(*.f64 y (neg.f64 z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(*.f64 -1 (*.f64 y z)) |
(neg.f64 (*.f64 z y)) |
(*.f64 y (neg.f64 z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(-.f64 (exp.f64 (log1p.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) 1) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(-.f64 (/.f64 (pow.f64 (*.f64 x y) 2) (-.f64 (*.f64 x y) (*.f64 z (-.f64 1 y)))) (/.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 2) (-.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 z (-.f64 1 y)) 2)) (-.f64 (*.f64 y x) (*.f64 z (-.f64 1 y)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (-.f64 z (*.f64 z y)) 2)) (fma.f64 y x (*.f64 z (neg.f64 (-.f64 1 y))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (-.f64 z (*.f64 z y)) 2)) (-.f64 (*.f64 y x) (-.f64 z (*.f64 z y)))) |
(*.f64 1 (fma.f64 z (-.f64 1 y) (*.f64 x y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(*.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)) 1) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(*.f64 (cbrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))) (pow.f64 (cbrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))) 2)) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))) 2) (cbrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(*.f64 (sqrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))) (sqrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(*.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z (-.f64 1 y)) 3)) (/.f64 1 (fma.f64 (*.f64 z (-.f64 1 y)) (fma.f64 z (-.f64 1 y) (neg.f64 (*.f64 x y))) (pow.f64 (*.f64 x y) 2)))) |
(*.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 z (-.f64 1 y)) 3)) (/.f64 1 (fma.f64 (*.f64 z (-.f64 1 y)) (fma.f64 z (-.f64 1 y) (*.f64 x (neg.f64 y))) (pow.f64 (*.f64 y x) 2)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (-.f64 z (*.f64 z y)) 3)) (fma.f64 (-.f64 z (*.f64 z y)) (-.f64 (-.f64 z (*.f64 z y)) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))) |
(*.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z (-.f64 1 y)) 2)) (/.f64 1 (-.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 z (-.f64 1 y)) 2)) (-.f64 (*.f64 y x) (*.f64 z (-.f64 1 y)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (-.f64 z (*.f64 z y)) 2)) (fma.f64 y x (*.f64 z (neg.f64 (-.f64 1 y))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (-.f64 z (*.f64 z y)) 2)) (-.f64 (*.f64 y x) (-.f64 z (*.f64 z y)))) |
(/.f64 1 (/.f64 (fma.f64 (*.f64 z (-.f64 1 y)) (fma.f64 z (-.f64 1 y) (neg.f64 (*.f64 x y))) (pow.f64 (*.f64 x y) 2)) (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z (-.f64 1 y)) 3)))) |
(*.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 z (-.f64 1 y)) 3)) (/.f64 1 (fma.f64 (*.f64 z (-.f64 1 y)) (fma.f64 z (-.f64 1 y) (*.f64 x (neg.f64 y))) (pow.f64 (*.f64 y x) 2)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (-.f64 z (*.f64 z y)) 3)) (fma.f64 (-.f64 z (*.f64 z y)) (-.f64 (-.f64 z (*.f64 z y)) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))) |
(/.f64 1 (/.f64 (-.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z (-.f64 1 y)) 2)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 z (-.f64 1 y)) 2)) (-.f64 (*.f64 y x) (*.f64 z (-.f64 1 y)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (-.f64 z (*.f64 z y)) 2)) (fma.f64 y x (*.f64 z (neg.f64 (-.f64 1 y))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (-.f64 z (*.f64 z y)) 2)) (-.f64 (*.f64 y x) (-.f64 z (*.f64 z y)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z (-.f64 1 y)) 3)) (fma.f64 (*.f64 z (-.f64 1 y)) (fma.f64 z (-.f64 1 y) (neg.f64 (*.f64 x y))) (pow.f64 (*.f64 x y) 2))) |
(*.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 z (-.f64 1 y)) 3)) (/.f64 1 (fma.f64 (*.f64 z (-.f64 1 y)) (fma.f64 z (-.f64 1 y) (*.f64 x (neg.f64 y))) (pow.f64 (*.f64 y x) 2)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (-.f64 z (*.f64 z y)) 3)) (fma.f64 (-.f64 z (*.f64 z y)) (-.f64 (-.f64 z (*.f64 z y)) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))) |
(/.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z (-.f64 1 y)) 3)) (+.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 2) (-.f64 (pow.f64 (*.f64 x y) 2) (*.f64 (*.f64 x y) (*.f64 z (-.f64 1 y)))))) |
(*.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 z (-.f64 1 y)) 3)) (/.f64 1 (fma.f64 (*.f64 z (-.f64 1 y)) (fma.f64 z (-.f64 1 y) (*.f64 x (neg.f64 y))) (pow.f64 (*.f64 y x) 2)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (-.f64 z (*.f64 z y)) 3)) (fma.f64 (-.f64 z (*.f64 z y)) (-.f64 (-.f64 z (*.f64 z y)) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))) |
(/.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z (-.f64 1 y)) 2)) (-.f64 (*.f64 x y) (*.f64 z (-.f64 1 y)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 z (-.f64 1 y)) 2)) (-.f64 (*.f64 y x) (*.f64 z (-.f64 1 y)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (-.f64 z (*.f64 z y)) 2)) (fma.f64 y x (*.f64 z (neg.f64 (-.f64 1 y))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (-.f64 z (*.f64 z y)) 2)) (-.f64 (*.f64 y x) (-.f64 z (*.f64 z y)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z (-.f64 1 y)) 3))) (neg.f64 (fma.f64 (*.f64 z (-.f64 1 y)) (fma.f64 z (-.f64 1 y) (neg.f64 (*.f64 x y))) (pow.f64 (*.f64 x y) 2)))) |
(*.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 z (-.f64 1 y)) 3)) (/.f64 1 (fma.f64 (*.f64 z (-.f64 1 y)) (fma.f64 z (-.f64 1 y) (*.f64 x (neg.f64 y))) (pow.f64 (*.f64 y x) 2)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (-.f64 z (*.f64 z y)) 3)) (fma.f64 (-.f64 z (*.f64 z y)) (-.f64 (-.f64 z (*.f64 z y)) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z (-.f64 1 y)) 2))) (neg.f64 (-.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 z (-.f64 1 y)) 2)) (-.f64 (*.f64 y x) (*.f64 z (-.f64 1 y)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (-.f64 z (*.f64 z y)) 2)) (fma.f64 y x (*.f64 z (neg.f64 (-.f64 1 y))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (-.f64 z (*.f64 z y)) 2)) (-.f64 (*.f64 y x) (-.f64 z (*.f64 z y)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 2) (pow.f64 (*.f64 x y) 2)) (fma.f64 z (-.f64 1 y) (neg.f64 (*.f64 x y)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 z (-.f64 1 y)) 2)) (-.f64 (*.f64 y x) (*.f64 z (-.f64 1 y)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (-.f64 z (*.f64 z y)) 2)) (fma.f64 y x (*.f64 z (neg.f64 (-.f64 1 y))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (-.f64 z (*.f64 z y)) 2)) (-.f64 (*.f64 y x) (-.f64 z (*.f64 z y)))) |
(pow.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)) 1) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(pow.f64 (cbrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))) 3) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(pow.f64 (pow.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)) 2) 1/2) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(pow.f64 (pow.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)) 3) 1/3) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(pow.f64 (sqrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))) 2) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(pow.f64 (/.f64 (fma.f64 (*.f64 z (-.f64 1 y)) (fma.f64 z (-.f64 1 y) (neg.f64 (*.f64 x y))) (pow.f64 (*.f64 x y) 2)) (+.f64 (pow.f64 (*.f64 x y) 3) (pow.f64 (*.f64 z (-.f64 1 y)) 3))) -1) |
(*.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (*.f64 z (-.f64 1 y)) 3)) (/.f64 1 (fma.f64 (*.f64 z (-.f64 1 y)) (fma.f64 z (-.f64 1 y) (*.f64 x (neg.f64 y))) (pow.f64 (*.f64 y x) 2)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 y x) 3) (pow.f64 (-.f64 z (*.f64 z y)) 3)) (fma.f64 (-.f64 z (*.f64 z y)) (-.f64 (-.f64 z (*.f64 z y)) (*.f64 y x)) (pow.f64 (*.f64 y x) 2))) |
(pow.f64 (/.f64 (-.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) (-.f64 (pow.f64 (*.f64 x y) 2) (pow.f64 (*.f64 z (-.f64 1 y)) 2))) -1) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (*.f64 z (-.f64 1 y)) 2)) (-.f64 (*.f64 y x) (*.f64 z (-.f64 1 y)))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (-.f64 z (*.f64 z y)) 2)) (fma.f64 y x (*.f64 z (neg.f64 (-.f64 1 y))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 y x) 2) (pow.f64 (-.f64 z (*.f64 z y)) 2)) (-.f64 (*.f64 y x) (-.f64 z (*.f64 z y)))) |
(sqrt.f64 (pow.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)) 2)) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(log.f64 (exp.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(log.f64 (*.f64 (pow.f64 (exp.f64 x) y) (+.f64 1 (expm1.f64 (*.f64 z (-.f64 1 y)))))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (pow.f64 (exp.f64 z) (-.f64 1 y)))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x y))) (+.f64 1 (expm1.f64 (*.f64 z (-.f64 1 y)))))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(log.f64 (*.f64 (pow.f64 (exp.f64 z) (-.f64 1 y)) (+.f64 1 (expm1.f64 (*.f64 x y))))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z (-.f64 1 y)))) (pow.f64 (exp.f64 x) y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z (-.f64 1 y)))) (+.f64 1 (expm1.f64 (*.f64 x y))))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(cbrt.f64 (pow.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)) 3)) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(expm1.f64 (log1p.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(exp.f64 (log.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(exp.f64 (*.f64 (log.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))) 1)) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y))) 1) 1)) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) 3)) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) 1/3)) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) 2)) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(log1p.f64 (expm1.f64 (fma.f64 z (-.f64 1 y) (*.f64 x y)))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(fma.f64 x y (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(fma.f64 y x (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(fma.f64 (*.f64 x y) 1 (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(fma.f64 z (-.f64 1 y) (*.f64 x y)) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(fma.f64 1 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(fma.f64 1 (*.f64 z (-.f64 1 y)) (*.f64 x y)) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(fma.f64 (-.f64 1 y) z (*.f64 x y)) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(fma.f64 (*.f64 z (-.f64 1 y)) 1 (*.f64 x y)) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(fma.f64 (cbrt.f64 (pow.f64 (-.f64 1 y) 2)) (*.f64 (cbrt.f64 (-.f64 1 y)) z) (*.f64 x y)) |
(fma.f64 (cbrt.f64 (pow.f64 (-.f64 1 y) 2)) (*.f64 z (cbrt.f64 (-.f64 1 y))) (*.f64 y x)) |
(fma.f64 (cbrt.f64 (*.f64 x y)) (cbrt.f64 (pow.f64 (*.f64 x y) 2)) (*.f64 z (-.f64 1 y))) |
(fma.f64 (cbrt.f64 (*.f64 y x)) (cbrt.f64 (pow.f64 (*.f64 y x) 2)) (*.f64 z (-.f64 1 y))) |
(fma.f64 (cbrt.f64 (*.f64 y x)) (cbrt.f64 (pow.f64 (*.f64 y x) 2)) (-.f64 z (*.f64 z y))) |
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 x y) 2)) (cbrt.f64 (*.f64 x y)) (*.f64 z (-.f64 1 y))) |
(fma.f64 (cbrt.f64 (*.f64 y x)) (cbrt.f64 (pow.f64 (*.f64 y x) 2)) (*.f64 z (-.f64 1 y))) |
(fma.f64 (cbrt.f64 (*.f64 y x)) (cbrt.f64 (pow.f64 (*.f64 y x) 2)) (-.f64 z (*.f64 z y))) |
(fma.f64 (cbrt.f64 (*.f64 z (-.f64 1 y))) (pow.f64 (cbrt.f64 (*.f64 z (-.f64 1 y))) 2) (*.f64 x y)) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z (-.f64 1 y))) 2) (cbrt.f64 (*.f64 z (-.f64 1 y))) (*.f64 x y)) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(fma.f64 (cbrt.f64 (*.f64 z z)) (*.f64 (cbrt.f64 z) (-.f64 1 y)) (*.f64 x y)) |
(fma.f64 (cbrt.f64 (*.f64 z z)) (*.f64 (-.f64 1 y) (cbrt.f64 z)) (*.f64 y x)) |
(fma.f64 (cbrt.f64 (*.f64 x x)) (*.f64 (cbrt.f64 x) y) (*.f64 z (-.f64 1 y))) |
(fma.f64 (cbrt.f64 (*.f64 x x)) (*.f64 y (cbrt.f64 x)) (*.f64 z (-.f64 1 y))) |
(fma.f64 (cbrt.f64 (*.f64 x x)) (*.f64 y (cbrt.f64 x)) (-.f64 z (*.f64 z y))) |
(fma.f64 (cbrt.f64 (*.f64 y y)) (*.f64 (cbrt.f64 y) x) (*.f64 z (-.f64 1 y))) |
(fma.f64 (cbrt.f64 (*.f64 y y)) (*.f64 x (cbrt.f64 y)) (*.f64 z (-.f64 1 y))) |
(fma.f64 (cbrt.f64 (*.f64 y y)) (*.f64 x (cbrt.f64 y)) (-.f64 z (*.f64 z y))) |
(fma.f64 (sqrt.f64 (-.f64 1 y)) (*.f64 (sqrt.f64 (-.f64 1 y)) z) (*.f64 x y)) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(fma.f64 (sqrt.f64 (*.f64 x y)) (sqrt.f64 (*.f64 x y)) (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(fma.f64 (sqrt.f64 (*.f64 z (-.f64 1 y))) (sqrt.f64 (*.f64 z (-.f64 1 y))) (*.f64 x y)) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (-.f64 1 y)) (*.f64 x y)) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(fma.f64 (*.f64 x (cbrt.f64 (*.f64 y y))) (cbrt.f64 y) (*.f64 z (-.f64 1 y))) |
(fma.f64 (cbrt.f64 (*.f64 y y)) (*.f64 x (cbrt.f64 y)) (*.f64 z (-.f64 1 y))) |
(fma.f64 (cbrt.f64 (*.f64 y y)) (*.f64 x (cbrt.f64 y)) (-.f64 z (*.f64 z y))) |
(fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(fma.f64 (*.f64 y (cbrt.f64 (*.f64 x x))) (cbrt.f64 x) (*.f64 z (-.f64 1 y))) |
(fma.f64 (cbrt.f64 (*.f64 x x)) (*.f64 y (cbrt.f64 x)) (*.f64 z (-.f64 1 y))) |
(fma.f64 (cbrt.f64 (*.f64 x x)) (*.f64 y (cbrt.f64 x)) (-.f64 z (*.f64 z y))) |
(fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(fma.f64 (*.f64 z (cbrt.f64 (pow.f64 (-.f64 1 y) 2))) (cbrt.f64 (-.f64 1 y)) (*.f64 x y)) |
(fma.f64 (cbrt.f64 (pow.f64 (-.f64 1 y) 2)) (*.f64 z (cbrt.f64 (-.f64 1 y))) (*.f64 y x)) |
(fma.f64 (*.f64 z (sqrt.f64 (-.f64 1 y))) (sqrt.f64 (-.f64 1 y)) (*.f64 x y)) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(fma.f64 (*.f64 (-.f64 1 y) (cbrt.f64 (*.f64 z z))) (cbrt.f64 z) (*.f64 x y)) |
(fma.f64 (cbrt.f64 (*.f64 z z)) (*.f64 (-.f64 1 y) (cbrt.f64 z)) (*.f64 y x)) |
(fma.f64 (*.f64 (-.f64 1 y) (sqrt.f64 z)) (sqrt.f64 z) (*.f64 x y)) |
(fma.f64 z (-.f64 1 y) (*.f64 y x)) |
(fma.f64 y (-.f64 x z) z) |
(+.f64 z (*.f64 z (neg.f64 y))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(+.f64 z (*.f64 (neg.f64 y) z)) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(+.f64 0 (*.f64 z (-.f64 1 y))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 1 y))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 1 y))))) |
(*.f64 3 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 1 y))))) |
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 1 y)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 1 y))))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(-.f64 (exp.f64 (log1p.f64 (*.f64 z (-.f64 1 y)))) 1) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(/.f64 (*.f64 z (-.f64 1 (pow.f64 y 3))) (+.f64 1 (fma.f64 y y y))) |
(/.f64 (-.f64 1 (pow.f64 y 3)) (/.f64 (+.f64 1 (fma.f64 y y y)) z)) |
(*.f64 (/.f64 z (+.f64 1 (fma.f64 y y y))) (-.f64 1 (pow.f64 y 3))) |
(/.f64 (*.f64 z (-.f64 1 (*.f64 y y))) (+.f64 y 1)) |
(/.f64 z (/.f64 (+.f64 1 y) (-.f64 1 (*.f64 y y)))) |
(*.f64 (/.f64 z (+.f64 1 y)) (-.f64 1 (*.f64 y y))) |
(/.f64 (*.f64 (-.f64 1 (pow.f64 y 3)) z) (+.f64 1 (fma.f64 y y y))) |
(/.f64 (-.f64 1 (pow.f64 y 3)) (/.f64 (+.f64 1 (fma.f64 y y y)) z)) |
(*.f64 (/.f64 z (+.f64 1 (fma.f64 y y y))) (-.f64 1 (pow.f64 y 3))) |
(/.f64 (*.f64 (-.f64 1 (*.f64 y y)) z) (+.f64 y 1)) |
(/.f64 z (/.f64 (+.f64 1 y) (-.f64 1 (*.f64 y y)))) |
(*.f64 (/.f64 z (+.f64 1 y)) (-.f64 1 (*.f64 y y))) |
(pow.f64 (*.f64 z (-.f64 1 y)) 1) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(pow.f64 (cbrt.f64 (*.f64 z (-.f64 1 y))) 3) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(pow.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 2) 1/2) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(pow.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 3) 1/3) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(pow.f64 (sqrt.f64 (*.f64 z (-.f64 1 y))) 2) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(sqrt.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 2)) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(log.f64 (pow.f64 (exp.f64 z) (-.f64 1 y))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 z (-.f64 1 y))))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(cbrt.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 3)) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(expm1.f64 (log1p.f64 (*.f64 z (-.f64 1 y)))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(exp.f64 (log.f64 (*.f64 z (-.f64 1 y)))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(exp.f64 (*.f64 (log.f64 (*.f64 z (-.f64 1 y))) 1)) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 z (-.f64 1 y))) 1) 1)) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 z (-.f64 1 y)))) 3)) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 z (-.f64 1 y)))) 1/3)) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 z (-.f64 1 y))) 3) 1/3)) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 z (-.f64 1 y)))) 2)) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(exp.f64 (+.f64 (log.f64 z) (*.f64 (log1p.f64 (neg.f64 y)) 1))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(exp.f64 (+.f64 (*.f64 (log.f64 z) 1) (log1p.f64 (neg.f64 y)))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(exp.f64 (+.f64 (*.f64 (log.f64 z) 1) (*.f64 (log1p.f64 (neg.f64 y)) 1))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(exp.f64 (+.f64 (log1p.f64 (neg.f64 y)) (*.f64 (log.f64 z) 1))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(exp.f64 (+.f64 (*.f64 (log1p.f64 (neg.f64 y)) 1) (log.f64 z))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(exp.f64 (+.f64 (*.f64 (log1p.f64 (neg.f64 y)) 1) (*.f64 (log.f64 z) 1))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(log1p.f64 (expm1.f64 (*.f64 z (-.f64 1 y)))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(fma.f64 z 1 (*.f64 z (neg.f64 y))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(fma.f64 z 1 (*.f64 (neg.f64 y) z)) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(fma.f64 1 z (*.f64 z (neg.f64 y))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(fma.f64 1 z (*.f64 (neg.f64 y) z)) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(fma.f64 (cbrt.f64 z) (cbrt.f64 (*.f64 z z)) (*.f64 z (neg.f64 y))) |
(fma.f64 (cbrt.f64 z) (cbrt.f64 (*.f64 z z)) (neg.f64 (*.f64 z y))) |
(-.f64 (*.f64 (cbrt.f64 (*.f64 z z)) (cbrt.f64 z)) (*.f64 z y)) |
(fma.f64 (cbrt.f64 z) (cbrt.f64 (*.f64 z z)) (*.f64 (neg.f64 y) z)) |
(fma.f64 (cbrt.f64 z) (cbrt.f64 (*.f64 z z)) (neg.f64 (*.f64 z y))) |
(-.f64 (*.f64 (cbrt.f64 (*.f64 z z)) (cbrt.f64 z)) (*.f64 z y)) |
(fma.f64 (cbrt.f64 (*.f64 z z)) (cbrt.f64 z) (*.f64 z (neg.f64 y))) |
(fma.f64 (cbrt.f64 z) (cbrt.f64 (*.f64 z z)) (neg.f64 (*.f64 z y))) |
(-.f64 (*.f64 (cbrt.f64 (*.f64 z z)) (cbrt.f64 z)) (*.f64 z y)) |
(fma.f64 (cbrt.f64 (*.f64 z z)) (cbrt.f64 z) (*.f64 (neg.f64 y) z)) |
(fma.f64 (cbrt.f64 z) (cbrt.f64 (*.f64 z z)) (neg.f64 (*.f64 z y))) |
(-.f64 (*.f64 (cbrt.f64 (*.f64 z z)) (cbrt.f64 z)) (*.f64 z y)) |
(fma.f64 (sqrt.f64 z) (sqrt.f64 z) (*.f64 z (neg.f64 y))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(fma.f64 (sqrt.f64 z) (sqrt.f64 z) (*.f64 (neg.f64 y) z)) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
Compiled 2241 to 1106 computations (50.6% saved)
6 alts after pruning (4 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 149 | 4 | 153 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 2 | 2 |
| Done | 0 | 0 | 0 |
| Total | 149 | 6 | 155 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 100.0% | (fma.f64 y (-.f64 x z) z) |
| ▶ | 60.6% | (-.f64 z (*.f64 z y)) |
| ✓ | 97.7% | (+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
| ▶ | 65.5% | (*.f64 y (-.f64 x z)) |
| ▶ | 42.8% | (*.f64 y x) |
| 36.6% | z | |
| ✓ | 100.0% | (fma.f64 y (-.f64 x z) z) |
| ▶ | 60.6% | (-.f64 z (*.f64 z y)) |
| ✓ | 97.7% | (+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
| ▶ | 65.5% | (*.f64 y (-.f64 x z)) |
| ▶ | 42.8% | (*.f64 y x) |
| 36.6% | z |
Compiled 94 to 60 computations (36.2% saved)
Found 1 expressions with local accuracy:
| New | Accuracy | Program |
|---|---|---|
| ✓ | 100.0% | (-.f64 z (*.f64 z y)) |
Compiled 30 to 9 computations (70% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | z | @ | 0 | (-.f64 z (*.f64 z y)) |
| 0.0ms | z | @ | inf | (-.f64 z (*.f64 z y)) |
| 0.0ms | z | @ | -inf | (-.f64 z (*.f64 z y)) |
| 0.0ms | y | @ | inf | (-.f64 z (*.f64 z y)) |
| 0.0ms | y | @ | -inf | (-.f64 z (*.f64 z y)) |
| 1× | batch-egg-rewrite |
| 1494× | pow1 |
| 1384× | add-exp-log |
| 1384× | log1p-expm1-u |
| 1384× | expm1-log1p-u |
| 1354× | add-log-exp |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 13 |
| 1 | 133 | 13 |
| 2 | 1897 | 13 |
| 1× | node limit |
| Inputs |
|---|
(-.f64 z (*.f64 z y)) |
| Outputs |
|---|
(+.f64 z (*.f64 z (neg.f64 y))) |
(+.f64 z (*.f64 (*.f64 z (neg.f64 y)) 1)) |
(+.f64 (-.f64 z (*.f64 z y)) (fma.f64 (neg.f64 y) z (*.f64 z y))) |
(+.f64 (-.f64 z (*.f64 z y)) (fma.f64 (neg.f64 z) y (*.f64 z y))) |
(+.f64 (-.f64 z (*.f64 z y)) (fma.f64 (*.f64 z (neg.f64 y)) 1 (*.f64 z y))) |
(+.f64 (-.f64 z (*.f64 z y)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z y))) (pow.f64 (cbrt.f64 (*.f64 z y)) 2) (*.f64 z y))) |
(+.f64 (-.f64 z (*.f64 z y)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 z y))) (sqrt.f64 (*.f64 z y)) (*.f64 z y))) |
(+.f64 (*.f64 z (neg.f64 y)) z) |
(*.f64 z (-.f64 1 y)) |
(*.f64 (-.f64 z (*.f64 z y)) 1) |
(*.f64 1 (-.f64 z (*.f64 z y))) |
(*.f64 (cbrt.f64 (-.f64 z (*.f64 z y))) (pow.f64 (cbrt.f64 (-.f64 z (*.f64 z y))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (-.f64 z (*.f64 z y))) 2) (cbrt.f64 (-.f64 z (*.f64 z y)))) |
(*.f64 (sqrt.f64 (-.f64 z (*.f64 z y))) (sqrt.f64 (-.f64 z (*.f64 z y)))) |
(*.f64 (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3)) (/.f64 1 (fma.f64 z z (*.f64 (*.f64 z y) (+.f64 z (*.f64 z y)))))) |
(*.f64 (-.f64 (*.f64 z z) (pow.f64 (*.f64 z y) 2)) (/.f64 1 (+.f64 z (*.f64 z y)))) |
(*.f64 (+.f64 (sqrt.f64 z) (sqrt.f64 (*.f64 z y))) (-.f64 (sqrt.f64 z) (sqrt.f64 (*.f64 z y)))) |
(/.f64 1 (/.f64 (fma.f64 z z (*.f64 (*.f64 z y) (+.f64 z (*.f64 z y)))) (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3)))) |
(/.f64 1 (/.f64 (+.f64 z (*.f64 z y)) (-.f64 (*.f64 z z) (pow.f64 (*.f64 z y) 2)))) |
(/.f64 (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3)) (fma.f64 z z (*.f64 (*.f64 z y) (+.f64 z (*.f64 z y))))) |
(/.f64 (-.f64 (*.f64 z z) (pow.f64 (*.f64 z y) 2)) (+.f64 z (*.f64 z y))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3))) (neg.f64 (fma.f64 z z (*.f64 (*.f64 z y) (+.f64 z (*.f64 z y)))))) |
(/.f64 (neg.f64 (-.f64 (*.f64 z z) (pow.f64 (*.f64 z y) 2))) (neg.f64 (+.f64 z (*.f64 z y)))) |
(/.f64 (+.f64 (pow.f64 z 3) (pow.f64 (*.f64 z (neg.f64 y)) 3)) (+.f64 (*.f64 z z) (-.f64 (*.f64 (*.f64 z (neg.f64 y)) (*.f64 z (neg.f64 y))) (*.f64 z (*.f64 z (neg.f64 y)))))) |
(/.f64 (-.f64 (*.f64 z z) (*.f64 (*.f64 z (neg.f64 y)) (*.f64 z (neg.f64 y)))) (-.f64 z (*.f64 z (neg.f64 y)))) |
(pow.f64 (-.f64 z (*.f64 z y)) 1) |
(pow.f64 (cbrt.f64 (-.f64 z (*.f64 z y))) 3) |
(pow.f64 (pow.f64 (-.f64 z (*.f64 z y)) 3) 1/3) |
(pow.f64 (sqrt.f64 (-.f64 z (*.f64 z y))) 2) |
(sqrt.f64 (pow.f64 (-.f64 z (*.f64 z y)) 2)) |
(log.f64 (exp.f64 (-.f64 z (*.f64 z y)))) |
(cbrt.f64 (pow.f64 (-.f64 z (*.f64 z y)) 3)) |
(expm1.f64 (log1p.f64 (-.f64 z (*.f64 z y)))) |
(exp.f64 (log.f64 (-.f64 z (*.f64 z y)))) |
(log1p.f64 (expm1.f64 (-.f64 z (*.f64 z y)))) |
(fma.f64 1 z (*.f64 z (neg.f64 y))) |
(fma.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 z) (*.f64 z (neg.f64 y))) |
(fma.f64 (sqrt.f64 z) (sqrt.f64 z) (*.f64 z (neg.f64 y))) |
| 1× | egg-herbie |
| 1626× | fma-neg |
| 1214× | fma-def |
| 640× | times-frac |
| 394× | associate-/l* |
| 364× | sub-neg |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 111 | 1070 |
| 1 | 297 | 1010 |
| 2 | 1150 | 1010 |
| 3 | 5655 | 1010 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 z (-.f64 1 y)) |
(*.f64 z (-.f64 1 y)) |
(*.f64 z (-.f64 1 y)) |
(*.f64 z (-.f64 1 y)) |
(*.f64 z (-.f64 1 y)) |
(*.f64 z (-.f64 1 y)) |
(*.f64 z (-.f64 1 y)) |
(*.f64 z (-.f64 1 y)) |
(*.f64 (+.f64 1 (*.f64 -1 y)) z) |
(*.f64 (+.f64 1 (*.f64 -1 y)) z) |
(*.f64 (+.f64 1 (*.f64 -1 y)) z) |
(*.f64 (+.f64 1 (*.f64 -1 y)) z) |
z |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(*.f64 -1 (*.f64 y z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(*.f64 -1 (*.f64 y z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(+.f64 z (*.f64 z (neg.f64 y))) |
(+.f64 z (*.f64 (*.f64 z (neg.f64 y)) 1)) |
(+.f64 (-.f64 z (*.f64 z y)) (fma.f64 (neg.f64 y) z (*.f64 z y))) |
(+.f64 (-.f64 z (*.f64 z y)) (fma.f64 (neg.f64 z) y (*.f64 z y))) |
(+.f64 (-.f64 z (*.f64 z y)) (fma.f64 (*.f64 z (neg.f64 y)) 1 (*.f64 z y))) |
(+.f64 (-.f64 z (*.f64 z y)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z y))) (pow.f64 (cbrt.f64 (*.f64 z y)) 2) (*.f64 z y))) |
(+.f64 (-.f64 z (*.f64 z y)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 z y))) (sqrt.f64 (*.f64 z y)) (*.f64 z y))) |
(+.f64 (*.f64 z (neg.f64 y)) z) |
(*.f64 z (-.f64 1 y)) |
(*.f64 (-.f64 z (*.f64 z y)) 1) |
(*.f64 1 (-.f64 z (*.f64 z y))) |
(*.f64 (cbrt.f64 (-.f64 z (*.f64 z y))) (pow.f64 (cbrt.f64 (-.f64 z (*.f64 z y))) 2)) |
(*.f64 (pow.f64 (cbrt.f64 (-.f64 z (*.f64 z y))) 2) (cbrt.f64 (-.f64 z (*.f64 z y)))) |
(*.f64 (sqrt.f64 (-.f64 z (*.f64 z y))) (sqrt.f64 (-.f64 z (*.f64 z y)))) |
(*.f64 (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3)) (/.f64 1 (fma.f64 z z (*.f64 (*.f64 z y) (+.f64 z (*.f64 z y)))))) |
(*.f64 (-.f64 (*.f64 z z) (pow.f64 (*.f64 z y) 2)) (/.f64 1 (+.f64 z (*.f64 z y)))) |
(*.f64 (+.f64 (sqrt.f64 z) (sqrt.f64 (*.f64 z y))) (-.f64 (sqrt.f64 z) (sqrt.f64 (*.f64 z y)))) |
(/.f64 1 (/.f64 (fma.f64 z z (*.f64 (*.f64 z y) (+.f64 z (*.f64 z y)))) (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3)))) |
(/.f64 1 (/.f64 (+.f64 z (*.f64 z y)) (-.f64 (*.f64 z z) (pow.f64 (*.f64 z y) 2)))) |
(/.f64 (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3)) (fma.f64 z z (*.f64 (*.f64 z y) (+.f64 z (*.f64 z y))))) |
(/.f64 (-.f64 (*.f64 z z) (pow.f64 (*.f64 z y) 2)) (+.f64 z (*.f64 z y))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3))) (neg.f64 (fma.f64 z z (*.f64 (*.f64 z y) (+.f64 z (*.f64 z y)))))) |
(/.f64 (neg.f64 (-.f64 (*.f64 z z) (pow.f64 (*.f64 z y) 2))) (neg.f64 (+.f64 z (*.f64 z y)))) |
(/.f64 (+.f64 (pow.f64 z 3) (pow.f64 (*.f64 z (neg.f64 y)) 3)) (+.f64 (*.f64 z z) (-.f64 (*.f64 (*.f64 z (neg.f64 y)) (*.f64 z (neg.f64 y))) (*.f64 z (*.f64 z (neg.f64 y)))))) |
(/.f64 (-.f64 (*.f64 z z) (*.f64 (*.f64 z (neg.f64 y)) (*.f64 z (neg.f64 y)))) (-.f64 z (*.f64 z (neg.f64 y)))) |
(pow.f64 (-.f64 z (*.f64 z y)) 1) |
(pow.f64 (cbrt.f64 (-.f64 z (*.f64 z y))) 3) |
(pow.f64 (pow.f64 (-.f64 z (*.f64 z y)) 3) 1/3) |
(pow.f64 (sqrt.f64 (-.f64 z (*.f64 z y))) 2) |
(sqrt.f64 (pow.f64 (-.f64 z (*.f64 z y)) 2)) |
(log.f64 (exp.f64 (-.f64 z (*.f64 z y)))) |
(cbrt.f64 (pow.f64 (-.f64 z (*.f64 z y)) 3)) |
(expm1.f64 (log1p.f64 (-.f64 z (*.f64 z y)))) |
(exp.f64 (log.f64 (-.f64 z (*.f64 z y)))) |
(log1p.f64 (expm1.f64 (-.f64 z (*.f64 z y)))) |
(fma.f64 1 z (*.f64 z (neg.f64 y))) |
(fma.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 z) (*.f64 z (neg.f64 y))) |
(fma.f64 (sqrt.f64 z) (sqrt.f64 z) (*.f64 z (neg.f64 y))) |
| Outputs |
|---|
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(*.f64 (+.f64 1 (*.f64 -1 y)) z) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(*.f64 (+.f64 1 (*.f64 -1 y)) z) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(*.f64 (+.f64 1 (*.f64 -1 y)) z) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(*.f64 (+.f64 1 (*.f64 -1 y)) z) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
z |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(*.f64 -1 (*.f64 y z)) |
(*.f64 z (neg.f64 y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(*.f64 -1 (*.f64 y z)) |
(*.f64 z (neg.f64 y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(+.f64 z (*.f64 z (neg.f64 y))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(+.f64 z (*.f64 (*.f64 z (neg.f64 y)) 1)) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(+.f64 (-.f64 z (*.f64 z y)) (fma.f64 (neg.f64 y) z (*.f64 z y))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(+.f64 (-.f64 z (*.f64 z y)) (fma.f64 (neg.f64 z) y (*.f64 z y))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(+.f64 (-.f64 z (*.f64 z y)) (fma.f64 (*.f64 z (neg.f64 y)) 1 (*.f64 z y))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(+.f64 (-.f64 z (*.f64 z y)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 z y))) (pow.f64 (cbrt.f64 (*.f64 z y)) 2) (*.f64 z y))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(+.f64 (-.f64 z (*.f64 z y)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 z y))) (sqrt.f64 (*.f64 z y)) (*.f64 z y))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 z (neg.f64 y)) z) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(*.f64 (-.f64 z (*.f64 z y)) 1) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(*.f64 1 (-.f64 z (*.f64 z y))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(*.f64 (cbrt.f64 (-.f64 z (*.f64 z y))) (pow.f64 (cbrt.f64 (-.f64 z (*.f64 z y))) 2)) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(*.f64 (pow.f64 (cbrt.f64 (-.f64 z (*.f64 z y))) 2) (cbrt.f64 (-.f64 z (*.f64 z y)))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(*.f64 (sqrt.f64 (-.f64 z (*.f64 z y))) (sqrt.f64 (-.f64 z (*.f64 z y)))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(*.f64 (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3)) (/.f64 1 (fma.f64 z z (*.f64 (*.f64 z y) (+.f64 z (*.f64 z y)))))) |
(/.f64 (*.f64 (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3)) 1) (fma.f64 z z (*.f64 z (*.f64 y (+.f64 z (*.f64 z y)))))) |
(/.f64 (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3)) (*.f64 z (+.f64 z (*.f64 y (fma.f64 z y z))))) |
(/.f64 (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3)) (*.f64 z (+.f64 z (*.f64 z (fma.f64 y y y))))) |
(*.f64 (-.f64 (*.f64 z z) (pow.f64 (*.f64 z y) 2)) (/.f64 1 (+.f64 z (*.f64 z y)))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(*.f64 (+.f64 (sqrt.f64 z) (sqrt.f64 (*.f64 z y))) (-.f64 (sqrt.f64 z) (sqrt.f64 (*.f64 z y)))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(/.f64 1 (/.f64 (fma.f64 z z (*.f64 (*.f64 z y) (+.f64 z (*.f64 z y)))) (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3)))) |
(/.f64 (*.f64 (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3)) 1) (fma.f64 z z (*.f64 z (*.f64 y (+.f64 z (*.f64 z y)))))) |
(/.f64 (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3)) (*.f64 z (+.f64 z (*.f64 y (fma.f64 z y z))))) |
(/.f64 (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3)) (*.f64 z (+.f64 z (*.f64 z (fma.f64 y y y))))) |
(/.f64 1 (/.f64 (+.f64 z (*.f64 z y)) (-.f64 (*.f64 z z) (pow.f64 (*.f64 z y) 2)))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(/.f64 (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3)) (fma.f64 z z (*.f64 (*.f64 z y) (+.f64 z (*.f64 z y))))) |
(/.f64 (*.f64 (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3)) 1) (fma.f64 z z (*.f64 z (*.f64 y (+.f64 z (*.f64 z y)))))) |
(/.f64 (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3)) (*.f64 z (+.f64 z (*.f64 y (fma.f64 z y z))))) |
(/.f64 (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3)) (*.f64 z (+.f64 z (*.f64 z (fma.f64 y y y))))) |
(/.f64 (-.f64 (*.f64 z z) (pow.f64 (*.f64 z y) 2)) (+.f64 z (*.f64 z y))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(/.f64 (neg.f64 (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3))) (neg.f64 (fma.f64 z z (*.f64 (*.f64 z y) (+.f64 z (*.f64 z y)))))) |
(/.f64 (*.f64 (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3)) 1) (fma.f64 z z (*.f64 z (*.f64 y (+.f64 z (*.f64 z y)))))) |
(/.f64 (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3)) (*.f64 z (+.f64 z (*.f64 y (fma.f64 z y z))))) |
(/.f64 (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3)) (*.f64 z (+.f64 z (*.f64 z (fma.f64 y y y))))) |
(/.f64 (neg.f64 (-.f64 (*.f64 z z) (pow.f64 (*.f64 z y) 2))) (neg.f64 (+.f64 z (*.f64 z y)))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(/.f64 (+.f64 (pow.f64 z 3) (pow.f64 (*.f64 z (neg.f64 y)) 3)) (+.f64 (*.f64 z z) (-.f64 (*.f64 (*.f64 z (neg.f64 y)) (*.f64 z (neg.f64 y))) (*.f64 z (*.f64 z (neg.f64 y)))))) |
(/.f64 (*.f64 (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3)) 1) (fma.f64 z z (*.f64 z (*.f64 y (+.f64 z (*.f64 z y)))))) |
(/.f64 (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3)) (*.f64 z (+.f64 z (*.f64 y (fma.f64 z y z))))) |
(/.f64 (-.f64 (pow.f64 z 3) (pow.f64 (*.f64 z y) 3)) (*.f64 z (+.f64 z (*.f64 z (fma.f64 y y y))))) |
(/.f64 (-.f64 (*.f64 z z) (*.f64 (*.f64 z (neg.f64 y)) (*.f64 z (neg.f64 y)))) (-.f64 z (*.f64 z (neg.f64 y)))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(pow.f64 (-.f64 z (*.f64 z y)) 1) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(pow.f64 (cbrt.f64 (-.f64 z (*.f64 z y))) 3) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(pow.f64 (pow.f64 (-.f64 z (*.f64 z y)) 3) 1/3) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(pow.f64 (sqrt.f64 (-.f64 z (*.f64 z y))) 2) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(sqrt.f64 (pow.f64 (-.f64 z (*.f64 z y)) 2)) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(log.f64 (exp.f64 (-.f64 z (*.f64 z y)))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(cbrt.f64 (pow.f64 (-.f64 z (*.f64 z y)) 3)) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(expm1.f64 (log1p.f64 (-.f64 z (*.f64 z y)))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(exp.f64 (log.f64 (-.f64 z (*.f64 z y)))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(log1p.f64 (expm1.f64 (-.f64 z (*.f64 z y)))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(fma.f64 1 z (*.f64 z (neg.f64 y))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(fma.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 z) (*.f64 z (neg.f64 y))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(fma.f64 (sqrt.f64 z) (sqrt.f64 z) (*.f64 z (neg.f64 y))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
Compiled 588 to 192 computations (67.3% saved)
7 alts after pruning (2 fresh and 5 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 46 | 1 | 47 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 3 | 3 |
| Done | 0 | 2 | 2 |
| Total | 46 | 7 | 53 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 100.0% | (fma.f64 y (-.f64 x z) z) |
| ✓ | 60.6% | (-.f64 z (*.f64 z y)) |
| ✓ | 97.7% | (+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
| ▶ | 26.5% | (*.f64 z (neg.f64 y)) |
| ✓ | 65.5% | (*.f64 y (-.f64 x z)) |
| ✓ | 42.8% | (*.f64 y x) |
| 36.6% | z | |
| ✓ | 100.0% | (fma.f64 y (-.f64 x z) z) |
| ✓ | 60.6% | (-.f64 z (*.f64 z y)) |
| ✓ | 97.7% | (+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
| ▶ | 26.5% | (*.f64 z (neg.f64 y)) |
| ✓ | 65.5% | (*.f64 y (-.f64 x z)) |
| ✓ | 42.8% | (*.f64 y x) |
| 36.6% | z |
Compiled 108 to 70 computations (35.2% saved)
Compiled 12 to 6 computations (50% saved)
Compiled 3 to 3 computations (0% saved)
7 alts after pruning (1 fresh and 6 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 0 | 0 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 5 | 5 |
| Total | 0 | 7 | 7 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 100.0% | (fma.f64 y (-.f64 x z) z) |
| ✓ | 60.6% | (-.f64 z (*.f64 z y)) |
| ✓ | 97.7% | (+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
| ✓ | 26.5% | (*.f64 z (neg.f64 y)) |
| ✓ | 65.5% | (*.f64 y (-.f64 x z)) |
| ✓ | 42.8% | (*.f64 y x) |
| 36.6% | z | |
| ✓ | 100.0% | (fma.f64 y (-.f64 x z) z) |
| ✓ | 60.6% | (-.f64 z (*.f64 z y)) |
| ✓ | 97.7% | (+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
| ✓ | 26.5% | (*.f64 z (neg.f64 y)) |
| ✓ | 65.5% | (*.f64 y (-.f64 x z)) |
| ✓ | 42.8% | (*.f64 y x) |
| 36.6% | z |
Compiled 108 to 70 computations (35.2% saved)
Compiled 3 to 3 computations (0% saved)
7 alts after pruning (1 fresh and 6 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 0 | 0 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 6 | 6 |
| Total | 0 | 7 | 7 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 100.0% | (fma.f64 y (-.f64 x z) z) |
| ✓ | 60.6% | (-.f64 z (*.f64 z y)) |
| ✓ | 97.7% | (+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
| ✓ | 26.5% | (*.f64 z (neg.f64 y)) |
| ✓ | 65.5% | (*.f64 y (-.f64 x z)) |
| ✓ | 42.8% | (*.f64 y x) |
| 36.6% | z |
Compiled 90 to 51 computations (43.3% saved)
| Inputs |
|---|
z |
(*.f64 y x) |
(*.f64 z (neg.f64 y)) |
(*.f64 y (-.f64 x z)) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
(fma.f64 y (-.f64 x z) z) |
| Outputs |
|---|
(fma.f64 y (-.f64 x z) z) |
4 calls:
| 9.0ms | x |
| 6.0ms | (+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
| 5.0ms | z |
| 5.0ms | y |
| Accuracy | Segments | Branch |
|---|---|---|
| 100.0% | 1 | x |
| 100.0% | 1 | y |
| 100.0% | 1 | z |
| 100.0% | 1 | (+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
Compiled 60 to 33 computations (45% saved)
| Inputs |
|---|
z |
(*.f64 y x) |
(*.f64 z (neg.f64 y)) |
(*.f64 y (-.f64 x z)) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
| Outputs |
|---|
(+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
(*.f64 y (-.f64 x z)) |
4 calls:
| 9.0ms | (+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
| 6.0ms | z |
| 5.0ms | x |
| 5.0ms | y |
| Accuracy | Segments | Branch |
|---|---|---|
| 97.7% | 1 | x |
| 97.7% | 1 | y |
| 97.7% | 1 | z |
| 100.0% | 2 | (+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) |
Compiled 54 to 32 computations (40.7% saved)
| Inputs |
|---|
z |
(*.f64 y x) |
(*.f64 z (neg.f64 y)) |
(*.f64 y (-.f64 x z)) |
(-.f64 z (*.f64 z y)) |
| Outputs |
|---|
(*.f64 y (-.f64 x z)) |
(-.f64 z (*.f64 z y)) |
(*.f64 y (-.f64 x z)) |
3 calls:
| 34.0ms | y |
| 14.0ms | x |
| 13.0ms | z |
| Accuracy | Segments | Branch |
|---|---|---|
| 84.8% | 3 | x |
| 90.6% | 7 | y |
| 82.5% | 3 | z |
Compiled 33 to 19 computations (42.4% saved)
| Inputs |
|---|
z |
(*.f64 y x) |
(*.f64 z (neg.f64 y)) |
(*.f64 y (-.f64 x z)) |
| Outputs |
|---|
(*.f64 y (-.f64 x z)) |
z |
(*.f64 y x) |
z |
(*.f64 y x) |
z |
(*.f64 y (-.f64 x z)) |
2 calls:
| 28.0ms | y |
| 23.0ms | x |
| Accuracy | Segments | Branch |
|---|---|---|
| 90.6% | 7 | y |
| 70.9% | 5 | x |
Compiled 24 to 14 computations (41.7% saved)
| Inputs |
|---|
z |
(*.f64 y x) |
(*.f64 z (neg.f64 y)) |
| Outputs |
|---|
z |
(*.f64 y x) |
(*.f64 z (neg.f64 y)) |
z |
3 calls:
| 31.0ms | y |
| 17.0ms | z |
| 16.0ms | x |
| Accuracy | Segments | Branch |
|---|---|---|
| 64.5% | 5 | x |
| 63.8% | 4 | z |
| 70.7% | 9 | y |
Compiled 23 to 15 computations (34.8% saved)
| Inputs |
|---|
z |
(*.f64 y x) |
| Outputs |
|---|
(*.f64 y x) |
z |
(*.f64 y x) |
2 calls:
| 9.0ms | z |
| 9.0ms | x |
| Accuracy | Segments | Branch |
|---|---|---|
| 61.5% | 3 | x |
| 58.9% | 3 | z |
Compiled 15 to 10 computations (33.3% saved)
Total -0.0b remaining (-0%)
Threshold costs -0b (-0%)
| Inputs |
|---|
z |
| Outputs |
|---|
z |
3 calls:
| 4.0ms | z |
| 3.0ms | y |
| 3.0ms | x |
| Accuracy | Segments | Branch |
|---|---|---|
| 36.6% | 1 | z |
| 36.6% | 1 | y |
| 36.6% | 1 | x |
Compiled 16 to 12 computations (25% saved)
| 1× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 2.9847679366137516e+302 | 3.006503829704514e+306 |
Compiled 18 to 13 computations (27.8% saved)
| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 17.0ms | 3.2780725637187654e-13 | 200442.99657330516 |
| 15.0ms | -6.472956371902011e+19 | -1082501872942.8959 |
| 26.0ms | 271× | body | 256 | valid |
| 3.0ms | 33× | body | 256 | infinite |
Compiled 360 to 241 computations (33.1% saved)
| 6× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| 1× | narrow-enough |
| 1× | narrow-enough |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 16.0ms | 3.45795821561208e-59 | 5.926838163447467e-48 |
| 75.0ms | 5.041114391933328e-138 | 3.713716054908543e-135 |
| 18.0ms | 1.687593688576717e-202 | 1.5633934624729642e-182 |
| 18.0ms | 1.0504471126058787e-244 | 2.1687845084032015e-232 |
| 16.0ms | 1.0969838150877742e-262 | 9.445184820819884e-256 |
| 13.0ms | -1.2150000216270196e-76 | -2.4772225202706284e-79 |
| 147.0ms | 896× | body | 256 | valid |
Compiled 726 to 535 computations (26.3% saved)
| 3× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 50.0ms | 2.2435793100305833e+213 | 4.095707533312228e+218 |
| 15.0ms | 1.9332157003967097e+92 | 1.580856563535103e+100 |
| 17.0ms | -3.972223157660087e-60 | -6.633600960238405e-73 |
| 69.0ms | 361× | body | 256 | valid |
| 8.0ms | 87× | body | 256 | infinite |
Compiled 390 to 292 computations (25.1% saved)
| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 17.0ms | 3.2780725637187654e-13 | 200442.99657330516 |
| 15.0ms | -6.472956371902011e+19 | -1082501872942.8959 |
| 27.0ms | 278× | body | 256 | valid |
| 2.0ms | 26× | body | 256 | infinite |
Compiled 246 to 184 computations (25.2% saved)
| 1× | egg-herbie |
| 16× | *-commutative |
| 14× | +-commutative |
| 12× | sub-neg |
| 6× | neg-mul-1 |
| 6× | neg-sub0 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 65 | 315 |
| 1 | 93 | 315 |
| 2 | 103 | 315 |
| 3 | 108 | 315 |
| 4 | 110 | 315 |
| 1× | fuel |
| 1× | saturated |
| Inputs |
|---|
(fma.f64 y (-.f64 x z) z) |
(if (<=.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) 500000000000000000080882538393228219106334323115829719147747508550558749612869373932630121517106957626889886784090168708013722910283889599821695770803013034305575373061142488088628325022100263638403663533845231056330713750098525613244949130339381695724688044273646160407063978743165327734459561131638784) (+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) (*.f64 y (-.f64 x z))) |
(if (<=.f64 x -1150000000000) (*.f64 y (-.f64 x z)) (if (<=.f64 x 5942112188569825/9903520314283042199192993792) (-.f64 z (*.f64 z y)) (*.f64 y (-.f64 x z)))) |
(if (<=.f64 y -2477035747222735/32592575621351777380295131014550050576823494298654980010178247189670100796213387298934358016) (*.f64 y (-.f64 x z)) (if (<=.f64 y 7945549748280405/8452712498170643941637436558664265704301557216577944354047371344426782440907597751590676094202515006314790319892114058862117560952042968596008623655407033230534186943984081346699704282822823056848387726531379014466368452684024987821414350380272583623832617294363807973376) z (if (<=.f64 y 6519167253326219/61501577861568104283923723841611832207865934590357532972465351809127477760976746151505184346770074671911354525161107149776344601938347976800349887747194103071045442949864673913541659442291879217725274258783458313456274137454056383441015716964266784080483319808) (*.f64 y x) (if (<=.f64 y 8372115032861669/1196016433265952743395471289404697169072810493804166494441751843412187589432751524808206008009981008223572409600860332310053179810480242818613945648997260116165130891915497295074524972252293700255744) z (if (<=.f64 y 4273738777669203/837987995621412318723376562387865382967460363787024586107722590232610251879596686050117143635431464230626991136655378178359617675746660621652103062880256) (*.f64 y x) (if (<=.f64 y 2961908203178171/822752278660603021077484591278675252491367932816789931674304512) z (*.f64 y (-.f64 x z)))))))) |
(if (<=.f64 z -2460581896292969/28948022309329048855892746252171976963317496166410141009864396001978282409984) z (if (<=.f64 z 1800000000000000066036757273633650607871145544009948344485114415578391603097837262871417277382656) (*.f64 y x) (if (<=.f64 z 2700000000000000092283450064772724104521036951066641563574056778984182739497445087664181354900488029106317684846946553484123562797726417767837009742336789374444808747065679890480229165341571337190481501547879464960) (*.f64 z (neg.f64 y)) z))) |
(if (<=.f64 x -45000000000000000) (*.f64 y x) (if (<=.f64 x 5694524180712749/4951760157141521099596496896) z (*.f64 y x))) |
z |
| Outputs |
|---|
(fma.f64 y (-.f64 x z) z) |
(if (<=.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) 500000000000000000080882538393228219106334323115829719147747508550558749612869373932630121517106957626889886784090168708013722910283889599821695770803013034305575373061142488088628325022100263638403663533845231056330713750098525613244949130339381695724688044273646160407063978743165327734459561131638784) (+.f64 (*.f64 x y) (*.f64 z (-.f64 1 y))) (*.f64 y (-.f64 x z))) |
(if (<=.f64 (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 y x)) 500000000000000000080882538393228219106334323115829719147747508550558749612869373932630121517106957626889886784090168708013722910283889599821695770803013034305575373061142488088628325022100263638403663533845231056330713750098525613244949130339381695724688044273646160407063978743165327734459561131638784) (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 y x)) (*.f64 y (-.f64 x z))) |
(if (<=.f64 x -1150000000000) (*.f64 y (-.f64 x z)) (if (<=.f64 x 5942112188569825/9903520314283042199192993792) (-.f64 z (*.f64 z y)) (*.f64 y (-.f64 x z)))) |
(if (or (<=.f64 x -1150000000000) (not (<=.f64 x 5942112188569825/9903520314283042199192993792))) (*.f64 y (-.f64 x z)) (-.f64 z (*.f64 y z))) |
(if (<=.f64 y -2477035747222735/32592575621351777380295131014550050576823494298654980010178247189670100796213387298934358016) (*.f64 y (-.f64 x z)) (if (<=.f64 y 7945549748280405/8452712498170643941637436558664265704301557216577944354047371344426782440907597751590676094202515006314790319892114058862117560952042968596008623655407033230534186943984081346699704282822823056848387726531379014466368452684024987821414350380272583623832617294363807973376) z (if (<=.f64 y 6519167253326219/61501577861568104283923723841611832207865934590357532972465351809127477760976746151505184346770074671911354525161107149776344601938347976800349887747194103071045442949864673913541659442291879217725274258783458313456274137454056383441015716964266784080483319808) (*.f64 y x) (if (<=.f64 y 8372115032861669/1196016433265952743395471289404697169072810493804166494441751843412187589432751524808206008009981008223572409600860332310053179810480242818613945648997260116165130891915497295074524972252293700255744) z (if (<=.f64 y 4273738777669203/837987995621412318723376562387865382967460363787024586107722590232610251879596686050117143635431464230626991136655378178359617675746660621652103062880256) (*.f64 y x) (if (<=.f64 y 2961908203178171/822752278660603021077484591278675252491367932816789931674304512) z (*.f64 y (-.f64 x z)))))))) |
(if (<=.f64 z -2460581896292969/28948022309329048855892746252171976963317496166410141009864396001978282409984) z (if (<=.f64 z 1800000000000000066036757273633650607871145544009948344485114415578391603097837262871417277382656) (*.f64 y x) (if (<=.f64 z 2700000000000000092283450064772724104521036951066641563574056778984182739497445087664181354900488029106317684846946553484123562797726417767837009742336789374444808747065679890480229165341571337190481501547879464960) (*.f64 z (neg.f64 y)) z))) |
(if (<=.f64 x -45000000000000000) (*.f64 y x) (if (<=.f64 x 5694524180712749/4951760157141521099596496896) z (*.f64 y x))) |
z |
Compiled 152 to 88 computations (42.1% saved)
| 1626× | fma-neg |
| 1214× | fma-def |
| 1160× | distribute-lft-in |
| 1160× | distribute-lft-in |
| 1116× | distribute-rgt-in |
Useful iterations: 5 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 21 |
| 1 | 20 | 21 |
| 2 | 33 | 21 |
| 3 | 60 | 21 |
| 4 | 129 | 17 |
| 5 | 221 | 15 |
| 6 | 351 | 15 |
| 7 | 563 | 15 |
| 8 | 972 | 15 |
| 9 | 1160 | 15 |
| 10 | 1219 | 15 |
| 11 | 1229 | 15 |
| 0 | 284 | 4148 |
| 1 | 664 | 3622 |
| 2 | 2003 | 3622 |
| 0 | 111 | 1070 |
| 1 | 297 | 1010 |
| 2 | 1150 | 1010 |
| 3 | 5655 | 1010 |
| 0 | 284 | 4148 |
| 1 | 664 | 3622 |
| 2 | 2003 | 3622 |
| 1× | node limit |
| 1× | node limit |
| 1× | node limit |
| 1× | saturated |
Compiled 220 to 101 computations (54.1% saved)
Compiled 312 to 152 computations (51.3% saved)
Loading profile data...