Time bar (total: 12.3s)
| 1× | search |
| True | Other | False | Iter |
|---|---|---|---|
| 0% | 99.8% | 0.2% | 0 |
| 0% | 99.8% | 0.2% | 1 |
| 0% | 99.8% | 0.2% | 2 |
| 0% | 99.8% | 0.2% | 3 |
| 0% | 99.8% | 0.2% | 4 |
| 0% | 99.8% | 0.2% | 5 |
| 0% | 99.8% | 0.2% | 6 |
| 0% | 99.8% | 0.2% | 7 |
| 0% | 99.8% | 0.2% | 8 |
| 0% | 99.8% | 0.2% | 9 |
| 0% | 99.8% | 0.2% | 10 |
| 3.1% | 96.6% | 0.2% | 11 |
| 4.7% | 95.1% | 0.2% | 12 |
Compiled 15 to 10 computations (33.3% saved)
| 1.9s | 8256× | body | 256 | valid |
| 483.0ms | 2724× | body | 256 | invalid |
| 2× | egg-herbie |
| 811× | div-sub_binary64 |
| 499× | sub-neg_binary64 |
| 355× | fma-neg_binary64 |
| 315× | distribute-rgt-neg-in_binary64 |
| 293× | unsub-neg_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 46 | 143 |
| 1 | 112 | 143 |
| 2 | 283 | 143 |
| 3 | 926 | 133 |
| 4 | 3020 | 121 |
| 5 | 6107 | 121 |
| 0 | 5 | 5 |
| 1× | saturated |
| 1× | node limit |
| Inputs |
|---|
0 |
1 |
2 |
3 |
4 |
| Outputs |
|---|
0 |
1 |
2 |
3 |
4 |
| Inputs |
|---|
(-.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) |
(-.f64 y (/.f64 (*.f64 x (-.f64 z t)) a)) |
(-.f64 z (/.f64 (*.f64 y (-.f64 x t)) a)) |
(-.f64 t (/.f64 (*.f64 y (-.f64 z x)) a)) |
(-.f64 a (/.f64 (*.f64 y (-.f64 z t)) x)) |
(-.f64 x (/.f64 (*.f64 z (-.f64 y t)) a)) |
(-.f64 x (/.f64 (*.f64 t (-.f64 z y)) a)) |
(-.f64 x (/.f64 (*.f64 a (-.f64 z t)) y)) |
(-.f64 x (/.f64 (*.f64 y (-.f64 t z)) a)) |
(-.f64 x (/.f64 (*.f64 y (-.f64 a t)) z)) |
(-.f64 x (/.f64 (*.f64 y (-.f64 z a)) t)) |
| Outputs |
|---|
(-.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(-.f64 y (/.f64 (*.f64 x (-.f64 z t)) a)) |
(-.f64 y (/.f64 x (/.f64 a (-.f64 z t)))) |
(-.f64 y (*.f64 (/.f64 x a) (-.f64 z t))) |
(-.f64 y (*.f64 (-.f64 z t) (/.f64 x a))) |
(fma.f64 (/.f64 x a) (-.f64 t z) y) |
(-.f64 z (/.f64 (*.f64 y (-.f64 x t)) a)) |
(-.f64 z (/.f64 y (/.f64 a (-.f64 x t)))) |
(-.f64 z (*.f64 (/.f64 y a) (-.f64 x t))) |
(-.f64 z (*.f64 (-.f64 x t) (/.f64 y a))) |
(fma.f64 (/.f64 (neg.f64 y) a) (-.f64 x t) z) |
(fma.f64 (/.f64 y a) (-.f64 t x) z) |
(-.f64 t (/.f64 (*.f64 y (-.f64 z x)) a)) |
(-.f64 t (*.f64 (/.f64 y a) (-.f64 z x))) |
(-.f64 t (*.f64 (-.f64 z x) (/.f64 y a))) |
(fma.f64 (/.f64 (neg.f64 y) a) (-.f64 z x) t) |
(fma.f64 (/.f64 y a) (-.f64 x z) t) |
(-.f64 a (/.f64 (*.f64 y (-.f64 z t)) x)) |
(-.f64 a (/.f64 y (/.f64 x (-.f64 z t)))) |
(-.f64 a (*.f64 (/.f64 y x) (-.f64 z t))) |
(-.f64 a (*.f64 (-.f64 z t) (/.f64 y x))) |
(fma.f64 (/.f64 y x) (-.f64 t z) a) |
(-.f64 x (/.f64 (*.f64 z (-.f64 y t)) a)) |
(-.f64 x (/.f64 z (/.f64 a (-.f64 y t)))) |
(-.f64 x (*.f64 (/.f64 z a) (-.f64 y t))) |
(-.f64 x (*.f64 (/.f64 (-.f64 y t) a) z)) |
(-.f64 x (*.f64 z (/.f64 (-.f64 y t) a))) |
(fma.f64 (/.f64 z a) (-.f64 t y) x) |
(-.f64 x (/.f64 (*.f64 t (-.f64 z y)) a)) |
(-.f64 x (/.f64 t (/.f64 a (-.f64 z y)))) |
(-.f64 x (*.f64 (/.f64 t a) (-.f64 z y))) |
(-.f64 x (*.f64 (-.f64 z y) (/.f64 t a))) |
(fma.f64 (/.f64 (neg.f64 t) a) (-.f64 z y) x) |
(fma.f64 (/.f64 t a) (-.f64 y z) x) |
(-.f64 x (/.f64 (*.f64 a (-.f64 z t)) y)) |
(-.f64 x (/.f64 (*.f64 (-.f64 z t) a) y)) |
(-.f64 x (*.f64 (/.f64 a y) (-.f64 z t))) |
(-.f64 x (*.f64 (-.f64 z t) (/.f64 a y))) |
(fma.f64 (/.f64 a y) (-.f64 t z) x) |
(-.f64 x (/.f64 (*.f64 y (-.f64 t z)) a)) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 t z))) |
(-.f64 x (*.f64 (-.f64 t z) (/.f64 y a))) |
(fma.f64 (/.f64 y a) (-.f64 z t) x) |
(-.f64 x (/.f64 (*.f64 y (-.f64 a t)) z)) |
(-.f64 x (/.f64 (-.f64 a t) (/.f64 z y))) |
(-.f64 x (*.f64 (-.f64 a t) (/.f64 y z))) |
(-.f64 x (*.f64 y (/.f64 (-.f64 a t) z))) |
(fma.f64 (/.f64 y z) (-.f64 t a) x) |
(-.f64 x (/.f64 (*.f64 y (-.f64 z a)) t)) |
(-.f64 x (*.f64 (/.f64 y t) (-.f64 z a))) |
(-.f64 x (*.f64 (-.f64 z a) (/.f64 y t))) |
(-.f64 x (*.f64 y (/.f64 (-.f64 z a) t))) |
(fma.f64 (/.f64 y t) (-.f64 a z) x) |
Compiled 19 to 14 computations (26.3% saved)
| 1× | egg-herbie |
| 783× | fma-neg_binary64 |
| 717× | fma-def_binary64 |
| 245× | cancel-sign-sub-inv_binary64 |
| 181× | distribute-rgt-in_binary64 |
| 139× | distribute-lft-in_binary64 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 13 |
| 1 | 17 | 13 |
| 2 | 39 | 13 |
| 3 | 107 | 13 |
| 4 | 327 | 11 |
| 5 | 879 | 11 |
| 6 | 1902 | 11 |
| 7 | 3302 | 11 |
| 8 | 3989 | 11 |
| 9 | 4045 | 11 |
| 10 | 4075 | 11 |
| 11 | 4080 | 11 |
| 12 | 4080 | 11 |
| 1× | saturated |
| Inputs |
|---|
(-.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) |
| Outputs |
|---|
(-.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))) |
(-.f64 x (*.f64 y (/.f64 (-.f64 z t) a))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
Compiled 22 to 12 computations (45.5% saved)
3 alts after pruning (3 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 2 | 2 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 0 | 3 | 3 |
| Status | Error | Program |
|---|---|---|
| ▶ | 3.8b | (fma.f64 y (/.f64 (-.f64 t z) a) x) |
| ▶ | 5.8b | (-.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) |
Compiled 27 to 17 computations (37% saved)
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (*.f64 y (-.f64 z t)) |
| ✓ | 0.0b | (-.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) |
| ✓ | 7.2b | (/.f64 (*.f64 y (-.f64 z t)) a) |
Compiled 34 to 9 computations (73.5% saved)
36 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 2.0ms | z | @ | 0 | (-.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) |
| 1.0ms | t | @ | inf | (/.f64 (*.f64 y (-.f64 z t)) a) |
| 1.0ms | y | @ | 0 | (/.f64 (*.f64 y (-.f64 z t)) a) |
| 1.0ms | z | @ | 0 | (/.f64 (*.f64 y (-.f64 z t)) a) |
| 1.0ms | y | @ | inf | (-.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) |
| 1× | batch-egg-rewrite |
| 946× | prod-diff_binary64 |
| 637× | log-prod_binary64 |
| 369× | fma-def_binary64 |
| 220× | expm1-udef_binary64 |
| 220× | log1p-udef_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 30 |
| 1 | 226 | 30 |
| 2 | 3454 | 30 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 y (-.f64 z t)) a) |
(-.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) |
(*.f64 y (-.f64 z t)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 y a) (-.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (cbrt.f64 (exp.f64 (*.f64 (/.f64 y a) (-.f64 z t)))))) (log.f64 (cbrt.f64 (exp.f64 (*.f64 (/.f64 y a) (-.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 (/.f64 y a) (-.f64 z t))))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 (/.f64 y a) (-.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (/.f64 1 (/.f64 a (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 (-.f64 z t) (/.f64 1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 z t) (*.f64 y (/.f64 1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (-.f64 z t)) (/.f64 1 a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (/.f64 y a) (-.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) (cbrt.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2)) (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (*.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (*.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 z t) (neg.f64 y)) (/.f64 1 (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 a) (*.f64 y (-.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y 1) (/.f64 (-.f64 z t) a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 z t) 1) (/.f64 y a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y a) (-.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) 1) (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) 1) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (pow.f64 (cbrt.f64 a) 2)) (/.f64 (-.f64 z t) (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 z t) (pow.f64 (cbrt.f64 a) 2)) (/.f64 y (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 a) 2)) (/.f64 (*.f64 y (-.f64 z t)) (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (pow.f64 (cbrt.f64 a) 2)) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (sqrt.f64 a)) (/.f64 (-.f64 z t) (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 z t) (sqrt.f64 a)) (/.f64 y (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 a)) (/.f64 (*.f64 y (-.f64 z t)) (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (sqrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 a y) (-.f64 z t)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 y (-.f64 z t)) (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 y a) (-.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 y a) (-.f64 z t))) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 x (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) (fma.f64 (neg.f64 (/.f64 1 a)) (*.f64 y (-.f64 z t)) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) (fma.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) 1 (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (cbrt.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2)) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) (+.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) (fma.f64 -1 (*.f64 (/.f64 y a) (-.f64 z t)) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) (fma.f64 (neg.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2))) (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) (fma.f64 (*.f64 (-.f64 z t) (neg.f64 y)) (/.f64 1 a) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) (fma.f64 (neg.f64 (/.f64 (-.f64 z t) (sqrt.f64 a))) (/.f64 y (sqrt.f64 a)) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) (fma.f64 (neg.f64 (/.f64 y (sqrt.f64 a))) (/.f64 (-.f64 z t) (sqrt.f64 a)) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (/.f64 1 (/.f64 a (-.f64 z t))) y))) (fma.f64 (neg.f64 (/.f64 1 (/.f64 a (-.f64 z t)))) y (*.f64 (/.f64 1 (/.f64 a (-.f64 z t))) y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (/.f64 1 (/.f64 a (-.f64 z t))) y))) (fma.f64 (neg.f64 (/.f64 1 (/.f64 a (-.f64 z t)))) y (*.f64 (/.f64 1 (/.f64 a (-.f64 z t))) y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (/.f64 1 (/.f64 a (-.f64 z t))) y))) (fma.f64 (neg.f64 (/.f64 1 (/.f64 a (-.f64 z t)))) y (*.f64 (/.f64 1 (/.f64 a (-.f64 z t))) y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (/.f64 1 (/.f64 a (-.f64 z t))) y))) (fma.f64 (neg.f64 (/.f64 1 (/.f64 a (-.f64 z t)))) y (*.f64 (/.f64 1 (/.f64 a (-.f64 z t))) y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (/.f64 1 (/.f64 a (-.f64 z t))) y))) (fma.f64 (neg.f64 (/.f64 1 (/.f64 a (-.f64 z t)))) y (*.f64 (/.f64 1 (/.f64 a (-.f64 z t))) y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (*.f64 (-.f64 z t) (/.f64 1 a)) y))) (fma.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 1 a))) y (*.f64 (*.f64 (-.f64 z t) (/.f64 1 a)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (*.f64 (-.f64 z t) (/.f64 1 a)) y))) (fma.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 1 a))) y (*.f64 (*.f64 (-.f64 z t) (/.f64 1 a)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (*.f64 (-.f64 z t) (/.f64 1 a)) y))) (fma.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 1 a))) y (*.f64 (*.f64 (-.f64 z t) (/.f64 1 a)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (*.f64 (-.f64 z t) (/.f64 1 a)) y))) (fma.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 1 a))) y (*.f64 (*.f64 (-.f64 z t) (/.f64 1 a)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (*.f64 (-.f64 z t) (/.f64 1 a)) y))) (fma.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 1 a))) y (*.f64 (*.f64 (-.f64 z t) (/.f64 1 a)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (*.f64 y (/.f64 1 a)) (-.f64 z t)))) (fma.f64 (neg.f64 (*.f64 y (/.f64 1 a))) (-.f64 z t) (*.f64 (*.f64 y (/.f64 1 a)) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (*.f64 y (/.f64 1 a)) (-.f64 z t)))) (fma.f64 (neg.f64 (*.f64 y (/.f64 1 a))) (-.f64 z t) (*.f64 (*.f64 y (/.f64 1 a)) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (*.f64 y (/.f64 1 a)) (-.f64 z t)))) (fma.f64 (neg.f64 (*.f64 y (/.f64 1 a))) (-.f64 z t) (*.f64 (*.f64 y (/.f64 1 a)) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (*.f64 y (/.f64 1 a)) (-.f64 z t)))) (fma.f64 (neg.f64 (*.f64 y (/.f64 1 a))) (-.f64 z t) (*.f64 (*.f64 y (/.f64 1 a)) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (*.f64 y (/.f64 1 a)) (-.f64 z t)))) (fma.f64 (neg.f64 (*.f64 y (/.f64 1 a))) (-.f64 z t) (*.f64 (*.f64 y (/.f64 1 a)) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a))) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (*.f64 (*.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a))) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (*.f64 (*.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a))) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (*.f64 (*.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a))) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (*.f64 (*.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a))) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (*.f64 (*.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)) (sqrt.f64 (*.f64 y (-.f64 z t)))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a))) (sqrt.f64 (*.f64 y (-.f64 z t))) (*.f64 (*.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)) (sqrt.f64 (*.f64 y (-.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)) (sqrt.f64 (*.f64 y (-.f64 z t)))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a))) (sqrt.f64 (*.f64 y (-.f64 z t))) (*.f64 (*.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)) (sqrt.f64 (*.f64 y (-.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)) (sqrt.f64 (*.f64 y (-.f64 z t)))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a))) (sqrt.f64 (*.f64 y (-.f64 z t))) (*.f64 (*.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)) (sqrt.f64 (*.f64 y (-.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)) (sqrt.f64 (*.f64 y (-.f64 z t)))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a))) (sqrt.f64 (*.f64 y (-.f64 z t))) (*.f64 (*.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)) (sqrt.f64 (*.f64 y (-.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)) (sqrt.f64 (*.f64 y (-.f64 z t)))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a))) (sqrt.f64 (*.f64 y (-.f64 z t))) (*.f64 (*.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a)) (sqrt.f64 (*.f64 y (-.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (/.f64 1 (neg.f64 a)) (*.f64 (-.f64 z t) (neg.f64 y))))) (fma.f64 (neg.f64 (/.f64 1 (neg.f64 a))) (*.f64 (-.f64 z t) (neg.f64 y)) (*.f64 (/.f64 1 (neg.f64 a)) (*.f64 (-.f64 z t) (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (/.f64 1 (neg.f64 a)) (*.f64 (-.f64 z t) (neg.f64 y))))) (fma.f64 (neg.f64 (/.f64 1 (neg.f64 a))) (*.f64 (-.f64 z t) (neg.f64 y)) (*.f64 (/.f64 1 (neg.f64 a)) (*.f64 (-.f64 z t) (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (/.f64 1 (neg.f64 a)) (*.f64 (-.f64 z t) (neg.f64 y))))) (fma.f64 (neg.f64 (/.f64 1 (neg.f64 a))) (*.f64 (-.f64 z t) (neg.f64 y)) (*.f64 (/.f64 1 (neg.f64 a)) (*.f64 (-.f64 z t) (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (/.f64 1 (neg.f64 a)) (*.f64 (-.f64 z t) (neg.f64 y))))) (fma.f64 (neg.f64 (/.f64 1 (neg.f64 a))) (*.f64 (-.f64 z t) (neg.f64 y)) (*.f64 (/.f64 1 (neg.f64 a)) (*.f64 (-.f64 z t) (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (/.f64 1 (neg.f64 a)) (*.f64 (-.f64 z t) (neg.f64 y))))) (fma.f64 (neg.f64 (/.f64 1 (neg.f64 a))) (*.f64 (-.f64 z t) (neg.f64 y)) (*.f64 (/.f64 1 (neg.f64 a)) (*.f64 (-.f64 z t) (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (/.f64 (-.f64 z t) a) (/.f64 y 1)))) (fma.f64 (neg.f64 (/.f64 (-.f64 z t) a)) (/.f64 y 1) (*.f64 (/.f64 (-.f64 z t) a) (/.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (/.f64 (-.f64 z t) a) (/.f64 y 1)))) (fma.f64 (neg.f64 (/.f64 (-.f64 z t) a)) (/.f64 y 1) (*.f64 (/.f64 (-.f64 z t) a) (/.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (/.f64 (-.f64 z t) a) (/.f64 y 1)))) (fma.f64 (neg.f64 (/.f64 (-.f64 z t) a)) (/.f64 y 1) (*.f64 (/.f64 (-.f64 z t) a) (/.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (/.f64 (-.f64 z t) a) (/.f64 y 1)))) (fma.f64 (neg.f64 (/.f64 (-.f64 z t) a)) (/.f64 y 1) (*.f64 (/.f64 (-.f64 z t) a) (/.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (/.f64 (-.f64 z t) a) (/.f64 y 1)))) (fma.f64 (neg.f64 (/.f64 (-.f64 z t) a)) (/.f64 y 1) (*.f64 (/.f64 (-.f64 z t) a) (/.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (/.f64 y a) (/.f64 (-.f64 z t) 1)))) (fma.f64 (neg.f64 (/.f64 y a)) (/.f64 (-.f64 z t) 1) (*.f64 (/.f64 y a) (/.f64 (-.f64 z t) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (/.f64 y a) (/.f64 (-.f64 z t) 1)))) (fma.f64 (neg.f64 (/.f64 y a)) (/.f64 (-.f64 z t) 1) (*.f64 (/.f64 y a) (/.f64 (-.f64 z t) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (/.f64 y a) (/.f64 (-.f64 z t) 1)))) (fma.f64 (neg.f64 (/.f64 y a)) (/.f64 (-.f64 z t) 1) (*.f64 (/.f64 y a) (/.f64 (-.f64 z t) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (/.f64 y a) (/.f64 (-.f64 z t) 1)))) (fma.f64 (neg.f64 (/.f64 y a)) (/.f64 (-.f64 z t) 1) (*.f64 (/.f64 y a) (/.f64 (-.f64 z t) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (/.f64 y a) (/.f64 (-.f64 z t) 1)))) (fma.f64 (neg.f64 (/.f64 y a)) (/.f64 (-.f64 z t) 1) (*.f64 (/.f64 y a) (/.f64 (-.f64 z t) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (fma.f64 (neg.f64 (-.f64 z t)) (/.f64 y a) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (fma.f64 (neg.f64 (-.f64 z t)) (/.f64 y a) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (fma.f64 (neg.f64 (-.f64 z t)) (/.f64 y a) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (fma.f64 (neg.f64 (-.f64 z t)) (/.f64 y a) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (fma.f64 (neg.f64 (-.f64 z t)) (/.f64 y a) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) a) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) a)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) 1) (*.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) a) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) a) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) a)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) 1) (*.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) a) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) a) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) a)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) 1) (*.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) a) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) a) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) a)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) 1) (*.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) a) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) a) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) a)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) 1) (*.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) a) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) a) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) a)) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) 1) (*.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) a) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) a) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) a)) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) 1) (*.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) a) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) a) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) a)) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) 1) (*.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) a) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) a) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) a)) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) 1) (*.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) a) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) a) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) a)) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) 1) (*.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) a) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (/.f64 (-.f64 z t) (cbrt.f64 a)) (/.f64 y (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (/.f64 (-.f64 z t) (cbrt.f64 a))) (/.f64 y (pow.f64 (cbrt.f64 a) 2)) (*.f64 (/.f64 (-.f64 z t) (cbrt.f64 a)) (/.f64 y (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (/.f64 (-.f64 z t) (cbrt.f64 a)) (/.f64 y (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (/.f64 (-.f64 z t) (cbrt.f64 a))) (/.f64 y (pow.f64 (cbrt.f64 a) 2)) (*.f64 (/.f64 (-.f64 z t) (cbrt.f64 a)) (/.f64 y (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (/.f64 (-.f64 z t) (cbrt.f64 a)) (/.f64 y (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (/.f64 (-.f64 z t) (cbrt.f64 a))) (/.f64 y (pow.f64 (cbrt.f64 a) 2)) (*.f64 (/.f64 (-.f64 z t) (cbrt.f64 a)) (/.f64 y (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (/.f64 (-.f64 z t) (cbrt.f64 a)) (/.f64 y (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (/.f64 (-.f64 z t) (cbrt.f64 a))) (/.f64 y (pow.f64 (cbrt.f64 a) 2)) (*.f64 (/.f64 (-.f64 z t) (cbrt.f64 a)) (/.f64 y (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (/.f64 (-.f64 z t) (cbrt.f64 a)) (/.f64 y (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (/.f64 (-.f64 z t) (cbrt.f64 a))) (/.f64 y (pow.f64 (cbrt.f64 a) 2)) (*.f64 (/.f64 (-.f64 z t) (cbrt.f64 a)) (/.f64 y (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (/.f64 y (cbrt.f64 a)) (/.f64 (-.f64 z t) (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (/.f64 y (cbrt.f64 a))) (/.f64 (-.f64 z t) (pow.f64 (cbrt.f64 a) 2)) (*.f64 (/.f64 y (cbrt.f64 a)) (/.f64 (-.f64 z t) (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (/.f64 y (cbrt.f64 a)) (/.f64 (-.f64 z t) (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (/.f64 y (cbrt.f64 a))) (/.f64 (-.f64 z t) (pow.f64 (cbrt.f64 a) 2)) (*.f64 (/.f64 y (cbrt.f64 a)) (/.f64 (-.f64 z t) (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (/.f64 y (cbrt.f64 a)) (/.f64 (-.f64 z t) (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (/.f64 y (cbrt.f64 a))) (/.f64 (-.f64 z t) (pow.f64 (cbrt.f64 a) 2)) (*.f64 (/.f64 y (cbrt.f64 a)) (/.f64 (-.f64 z t) (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (/.f64 y (cbrt.f64 a)) (/.f64 (-.f64 z t) (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (/.f64 y (cbrt.f64 a))) (/.f64 (-.f64 z t) (pow.f64 (cbrt.f64 a) 2)) (*.f64 (/.f64 y (cbrt.f64 a)) (/.f64 (-.f64 z t) (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (/.f64 y (cbrt.f64 a)) (/.f64 (-.f64 z t) (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (/.f64 y (cbrt.f64 a))) (/.f64 (-.f64 z t) (pow.f64 (cbrt.f64 a) 2)) (*.f64 (/.f64 y (cbrt.f64 a)) (/.f64 (-.f64 z t) (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (/.f64 (*.f64 y (-.f64 z t)) (cbrt.f64 a)) (/.f64 1 (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (/.f64 (*.f64 y (-.f64 z t)) (cbrt.f64 a))) (/.f64 1 (pow.f64 (cbrt.f64 a) 2)) (*.f64 (/.f64 (*.f64 y (-.f64 z t)) (cbrt.f64 a)) (/.f64 1 (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (/.f64 (*.f64 y (-.f64 z t)) (cbrt.f64 a)) (/.f64 1 (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (/.f64 (*.f64 y (-.f64 z t)) (cbrt.f64 a))) (/.f64 1 (pow.f64 (cbrt.f64 a) 2)) (*.f64 (/.f64 (*.f64 y (-.f64 z t)) (cbrt.f64 a)) (/.f64 1 (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (/.f64 (*.f64 y (-.f64 z t)) (cbrt.f64 a)) (/.f64 1 (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (/.f64 (*.f64 y (-.f64 z t)) (cbrt.f64 a))) (/.f64 1 (pow.f64 (cbrt.f64 a) 2)) (*.f64 (/.f64 (*.f64 y (-.f64 z t)) (cbrt.f64 a)) (/.f64 1 (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (/.f64 (*.f64 y (-.f64 z t)) (cbrt.f64 a)) (/.f64 1 (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (/.f64 (*.f64 y (-.f64 z t)) (cbrt.f64 a))) (/.f64 1 (pow.f64 (cbrt.f64 a) 2)) (*.f64 (/.f64 (*.f64 y (-.f64 z t)) (cbrt.f64 a)) (/.f64 1 (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (/.f64 (*.f64 y (-.f64 z t)) (cbrt.f64 a)) (/.f64 1 (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (/.f64 (*.f64 y (-.f64 z t)) (cbrt.f64 a))) (/.f64 1 (pow.f64 (cbrt.f64 a) 2)) (*.f64 (/.f64 (*.f64 y (-.f64 z t)) (cbrt.f64 a)) (/.f64 1 (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (pow.f64 (cbrt.f64 a) 2)) (*.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (pow.f64 (cbrt.f64 a) 2)) (*.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (pow.f64 (cbrt.f64 a) 2)) (*.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (pow.f64 (cbrt.f64 a) 2)) (*.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (pow.f64 (cbrt.f64 a) 2)) (*.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (cbrt.f64 a)) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (cbrt.f64 a))) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (pow.f64 (cbrt.f64 a) 2)) (*.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (cbrt.f64 a)) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (cbrt.f64 a)) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (cbrt.f64 a))) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (pow.f64 (cbrt.f64 a) 2)) (*.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (cbrt.f64 a)) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (cbrt.f64 a)) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (cbrt.f64 a))) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (pow.f64 (cbrt.f64 a) 2)) (*.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (cbrt.f64 a)) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (cbrt.f64 a)) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (cbrt.f64 a))) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (pow.f64 (cbrt.f64 a) 2)) (*.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (cbrt.f64 a)) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (cbrt.f64 a)) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (cbrt.f64 a))) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (pow.f64 (cbrt.f64 a) 2)) (*.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (cbrt.f64 a)) (/.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (/.f64 (*.f64 y (-.f64 z t)) (sqrt.f64 a)) (/.f64 1 (sqrt.f64 a))))) (fma.f64 (neg.f64 (/.f64 (*.f64 y (-.f64 z t)) (sqrt.f64 a))) (/.f64 1 (sqrt.f64 a)) (*.f64 (/.f64 (*.f64 y (-.f64 z t)) (sqrt.f64 a)) (/.f64 1 (sqrt.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (/.f64 (*.f64 y (-.f64 z t)) (sqrt.f64 a)) (/.f64 1 (sqrt.f64 a))))) (fma.f64 (neg.f64 (/.f64 (*.f64 y (-.f64 z t)) (sqrt.f64 a))) (/.f64 1 (sqrt.f64 a)) (*.f64 (/.f64 (*.f64 y (-.f64 z t)) (sqrt.f64 a)) (/.f64 1 (sqrt.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (/.f64 (*.f64 y (-.f64 z t)) (sqrt.f64 a)) (/.f64 1 (sqrt.f64 a))))) (fma.f64 (neg.f64 (/.f64 (*.f64 y (-.f64 z t)) (sqrt.f64 a))) (/.f64 1 (sqrt.f64 a)) (*.f64 (/.f64 (*.f64 y (-.f64 z t)) (sqrt.f64 a)) (/.f64 1 (sqrt.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (/.f64 (*.f64 y (-.f64 z t)) (sqrt.f64 a)) (/.f64 1 (sqrt.f64 a))))) (fma.f64 (neg.f64 (/.f64 (*.f64 y (-.f64 z t)) (sqrt.f64 a))) (/.f64 1 (sqrt.f64 a)) (*.f64 (/.f64 (*.f64 y (-.f64 z t)) (sqrt.f64 a)) (/.f64 1 (sqrt.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (/.f64 (*.f64 y (-.f64 z t)) (sqrt.f64 a)) (/.f64 1 (sqrt.f64 a))))) (fma.f64 (neg.f64 (/.f64 (*.f64 y (-.f64 z t)) (sqrt.f64 a))) (/.f64 1 (sqrt.f64 a)) (*.f64 (/.f64 (*.f64 y (-.f64 z t)) (sqrt.f64 a)) (/.f64 1 (sqrt.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (sqrt.f64 a)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (sqrt.f64 a))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (sqrt.f64 a))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (sqrt.f64 a)) (*.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (sqrt.f64 a)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (sqrt.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (sqrt.f64 a)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (sqrt.f64 a))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (sqrt.f64 a))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (sqrt.f64 a)) (*.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (sqrt.f64 a)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (sqrt.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (sqrt.f64 a)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (sqrt.f64 a))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (sqrt.f64 a))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (sqrt.f64 a)) (*.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (sqrt.f64 a)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (sqrt.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (sqrt.f64 a)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (sqrt.f64 a))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (sqrt.f64 a))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (sqrt.f64 a)) (*.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (sqrt.f64 a)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (sqrt.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (sqrt.f64 a)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (sqrt.f64 a))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (sqrt.f64 a))) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (sqrt.f64 a)) (*.f64 (/.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) (sqrt.f64 a)) (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (sqrt.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))))) (cbrt.f64 (exp.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))))))) (log.f64 (cbrt.f64 (exp.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) 2) (cbrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) (sqrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 3)) (/.f64 1 (fma.f64 (*.f64 (/.f64 y a) (-.f64 z t)) (fma.f64 (/.f64 y a) (-.f64 z t) x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2)) (/.f64 1 (fma.f64 (/.f64 y a) (-.f64 z t) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (-.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 (/.f64 y a) (-.f64 z t)) (fma.f64 (/.f64 y a) (-.f64 z t) x) (*.f64 x x)) (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (/.f64 y a) (-.f64 z t) x) (-.f64 (*.f64 x x) (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 3)) (fma.f64 (*.f64 (/.f64 y a) (-.f64 z t)) (fma.f64 (/.f64 y a) (-.f64 z t) x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2)) (fma.f64 (/.f64 y a) (-.f64 z t) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 3))) (neg.f64 (fma.f64 (*.f64 (/.f64 y a) (-.f64 z t)) (fma.f64 (/.f64 y a) (-.f64 z t) x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2))) (neg.f64 (fma.f64 (/.f64 y a) (-.f64 z t) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) 3)) (fma.f64 x x (-.f64 (*.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a)) (*.f64 x (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (*.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a))) (-.f64 x (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 x)) (exp.f64 (*.f64 (/.f64 y a) (-.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (*.f64 (/.f64 y a) (-.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (*.f64 (/.f64 y a) (-.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (exp.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (/.f64 1 (exp.f64 (*.f64 (/.f64 y a) (-.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (/.f64 1 (exp.f64 (*.f64 (/.f64 y a) (-.f64 z t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a)) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (-.f64 z t)) (neg.f64 (/.f64 1 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) 1 (fma.f64 (neg.f64 (/.f64 1 a)) (*.f64 y (-.f64 z t)) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) 1 (fma.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) 1 (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (cbrt.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2)) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) 1 (+.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) (fma.f64 (neg.f64 (/.f64 1 a)) (*.f64 y (-.f64 z t)) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) (fma.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) 1 (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (cbrt.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2)) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) (+.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2)) (neg.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) 2) (fma.f64 (neg.f64 (/.f64 1 a)) (*.f64 y (-.f64 z t)) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) 2) (fma.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) 1 (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (cbrt.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2)) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) 2) (+.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) 2) (cbrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) (fma.f64 (neg.f64 (/.f64 1 a)) (*.f64 y (-.f64 z t)) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) 2) (cbrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) (fma.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) 1 (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) 2) (cbrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (cbrt.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2)) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) 2) (cbrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) (+.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) (neg.f64 (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) (sqrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) (fma.f64 (neg.f64 (/.f64 1 a)) (*.f64 y (-.f64 z t)) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) (sqrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) (fma.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) 1 (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) (sqrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (cbrt.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2)) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) (sqrt.f64 (-.f64 x (*.f64 (/.f64 y a) (-.f64 z t)))) (+.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 z t) (neg.f64 y)) (/.f64 1 a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 3)) (/.f64 1 (fma.f64 (*.f64 (/.f64 y a) (-.f64 z t)) (fma.f64 (/.f64 y a) (-.f64 z t) x) (*.f64 x x))) (fma.f64 (neg.f64 (/.f64 1 a)) (*.f64 y (-.f64 z t)) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 3)) (/.f64 1 (fma.f64 (*.f64 (/.f64 y a) (-.f64 z t)) (fma.f64 (/.f64 y a) (-.f64 z t) x) (*.f64 x x))) (fma.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) 1 (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 3)) (/.f64 1 (fma.f64 (*.f64 (/.f64 y a) (-.f64 z t)) (fma.f64 (/.f64 y a) (-.f64 z t) x) (*.f64 x x))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (cbrt.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2)) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 3)) (/.f64 1 (fma.f64 (*.f64 (/.f64 y a) (-.f64 z t)) (fma.f64 (/.f64 y a) (-.f64 z t) x) (*.f64 x x))) (+.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2)) (/.f64 1 (fma.f64 (/.f64 y a) (-.f64 z t) x)) (fma.f64 (neg.f64 (/.f64 1 a)) (*.f64 y (-.f64 z t)) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2)) (/.f64 1 (fma.f64 (/.f64 y a) (-.f64 z t) x)) (fma.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) 1 (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2)) (/.f64 1 (fma.f64 (/.f64 y a) (-.f64 z t) x)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (cbrt.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2)) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2)) (/.f64 1 (fma.f64 (/.f64 y a) (-.f64 z t) x)) (+.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a)) (cbrt.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a))) (cbrt.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a)) (sqrt.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 (/.f64 y a) (-.f64 z t)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (-.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (fma.f64 (neg.f64 (/.f64 1 a)) (*.f64 y (-.f64 z t)) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (-.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (fma.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) 1 (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (-.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (cbrt.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2)) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (-.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 z t)))) (+.f64 (/.f64 (*.f64 (-.f64 z t) (neg.f64 y)) a) (*.f64 (/.f64 y a) (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 z t)) 2))) (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) x))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (-.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z y) (*.f64 (neg.f64 t) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y z) (*.f64 y (neg.f64 t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 y) (-.f64 z t))) (cbrt.f64 (pow.f64 (exp.f64 y) (-.f64 z t))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y) (-.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) (-.f64 z t)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) (-.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 y (-.f64 z t)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 z 3) (pow.f64 t 3)) y) (fma.f64 t (+.f64 z t) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 z z) (*.f64 t t)) y) (+.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 (pow.f64 z 3) (pow.f64 t 3))) (fma.f64 t (+.f64 z t) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 (*.f64 z z) (*.f64 t t))) (+.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (-.f64 z t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y (-.f64 z t)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 y (-.f64 z t)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 y) (-.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 y (-.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 y (-.f64 z t)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 y 3) (pow.f64 (-.f64 z t) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (-.f64 z t) 3) (pow.f64 y 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 y (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 y (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 y (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 y (-.f64 z t))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y z (*.f64 y (neg.f64 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z y (*.f64 (neg.f64 t) y)))))) |
| 1× | egg-herbie |
| 798× | fma-neg_binary64 |
| 488× | fma-def_binary64 |
| 274× | cancel-sign-sub-inv_binary64 |
| 138× | distribute-rgt-in_binary64 |
| 116× | unsub-neg_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 40 | 1349 |
| 1 | 102 | 1158 |
| 2 | 214 | 1148 |
| 3 | 468 | 1058 |
| 4 | 1148 | 1058 |
| 5 | 2592 | 1058 |
| 6 | 3353 | 1058 |
| 7 | 3547 | 1058 |
| 8 | 3613 | 1058 |
| 9 | 3623 | 1058 |
| 10 | 3627 | 1058 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(/.f64 (*.f64 y z) a) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(/.f64 (*.f64 y z) a) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(/.f64 (*.f64 y z) a) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) |
(+.f64 x (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a))) |
(+.f64 x (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a))) |
(+.f64 x (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a))) |
x |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
x |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) x) |
x |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) |
(+.f64 x (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a))) |
(+.f64 x (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a))) |
(+.f64 x (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a))) |
(-.f64 x (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(-.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 y z) a)) x) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(-.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 y z) a)) x) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(-.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 y z) a)) x) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(-.f64 (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a))) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(-.f64 (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a))) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(-.f64 (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a))) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(-.f64 (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a))) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(-.f64 (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a))) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(-.f64 (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a))) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(-.f64 x (/.f64 (*.f64 y z) a)) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(/.f64 (*.f64 y t) a) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(/.f64 (*.f64 y t) a) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) x) |
x |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
x |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(*.f64 (-.f64 z t) y) |
(*.f64 (-.f64 z t) y) |
(*.f64 (-.f64 z t) y) |
(*.f64 (-.f64 z t) y) |
(*.f64 (-.f64 z t) y) |
(*.f64 (-.f64 z t) y) |
(*.f64 (-.f64 z t) y) |
(*.f64 (-.f64 z t) y) |
(*.f64 (-.f64 z t) y) |
(*.f64 (-.f64 z t) y) |
(*.f64 (-.f64 z t) y) |
(*.f64 (-.f64 z t) y) |
(*.f64 -1 (*.f64 y t)) |
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t))) |
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t))) |
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t))) |
(*.f64 y z) |
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z)) |
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z)) |
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z)) |
(*.f64 y z) |
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z)) |
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z)) |
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z)) |
(*.f64 y z) |
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z)) |
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z)) |
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z)) |
(*.f64 -1 (*.f64 y t)) |
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t))) |
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t))) |
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t))) |
(*.f64 -1 (*.f64 y t)) |
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t))) |
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t))) |
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t))) |
| Outputs |
|---|
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(/.f64 (neg.f64 (*.f64 y t)) a) |
(/.f64 (*.f64 y (neg.f64 t)) a) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 (neg.f64 t) (/.f64 y a)) |
(*.f64 y (/.f64 (neg.f64 t) a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z))) |
(*.f64 (/.f64 y a) (-.f64 z t)) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z))) |
(*.f64 (/.f64 y a) (-.f64 z t)) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z))) |
(*.f64 (/.f64 y a) (-.f64 z t)) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z))) |
(*.f64 (/.f64 y a) (-.f64 z t)) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z))) |
(*.f64 (/.f64 y a) (-.f64 z t)) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z))) |
(*.f64 (/.f64 y a) (-.f64 z t)) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z))) |
(*.f64 (/.f64 y a) (-.f64 z t)) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z))) |
(*.f64 (/.f64 y a) (-.f64 z t)) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z))) |
(*.f64 (/.f64 y a) (-.f64 z t)) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z))) |
(*.f64 (/.f64 y a) (-.f64 z t)) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z))) |
(*.f64 (/.f64 y a) (-.f64 z t)) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z))) |
(*.f64 (/.f64 y a) (-.f64 z t)) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(/.f64 (neg.f64 (*.f64 y t)) a) |
(/.f64 (*.f64 y (neg.f64 t)) a) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 (neg.f64 t) (/.f64 y a)) |
(*.f64 y (/.f64 (neg.f64 t) a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z))) |
(*.f64 (/.f64 y a) (-.f64 z t)) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z))) |
(*.f64 (/.f64 y a) (-.f64 z t)) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z))) |
(*.f64 (/.f64 y a) (-.f64 z t)) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(/.f64 (neg.f64 (*.f64 y t)) a) |
(/.f64 (*.f64 y (neg.f64 t)) a) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 (neg.f64 t) (/.f64 y a)) |
(*.f64 y (/.f64 (neg.f64 t) a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z))) |
(*.f64 (/.f64 y a) (-.f64 z t)) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z))) |
(*.f64 (/.f64 y a) (-.f64 z t)) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y t)) a) (/.f64 y (/.f64 a z))) |
(*.f64 (/.f64 y a) (-.f64 z t)) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) |
(neg.f64 (/.f64 (-.f64 z t) (/.f64 a y))) |
(/.f64 (*.f64 (neg.f64 y) (-.f64 z t)) a) |
(*.f64 (/.f64 y a) (-.f64 t z)) |
(*.f64 y (/.f64 (-.f64 t z) a)) |
(+.f64 x (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a))) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(+.f64 x (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a))) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(+.f64 x (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a))) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
x |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
x |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) x) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) x) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) x) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
x |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) |
(neg.f64 (/.f64 (-.f64 z t) (/.f64 a y))) |
(/.f64 (*.f64 (neg.f64 y) (-.f64 z t)) a) |
(*.f64 (/.f64 y a) (-.f64 t z)) |
(*.f64 y (/.f64 (-.f64 t z) a)) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) |
(neg.f64 (/.f64 (-.f64 z t) (/.f64 a y))) |
(/.f64 (*.f64 (neg.f64 y) (-.f64 z t)) a) |
(*.f64 (/.f64 y a) (-.f64 t z)) |
(*.f64 y (/.f64 (-.f64 t z) a)) |
(+.f64 x (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a))) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(+.f64 x (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a))) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(+.f64 x (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a))) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(-.f64 x (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(-.f64 x (/.f64 (neg.f64 (*.f64 y t)) a)) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 t (/.f64 y a) x) |
(fma.f64 y (/.f64 t a) x) |
(-.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 y z) a)) x) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(-.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 y z) a)) x) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(-.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 y z) a)) x) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (*.f64 (neg.f64 y) z) a) |
(*.f64 y (/.f64 (neg.f64 z) a)) |
(-.f64 (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a))) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(-.f64 (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a))) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(-.f64 (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a))) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (*.f64 (neg.f64 y) z) a) |
(*.f64 y (/.f64 (neg.f64 z) a)) |
(-.f64 (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a))) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(-.f64 (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a))) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(-.f64 (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a))) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(-.f64 x (/.f64 (*.f64 y z) a)) |
(-.f64 x (/.f64 y (/.f64 a z))) |
(-.f64 x (*.f64 (/.f64 y a) z)) |
(-.f64 x (*.f64 z (/.f64 y a))) |
(fma.f64 (neg.f64 y) (/.f64 z a) x) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) |
(neg.f64 (/.f64 (-.f64 z t) (/.f64 a y))) |
(/.f64 (*.f64 (neg.f64 y) (-.f64 z t)) a) |
(*.f64 (/.f64 y a) (-.f64 t z)) |
(*.f64 y (/.f64 (-.f64 t z) a)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) x) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) x) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) x) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
x |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
x |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(fma.f64 -1 (/.f64 (-.f64 z t) (/.f64 a y)) x) |
(-.f64 x (*.f64 (/.f64 y a) (-.f64 z t))) |
(+.f64 (*.f64 (/.f64 y a) (-.f64 t z)) x) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(*.f64 (-.f64 z t) y) |
(*.f64 y (-.f64 z t)) |
(*.f64 (-.f64 z t) y) |
(*.f64 y (-.f64 z t)) |
(*.f64 (-.f64 z t) y) |
(*.f64 y (-.f64 z t)) |
(*.f64 (-.f64 z t) y) |
(*.f64 y (-.f64 z t)) |
(*.f64 (-.f64 z t) y) |
(*.f64 y (-.f64 z t)) |
(*.f64 (-.f64 z t) y) |
(*.f64 y (-.f64 z t)) |
(*.f64 (-.f64 z t) y) |
(*.f64 y (-.f64 z t)) |
(*.f64 (-.f64 z t) y) |
(*.f64 y (-.f64 z t)) |
(*.f64 (-.f64 z t) y) |
(*.f64 y (-.f64 z t)) |
(*.f64 (-.f64 z t) y) |
(*.f64 y (-.f64 z t)) |
(*.f64 (-.f64 z t) y) |
(*.f64 y (-.f64 z t)) |
(*.f64 (-.f64 z t) y) |
(*.f64 y (-.f64 z t)) |
(*.f64 -1 (*.f64 y t)) |
(neg.f64 (*.f64 y t)) |
(*.f64 y (neg.f64 t)) |
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t))) |
(*.f64 y (-.f64 z t)) |
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t))) |
(*.f64 y (-.f64 z t)) |
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t))) |
(*.f64 y (-.f64 z t)) |
(*.f64 y z) |
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z)) |
(*.f64 y (-.f64 z t)) |
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z)) |
(*.f64 y (-.f64 z t)) |
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z)) |
(*.f64 y (-.f64 z t)) |
(*.f64 y z) |
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z)) |
(*.f64 y (-.f64 z t)) |
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z)) |
(*.f64 y (-.f64 z t)) |
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z)) |
(*.f64 y (-.f64 z t)) |
(*.f64 y z) |
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z)) |
(*.f64 y (-.f64 z t)) |
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z)) |
(*.f64 y (-.f64 z t)) |
(+.f64 (*.f64 -1 (*.f64 y t)) (*.f64 y z)) |
(*.f64 y (-.f64 z t)) |
(*.f64 -1 (*.f64 y t)) |
(neg.f64 (*.f64 y t)) |
(*.f64 y (neg.f64 t)) |
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t))) |
(*.f64 y (-.f64 z t)) |
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t))) |
(*.f64 y (-.f64 z t)) |
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t))) |
(*.f64 y (-.f64 z t)) |
(*.f64 -1 (*.f64 y t)) |
(neg.f64 (*.f64 y t)) |
(*.f64 y (neg.f64 t)) |
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t))) |
(*.f64 y (-.f64 z t)) |
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t))) |
(*.f64 y (-.f64 z t)) |
(+.f64 (*.f64 y z) (*.f64 -1 (*.f64 y t))) |
(*.f64 y (-.f64 z t)) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 3.6b | (fma.f64 y (/.f64 (-.f64 t z) a) x) |
Compiled 26 to 8 computations (69.2% saved)
15 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | t | @ | 0 | (fma.f64 y (/.f64 (-.f64 t z) a) x) |
| 1.0ms | y | @ | 0 | (fma.f64 y (/.f64 (-.f64 t z) a) x) |
| 1.0ms | t | @ | -inf | (fma.f64 y (/.f64 (-.f64 t z) a) x) |
| 1.0ms | z | @ | 0 | (fma.f64 y (/.f64 (-.f64 t z) a) x) |
| 1.0ms | z | @ | -inf | (fma.f64 y (/.f64 (-.f64 t z) a) x) |
| 1× | batch-egg-rewrite |
| 610× | prod-diff_binary64 |
| 525× | log-prod_binary64 |
| 329× | pow-prod-down_binary64 |
| 284× | pow2_binary64 |
| 214× | fma-def_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 11 |
| 1 | 197 | 11 |
| 2 | 2841 | 11 |
| 1× | node limit |
| Inputs |
|---|
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 y (/.f64 (-.f64 t z) a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (/.f64 (-.f64 t z) a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 y (/.f64 (-.f64 t z) a) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 y (/.f64 (-.f64 t z) a)) 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 y (/.f64 (-.f64 t z) a) x))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 y (/.f64 (-.f64 t z) a) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 y (/.f64 (-.f64 t z) a) x)))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 y (/.f64 (-.f64 t z) a) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 y (/.f64 (-.f64 t z) a) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y (/.f64 (-.f64 t z) a) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 y (/.f64 (-.f64 t z) a) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 y (/.f64 (-.f64 t z) a) x)) (pow.f64 (cbrt.f64 (fma.f64 y (/.f64 (-.f64 t z) a) x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 y (/.f64 (-.f64 t z) a) x)) 2) (cbrt.f64 (fma.f64 y (/.f64 (-.f64 t z) a) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 y (/.f64 (-.f64 t z) a) x)) (sqrt.f64 (fma.f64 y (/.f64 (-.f64 t z) a) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y (/.f64 (-.f64 t z) a)) 3) (pow.f64 x 3)) (+.f64 (pow.f64 (*.f64 y (/.f64 (-.f64 t z) a)) 2) (-.f64 (*.f64 x x) (*.f64 (*.f64 y (/.f64 (-.f64 t z) a)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 y (/.f64 (-.f64 t z) a)) 2) (*.f64 x x)) (-.f64 (*.f64 y (/.f64 (-.f64 t z) a)) x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 y (/.f64 (-.f64 t z) a) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y (/.f64 (-.f64 t z) a) x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y (/.f64 (-.f64 t z) a) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 y (/.f64 (-.f64 t z) a) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 y (/.f64 (-.f64 t z) a) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 y (/.f64 (-.f64 t z) a) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 y (/.f64 (-.f64 t z) a) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 y (/.f64 (-.f64 t z) a) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (exp.f64 (*.f64 y (/.f64 (-.f64 t z) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (exp.f64 (*.f64 y (/.f64 (-.f64 t z) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 y (/.f64 (-.f64 t z) a))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 y (/.f64 (-.f64 t z) a) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 y (/.f64 (-.f64 t z) a) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 y (/.f64 (-.f64 t z) a) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 y (/.f64 (-.f64 t z) a) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 y (/.f64 (-.f64 t z) a) x)) 1)))))) |
| 1× | egg-herbie |
| 886× | fma-neg_binary64 |
| 562× | fma-def_binary64 |
| 253× | cancel-sign-sub-inv_binary64 |
| 135× | distribute-rgt-in_binary64 |
| 90× | distribute-lft-in_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 26 | 740 |
| 1 | 53 | 739 |
| 2 | 102 | 590 |
| 3 | 200 | 590 |
| 4 | 378 | 590 |
| 5 | 612 | 590 |
| 6 | 1069 | 590 |
| 7 | 1693 | 590 |
| 8 | 2645 | 590 |
| 9 | 3362 | 590 |
| 10 | 3457 | 590 |
| 11 | 3471 | 590 |
| 12 | 3476 | 590 |
| 13 | 3480 | 590 |
| 1× | saturated |
| Inputs |
|---|
x |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(/.f64 (*.f64 y (-.f64 t z)) a) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y z) a)) x) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(/.f64 (*.f64 y t) a) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(/.f64 (*.f64 y t) a) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y z) a)) x)) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y z) a)) x)) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y z) a)) x)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(/.f64 (*.f64 y (-.f64 t z)) a) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
x |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
x |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(/.f64 (*.f64 y (-.f64 t z)) a) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
x |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
x |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
| Outputs |
|---|
x |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) |
(*.f64 (-.f64 t z) (/.f64 y a)) |
(*.f64 (/.f64 (-.f64 t z) a) y) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(/.f64 (*.f64 y (-.f64 t z)) a) |
(*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) |
(*.f64 (-.f64 t z) (/.f64 y a)) |
(*.f64 (/.f64 (-.f64 t z) a) y) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y z) a)) x) |
(fma.f64 -1 (/.f64 y (/.f64 a z)) x) |
(-.f64 x (*.f64 (/.f64 y a) z)) |
(-.f64 x (*.f64 z (/.f64 y a))) |
(fma.f64 (neg.f64 y) (/.f64 z a) x) |
(fma.f64 (/.f64 z a) (neg.f64 y) x) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 x (/.f64 y (/.f64 a t))) |
(+.f64 x (*.f64 (/.f64 y a) t)) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 t (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y z) a)) x)) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y z) a)) x)) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 (*.f64 -1 (/.f64 (*.f64 y z) a)) x)) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (*.f64 (neg.f64 z) y) a) |
(*.f64 y (/.f64 (neg.f64 z) a)) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(/.f64 z (/.f64 a (neg.f64 y))) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (*.f64 (neg.f64 z) y) a) |
(*.f64 y (/.f64 (neg.f64 z) a)) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(/.f64 z (/.f64 a (neg.f64 y))) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y t) a) (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a)))) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(/.f64 (*.f64 y (-.f64 t z)) a) |
(*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) |
(*.f64 (-.f64 t z) (/.f64 y a)) |
(*.f64 (/.f64 (-.f64 t z) a) y) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
x |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
x |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(/.f64 (*.f64 y (-.f64 t z)) a) |
(*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) |
(*.f64 (-.f64 t z) (/.f64 y a)) |
(*.f64 (/.f64 (-.f64 t z) a) y) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
x |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
x |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
(+.f64 (/.f64 (*.f64 y (-.f64 t z)) a) x) |
(fma.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y x) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(fma.f64 (-.f64 t z) (/.f64 y a) x) |
Compiled 9111 to 2449 computations (73.1% saved)
12 alts after pruning (12 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 335 | 12 | 347 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 1 | 0 | 1 |
| Total | 337 | 12 | 349 |
| Status | Error | Program |
|---|---|---|
| 49.3b | (*.f64 y (/.f64 (neg.f64 z) a)) | |
| 24.4b | (-.f64 x (pow.f64 (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) 2)) | |
| 39.0b | (/.f64 (*.f64 y (-.f64 t z)) a) | |
| 17.1b | (-.f64 x (*.f64 y (/.f64 (neg.f64 t) a))) | |
| ▶ | 48.4b | (/.f64 z (/.f64 a (neg.f64 y))) |
| 29.1b | x | |
| 50.5b | (*.f64 y (/.f64 t a)) | |
| 17.7b | (+.f64 (/.f64 (*.f64 y t) a) x) | |
| ▶ | 50.4b | (*.f64 t (/.f64 y a)) |
| ▶ | 50.9b | (/.f64 (*.f64 y t) a) |
| ▶ | 16.2b | (-.f64 x (*.f64 y (/.f64 z a))) |
| ▶ | 5.8b | (-.f64 x (*.f64 (/.f64 1 a) (*.f64 y (-.f64 z t)))) |
Compiled 274 to 191 computations (30.3% saved)
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| 0.0b | (*.f64 y (-.f64 z t)) | |
| ✓ | 0.0b | (-.f64 x (*.f64 (/.f64 1 a) (*.f64 y (-.f64 z t)))) |
| ✓ | 7.3b | (*.f64 (/.f64 1 a) (*.f64 y (-.f64 z t))) |
Compiled 42 to 17 computations (59.5% saved)
27 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | a | @ | inf | (*.f64 (/.f64 1 a) (*.f64 y (-.f64 z t))) |
| 1.0ms | y | @ | inf | (*.f64 (/.f64 1 a) (*.f64 y (-.f64 z t))) |
| 0.0ms | y | @ | inf | (-.f64 x (*.f64 (/.f64 1 a) (*.f64 y (-.f64 z t)))) |
| 0.0ms | a | @ | -inf | (*.f64 (/.f64 1 a) (*.f64 y (-.f64 z t))) |
| 0.0ms | y | @ | -inf | (*.f64 (/.f64 1 a) (*.f64 y (-.f64 z t))) |
| 1× | batch-egg-rewrite |
| 694× | log-prod_binary64 |
| 408× | fma-def_binary64 |
| 354× | pow2_binary64 |
| 244× | pow1/3_binary64 |
| 240× | expm1-udef_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 12 | 23 |
| 1 | 263 | 23 |
| 2 | 3748 | 23 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (/.f64 1 a) (*.f64 y (-.f64 z t))) |
(-.f64 x (*.f64 (/.f64 1 a) (*.f64 y (-.f64 z t)))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (-.f64 z t) (/.f64 y a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (/.f64 y a)) (*.f64 (neg.f64 t) (/.f64 y a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 y a) z) (*.f64 (/.f64 y a) (neg.f64 t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (-.f64 z t)) (/.f64 y a))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (-.f64 z t)) (/.f64 y a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (-.f64 z t)) (/.f64 y a)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (-.f64 z t)) (/.f64 y a)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 a (*.f64 y (-.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y (/.f64 a (-.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 z t) (/.f64 a y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 z t)) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2) (/.f64 a (cbrt.f64 (*.f64 y (-.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 y (-.f64 z t))) (/.f64 a (sqrt.f64 (*.f64 y (-.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 y (-.f64 z t))) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y (-.f64 z t)) (sqrt.f64 a)) (sqrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y (-.f64 z t)) 1) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y (-.f64 z t)) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (*.f64 y (-.f64 z t))) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y (-.f64 z t)) -1) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y a) (-.f64 (pow.f64 z 3) (pow.f64 t 3))) (fma.f64 t (+.f64 z t) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y a) (-.f64 (*.f64 z z) (*.f64 t t))) (+.f64 z t))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 a (*.f64 y (-.f64 z t))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (-.f64 z t)) (/.f64 y a)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 z t) (/.f64 y a)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (/.f64 y a) (*.f64 (neg.f64 t) (/.f64 y a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y a) z (*.f64 (/.f64 y a) (neg.f64 t))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 x (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))) (fma.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 1 (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 2) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))) (fma.f64 (/.f64 -1 a) (*.f64 y (-.f64 z t)) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))) (fma.f64 (neg.f64 (-.f64 z t)) (/.f64 y a) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) 2) (cbrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) (sqrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 3)) (/.f64 1 (fma.f64 (*.f64 (-.f64 z t) (/.f64 y a)) (fma.f64 (-.f64 z t) (/.f64 y a) x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 2)) (/.f64 1 (fma.f64 (-.f64 z t) (/.f64 y a) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (-.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (-.f64 z t) (/.f64 y a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 (-.f64 z t) (/.f64 y a)) (fma.f64 (-.f64 z t) (/.f64 y a) x) (*.f64 x x)) (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (-.f64 z t) (/.f64 y a) x) (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 3)) (fma.f64 (*.f64 (-.f64 z t) (/.f64 y a)) (fma.f64 (-.f64 z t) (/.f64 y a) x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 2)) (fma.f64 (-.f64 z t) (/.f64 y a) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 3))) (neg.f64 (fma.f64 (*.f64 (-.f64 z t) (/.f64 y a)) (fma.f64 (-.f64 z t) (/.f64 y a) x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 2))) (neg.f64 (fma.f64 (-.f64 z t) (/.f64 y a) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 3)) (fma.f64 x x (-.f64 (pow.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 2) (*.f64 x (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 2)) (-.f64 x (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 (-.f64 z t) (/.f64 y a)) (fma.f64 (-.f64 z t) (/.f64 y a) x) (*.f64 x x)) (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (-.f64 z t) (/.f64 y a) x) (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 x)) (pow.f64 (exp.f64 (-.f64 z t)) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (*.f64 (-.f64 z t) (/.f64 y a))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (*.f64 (-.f64 z t) (/.f64 y a))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (exp.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (/.f64 1 (pow.f64 (exp.f64 (-.f64 z t)) (/.f64 y a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (/.f64 1 (pow.f64 (exp.f64 (-.f64 z t)) (/.f64 y a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 (-.f64 z t)) (/.f64 y a))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 (-.f64 z t)) (/.f64 y a))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))) (fma.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 1 (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 2) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))) (fma.f64 (/.f64 -1 a) (*.f64 y (-.f64 z t)) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))) (fma.f64 (neg.f64 (-.f64 z t)) (/.f64 y a) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 a) (neg.f64 (*.f64 y (-.f64 z t))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (-.f64 z t)) (/.f64 -1 a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))) 1 (fma.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 1 (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 2) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))) 1 (fma.f64 (/.f64 -1 a) (*.f64 y (-.f64 z t)) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a))) 1 (fma.f64 (neg.f64 (-.f64 z t)) (/.f64 y a) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (*.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (*.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) 2) (fma.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 1 (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 2) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) 2) (fma.f64 (/.f64 -1 a) (*.f64 y (-.f64 z t)) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) 2) (fma.f64 (neg.f64 (-.f64 z t)) (/.f64 y a) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) 2) (cbrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) (fma.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 1 (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) 2) (cbrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 2) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) 2) (cbrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) (fma.f64 (/.f64 -1 a) (*.f64 y (-.f64 z t)) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) 2) (cbrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) (fma.f64 (neg.f64 (-.f64 z t)) (/.f64 y a) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 2) (neg.f64 (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) (sqrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) (fma.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 1 (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) (sqrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 2) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) (sqrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) (fma.f64 (/.f64 -1 a) (*.f64 y (-.f64 z t)) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) (sqrt.f64 (-.f64 x (*.f64 (-.f64 z t) (/.f64 y a)))) (fma.f64 (neg.f64 (-.f64 z t)) (/.f64 y a) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (-.f64 z t) (/.f64 y a))) (neg.f64 (sqrt.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 (-.f64 z t) (/.f64 y a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 3)) (/.f64 1 (fma.f64 (*.f64 (-.f64 z t) (/.f64 y a)) (fma.f64 (-.f64 z t) (/.f64 y a) x) (*.f64 x x))) (fma.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 1 (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 3)) (/.f64 1 (fma.f64 (*.f64 (-.f64 z t) (/.f64 y a)) (fma.f64 (-.f64 z t) (/.f64 y a) x) (*.f64 x x))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 2) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 3)) (/.f64 1 (fma.f64 (*.f64 (-.f64 z t) (/.f64 y a)) (fma.f64 (-.f64 z t) (/.f64 y a) x) (*.f64 x x))) (fma.f64 (/.f64 -1 a) (*.f64 y (-.f64 z t)) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 3)) (/.f64 1 (fma.f64 (*.f64 (-.f64 z t) (/.f64 y a)) (fma.f64 (-.f64 z t) (/.f64 y a) x) (*.f64 x x))) (fma.f64 (neg.f64 (-.f64 z t)) (/.f64 y a) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 2)) (/.f64 1 (fma.f64 (-.f64 z t) (/.f64 y a) x)) (fma.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 1 (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 2)) (/.f64 1 (fma.f64 (-.f64 z t) (/.f64 y a) x)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 2) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 2)) (/.f64 1 (fma.f64 (-.f64 z t) (/.f64 y a) x)) (fma.f64 (/.f64 -1 a) (*.f64 y (-.f64 z t)) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (-.f64 z t) (/.f64 y a)) 2)) (/.f64 1 (fma.f64 (-.f64 z t) (/.f64 y a) x)) (fma.f64 (neg.f64 (-.f64 z t)) (/.f64 y a) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 -1 a) (*.f64 y (-.f64 z t)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y a) (neg.f64 (-.f64 z t)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) 2) (cbrt.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (sqrt.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (*.f64 y (-.f64 z t))) (/.f64 1 a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (sqrt.f64 (*.f64 (-.f64 z t) (/.f64 y a))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (-.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (fma.f64 (neg.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 1 (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (-.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (pow.f64 (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 2) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (-.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (fma.f64 (/.f64 -1 a) (*.f64 y (-.f64 z t)) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (-.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (-.f64 z t) (/.f64 y a)))) (fma.f64 (neg.f64 (-.f64 z t)) (/.f64 y a) (*.f64 (-.f64 z t) (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a))) 2)) (cbrt.f64 (*.f64 (-.f64 z t) (/.f64 y a))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (/.f64 y a)) (-.f64 z t) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 -1 a) 1) (*.f64 y (-.f64 z t)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 -1 a) y) (-.f64 z t) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 -1 a) (-.f64 z t)) y x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 -1 a) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 z t))) 2)) (cbrt.f64 (*.f64 y (-.f64 z t))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 -1 a) (sqrt.f64 (*.f64 y (-.f64 z t)))) (sqrt.f64 (*.f64 y (-.f64 z t))) x))))) |
| 1× | egg-herbie |
| 993× | fma-def_binary64 |
| 730× | fma-neg_binary64 |
| 281× | cancel-sign-sub-inv_binary64 |
| 132× | distribute-rgt-in_binary64 |
| 109× | unsub-neg_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 37 | 1205 |
| 1 | 94 | 1158 |
| 2 | 206 | 1148 |
| 3 | 458 | 1058 |
| 4 | 1125 | 1058 |
| 5 | 2537 | 1058 |
| 6 | 3552 | 1058 |
| 7 | 3883 | 1058 |
| 8 | 3993 | 1058 |
| 9 | 4000 | 1058 |
| 10 | 4000 | 1058 |
| 1× | saturated |
| Inputs |
|---|
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(/.f64 (*.f64 y z) a) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(/.f64 (*.f64 y z) a) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(/.f64 (*.f64 y z) a) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) |
(+.f64 x (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a))) |
(+.f64 x (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a))) |
(+.f64 x (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a))) |
x |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
x |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) x) |
(*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) x) |
x |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
x |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
x |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) |
(+.f64 x (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a))) |
(+.f64 x (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a))) |
(+.f64 x (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a))) |
(-.f64 x (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(-.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 y z) a)) x) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(-.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 y z) a)) x) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(-.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 y z) a)) x) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(-.f64 (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a))) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(-.f64 (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a))) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(-.f64 (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a))) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(-.f64 (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a))) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(-.f64 (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a))) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(-.f64 (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a))) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(-.f64 x (/.f64 (*.f64 y z) a)) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(/.f64 (*.f64 y t) a) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(/.f64 (*.f64 y t) a) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
| Outputs |
|---|
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y (-.f64 z t)) a) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 t (neg.f64 (/.f64 y a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 z (/.f64 a y)) |
(*.f64 y (/.f64 z a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 z (/.f64 a y)) |
(*.f64 y (/.f64 z a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 z (/.f64 a y)) |
(*.f64 y (/.f64 z a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 t (neg.f64 (/.f64 y a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 t (neg.f64 (/.f64 y a))) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(+.f64 (/.f64 (*.f64 y z) a) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(/.f64 y (/.f64 a (-.f64 z t))) |
(*.f64 (-.f64 z t) (/.f64 y a)) |
(*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) |
(neg.f64 (/.f64 y (/.f64 a (-.f64 z t)))) |
(/.f64 (neg.f64 (*.f64 y (-.f64 z t))) a) |
(*.f64 (/.f64 y a) (-.f64 t z)) |
(+.f64 x (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a))) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(+.f64 x (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a))) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(+.f64 x (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a))) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
x |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
x |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) x) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) x) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) x) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) |
(neg.f64 (/.f64 y (/.f64 a (-.f64 z t)))) |
(/.f64 (neg.f64 (*.f64 y (-.f64 z t))) a) |
(*.f64 (/.f64 y a) (-.f64 t z)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) x) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) x) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 y (-.f64 z t)) a)) x) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
x |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
x |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) x) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
x |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) |
(neg.f64 (/.f64 y (/.f64 a (-.f64 z t)))) |
(/.f64 (neg.f64 (*.f64 y (-.f64 z t))) a) |
(*.f64 (/.f64 y a) (-.f64 t z)) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(+.f64 (*.f64 (-.f64 (/.f64 t a) (/.f64 z a)) y) x) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a)) |
(neg.f64 (/.f64 y (/.f64 a (-.f64 z t)))) |
(/.f64 (neg.f64 (*.f64 y (-.f64 z t))) a) |
(*.f64 (/.f64 y a) (-.f64 t z)) |
(+.f64 x (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a))) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(+.f64 x (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a))) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(+.f64 x (*.f64 -1 (/.f64 (*.f64 (-.f64 z t) y) a))) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(-.f64 x (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(-.f64 x (neg.f64 (/.f64 y (/.f64 a t)))) |
(+.f64 (/.f64 t (/.f64 a y)) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 t (/.f64 y a) x) |
(-.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 y z) a)) x) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(-.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 y z) a)) x) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(-.f64 (+.f64 (*.f64 -1 (/.f64 (*.f64 y z) a)) x) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 (*.f64 y z) a)) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 y (/.f64 (neg.f64 z) a)) |
(*.f64 (neg.f64 z) (/.f64 y a)) |
(*.f64 z (neg.f64 (/.f64 y a))) |
(-.f64 (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a))) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(-.f64 (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a))) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(-.f64 (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a))) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 (*.f64 y z) a)) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 y (/.f64 (neg.f64 z) a)) |
(*.f64 (neg.f64 z) (/.f64 y a)) |
(*.f64 z (neg.f64 (/.f64 y a))) |
(-.f64 (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a))) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(-.f64 (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a))) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(-.f64 (+.f64 x (*.f64 -1 (/.f64 (*.f64 y z) a))) (*.f64 -1 (/.f64 (*.f64 y t) a))) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(-.f64 x (/.f64 (*.f64 y z) a)) |
(-.f64 x (/.f64 z (/.f64 a y))) |
(-.f64 x (*.f64 y (/.f64 z a))) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(/.f64 t (/.f64 a y)) |
(*.f64 y (/.f64 t a)) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(/.f64 t (/.f64 a y)) |
(*.f64 y (/.f64 t a)) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
(-.f64 (+.f64 (/.f64 (*.f64 y t) a) x) (/.f64 (*.f64 y z) a)) |
(fma.f64 -1 (/.f64 y (/.f64 a (-.f64 z t))) x) |
(-.f64 x (/.f64 y (/.f64 a (-.f64 z t)))) |
(fma.f64 (/.f64 y a) (-.f64 t z) x) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 4.9b | (*.f64 t (/.f64 y a)) |
Compiled 16 to 7 computations (56.3% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 4.0ms | t | @ | -inf | (*.f64 t (/.f64 y a)) |
| 2.0ms | y | @ | 0 | (*.f64 t (/.f64 y a)) |
| 1.0ms | t | @ | 0 | (*.f64 t (/.f64 y a)) |
| 1.0ms | a | @ | 0 | (*.f64 t (/.f64 y a)) |
| 1.0ms | t | @ | inf | (*.f64 t (/.f64 y a)) |
| 1× | batch-egg-rewrite |
| 681× | pow1_binary64 |
| 628× | add-log-exp_binary64 |
| 628× | log1p-expm1-u_binary64 |
| 628× | expm1-log1p-u_binary64 |
| 613× | add-exp-log_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 7 |
| 1 | 125 | 7 |
| 2 | 1672 | 7 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 t (/.f64 y a)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 t (/.f64 y a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 t (/.f64 a y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 a (*.f64 t y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 t y) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 t y)) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 t y) 1) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 t y) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 t y) (sqrt.f64 a)) (sqrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 y) t) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 t (neg.f64 y)) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 t (/.f64 y a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 t (/.f64 y a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 t (/.f64 y a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 t (/.f64 y a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 t (/.f64 y a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 t) (/.f64 y a)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 t (/.f64 y a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 t 3) (pow.f64 (/.f64 y a) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 y a) 3) (pow.f64 t 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 t (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 t (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 t (/.f64 y a)))))))) |
| 1× | egg-herbie |
| 3× | *-commutative_binary64 |
| 2× | associate-/l*_binary64 |
| 2× | associate-/r/_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 252 |
| 1 | 9 | 252 |
| 2 | 13 | 252 |
| 3 | 16 | 252 |
| 4 | 17 | 252 |
| 1× | saturated |
| Inputs |
|---|
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
| Outputs |
|---|
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 4.3b | (/.f64 (*.f64 y t) a) |
Compiled 16 to 7 computations (56.3% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | a | @ | inf | (/.f64 (*.f64 y t) a) |
| 0.0ms | a | @ | -inf | (/.f64 (*.f64 y t) a) |
| 0.0ms | y | @ | inf | (/.f64 (*.f64 y t) a) |
| 0.0ms | y | @ | -inf | (/.f64 (*.f64 y t) a) |
| 0.0ms | y | @ | 0 | (/.f64 (*.f64 y t) a) |
| 1× | batch-egg-rewrite |
| 712× | pow1_binary64 |
| 659× | add-log-exp_binary64 |
| 659× | log1p-expm1-u_binary64 |
| 659× | expm1-log1p-u_binary64 |
| 644× | add-exp-log_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 7 |
| 1 | 125 | 7 |
| 2 | 1731 | 7 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 y t) a) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (/.f64 y a) t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (/.f64 1 (/.f64 a t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 t (/.f64 1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 t (*.f64 y (/.f64 1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y t) (/.f64 1 a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y a) t) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (/.f64 y a) t))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (/.f64 y a) t)) (pow.f64 (cbrt.f64 (*.f64 (/.f64 y a) t)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 y a) t)) 2) (cbrt.f64 (*.f64 (/.f64 y a) t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 y t)) 2) (*.f64 (cbrt.f64 (*.f64 y t)) (/.f64 1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (/.f64 y a) t)) (sqrt.f64 (*.f64 (/.f64 y a) t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 y t)) (*.f64 (sqrt.f64 (*.f64 y t)) (/.f64 1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 t (neg.f64 y)) (/.f64 1 (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 a) (*.f64 y t))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y 1) (/.f64 t a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 t 1) (/.f64 y a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y a) t)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y t)) 2) 1) (/.f64 (cbrt.f64 (*.f64 y t)) a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 y t)) 1) (/.f64 (sqrt.f64 (*.f64 y t)) a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (pow.f64 (cbrt.f64 a) 2)) (/.f64 t (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 t (pow.f64 (cbrt.f64 a) 2)) (/.f64 y (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 a) 2)) (/.f64 (*.f64 y t) (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y t)) 2) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 (*.f64 (/.f64 y a) t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 y t)) (pow.f64 (cbrt.f64 a) 2)) (/.f64 (sqrt.f64 (*.f64 y t)) (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (sqrt.f64 a)) (/.f64 t (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 t (sqrt.f64 a)) (/.f64 y (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 a)) (/.f64 (*.f64 y t) (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y t)) 2) (sqrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 y t)) (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 y a) t) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 y a) t) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 y a) t)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 y a) t)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 a (*.f64 y t)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 y t) (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 y a) t) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (/.f64 y a) t)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 y a) t) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 y t) 3) (pow.f64 a 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 y a) t)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 y a) t)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 y a) t))))))) |
| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 0 | 0 |
| 1× | saturated |
| Inputs |
|---|
| Outputs |
|---|
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 4.6b | (/.f64 z (/.f64 a (neg.f64 y))) |
Compiled 20 to 8 computations (60% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | a | @ | 0 | (/.f64 z (/.f64 a (neg.f64 y))) |
| 1.0ms | y | @ | 0 | (/.f64 z (/.f64 a (neg.f64 y))) |
| 1.0ms | z | @ | 0 | (/.f64 z (/.f64 a (neg.f64 y))) |
| 1.0ms | a | @ | inf | (/.f64 z (/.f64 a (neg.f64 y))) |
| 1.0ms | z | @ | inf | (/.f64 z (/.f64 a (neg.f64 y))) |
| 1× | batch-egg-rewrite |
| 779× | pow1_binary64 |
| 723× | add-log-exp_binary64 |
| 722× | log1p-expm1-u_binary64 |
| 722× | expm1-log1p-u_binary64 |
| 706× | add-exp-log_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 9 |
| 1 | 154 | 7 |
| 2 | 2345 | 7 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 z (/.f64 a (neg.f64 y))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 z (/.f64 y a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 z (/.f64 y a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (/.f64 z a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 z (/.f64 y a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 z (/.f64 y a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (/.f64 y a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 z (/.f64 y a))) (pow.f64 (cbrt.f64 (*.f64 z (/.f64 y a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 z (/.f64 y a))) 2) (cbrt.f64 (*.f64 z (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (/.f64 y a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 z (/.f64 y a))) (sqrt.f64 (*.f64 z (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 z) (/.f64 y a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y a) z)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z a) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) 1) (/.f64 (cbrt.f64 z) (/.f64 a y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 z) 1) (/.f64 (sqrt.f64 z) (/.f64 a y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 z) a) (/.f64 (sqrt.f64 z) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 a) (/.f64 z (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) a) (/.f64 (cbrt.f64 z) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 a y)) 2)) (/.f64 z (cbrt.f64 (/.f64 a y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (pow.f64 (cbrt.f64 (/.f64 a y)) 2)) (cbrt.f64 (*.f64 z (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 z) (pow.f64 (cbrt.f64 (/.f64 a y)) 2)) (/.f64 (sqrt.f64 z) (cbrt.f64 (/.f64 a y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (/.f64 a y))) (/.f64 z (sqrt.f64 (/.f64 a y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (sqrt.f64 (/.f64 a y))) (/.f64 (cbrt.f64 z) (sqrt.f64 (/.f64 a y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z 1) (/.f64 y a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z (neg.f64 a)) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 z a) 1) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 z a) (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 z a) (sqrt.f64 y)) (sqrt.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 z a) -1) y)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 z (/.f64 y a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 z (/.f64 y a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 z (/.f64 y a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 z (/.f64 y a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 a (*.f64 z y)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 z (/.f64 y a)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 z (/.f64 y a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 z) (/.f64 y a)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 z (/.f64 y a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 z 3) (pow.f64 (/.f64 a y) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 z (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 z (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 z (/.f64 y a)))))))) |
| 1× | egg-herbie |
| 145× | fma-def_binary64 |
| 46× | fma-neg_binary64 |
| 24× | sub-neg_binary64 |
| 18× | div-sub_binary64 |
| 14× | associate-/l*_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 324 |
| 1 | 15 | 324 |
| 2 | 35 | 324 |
| 3 | 69 | 324 |
| 4 | 114 | 324 |
| 5 | 162 | 324 |
| 6 | 202 | 324 |
| 7 | 238 | 324 |
| 8 | 275 | 324 |
| 9 | 394 | 324 |
| 10 | 445 | 324 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
| Outputs |
|---|
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 6.0b | (*.f64 y (/.f64 z a)) |
Compiled 24 to 8 computations (66.7% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | a | @ | inf | (*.f64 y (/.f64 z a)) |
| 0.0ms | y | @ | 0 | (*.f64 y (/.f64 z a)) |
| 0.0ms | y | @ | -inf | (*.f64 y (/.f64 z a)) |
| 0.0ms | z | @ | inf | (*.f64 y (/.f64 z a)) |
| 0.0ms | y | @ | inf | (*.f64 y (/.f64 z a)) |
| 1× | batch-egg-rewrite |
| 681× | pow1_binary64 |
| 628× | add-log-exp_binary64 |
| 628× | log1p-expm1-u_binary64 |
| 628× | expm1-log1p-u_binary64 |
| 613× | add-exp-log_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 7 |
| 1 | 125 | 7 |
| 2 | 1672 | 7 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 y (/.f64 z a)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 y (/.f64 z a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y (/.f64 a z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 a (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y z) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 y z)) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y z) 1) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y z) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y z) (sqrt.f64 a)) (sqrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 z) y) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (neg.f64 z)) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (/.f64 z a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y (/.f64 z a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 y (/.f64 z a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 y (/.f64 z a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 y (/.f64 z a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 y) (/.f64 z a)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 y (/.f64 z a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 y 3) (pow.f64 (/.f64 z a) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 z a) 3) (pow.f64 y 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 y (/.f64 z a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 y (/.f64 z a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 y (/.f64 z a)))))))) |
| 1× | egg-herbie |
| 3× | *-commutative_binary64 |
| 2× | associate-/l*_binary64 |
| 2× | associate-/r/_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 252 |
| 1 | 9 | 252 |
| 2 | 13 | 252 |
| 3 | 16 | 252 |
| 4 | 17 | 252 |
| 1× | saturated |
| Inputs |
|---|
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
(/.f64 (*.f64 y z) a) |
| Outputs |
|---|
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
(/.f64 (*.f64 y z) a) |
(/.f64 y (/.f64 a z)) |
(*.f64 (/.f64 y a) z) |
(*.f64 z (/.f64 y a)) |
(*.f64 y (/.f64 z a)) |
Compiled 5113 to 1340 computations (73.8% saved)
14 alts after pruning (10 fresh and 4 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 333 | 7 | 340 |
| Fresh | 4 | 3 | 7 |
| Picked | 0 | 1 | 1 |
| Done | 1 | 3 | 4 |
| Total | 338 | 14 | 352 |
| Status | Error | Program |
|---|---|---|
| 29.1b | x | |
| ▶ | 50.5b | (*.f64 y (/.f64 t a)) |
| ▶ | 39.0b | (/.f64 (*.f64 y (-.f64 t z)) a) |
| ▶ | 17.1b | (-.f64 x (*.f64 y (/.f64 (neg.f64 t) a))) |
| ✓ | 48.4b | (/.f64 z (/.f64 a (neg.f64 y))) |
| 49.3b | (*.f64 (/.f64 z (neg.f64 a)) y) | |
| ▶ | 17.7b | (+.f64 (/.f64 (*.f64 y t) a) x) |
| ✓ | 50.4b | (*.f64 t (/.f64 y a)) |
| ✓ | 50.9b | (/.f64 (*.f64 y t) a) |
| ✓ | 16.2b | (-.f64 x (*.f64 y (/.f64 z a))) |
| 51.0b | (/.f64 1 (/.f64 a (*.f64 t y))) | |
| 50.4b | (/.f64 t (/.f64 a y)) | |
| 57.6b | (*.f64 (/.f64 y (sqrt.f64 a)) (/.f64 t (sqrt.f64 a))) | |
| ▶ | 48.3b | (*.f64 (neg.f64 z) (/.f64 y a)) |
Compiled 259 to 181 computations (30.1% saved)
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (-.f64 x (*.f64 y (/.f64 (neg.f64 t) a))) |
| ✓ | 6.9b | (*.f64 y (/.f64 (neg.f64 t) a)) |
Compiled 29 to 9 computations (69% saved)
21 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | x | @ | 0 | (-.f64 x (*.f64 y (/.f64 (neg.f64 t) a))) |
| 1.0ms | y | @ | 0 | (*.f64 y (/.f64 (neg.f64 t) a)) |
| 0.0ms | a | @ | 0 | (*.f64 y (/.f64 (neg.f64 t) a)) |
| 0.0ms | t | @ | 0 | (*.f64 y (/.f64 (neg.f64 t) a)) |
| 0.0ms | t | @ | -inf | (-.f64 x (*.f64 y (/.f64 (neg.f64 t) a))) |
| 1× | batch-egg-rewrite |
| 631× | prod-diff_binary64 |
| 502× | log-prod_binary64 |
| 313× | pow-prod-down_binary64 |
| 244× | pow2_binary64 |
| 205× | egg-rr |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 21 |
| 1 | 204 | 17 |
| 2 | 3142 | 15 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 y (/.f64 (neg.f64 t) a)) |
(-.f64 x (*.f64 y (/.f64 (neg.f64 t) a))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (*.f64 y t) a))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 y) (/.f64 t a))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y) (/.f64 t a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) (/.f64 t a)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) (/.f64 t a)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (/.f64 (*.f64 y t) a))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 y t) a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y (/.f64 a t))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 a (*.f64 y t)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 y) (/.f64 a t))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y t) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y t) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y t) 1) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y t) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y t) (sqrt.f64 a)) (sqrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 y) t) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 y) t) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 y) 1) (/.f64 a t))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 y t) a) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (*.f64 y t) a)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (*.f64 y t) a)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 y t) a) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 a (*.f64 y t)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 y t) a))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 y) (/.f64 t a)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 y t) a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (/.f64 (*.f64 y t) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 y t) a)) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 y t) a) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 x (/.f64 (*.f64 y t) a))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (/.f64 t a) x) (fma.f64 (/.f64 t a) y (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (/.f64 t a) x) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)) (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (/.f64 t a) x) (fma.f64 (neg.f64 (neg.f64 y)) (/.f64 t a) (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (/.f64 t a) x) (fma.f64 -1 (/.f64 (*.f64 y t) a) (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (/.f64 t a) x) (fma.f64 (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2))) (cbrt.f64 (/.f64 (*.f64 y t) a)) (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (/.f64 t a) x) (fma.f64 (neg.f64 (neg.f64 (sqrt.f64 (/.f64 (*.f64 y t) a)))) (sqrt.f64 (/.f64 (*.f64 y t) a)) (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (/.f64 t a) x) (fma.f64 (/.f64 t a) (neg.f64 y) (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (/.f64 t a) x) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 (*.f64 y t) a))) (neg.f64 (sqrt.f64 (/.f64 (*.f64 y t) a))) (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 y (/.f64 t a) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (*.f64 (/.f64 1 a) y) t))) (fma.f64 (neg.f64 (*.f64 (/.f64 1 a) y)) t (*.f64 (*.f64 (/.f64 1 a) y) t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (*.f64 (/.f64 1 a) y) t))) (fma.f64 (neg.f64 (*.f64 (/.f64 1 a) y)) t (*.f64 (*.f64 (/.f64 1 a) y) t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (*.f64 (/.f64 1 a) y) t))) (fma.f64 (neg.f64 (*.f64 (/.f64 1 a) y)) t (*.f64 (*.f64 (/.f64 1 a) y) t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (*.f64 (/.f64 1 a) y) t))) (fma.f64 (neg.f64 (*.f64 (/.f64 1 a) y)) t (*.f64 (*.f64 (/.f64 1 a) y) t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (*.f64 (/.f64 1 a) y) t))) (fma.f64 (neg.f64 (*.f64 (/.f64 1 a) y)) t (*.f64 (*.f64 (/.f64 1 a) y) t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (*.f64 (cbrt.f64 y) (/.f64 t a)) (pow.f64 (cbrt.f64 y) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 y) (/.f64 t a))) (pow.f64 (cbrt.f64 y) 2) (*.f64 (*.f64 (cbrt.f64 y) (/.f64 t a)) (pow.f64 (cbrt.f64 y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (*.f64 (cbrt.f64 y) (/.f64 t a)) (pow.f64 (cbrt.f64 y) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 y) (/.f64 t a))) (pow.f64 (cbrt.f64 y) 2) (*.f64 (*.f64 (cbrt.f64 y) (/.f64 t a)) (pow.f64 (cbrt.f64 y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (*.f64 (cbrt.f64 y) (/.f64 t a)) (pow.f64 (cbrt.f64 y) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 y) (/.f64 t a))) (pow.f64 (cbrt.f64 y) 2) (*.f64 (*.f64 (cbrt.f64 y) (/.f64 t a)) (pow.f64 (cbrt.f64 y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (*.f64 (cbrt.f64 y) (/.f64 t a)) (pow.f64 (cbrt.f64 y) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 y) (/.f64 t a))) (pow.f64 (cbrt.f64 y) 2) (*.f64 (*.f64 (cbrt.f64 y) (/.f64 t a)) (pow.f64 (cbrt.f64 y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (*.f64 (cbrt.f64 y) (/.f64 t a)) (pow.f64 (cbrt.f64 y) 2)))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 y) (/.f64 t a))) (pow.f64 (cbrt.f64 y) 2) (*.f64 (*.f64 (cbrt.f64 y) (/.f64 t a)) (pow.f64 (cbrt.f64 y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (*.f64 (cbrt.f64 (/.f64 t a)) y) (cbrt.f64 (pow.f64 (/.f64 a t) -2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (/.f64 t a)) y)) (cbrt.f64 (pow.f64 (/.f64 a t) -2)) (*.f64 (*.f64 (cbrt.f64 (/.f64 t a)) y) (cbrt.f64 (pow.f64 (/.f64 a t) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (*.f64 (cbrt.f64 (/.f64 t a)) y) (cbrt.f64 (pow.f64 (/.f64 a t) -2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (/.f64 t a)) y)) (cbrt.f64 (pow.f64 (/.f64 a t) -2)) (*.f64 (*.f64 (cbrt.f64 (/.f64 t a)) y) (cbrt.f64 (pow.f64 (/.f64 a t) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (/.f64 t a)) y) (cbrt.f64 (pow.f64 (/.f64 a t) -2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (/.f64 t a)) y)) (cbrt.f64 (pow.f64 (/.f64 a t) -2)) (*.f64 (*.f64 (cbrt.f64 (/.f64 t a)) y) (cbrt.f64 (pow.f64 (/.f64 a t) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (/.f64 t a)) y) (cbrt.f64 (pow.f64 (/.f64 a t) -2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (/.f64 t a)) y)) (cbrt.f64 (pow.f64 (/.f64 a t) -2)) (*.f64 (*.f64 (cbrt.f64 (/.f64 t a)) y) (cbrt.f64 (pow.f64 (/.f64 a t) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (*.f64 (cbrt.f64 (/.f64 t a)) y) (cbrt.f64 (pow.f64 (/.f64 a t) -2))))) (fma.f64 (neg.f64 (*.f64 (cbrt.f64 (/.f64 t a)) y)) (cbrt.f64 (pow.f64 (/.f64 a t) -2)) (*.f64 (*.f64 (cbrt.f64 (/.f64 t a)) y) (cbrt.f64 (pow.f64 (/.f64 a t) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2))))) (fma.f64 (neg.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a)))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)) (*.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2))))) (fma.f64 (neg.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a)))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)) (*.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2))))) (fma.f64 (neg.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a)))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)) (*.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2))))) (fma.f64 (neg.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a)))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)) (*.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2))))) (fma.f64 (neg.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a)))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)) (*.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (*.f64 (sqrt.f64 y) (/.f64 t a)) (sqrt.f64 y)))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 y) (/.f64 t a))) (sqrt.f64 y) (*.f64 (*.f64 (sqrt.f64 y) (/.f64 t a)) (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (*.f64 (sqrt.f64 y) (/.f64 t a)) (sqrt.f64 y)))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 y) (/.f64 t a))) (sqrt.f64 y) (*.f64 (*.f64 (sqrt.f64 y) (/.f64 t a)) (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (*.f64 (sqrt.f64 y) (/.f64 t a)) (sqrt.f64 y)))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 y) (/.f64 t a))) (sqrt.f64 y) (*.f64 (*.f64 (sqrt.f64 y) (/.f64 t a)) (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (*.f64 (sqrt.f64 y) (/.f64 t a)) (sqrt.f64 y)))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 y) (/.f64 t a))) (sqrt.f64 y) (*.f64 (*.f64 (sqrt.f64 y) (/.f64 t a)) (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (*.f64 (sqrt.f64 y) (/.f64 t a)) (sqrt.f64 y)))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 y) (/.f64 t a))) (sqrt.f64 y) (*.f64 (*.f64 (sqrt.f64 y) (/.f64 t a)) (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 t a)) y) (sqrt.f64 (/.f64 t a))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (/.f64 t a)) y)) (sqrt.f64 (/.f64 t a)) (*.f64 (*.f64 (sqrt.f64 (/.f64 t a)) y) (sqrt.f64 (/.f64 t a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 t a)) y) (sqrt.f64 (/.f64 t a))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (/.f64 t a)) y)) (sqrt.f64 (/.f64 t a)) (*.f64 (*.f64 (sqrt.f64 (/.f64 t a)) y) (sqrt.f64 (/.f64 t a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 t a)) y) (sqrt.f64 (/.f64 t a))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (/.f64 t a)) y)) (sqrt.f64 (/.f64 t a)) (*.f64 (*.f64 (sqrt.f64 (/.f64 t a)) y) (sqrt.f64 (/.f64 t a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 t a)) y) (sqrt.f64 (/.f64 t a))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (/.f64 t a)) y)) (sqrt.f64 (/.f64 t a)) (*.f64 (*.f64 (sqrt.f64 (/.f64 t a)) y) (sqrt.f64 (/.f64 t a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 t a)) y) (sqrt.f64 (/.f64 t a))))) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 (/.f64 t a)) y)) (sqrt.f64 (/.f64 t a)) (*.f64 (*.f64 (sqrt.f64 (/.f64 t a)) y) (sqrt.f64 (/.f64 t a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (/.f64 (*.f64 y t) a) -1))) (fma.f64 (/.f64 (*.f64 y t) a) -1 (*.f64 (/.f64 (*.f64 y t) a) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (/.f64 (*.f64 y t) a) -1))) (fma.f64 (/.f64 (*.f64 y t) a) -1 (*.f64 (/.f64 (*.f64 y t) a) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (/.f64 (*.f64 y t) a) -1))) (fma.f64 (/.f64 (*.f64 y t) a) -1 (*.f64 (/.f64 (*.f64 y t) a) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (/.f64 (*.f64 y t) a) -1))) (fma.f64 (/.f64 (*.f64 y t) a) -1 (*.f64 (/.f64 (*.f64 y t) a) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (/.f64 (*.f64 y t) a) -1))) (fma.f64 (/.f64 (*.f64 y t) a) -1 (*.f64 (/.f64 (*.f64 y t) a) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (/.f64 1 a) (*.f64 y t)))) (fma.f64 (neg.f64 (/.f64 1 a)) (*.f64 y t) (*.f64 (/.f64 1 a) (*.f64 y t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (/.f64 1 a) (*.f64 y t)))) (fma.f64 (neg.f64 (/.f64 1 a)) (*.f64 y t) (*.f64 (/.f64 1 a) (*.f64 y t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (/.f64 1 a) (*.f64 y t)))) (fma.f64 (neg.f64 (/.f64 1 a)) (*.f64 y t) (*.f64 (/.f64 1 a) (*.f64 y t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (/.f64 1 a) (*.f64 y t)))) (fma.f64 (neg.f64 (/.f64 1 a)) (*.f64 y t) (*.f64 (/.f64 1 a) (*.f64 y t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (/.f64 1 a) (*.f64 y t)))) (fma.f64 (neg.f64 (/.f64 1 a)) (*.f64 y t) (*.f64 (/.f64 1 a) (*.f64 y t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (/.f64 t a) (/.f64 y 1)))) (fma.f64 (/.f64 t a) (/.f64 y 1) (*.f64 (/.f64 t a) (/.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (/.f64 t a) (/.f64 y 1)))) (fma.f64 (/.f64 t a) (/.f64 y 1) (*.f64 (/.f64 t a) (/.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (/.f64 t a) (/.f64 y 1)))) (fma.f64 (/.f64 t a) (/.f64 y 1) (*.f64 (/.f64 t a) (/.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (/.f64 t a) (/.f64 y 1)))) (fma.f64 (/.f64 t a) (/.f64 y 1) (*.f64 (/.f64 t a) (/.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (/.f64 t a) (/.f64 y 1)))) (fma.f64 (/.f64 t a) (/.f64 y 1) (*.f64 (/.f64 t a) (/.f64 y 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (/.f64 t (cbrt.f64 a)) (/.f64 y (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (/.f64 t (cbrt.f64 a))) (/.f64 y (pow.f64 (cbrt.f64 a) 2)) (*.f64 (/.f64 t (cbrt.f64 a)) (/.f64 y (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (/.f64 t (cbrt.f64 a)) (/.f64 y (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (/.f64 t (cbrt.f64 a))) (/.f64 y (pow.f64 (cbrt.f64 a) 2)) (*.f64 (/.f64 t (cbrt.f64 a)) (/.f64 y (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (/.f64 t (cbrt.f64 a)) (/.f64 y (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (/.f64 t (cbrt.f64 a))) (/.f64 y (pow.f64 (cbrt.f64 a) 2)) (*.f64 (/.f64 t (cbrt.f64 a)) (/.f64 y (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (/.f64 t (cbrt.f64 a)) (/.f64 y (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (/.f64 t (cbrt.f64 a))) (/.f64 y (pow.f64 (cbrt.f64 a) 2)) (*.f64 (/.f64 t (cbrt.f64 a)) (/.f64 y (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (/.f64 t (cbrt.f64 a)) (/.f64 y (pow.f64 (cbrt.f64 a) 2))))) (fma.f64 (neg.f64 (/.f64 t (cbrt.f64 a))) (/.f64 y (pow.f64 (cbrt.f64 a) 2)) (*.f64 (/.f64 t (cbrt.f64 a)) (/.f64 y (pow.f64 (cbrt.f64 a) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (/.f64 t (sqrt.f64 a)) (/.f64 y (sqrt.f64 a))))) (fma.f64 (neg.f64 (/.f64 t (sqrt.f64 a))) (/.f64 y (sqrt.f64 a)) (*.f64 (/.f64 t (sqrt.f64 a)) (/.f64 y (sqrt.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (/.f64 t (sqrt.f64 a)) (/.f64 y (sqrt.f64 a))))) (fma.f64 (neg.f64 (/.f64 t (sqrt.f64 a))) (/.f64 y (sqrt.f64 a)) (*.f64 (/.f64 t (sqrt.f64 a)) (/.f64 y (sqrt.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (/.f64 t (sqrt.f64 a)) (/.f64 y (sqrt.f64 a))))) (fma.f64 (neg.f64 (/.f64 t (sqrt.f64 a))) (/.f64 y (sqrt.f64 a)) (*.f64 (/.f64 t (sqrt.f64 a)) (/.f64 y (sqrt.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (/.f64 t (sqrt.f64 a)) (/.f64 y (sqrt.f64 a))))) (fma.f64 (neg.f64 (/.f64 t (sqrt.f64 a))) (/.f64 y (sqrt.f64 a)) (*.f64 (/.f64 t (sqrt.f64 a)) (/.f64 y (sqrt.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (/.f64 t (sqrt.f64 a)) (/.f64 y (sqrt.f64 a))))) (fma.f64 (neg.f64 (/.f64 t (sqrt.f64 a))) (/.f64 y (sqrt.f64 a)) (*.f64 (/.f64 t (sqrt.f64 a)) (/.f64 y (sqrt.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 y t) a)) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)))))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a))) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2))) (*.f64 (cbrt.f64 (/.f64 (*.f64 y t) a)) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 y t) a)) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)))))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a))) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2))) (*.f64 (cbrt.f64 (/.f64 (*.f64 y t) a)) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 y t) a)) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)))))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a))) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2))) (*.f64 (cbrt.f64 (/.f64 (*.f64 y t) a)) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 y t) a)) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)))))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a))) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2))) (*.f64 (cbrt.f64 (/.f64 (*.f64 y t) a)) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 y t) a)) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)))))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a))) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2))) (*.f64 (cbrt.f64 (/.f64 (*.f64 y t) a)) (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (/.f64 1 a) (*.f64 (neg.f64 y) t)))) (fma.f64 (neg.f64 (/.f64 1 a)) (*.f64 (neg.f64 y) t) (*.f64 (/.f64 1 a) (*.f64 (neg.f64 y) t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (/.f64 1 a) (*.f64 (neg.f64 y) t)))) (fma.f64 (neg.f64 (/.f64 1 a)) (*.f64 (neg.f64 y) t) (*.f64 (/.f64 1 a) (*.f64 (neg.f64 y) t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (/.f64 1 a) (*.f64 (neg.f64 y) t)))) (fma.f64 (neg.f64 (/.f64 1 a)) (*.f64 (neg.f64 y) t) (*.f64 (/.f64 1 a) (*.f64 (neg.f64 y) t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (/.f64 1 a) (*.f64 (neg.f64 y) t)))) (fma.f64 (neg.f64 (/.f64 1 a)) (*.f64 (neg.f64 y) t) (*.f64 (/.f64 1 a) (*.f64 (neg.f64 y) t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (/.f64 1 a) (*.f64 (neg.f64 y) t)))) (fma.f64 (neg.f64 (/.f64 1 a)) (*.f64 (neg.f64 y) t) (*.f64 (/.f64 1 a) (*.f64 (neg.f64 y) t))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (/.f64 t a) (*.f64 (neg.f64 y) 1)))) (fma.f64 (/.f64 t a) (*.f64 (neg.f64 y) 1) (*.f64 (/.f64 t a) (*.f64 (neg.f64 y) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (/.f64 t a) (*.f64 (neg.f64 y) 1)))) (fma.f64 (/.f64 t a) (*.f64 (neg.f64 y) 1) (*.f64 (/.f64 t a) (*.f64 (neg.f64 y) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (/.f64 t a) (*.f64 (neg.f64 y) 1)))) (fma.f64 (/.f64 t a) (*.f64 (neg.f64 y) 1) (*.f64 (/.f64 t a) (*.f64 (neg.f64 y) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (/.f64 t a) (*.f64 (neg.f64 y) 1)))) (fma.f64 (/.f64 t a) (*.f64 (neg.f64 y) 1) (*.f64 (/.f64 t a) (*.f64 (neg.f64 y) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (/.f64 t a) (*.f64 (neg.f64 y) 1)))) (fma.f64 (/.f64 t a) (*.f64 (neg.f64 y) 1) (*.f64 (/.f64 t a) (*.f64 (neg.f64 y) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (cbrt.f64 (/.f64 t a)) (*.f64 (neg.f64 y) (cbrt.f64 (pow.f64 (/.f64 a t) -2)))))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 t a))) (*.f64 (neg.f64 y) (cbrt.f64 (pow.f64 (/.f64 a t) -2))) (*.f64 (cbrt.f64 (/.f64 t a)) (*.f64 (neg.f64 y) (cbrt.f64 (pow.f64 (/.f64 a t) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (cbrt.f64 (/.f64 t a)) (*.f64 (neg.f64 y) (cbrt.f64 (pow.f64 (/.f64 a t) -2)))))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 t a))) (*.f64 (neg.f64 y) (cbrt.f64 (pow.f64 (/.f64 a t) -2))) (*.f64 (cbrt.f64 (/.f64 t a)) (*.f64 (neg.f64 y) (cbrt.f64 (pow.f64 (/.f64 a t) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (cbrt.f64 (/.f64 t a)) (*.f64 (neg.f64 y) (cbrt.f64 (pow.f64 (/.f64 a t) -2)))))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 t a))) (*.f64 (neg.f64 y) (cbrt.f64 (pow.f64 (/.f64 a t) -2))) (*.f64 (cbrt.f64 (/.f64 t a)) (*.f64 (neg.f64 y) (cbrt.f64 (pow.f64 (/.f64 a t) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (cbrt.f64 (/.f64 t a)) (*.f64 (neg.f64 y) (cbrt.f64 (pow.f64 (/.f64 a t) -2)))))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 t a))) (*.f64 (neg.f64 y) (cbrt.f64 (pow.f64 (/.f64 a t) -2))) (*.f64 (cbrt.f64 (/.f64 t a)) (*.f64 (neg.f64 y) (cbrt.f64 (pow.f64 (/.f64 a t) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (cbrt.f64 (/.f64 t a)) (*.f64 (neg.f64 y) (cbrt.f64 (pow.f64 (/.f64 a t) -2)))))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 t a))) (*.f64 (neg.f64 y) (cbrt.f64 (pow.f64 (/.f64 a t) -2))) (*.f64 (cbrt.f64 (/.f64 t a)) (*.f64 (neg.f64 y) (cbrt.f64 (pow.f64 (/.f64 a t) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (sqrt.f64 (/.f64 t a)) (*.f64 (neg.f64 y) (sqrt.f64 (/.f64 t a)))))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 t a))) (*.f64 (neg.f64 y) (sqrt.f64 (/.f64 t a))) (*.f64 (sqrt.f64 (/.f64 t a)) (*.f64 (neg.f64 y) (sqrt.f64 (/.f64 t a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (sqrt.f64 (/.f64 t a)) (*.f64 (neg.f64 y) (sqrt.f64 (/.f64 t a)))))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 t a))) (*.f64 (neg.f64 y) (sqrt.f64 (/.f64 t a))) (*.f64 (sqrt.f64 (/.f64 t a)) (*.f64 (neg.f64 y) (sqrt.f64 (/.f64 t a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (sqrt.f64 (/.f64 t a)) (*.f64 (neg.f64 y) (sqrt.f64 (/.f64 t a)))))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 t a))) (*.f64 (neg.f64 y) (sqrt.f64 (/.f64 t a))) (*.f64 (sqrt.f64 (/.f64 t a)) (*.f64 (neg.f64 y) (sqrt.f64 (/.f64 t a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (sqrt.f64 (/.f64 t a)) (*.f64 (neg.f64 y) (sqrt.f64 (/.f64 t a)))))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 t a))) (*.f64 (neg.f64 y) (sqrt.f64 (/.f64 t a))) (*.f64 (sqrt.f64 (/.f64 t a)) (*.f64 (neg.f64 y) (sqrt.f64 (/.f64 t a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (sqrt.f64 (/.f64 t a)) (*.f64 (neg.f64 y) (sqrt.f64 (/.f64 t a)))))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 t a))) (*.f64 (neg.f64 y) (sqrt.f64 (/.f64 t a))) (*.f64 (sqrt.f64 (/.f64 t a)) (*.f64 (neg.f64 y) (sqrt.f64 (/.f64 t a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (cbrt.f64 (/.f64 t a)) (*.f64 y (cbrt.f64 (pow.f64 (/.f64 a t) -2)))))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 t a))) (*.f64 y (cbrt.f64 (pow.f64 (/.f64 a t) -2))) (*.f64 (cbrt.f64 (/.f64 t a)) (*.f64 y (cbrt.f64 (pow.f64 (/.f64 a t) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (cbrt.f64 (/.f64 t a)) (*.f64 y (cbrt.f64 (pow.f64 (/.f64 a t) -2)))))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 t a))) (*.f64 y (cbrt.f64 (pow.f64 (/.f64 a t) -2))) (*.f64 (cbrt.f64 (/.f64 t a)) (*.f64 y (cbrt.f64 (pow.f64 (/.f64 a t) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (cbrt.f64 (/.f64 t a)) (*.f64 y (cbrt.f64 (pow.f64 (/.f64 a t) -2)))))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 t a))) (*.f64 y (cbrt.f64 (pow.f64 (/.f64 a t) -2))) (*.f64 (cbrt.f64 (/.f64 t a)) (*.f64 y (cbrt.f64 (pow.f64 (/.f64 a t) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (cbrt.f64 (/.f64 t a)) (*.f64 y (cbrt.f64 (pow.f64 (/.f64 a t) -2)))))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 t a))) (*.f64 y (cbrt.f64 (pow.f64 (/.f64 a t) -2))) (*.f64 (cbrt.f64 (/.f64 t a)) (*.f64 y (cbrt.f64 (pow.f64 (/.f64 a t) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (cbrt.f64 (/.f64 t a)) (*.f64 y (cbrt.f64 (pow.f64 (/.f64 a t) -2)))))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 t a))) (*.f64 y (cbrt.f64 (pow.f64 (/.f64 a t) -2))) (*.f64 (cbrt.f64 (/.f64 t a)) (*.f64 y (cbrt.f64 (pow.f64 (/.f64 a t) -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (sqrt.f64 (/.f64 t a)) (*.f64 y (sqrt.f64 (/.f64 t a)))))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 t a))) (*.f64 y (sqrt.f64 (/.f64 t a))) (*.f64 (sqrt.f64 (/.f64 t a)) (*.f64 y (sqrt.f64 (/.f64 t a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (sqrt.f64 (/.f64 t a)) (*.f64 y (sqrt.f64 (/.f64 t a)))))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 t a))) (*.f64 y (sqrt.f64 (/.f64 t a))) (*.f64 (sqrt.f64 (/.f64 t a)) (*.f64 y (sqrt.f64 (/.f64 t a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (sqrt.f64 (/.f64 t a)) (*.f64 y (sqrt.f64 (/.f64 t a)))))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 t a))) (*.f64 y (sqrt.f64 (/.f64 t a))) (*.f64 (sqrt.f64 (/.f64 t a)) (*.f64 y (sqrt.f64 (/.f64 t a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (sqrt.f64 (/.f64 t a)) (*.f64 y (sqrt.f64 (/.f64 t a)))))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 t a))) (*.f64 y (sqrt.f64 (/.f64 t a))) (*.f64 (sqrt.f64 (/.f64 t a)) (*.f64 y (sqrt.f64 (/.f64 t a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (sqrt.f64 (/.f64 t a)) (*.f64 y (sqrt.f64 (/.f64 t a)))))) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 t a))) (*.f64 y (sqrt.f64 (/.f64 t a))) (*.f64 (sqrt.f64 (/.f64 t a)) (*.f64 y (sqrt.f64 (/.f64 t a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (cbrt.f64 y) (*.f64 (/.f64 t a) (pow.f64 (cbrt.f64 y) 2))))) (fma.f64 (neg.f64 (cbrt.f64 y)) (*.f64 (/.f64 t a) (pow.f64 (cbrt.f64 y) 2)) (*.f64 (cbrt.f64 y) (*.f64 (/.f64 t a) (pow.f64 (cbrt.f64 y) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (cbrt.f64 y) (*.f64 (/.f64 t a) (pow.f64 (cbrt.f64 y) 2))))) (fma.f64 (neg.f64 (cbrt.f64 y)) (*.f64 (/.f64 t a) (pow.f64 (cbrt.f64 y) 2)) (*.f64 (cbrt.f64 y) (*.f64 (/.f64 t a) (pow.f64 (cbrt.f64 y) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (cbrt.f64 y) (*.f64 (/.f64 t a) (pow.f64 (cbrt.f64 y) 2))))) (fma.f64 (neg.f64 (cbrt.f64 y)) (*.f64 (/.f64 t a) (pow.f64 (cbrt.f64 y) 2)) (*.f64 (cbrt.f64 y) (*.f64 (/.f64 t a) (pow.f64 (cbrt.f64 y) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (cbrt.f64 y) (*.f64 (/.f64 t a) (pow.f64 (cbrt.f64 y) 2))))) (fma.f64 (neg.f64 (cbrt.f64 y)) (*.f64 (/.f64 t a) (pow.f64 (cbrt.f64 y) 2)) (*.f64 (cbrt.f64 y) (*.f64 (/.f64 t a) (pow.f64 (cbrt.f64 y) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (cbrt.f64 y) (*.f64 (/.f64 t a) (pow.f64 (cbrt.f64 y) 2))))) (fma.f64 (neg.f64 (cbrt.f64 y)) (*.f64 (/.f64 t a) (pow.f64 (cbrt.f64 y) 2)) (*.f64 (cbrt.f64 y) (*.f64 (/.f64 t a) (pow.f64 (cbrt.f64 y) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x 1 (neg.f64 (*.f64 (sqrt.f64 y) (*.f64 (/.f64 t a) (sqrt.f64 y))))) (fma.f64 (neg.f64 (sqrt.f64 y)) (*.f64 (/.f64 t a) (sqrt.f64 y)) (*.f64 (sqrt.f64 y) (*.f64 (/.f64 t a) (sqrt.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 x (neg.f64 (*.f64 (sqrt.f64 y) (*.f64 (/.f64 t a) (sqrt.f64 y))))) (fma.f64 (neg.f64 (sqrt.f64 y)) (*.f64 (/.f64 t a) (sqrt.f64 y)) (*.f64 (sqrt.f64 y) (*.f64 (/.f64 t a) (sqrt.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (*.f64 (sqrt.f64 y) (*.f64 (/.f64 t a) (sqrt.f64 y))))) (fma.f64 (neg.f64 (sqrt.f64 y)) (*.f64 (/.f64 t a) (sqrt.f64 y)) (*.f64 (sqrt.f64 y) (*.f64 (/.f64 t a) (sqrt.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (*.f64 (sqrt.f64 y) (*.f64 (/.f64 t a) (sqrt.f64 y))))) (fma.f64 (neg.f64 (sqrt.f64 y)) (*.f64 (/.f64 t a) (sqrt.f64 y)) (*.f64 (sqrt.f64 y) (*.f64 (/.f64 t a) (sqrt.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (*.f64 (sqrt.f64 y) (*.f64 (/.f64 t a) (sqrt.f64 y))))) (fma.f64 (neg.f64 (sqrt.f64 y)) (*.f64 (/.f64 t a) (sqrt.f64 y)) (*.f64 (sqrt.f64 y) (*.f64 (/.f64 t a) (sqrt.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 y (/.f64 t a) x))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 y (/.f64 t a) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 y (/.f64 t a) x)))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 y (/.f64 t a) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y (/.f64 t a) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 y (/.f64 t a) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 y (/.f64 t a) x) 2) (/.f64 1 (fma.f64 y (/.f64 t a) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 y (/.f64 t a) x)) (pow.f64 (cbrt.f64 (fma.f64 y (/.f64 t a) x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 y (/.f64 t a) x)) 2) (cbrt.f64 (fma.f64 y (/.f64 t a) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 y (/.f64 t a) x)) (sqrt.f64 (fma.f64 y (/.f64 t a) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 x 3) (pow.f64 (/.f64 (*.f64 y t) a) 3)) (/.f64 1 (fma.f64 (/.f64 (*.f64 y t) a) (fma.f64 y (/.f64 t a) x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (/.f64 (*.f64 y t) a))) (-.f64 (sqrt.f64 x) (sqrt.f64 (/.f64 (*.f64 y t) a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (/.f64 (*.f64 y t) a) (fma.f64 y (/.f64 t a) x) (*.f64 x x)) (-.f64 (pow.f64 x 3) (pow.f64 (/.f64 (*.f64 y t) a) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 1 (fma.f64 y (/.f64 t a) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (fma.f64 y (/.f64 t a) x) 2) (fma.f64 y (/.f64 t a) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 3) (pow.f64 (/.f64 (*.f64 y t) a) 3)) (fma.f64 (/.f64 (*.f64 y t) a) (fma.f64 y (/.f64 t a) x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 x 3) (pow.f64 (/.f64 (*.f64 y t) a) 3))) (neg.f64 (fma.f64 (/.f64 (*.f64 y t) a) (fma.f64 y (/.f64 t a) x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 (fma.f64 y (/.f64 t a) x) 2)) (neg.f64 (fma.f64 y (/.f64 t a) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (/.f64 (*.f64 y t) a) 3)) (fma.f64 x x (-.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2) (*.f64 (/.f64 (*.f64 y t) a) x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 y (/.f64 t a) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y (/.f64 t a) x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y (/.f64 t a) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 y (/.f64 t a) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 y (/.f64 t a) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (/.f64 (*.f64 y t) a) (fma.f64 y (/.f64 t a) x) (*.f64 x x)) (-.f64 (pow.f64 x 3) (pow.f64 (/.f64 (*.f64 y t) a) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (fma.f64 y (/.f64 t a) x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 y (/.f64 t a) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 y (/.f64 t a) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 y (/.f64 t a) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 x)) (pow.f64 (exp.f64 y) (/.f64 t a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (/.f64 (*.f64 y t) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (/.f64 (*.f64 y t) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 y t) a))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 y) (/.f64 t a)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 y t) a))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (pow.f64 (exp.f64 y) (/.f64 t a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (/.f64 (*.f64 y t) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (/.f64 (*.f64 y t) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 y (/.f64 t a) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 x (/.f64 (*.f64 y t) a))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 y (/.f64 t a) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 y (/.f64 t a) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 y (/.f64 t a) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 y (/.f64 t a) x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (/.f64 t a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t (*.f64 (/.f64 1 a) y) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 t a) y x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 t a) (neg.f64 y) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 y t) a) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (/.f64 (*.f64 y t) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y (/.f64 t a) x) 1 (fma.f64 (/.f64 t a) y (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 y (/.f64 t a) x) 1 (fma.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)) (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 (*.f64 y t) a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (/.f64 (*.f64 y t) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 y (/.f64 t a) x) (fma.f64 (/.f64 t a) y (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 y (/.f64 t a) x) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)) (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 y (/.f64 t a) x) 2) (/.f64 1 (fma.f64 y (/.f64 t a) x)) (fma.f64 (/.f64 t a) y (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 y (/.f64 t a) x) 2) (/.f64 1 (fma.f64 y (/.f64 t a) x)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)) (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (/.f64 (*.f64 y t) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (/.f64 (*.f64 y t) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) (/.f64 t a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 y (/.f64 t a) x)) (pow.f64 (cbrt.f64 (fma.f64 y (/.f64 t a) x)) 2) (fma.f64 (/.f64 t a) y (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 y (/.f64 t a) x)) (pow.f64 (cbrt.f64 (fma.f64 y (/.f64 t a) x)) 2) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)) (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 y (/.f64 t a) x)) 2) (cbrt.f64 (fma.f64 y (/.f64 t a) x)) (fma.f64 (/.f64 t a) y (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 y (/.f64 t a) x)) 2) (cbrt.f64 (fma.f64 y (/.f64 t a) x)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)) (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (/.f64 a t) -2)) (*.f64 (cbrt.f64 (/.f64 t a)) y) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 (*.f64 y t) a)) (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)) (cbrt.f64 (/.f64 (*.f64 y t) a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)) (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (/.f64 (*.f64 y t) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (/.f64 t a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 y (/.f64 t a) x)) (sqrt.f64 (fma.f64 y (/.f64 t a) x)) (fma.f64 (/.f64 t a) y (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 y (/.f64 t a) x)) (sqrt.f64 (fma.f64 y (/.f64 t a) x)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)) (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 t a)) (*.f64 (sqrt.f64 (/.f64 t a)) y) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (*.f64 y t) a)) (sqrt.f64 (/.f64 (*.f64 y t) a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (*.f64 y t) a)) (neg.f64 (sqrt.f64 (/.f64 (*.f64 y t) a))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 3) (pow.f64 (/.f64 (*.f64 y t) a) 3)) (/.f64 1 (fma.f64 (/.f64 (*.f64 y t) a) (fma.f64 y (/.f64 t a) x) (*.f64 x x))) (fma.f64 (/.f64 t a) y (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 3) (pow.f64 (/.f64 (*.f64 y t) a) 3)) (/.f64 1 (fma.f64 (/.f64 (*.f64 y t) a) (fma.f64 y (/.f64 t a) x) (*.f64 x x))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)) (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (/.f64 (*.f64 y t) a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 y) (/.f64 t a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y t) (/.f64 1 a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (/.f64 (*.f64 y t) a))) (sqrt.f64 (/.f64 (*.f64 y t) a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y 1) (/.f64 t a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y (pow.f64 (cbrt.f64 a) 2)) (/.f64 t (cbrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y (sqrt.f64 a)) (/.f64 t (sqrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (/.f64 (*.f64 y t) a))) (-.f64 (sqrt.f64 x) (sqrt.f64 (/.f64 (*.f64 y t) a))) (fma.f64 (/.f64 t a) y (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (/.f64 (*.f64 y t) a))) (-.f64 (sqrt.f64 x) (sqrt.f64 (/.f64 (*.f64 y t) a))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 (*.f64 y t) a))) (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2)) (/.f64 (*.f64 y t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 y t) a) 2))) (cbrt.f64 (/.f64 (*.f64 y t) a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 y) t) (/.f64 1 a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 y) 1) (/.f64 t a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 y) (cbrt.f64 (pow.f64 (/.f64 a t) -2))) (cbrt.f64 (/.f64 t a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 y) (sqrt.f64 (/.f64 t a))) (sqrt.f64 (/.f64 t a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (cbrt.f64 (pow.f64 (/.f64 a t) -2))) (cbrt.f64 (/.f64 t a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 (/.f64 t a))) (sqrt.f64 (/.f64 t a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 t a) (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 t a) (sqrt.f64 y)) (sqrt.f64 y) x))))) |
| 1× | egg-herbie |
| 261× | fma-def_binary64 |
| 230× | fma-neg_binary64 |
| 74× | cancel-sign-sub-inv_binary64 |
| 52× | associate-/l*_binary64 |
| 42× | distribute-rgt-neg-in_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 732 |
| 1 | 18 | 732 |
| 2 | 38 | 660 |
| 3 | 73 | 660 |
| 4 | 120 | 660 |
| 5 | 169 | 660 |
| 6 | 209 | 660 |
| 7 | 251 | 660 |
| 8 | 314 | 660 |
| 9 | 455 | 660 |
| 10 | 526 | 660 |
| 11 | 588 | 660 |
| 12 | 730 | 660 |
| 13 | 1019 | 660 |
| 14 | 1171 | 660 |
| 15 | 1290 | 660 |
| 16 | 1295 | 660 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(/.f64 (*.f64 y t) a) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
x |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
x |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
x |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(/.f64 (*.f64 y t) a) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(/.f64 (*.f64 y t) a) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
x |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(/.f64 (*.f64 y t) a) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(/.f64 (*.f64 y t) a) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(/.f64 (*.f64 y t) a) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
x |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
x |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
| Outputs |
|---|
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(*.f64 -1 (/.f64 (*.f64 y t) a)) |
(neg.f64 (/.f64 y (/.f64 a t))) |
(/.f64 (neg.f64 y) (/.f64 a t)) |
(*.f64 (/.f64 y a) (neg.f64 t)) |
(*.f64 y (neg.f64 (/.f64 t a))) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 (/.f64 t a) y) |
(*.f64 y (/.f64 t a)) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
x |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
x |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
x |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 (/.f64 t a) y) |
(*.f64 y (/.f64 t a)) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 (/.f64 t a) y) |
(*.f64 y (/.f64 t a)) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
x |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 (/.f64 t a) y) |
(*.f64 y (/.f64 t a)) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 (/.f64 t a) y) |
(*.f64 y (/.f64 t a)) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 (/.f64 t a) y) |
(*.f64 y (/.f64 t a)) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
x |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
x |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(+.f64 (/.f64 y (/.f64 a t)) x) |
(+.f64 (*.f64 (/.f64 y a) t) x) |
(fma.f64 (/.f64 y a) t x) |
(fma.f64 (/.f64 t a) y x) |
(fma.f64 y (/.f64 t a) x) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 6.9b | (*.f64 y (/.f64 t a)) |
Compiled 16 to 7 computations (56.3% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | y | @ | -inf | (*.f64 y (/.f64 t a)) |
| 0.0ms | y | @ | 0 | (*.f64 y (/.f64 t a)) |
| 0.0ms | y | @ | inf | (*.f64 y (/.f64 t a)) |
| 0.0ms | t | @ | 0 | (*.f64 y (/.f64 t a)) |
| 0.0ms | t | @ | -inf | (*.f64 y (/.f64 t a)) |
| 1× | batch-egg-rewrite |
| 681× | pow1_binary64 |
| 628× | add-log-exp_binary64 |
| 628× | log1p-expm1-u_binary64 |
| 628× | expm1-log1p-u_binary64 |
| 613× | add-exp-log_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 7 |
| 1 | 125 | 7 |
| 2 | 1672 | 7 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 y (/.f64 t a)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 y (/.f64 t a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y (/.f64 a t))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 a (*.f64 y t)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y t) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 y t)) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y t) 1) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y t) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y t) (sqrt.f64 a)) (sqrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 t) y) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (neg.f64 t)) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (/.f64 t a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y (/.f64 t a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 y (/.f64 t a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 y (/.f64 t a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 y (/.f64 t a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 y) (/.f64 t a)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 y (/.f64 t a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 y 3) (pow.f64 (/.f64 t a) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 t a) 3) (pow.f64 y 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 y (/.f64 t a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 y (/.f64 t a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 y (/.f64 t a)))))))) |
| 1× | egg-herbie |
| 3× | *-commutative_binary64 |
| 2× | associate-/l*_binary64 |
| 2× | associate-/r/_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 252 |
| 1 | 9 | 252 |
| 2 | 13 | 252 |
| 3 | 16 | 252 |
| 4 | 17 | 252 |
| 1× | saturated |
| Inputs |
|---|
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
| Outputs |
|---|
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 4.4b | (*.f64 (neg.f64 z) (/.f64 y a)) |
Compiled 19 to 8 computations (57.9% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | z | @ | inf | (*.f64 (neg.f64 z) (/.f64 y a)) |
| 1.0ms | a | @ | inf | (*.f64 (neg.f64 z) (/.f64 y a)) |
| 0.0ms | y | @ | inf | (*.f64 (neg.f64 z) (/.f64 y a)) |
| 0.0ms | z | @ | 0 | (*.f64 (neg.f64 z) (/.f64 y a)) |
| 0.0ms | y | @ | -inf | (*.f64 (neg.f64 z) (/.f64 y a)) |
| 1× | batch-egg-rewrite |
| 713× | pow1_binary64 |
| 658× | add-log-exp_binary64 |
| 657× | log1p-expm1-u_binary64 |
| 657× | expm1-log1p-u_binary64 |
| 643× | add-exp-log_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 9 |
| 1 | 150 | 7 |
| 2 | 2083 | 7 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (neg.f64 z) (/.f64 y a)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 z (/.f64 y a)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 z (/.f64 y a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 z (/.f64 a y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 a (*.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z y) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z y) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 z y) 1) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 z y) (cbrt.f64 (*.f64 a a))) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 z y) (sqrt.f64 a)) (sqrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 y) z) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (neg.f64 y)) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 z (/.f64 y a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 z (/.f64 y a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 z (/.f64 y a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 z (/.f64 y a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 z (/.f64 y a)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 z (/.f64 y a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (/.f64 y a)) z))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 z (/.f64 y a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 z 3) (pow.f64 (/.f64 y a) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 y a) 3) (pow.f64 z 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 z (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 z (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 z (/.f64 y a)))))))) |
| 1× | egg-herbie |
| 145× | fma-def_binary64 |
| 46× | fma-neg_binary64 |
| 24× | sub-neg_binary64 |
| 18× | div-sub_binary64 |
| 14× | associate-/l*_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 324 |
| 1 | 15 | 324 |
| 2 | 35 | 324 |
| 3 | 69 | 324 |
| 4 | 114 | 324 |
| 5 | 162 | 324 |
| 6 | 202 | 324 |
| 7 | 238 | 324 |
| 8 | 275 | 324 |
| 9 | 394 | 324 |
| 10 | 445 | 324 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
| Outputs |
|---|
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f64 (/.f64 (*.f64 y t) a) x) |
| 4.3b | (/.f64 (*.f64 y t) a) |
Compiled 24 to 8 computations (66.7% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | y | @ | 0 | (+.f64 (/.f64 (*.f64 y t) a) x) |
| 0.0ms | x | @ | inf | (+.f64 (/.f64 (*.f64 y t) a) x) |
| 0.0ms | x | @ | 0 | (+.f64 (/.f64 (*.f64 y t) a) x) |
| 0.0ms | y | @ | inf | (+.f64 (/.f64 (*.f64 y t) a) x) |
| 0.0ms | t | @ | inf | (+.f64 (/.f64 (*.f64 y t) a) x) |
| 1× | batch-egg-rewrite |
| 827× | prod-diff_binary64 |
| 493× | log-prod_binary64 |
| 325× | pow-prod-down_binary64 |
| 277× | fma-def_binary64 |
| 247× | pow2_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 10 |
| 1 | 175 | 10 |
| 2 | 2592 | 8 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (/.f64 (*.f64 y t) a) x) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (/.f64 y a) t x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 (/.f64 y a) t) 2) (-.f64 (*.f64 (/.f64 y a) t) x)) (/.f64 (*.f64 x x) (-.f64 (*.f64 (/.f64 y a) t) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (/.f64 y a) t x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (/.f64 y a) t x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (/.f64 y a) t x)) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 y a) t x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (/.f64 y a) t x)) 2) (cbrt.f64 (fma.f64 (/.f64 y a) t x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (/.f64 y a) t x)) (sqrt.f64 (fma.f64 (/.f64 y a) t x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y a) t) 3) (pow.f64 x 3)) (/.f64 1 (fma.f64 x (-.f64 x (*.f64 (/.f64 y a) t)) (pow.f64 (*.f64 (/.f64 y a) t) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 (/.f64 y a) t) 2) (*.f64 x x)) (/.f64 1 (-.f64 (*.f64 (/.f64 y a) t) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x (-.f64 x (*.f64 (/.f64 y a) t)) (pow.f64 (*.f64 (/.f64 y a) t) 2)) (+.f64 (pow.f64 (*.f64 (/.f64 y a) t) 3) (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 (/.f64 y a) t) x) (-.f64 (pow.f64 (*.f64 (/.f64 y a) t) 2) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y a) t) 3) (pow.f64 x 3)) (fma.f64 x (-.f64 x (*.f64 (/.f64 y a) t)) (pow.f64 (*.f64 (/.f64 y a) t) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y a) t) 3) (pow.f64 x 3)) (fma.f64 x x (-.f64 (pow.f64 (*.f64 (/.f64 y a) t) 2) (*.f64 (*.f64 (/.f64 y a) t) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (/.f64 y a) t) 2) (*.f64 x x)) (-.f64 (*.f64 (/.f64 y a) t) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (/.f64 y a) t) 3) (pow.f64 x 3))) (neg.f64 (fma.f64 x (-.f64 x (*.f64 (/.f64 y a) t)) (pow.f64 (*.f64 (/.f64 y a) t) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (/.f64 y a) t) 2) (*.f64 x x))) (neg.f64 (-.f64 (*.f64 (/.f64 y a) t) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (/.f64 y a) t) 2)) (-.f64 x (*.f64 (/.f64 y a) t)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (/.f64 y a) t x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (/.f64 y a) t x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (/.f64 y a) t x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (/.f64 y a) t x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (/.f64 y a) t x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 x (-.f64 x (*.f64 (/.f64 y a) t)) (pow.f64 (*.f64 (/.f64 y a) t) 2)) (+.f64 (pow.f64 (*.f64 (/.f64 y a) t) 3) (pow.f64 x 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (*.f64 (/.f64 y a) t) x) (-.f64 (pow.f64 (*.f64 (/.f64 y a) t) 2) (*.f64 x x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (/.f64 y a) t x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (/.f64 y a) t x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (/.f64 y a) t x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 y a) t))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (/.f64 y a) t)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 y a) t))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (exp.f64 (*.f64 (/.f64 y a) t))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (*.f64 (/.f64 y a) t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (*.f64 (/.f64 y a) t)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (/.f64 y a) t x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (/.f64 y a) t x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (/.f64 y a) t x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (/.f64 y a) t x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (/.f64 y a) t x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (/.f64 1 (/.f64 a t)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (*.f64 t (/.f64 1 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t (*.f64 y (/.f64 1 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y t) (/.f64 1 a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 y a) t) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 (/.f64 y a) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (/.f64 y a) t) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 (/.f64 y a) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (/.f64 y a) t)) (pow.f64 (cbrt.f64 (*.f64 (/.f64 y a) t)) 2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 y a) t)) 2) (cbrt.f64 (*.f64 (/.f64 y a) t)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 (/.f64 y a) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 (/.f64 y a) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y t)) 2) (*.f64 (cbrt.f64 (*.f64 y t)) (/.f64 1 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (/.f64 y a) t)) (sqrt.f64 (*.f64 (/.f64 y a) t)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (/.f64 y a) t))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y t)) (*.f64 (sqrt.f64 (*.f64 y t)) (/.f64 1 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (neg.f64 t)) (/.f64 1 (neg.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 a) (*.f64 y t) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y 1) (/.f64 t a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 t 1) (/.f64 y a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y a) t x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y t)) 2) 1) (/.f64 (cbrt.f64 (*.f64 y t)) a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (*.f64 y t)) 1) (/.f64 (sqrt.f64 (*.f64 y t)) a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y (pow.f64 (cbrt.f64 a) 2)) (/.f64 t (cbrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 t (pow.f64 (cbrt.f64 a) 2)) (/.f64 y (cbrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 a) -2) (/.f64 (*.f64 y t) (cbrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y t)) 2) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 (*.f64 (/.f64 y a) t)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (*.f64 y t)) (pow.f64 (cbrt.f64 a) 2)) (/.f64 (sqrt.f64 (*.f64 y t)) (cbrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 y (sqrt.f64 a)) (/.f64 t (sqrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 t (sqrt.f64 a)) (/.f64 y (sqrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 a -1/2) (/.f64 (*.f64 y t) (sqrt.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y t)) 2) (sqrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 y t)) (sqrt.f64 a)) x))))) |
| 1× | egg-herbie |
| 3× | *-commutative_binary64 |
| 2× | associate-/l*_binary64 |
| 2× | associate-/r/_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 48 |
| 1 | 10 | 48 |
| 2 | 14 | 48 |
| 3 | 17 | 48 |
| 4 | 18 | 48 |
| 1× | saturated |
| Inputs |
|---|
x |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
x |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
x |
x |
(/.f64 (*.f64 y t) a) |
x |
x |
| Outputs |
|---|
x |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
x |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
x |
x |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
x |
x |
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (*.f64 y (-.f64 t z)) |
| ✓ | 7.2b | (/.f64 (*.f64 y (-.f64 t z)) a) |
Compiled 24 to 8 computations (66.7% saved)
21 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 50.0ms | t | @ | 0 | (*.f64 y (-.f64 t z)) |
| 1.0ms | y | @ | 0 | (/.f64 (*.f64 y (-.f64 t z)) a) |
| 1.0ms | a | @ | 0 | (/.f64 (*.f64 y (-.f64 t z)) a) |
| 1.0ms | t | @ | -inf | (/.f64 (*.f64 y (-.f64 t z)) a) |
| 1.0ms | t | @ | inf | (*.f64 y (-.f64 t z)) |
| 1× | batch-egg-rewrite |
| 501× | log-prod_binary64 |
| 386× | prod-diff_binary64 |
| 381× | exp-prod_binary64 |
| 325× | pow-prod-down_binary64 |
| 250× | pow2_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 17 |
| 1 | 176 | 17 |
| 2 | 2595 | 17 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 y (-.f64 t z)) a) |
(*.f64 y (-.f64 t z)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 y a) (-.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 y a)) (-.f64 t z))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 y a)) (-.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 y a)) (-.f64 t z)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 y a)) (-.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 y a) (-.f64 t z)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (/.f64 1 (/.f64 a (-.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 (-.f64 t z) (/.f64 1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 t z) (*.f64 y (/.f64 1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (-.f64 t z)) (/.f64 1 a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y a) (-.f64 t z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (/.f64 y a) (-.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 t z))) (cbrt.f64 (pow.f64 (/.f64 a (*.f64 y (-.f64 t z))) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 a (*.f64 y (-.f64 t z))) -2)) (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 t z))) 2) (*.f64 (cbrt.f64 (*.f64 y (-.f64 t z))) (/.f64 1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 t z))) (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 y (-.f64 t z))) (*.f64 (sqrt.f64 (*.f64 y (-.f64 t z))) (/.f64 1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (neg.f64 (-.f64 t z))) (/.f64 1 (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 a) (*.f64 y (-.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y 1) (/.f64 (-.f64 t z) a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 t z) 1) (/.f64 y a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y a) (-.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 t z))) 2) 1) (/.f64 (cbrt.f64 (*.f64 y (-.f64 t z))) a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 t z))) 1) (/.f64 (sqrt.f64 (*.f64 y (-.f64 t z))) a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (pow.f64 (cbrt.f64 a) 2)) (/.f64 (-.f64 t z) (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 t z) (pow.f64 (cbrt.f64 a) 2)) (/.f64 y (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 a) -2) (/.f64 (*.f64 y (-.f64 t z)) (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 t z))) 2) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 y (-.f64 t z))) (pow.f64 (cbrt.f64 a) 2)) (/.f64 (sqrt.f64 (*.f64 y (-.f64 t z))) (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (sqrt.f64 a)) (/.f64 (-.f64 t z) (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 t z) (sqrt.f64 a)) (/.f64 y (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 a -1/2) (/.f64 (*.f64 y (-.f64 t z)) (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 t z))) 2) (sqrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 y (-.f64 t z))) (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 y a) (-.f64 t z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 a (*.f64 y (-.f64 t z))) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 t z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 t z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 t z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 a (*.f64 y (-.f64 t z))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (/.f64 y a) (-.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (*.f64 y (-.f64 t z)) 3) (pow.f64 a 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 a (*.f64 y (-.f64 t z))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 y a) (-.f64 t z)))) 2)) (cbrt.f64 (log.f64 (*.f64 (/.f64 y a) (-.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 y a) (-.f64 t z))))) (sqrt.f64 (log.f64 (*.f64 (/.f64 y a) (-.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 y (-.f64 t z)) (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 a (*.f64 y (-.f64 t z))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (/.f64 y a)) (-.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 y a) (-.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 y a) (-.f64 t z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 y (-.f64 t z)) 3) (pow.f64 a 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 y a) (-.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 y a) (-.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 y a) (-.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 y a) (-.f64 t z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (/.f64 y a) (-.f64 t z)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 y a) (-.f64 t z)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 t z)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 a (*.f64 y (-.f64 t z)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (/.f64 y a) (-.f64 t z))) 1) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (-.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 t y) (*.f64 (neg.f64 z) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y t) (*.f64 y (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 y) (-.f64 t z))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y) (-.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) (-.f64 t z)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) (-.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 y (-.f64 t z)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 t 3) (pow.f64 z 3)) y) (fma.f64 z (+.f64 t z) (*.f64 t t)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 t t) (*.f64 z z)) y) (+.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 (pow.f64 t 3) (pow.f64 z 3))) (fma.f64 z (+.f64 t z) (*.f64 t t)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 (*.f64 t t) (*.f64 z z))) (+.f64 t z))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (-.f64 t z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y (-.f64 t z)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y (-.f64 t z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 y (-.f64 t z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 y (-.f64 t z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 y (-.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 y (-.f64 t z)))) 2)) (cbrt.f64 (log.f64 (*.f64 y (-.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 y (-.f64 t z))))) (sqrt.f64 (log.f64 (*.f64 y (-.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 y (-.f64 t z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 y) (-.f64 t z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 y (-.f64 t z)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 y (-.f64 t z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 y (-.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 y (-.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 y (-.f64 t z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 y (-.f64 t z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 y (-.f64 t z)) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 y (-.f64 t z)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 y (-.f64 t z)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 y (-.f64 t z))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y t (*.f64 y (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t y (*.f64 (neg.f64 z) y)))))) |
| 1× | egg-herbie |
| 672× | fma-neg_binary64 |
| 492× | fma-def_binary64 |
| 192× | cancel-sign-sub-inv_binary64 |
| 106× | distribute-rgt-in_binary64 |
| 104× | div-sub_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 14 | 600 |
| 1 | 30 | 546 |
| 2 | 64 | 384 |
| 3 | 131 | 384 |
| 4 | 235 | 384 |
| 5 | 414 | 384 |
| 6 | 721 | 384 |
| 7 | 1269 | 384 |
| 8 | 2146 | 384 |
| 9 | 2864 | 384 |
| 10 | 2999 | 384 |
| 11 | 3013 | 384 |
| 12 | 3018 | 384 |
| 13 | 3022 | 384 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(/.f64 (*.f64 y t) a) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(/.f64 (*.f64 y t) a) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(/.f64 (*.f64 y t) a) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(*.f64 -1 (*.f64 y z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(*.f64 y t) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(*.f64 y t) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(*.f64 y t) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(*.f64 -1 (*.f64 y z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(*.f64 -1 (*.f64 y z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
| Outputs |
|---|
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(/.f64 (neg.f64 y) (/.f64 a z)) |
(*.f64 (/.f64 y a) (neg.f64 z)) |
(*.f64 (/.f64 z a) (neg.f64 y)) |
(*.f64 (neg.f64 y) (/.f64 z a)) |
(/.f64 (*.f64 z (neg.f64 y)) a) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y z)) a) (/.f64 y (/.f64 a t))) |
(-.f64 (*.f64 (/.f64 y a) t) (*.f64 (/.f64 y a) z)) |
(*.f64 (/.f64 y a) (-.f64 t z)) |
(/.f64 y (/.f64 a (-.f64 t z))) |
(*.f64 y (/.f64 (-.f64 t z) a)) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y z)) a) (/.f64 y (/.f64 a t))) |
(-.f64 (*.f64 (/.f64 y a) t) (*.f64 (/.f64 y a) z)) |
(*.f64 (/.f64 y a) (-.f64 t z)) |
(/.f64 y (/.f64 a (-.f64 t z))) |
(*.f64 y (/.f64 (-.f64 t z) a)) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y z)) a) (/.f64 y (/.f64 a t))) |
(-.f64 (*.f64 (/.f64 y a) t) (*.f64 (/.f64 y a) z)) |
(*.f64 (/.f64 y a) (-.f64 t z)) |
(/.f64 y (/.f64 a (-.f64 t z))) |
(*.f64 y (/.f64 (-.f64 t z) a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y z)) a) (/.f64 y (/.f64 a t))) |
(-.f64 (*.f64 (/.f64 y a) t) (*.f64 (/.f64 y a) z)) |
(*.f64 (/.f64 y a) (-.f64 t z)) |
(/.f64 y (/.f64 a (-.f64 t z))) |
(*.f64 y (/.f64 (-.f64 t z) a)) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y z)) a) (/.f64 y (/.f64 a t))) |
(-.f64 (*.f64 (/.f64 y a) t) (*.f64 (/.f64 y a) z)) |
(*.f64 (/.f64 y a) (-.f64 t z)) |
(/.f64 y (/.f64 a (-.f64 t z))) |
(*.f64 y (/.f64 (-.f64 t z) a)) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y z)) a) (/.f64 y (/.f64 a t))) |
(-.f64 (*.f64 (/.f64 y a) t) (*.f64 (/.f64 y a) z)) |
(*.f64 (/.f64 y a) (-.f64 t z)) |
(/.f64 y (/.f64 a (-.f64 t z))) |
(*.f64 y (/.f64 (-.f64 t z) a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y z)) a) (/.f64 y (/.f64 a t))) |
(-.f64 (*.f64 (/.f64 y a) t) (*.f64 (/.f64 y a) z)) |
(*.f64 (/.f64 y a) (-.f64 t z)) |
(/.f64 y (/.f64 a (-.f64 t z))) |
(*.f64 y (/.f64 (-.f64 t z) a)) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y z)) a) (/.f64 y (/.f64 a t))) |
(-.f64 (*.f64 (/.f64 y a) t) (*.f64 (/.f64 y a) z)) |
(*.f64 (/.f64 y a) (-.f64 t z)) |
(/.f64 y (/.f64 a (-.f64 t z))) |
(*.f64 y (/.f64 (-.f64 t z) a)) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y z)) a) (/.f64 y (/.f64 a t))) |
(-.f64 (*.f64 (/.f64 y a) t) (*.f64 (/.f64 y a) z)) |
(*.f64 (/.f64 y a) (-.f64 t z)) |
(/.f64 y (/.f64 a (-.f64 t z))) |
(*.f64 y (/.f64 (-.f64 t z) a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y z)) a) (/.f64 y (/.f64 a t))) |
(-.f64 (*.f64 (/.f64 y a) t) (*.f64 (/.f64 y a) z)) |
(*.f64 (/.f64 y a) (-.f64 t z)) |
(/.f64 y (/.f64 a (-.f64 t z))) |
(*.f64 y (/.f64 (-.f64 t z) a)) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y z)) a) (/.f64 y (/.f64 a t))) |
(-.f64 (*.f64 (/.f64 y a) t) (*.f64 (/.f64 y a) z)) |
(*.f64 (/.f64 y a) (-.f64 t z)) |
(/.f64 y (/.f64 a (-.f64 t z))) |
(*.f64 y (/.f64 (-.f64 t z) a)) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y z)) a) (/.f64 y (/.f64 a t))) |
(-.f64 (*.f64 (/.f64 y a) t) (*.f64 (/.f64 y a) z)) |
(*.f64 (/.f64 y a) (-.f64 t z)) |
(/.f64 y (/.f64 a (-.f64 t z))) |
(*.f64 y (/.f64 (-.f64 t z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(/.f64 (neg.f64 y) (/.f64 a z)) |
(*.f64 (/.f64 y a) (neg.f64 z)) |
(*.f64 (/.f64 z a) (neg.f64 y)) |
(*.f64 (neg.f64 y) (/.f64 z a)) |
(/.f64 (*.f64 z (neg.f64 y)) a) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y z)) a) (/.f64 y (/.f64 a t))) |
(-.f64 (*.f64 (/.f64 y a) t) (*.f64 (/.f64 y a) z)) |
(*.f64 (/.f64 y a) (-.f64 t z)) |
(/.f64 y (/.f64 a (-.f64 t z))) |
(*.f64 y (/.f64 (-.f64 t z) a)) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y z)) a) (/.f64 y (/.f64 a t))) |
(-.f64 (*.f64 (/.f64 y a) t) (*.f64 (/.f64 y a) z)) |
(*.f64 (/.f64 y a) (-.f64 t z)) |
(/.f64 y (/.f64 a (-.f64 t z))) |
(*.f64 y (/.f64 (-.f64 t z) a)) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y z)) a) (/.f64 y (/.f64 a t))) |
(-.f64 (*.f64 (/.f64 y a) t) (*.f64 (/.f64 y a) z)) |
(*.f64 (/.f64 y a) (-.f64 t z)) |
(/.f64 y (/.f64 a (-.f64 t z))) |
(*.f64 y (/.f64 (-.f64 t z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(/.f64 (neg.f64 y) (/.f64 a z)) |
(*.f64 (/.f64 y a) (neg.f64 z)) |
(*.f64 (/.f64 z a) (neg.f64 y)) |
(*.f64 (neg.f64 y) (/.f64 z a)) |
(/.f64 (*.f64 z (neg.f64 y)) a) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y z)) a) (/.f64 y (/.f64 a t))) |
(-.f64 (*.f64 (/.f64 y a) t) (*.f64 (/.f64 y a) z)) |
(*.f64 (/.f64 y a) (-.f64 t z)) |
(/.f64 y (/.f64 a (-.f64 t z))) |
(*.f64 y (/.f64 (-.f64 t z) a)) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y z)) a) (/.f64 y (/.f64 a t))) |
(-.f64 (*.f64 (/.f64 y a) t) (*.f64 (/.f64 y a) z)) |
(*.f64 (/.f64 y a) (-.f64 t z)) |
(/.f64 y (/.f64 a (-.f64 t z))) |
(*.f64 y (/.f64 (-.f64 t z) a)) |
(+.f64 (/.f64 (*.f64 y t) a) (*.f64 -1 (/.f64 (*.f64 y z) a))) |
(+.f64 (/.f64 (neg.f64 (*.f64 y z)) a) (/.f64 y (/.f64 a t))) |
(-.f64 (*.f64 (/.f64 y a) t) (*.f64 (/.f64 y a) z)) |
(*.f64 (/.f64 y a) (-.f64 t z)) |
(/.f64 y (/.f64 a (-.f64 t z))) |
(*.f64 y (/.f64 (-.f64 t z) a)) |
(*.f64 -1 (*.f64 y z)) |
(neg.f64 (*.f64 y z)) |
(*.f64 y (neg.f64 z)) |
(*.f64 z (neg.f64 y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(fma.f64 -1 (*.f64 y z) (*.f64 y t)) |
(fma.f64 (neg.f64 y) z (*.f64 y t)) |
(*.f64 y (-.f64 t z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(fma.f64 -1 (*.f64 y z) (*.f64 y t)) |
(fma.f64 (neg.f64 y) z (*.f64 y t)) |
(*.f64 y (-.f64 t z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(fma.f64 -1 (*.f64 y z) (*.f64 y t)) |
(fma.f64 (neg.f64 y) z (*.f64 y t)) |
(*.f64 y (-.f64 t z)) |
(*.f64 y t) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(fma.f64 -1 (*.f64 y z) (*.f64 y t)) |
(fma.f64 (neg.f64 y) z (*.f64 y t)) |
(*.f64 y (-.f64 t z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(fma.f64 -1 (*.f64 y z) (*.f64 y t)) |
(fma.f64 (neg.f64 y) z (*.f64 y t)) |
(*.f64 y (-.f64 t z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(fma.f64 -1 (*.f64 y z) (*.f64 y t)) |
(fma.f64 (neg.f64 y) z (*.f64 y t)) |
(*.f64 y (-.f64 t z)) |
(*.f64 y t) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(fma.f64 -1 (*.f64 y z) (*.f64 y t)) |
(fma.f64 (neg.f64 y) z (*.f64 y t)) |
(*.f64 y (-.f64 t z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(fma.f64 -1 (*.f64 y z) (*.f64 y t)) |
(fma.f64 (neg.f64 y) z (*.f64 y t)) |
(*.f64 y (-.f64 t z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(fma.f64 -1 (*.f64 y z) (*.f64 y t)) |
(fma.f64 (neg.f64 y) z (*.f64 y t)) |
(*.f64 y (-.f64 t z)) |
(*.f64 y t) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(fma.f64 -1 (*.f64 y z) (*.f64 y t)) |
(fma.f64 (neg.f64 y) z (*.f64 y t)) |
(*.f64 y (-.f64 t z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(fma.f64 -1 (*.f64 y z) (*.f64 y t)) |
(fma.f64 (neg.f64 y) z (*.f64 y t)) |
(*.f64 y (-.f64 t z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(fma.f64 -1 (*.f64 y z) (*.f64 y t)) |
(fma.f64 (neg.f64 y) z (*.f64 y t)) |
(*.f64 y (-.f64 t z)) |
(*.f64 -1 (*.f64 y z)) |
(neg.f64 (*.f64 y z)) |
(*.f64 y (neg.f64 z)) |
(*.f64 z (neg.f64 y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(fma.f64 -1 (*.f64 y z) (*.f64 y t)) |
(fma.f64 (neg.f64 y) z (*.f64 y t)) |
(*.f64 y (-.f64 t z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(fma.f64 -1 (*.f64 y z) (*.f64 y t)) |
(fma.f64 (neg.f64 y) z (*.f64 y t)) |
(*.f64 y (-.f64 t z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(fma.f64 -1 (*.f64 y z) (*.f64 y t)) |
(fma.f64 (neg.f64 y) z (*.f64 y t)) |
(*.f64 y (-.f64 t z)) |
(*.f64 -1 (*.f64 y z)) |
(neg.f64 (*.f64 y z)) |
(*.f64 y (neg.f64 z)) |
(*.f64 z (neg.f64 y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(fma.f64 -1 (*.f64 y z) (*.f64 y t)) |
(fma.f64 (neg.f64 y) z (*.f64 y t)) |
(*.f64 y (-.f64 t z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(fma.f64 -1 (*.f64 y z) (*.f64 y t)) |
(fma.f64 (neg.f64 y) z (*.f64 y t)) |
(*.f64 y (-.f64 t z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y t)) |
(fma.f64 -1 (*.f64 y z) (*.f64 y t)) |
(fma.f64 (neg.f64 y) z (*.f64 y t)) |
(*.f64 y (-.f64 t z)) |
Compiled 9025 to 2691 computations (70.2% saved)
14 alts after pruning (6 fresh and 8 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 502 | 2 | 504 |
| Fresh | 1 | 4 | 5 |
| Picked | 0 | 1 | 1 |
| Done | 1 | 7 | 8 |
| Total | 504 | 14 | 518 |
| Status | Error | Program |
|---|---|---|
| 29.1b | x | |
| ✓ | 50.5b | (*.f64 y (/.f64 t a)) |
| ▶ | 50.3b | (/.f64 y (/.f64 a t)) |
| ▶ | 50.9b | (/.f64 (*.f64 z (neg.f64 y)) a) |
| ✓ | 39.0b | (/.f64 (*.f64 y (-.f64 t z)) a) |
| ✓ | 17.1b | (-.f64 x (*.f64 y (/.f64 (neg.f64 t) a))) |
| ✓ | 48.4b | (/.f64 z (/.f64 a (neg.f64 y))) |
| ▶ | 49.3b | (*.f64 (/.f64 z (neg.f64 a)) y) |
| ✓ | 17.7b | (+.f64 (/.f64 (*.f64 y t) a) x) |
| ✓ | 50.4b | (*.f64 t (/.f64 y a)) |
| ✓ | 50.9b | (/.f64 (*.f64 y t) a) |
| ✓ | 16.2b | (-.f64 x (*.f64 y (/.f64 z a))) |
| ▶ | 50.4b | (/.f64 t (/.f64 a y)) |
| ▶ | 57.6b | (*.f64 (/.f64 y (sqrt.f64 a)) (/.f64 t (sqrt.f64 a))) |
Compiled 208 to 145 computations (30.3% saved)
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 6.0b | (*.f64 (/.f64 z (neg.f64 a)) y) |
Compiled 20 to 8 computations (60% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | z | @ | 0 | (*.f64 (/.f64 z (neg.f64 a)) y) |
| 0.0ms | z | @ | inf | (*.f64 (/.f64 z (neg.f64 a)) y) |
| 0.0ms | z | @ | -inf | (*.f64 (/.f64 z (neg.f64 a)) y) |
| 0.0ms | a | @ | inf | (*.f64 (/.f64 z (neg.f64 a)) y) |
| 0.0ms | a | @ | -inf | (*.f64 (/.f64 z (neg.f64 a)) y) |
| 1× | batch-egg-rewrite |
| 698× | pow1_binary64 |
| 644× | add-log-exp_binary64 |
| 643× | log1p-expm1-u_binary64 |
| 643× | expm1-log1p-u_binary64 |
| 629× | add-exp-log_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 9 |
| 1 | 148 | 7 |
| 2 | 2091 | 7 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (/.f64 z (neg.f64 a)) y) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (*.f64 z y) a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 z (/.f64 a y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y (/.f64 a z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 a (*.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z y) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 z y)) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 z y) 1) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 z y) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 z y) (sqrt.f64 a)) (sqrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 z y) -1) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 z) y) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (neg.f64 z)) a)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 z y) a) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 z y) a) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (*.f64 z y) a)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (*.f64 z y) a)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (*.f64 z y) a) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 y) (/.f64 z a)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (*.f64 z y) a) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 z a) 3) (pow.f64 y 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 y 3) (pow.f64 (/.f64 z a) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (*.f64 z y) a)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (*.f64 z y) a)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (*.f64 z y) a))))))) |
| 1× | egg-herbie |
| 145× | fma-def_binary64 |
| 46× | fma-neg_binary64 |
| 24× | sub-neg_binary64 |
| 18× | div-sub_binary64 |
| 14× | associate-/l*_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 324 |
| 1 | 15 | 324 |
| 2 | 35 | 324 |
| 3 | 69 | 324 |
| 4 | 114 | 324 |
| 5 | 162 | 324 |
| 6 | 202 | 324 |
| 7 | 238 | 324 |
| 8 | 275 | 324 |
| 9 | 394 | 324 |
| 10 | 445 | 324 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
| Outputs |
|---|
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 5.1b | (/.f64 t (/.f64 a y)) |
Compiled 16 to 7 computations (56.3% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | t | @ | 0 | (/.f64 t (/.f64 a y)) |
| 0.0ms | t | @ | inf | (/.f64 t (/.f64 a y)) |
| 0.0ms | a | @ | inf | (/.f64 t (/.f64 a y)) |
| 0.0ms | y | @ | -inf | (/.f64 t (/.f64 a y)) |
| 0.0ms | a | @ | -inf | (/.f64 t (/.f64 a y)) |
| 1× | batch-egg-rewrite |
| 780× | pow1_binary64 |
| 724× | add-log-exp_binary64 |
| 724× | log1p-expm1-u_binary64 |
| 724× | expm1-log1p-u_binary64 |
| 707× | add-exp-log_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 7 |
| 1 | 131 | 7 |
| 2 | 1915 | 7 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 t (/.f64 a y)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 t (/.f64 y a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 t (/.f64 y a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (/.f64 t a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 t (/.f64 y a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 t (/.f64 y a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 t (/.f64 y a))) (pow.f64 (cbrt.f64 (*.f64 t (/.f64 y a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 t (/.f64 y a))) 2) (cbrt.f64 (*.f64 t (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 t) 2) (*.f64 (cbrt.f64 t) (/.f64 y a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 t (/.f64 y a))) (sqrt.f64 (*.f64 t (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 t) (*.f64 (sqrt.f64 t) (/.f64 y a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 t) (/.f64 1 (/.f64 (neg.f64 a) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y a) t)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 t a) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 a) (/.f64 t (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 t) 2) a) (/.f64 (cbrt.f64 t) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 t) a) (/.f64 (sqrt.f64 t) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 t) 2) 1) (/.f64 (cbrt.f64 t) (/.f64 a y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 t) 1) (/.f64 (sqrt.f64 t) (/.f64 a y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 a y)) 2)) (/.f64 t (cbrt.f64 (/.f64 a y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 t) 2) (pow.f64 (cbrt.f64 (/.f64 a y)) 2)) (cbrt.f64 (*.f64 t (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 t) (pow.f64 (cbrt.f64 (/.f64 a y)) 2)) (/.f64 (sqrt.f64 t) (cbrt.f64 (/.f64 a y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (/.f64 a y))) (/.f64 t (sqrt.f64 (/.f64 a y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 t) 2) (sqrt.f64 (/.f64 a y))) (/.f64 (cbrt.f64 t) (sqrt.f64 (/.f64 a y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 t 1) (/.f64 y a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 t (neg.f64 a)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 t a) 1) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 t a) (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 t a) (sqrt.f64 y)) (sqrt.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 t (/.f64 y a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 t (/.f64 y a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 t (/.f64 y a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 t (/.f64 y a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 a (*.f64 t y)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 t (/.f64 (neg.f64 a) y)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 t (/.f64 y a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 t) (/.f64 y a)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 t (/.f64 y a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 t 3) (pow.f64 (/.f64 a y) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 t (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 t (/.f64 y a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 t (/.f64 y a)))))))) |
| 1× | egg-herbie |
| 3× | *-commutative_binary64 |
| 2× | associate-/l*_binary64 |
| 2× | associate-/r/_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 252 |
| 1 | 9 | 252 |
| 2 | 13 | 252 |
| 3 | 16 | 252 |
| 4 | 17 | 252 |
| 1× | saturated |
| Inputs |
|---|
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
| Outputs |
|---|
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 7.1b | (/.f64 y (/.f64 a t)) |
Compiled 16 to 7 computations (56.3% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | y | @ | 0 | (/.f64 y (/.f64 a t)) |
| 0.0ms | a | @ | -inf | (/.f64 y (/.f64 a t)) |
| 0.0ms | y | @ | -inf | (/.f64 y (/.f64 a t)) |
| 0.0ms | a | @ | inf | (/.f64 y (/.f64 a t)) |
| 0.0ms | t | @ | inf | (/.f64 y (/.f64 a t)) |
| 1× | batch-egg-rewrite |
| 780× | pow1_binary64 |
| 724× | add-log-exp_binary64 |
| 724× | log1p-expm1-u_binary64 |
| 724× | expm1-log1p-u_binary64 |
| 707× | add-exp-log_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 7 |
| 1 | 131 | 7 |
| 2 | 1915 | 7 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 y (/.f64 a t)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 y (/.f64 t a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (/.f64 t a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 t (/.f64 y a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (/.f64 t a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 y (/.f64 t a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 y (/.f64 t a))) (pow.f64 (cbrt.f64 (*.f64 y (/.f64 t a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 y (/.f64 t a))) 2) (cbrt.f64 (*.f64 y (/.f64 t a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) (/.f64 t a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 y (/.f64 t a))) (sqrt.f64 (*.f64 y (/.f64 t a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (/.f64 t a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (/.f64 1 (/.f64 (neg.f64 a) t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 t a) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y a) t)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 a) (/.f64 y (/.f64 1 t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) a) (/.f64 (cbrt.f64 y) (/.f64 1 t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 y) a) (/.f64 (sqrt.f64 y) (/.f64 1 t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) 1) (/.f64 (cbrt.f64 y) (/.f64 a t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 y) 1) (/.f64 (sqrt.f64 y) (/.f64 a t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 a t)) 2)) (/.f64 y (cbrt.f64 (/.f64 a t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (pow.f64 (cbrt.f64 (/.f64 a t)) 2)) (cbrt.f64 (*.f64 y (/.f64 t a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 y) (pow.f64 (cbrt.f64 (/.f64 a t)) 2)) (/.f64 (sqrt.f64 y) (cbrt.f64 (/.f64 a t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (/.f64 a t))) (/.f64 y (sqrt.f64 (/.f64 a t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (sqrt.f64 (/.f64 a t))) (/.f64 (cbrt.f64 y) (sqrt.f64 (/.f64 a t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y 1) (/.f64 t a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (neg.f64 a)) (neg.f64 t))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y a) 1) t)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y a) (pow.f64 (cbrt.f64 t) 2)) (cbrt.f64 t))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 y a) (sqrt.f64 t)) (sqrt.f64 t))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (/.f64 t a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 y (/.f64 t a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 y (/.f64 t a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 y (/.f64 t a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 a (*.f64 y t)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 y (/.f64 (neg.f64 a) t)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 y (/.f64 t a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 y) (/.f64 t a)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 y (/.f64 t a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 y 3) (pow.f64 (/.f64 a t) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 y (/.f64 t a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 y (/.f64 t a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 y (/.f64 t a)))))))) |
| 1× | egg-herbie |
| 3× | *-commutative_binary64 |
| 2× | associate-/l*_binary64 |
| 2× | associate-/r/_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 252 |
| 1 | 9 | 252 |
| 2 | 13 | 252 |
| 3 | 16 | 252 |
| 4 | 17 | 252 |
| 1× | saturated |
| Inputs |
|---|
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
| Outputs |
|---|
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 y a) t) |
(*.f64 t (/.f64 y a)) |
(*.f64 y (/.f64 t a)) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 7.0b | (/.f64 (*.f64 z (neg.f64 y)) a) |
Compiled 20 to 8 computations (60% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | z | @ | 0 | (/.f64 (*.f64 z (neg.f64 y)) a) |
| 0.0ms | z | @ | inf | (/.f64 (*.f64 z (neg.f64 y)) a) |
| 0.0ms | a | @ | inf | (/.f64 (*.f64 z (neg.f64 y)) a) |
| 0.0ms | y | @ | inf | (/.f64 (*.f64 z (neg.f64 y)) a) |
| 0.0ms | z | @ | -inf | (/.f64 (*.f64 z (neg.f64 y)) a) |
| 1× | batch-egg-rewrite |
| 726× | pow1_binary64 |
| 672× | add-log-exp_binary64 |
| 671× | log1p-expm1-u_binary64 |
| 671× | expm1-log1p-u_binary64 |
| 657× | add-exp-log_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 9 |
| 1 | 150 | 7 |
| 2 | 2171 | 7 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 z (neg.f64 y)) a) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (/.f64 z a) y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 z (/.f64 1 (/.f64 a y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 z (*.f64 y (/.f64 1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (*.f64 z (/.f64 1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 z y) (/.f64 1 a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 z y) (/.f64 1 (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 z a) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (/.f64 z a) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 z y)) 2) (*.f64 (cbrt.f64 (*.f64 z y)) (/.f64 1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (/.f64 z a) y)) (pow.f64 (cbrt.f64 (*.f64 (/.f64 z a) y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 z a) y)) 2) (cbrt.f64 (*.f64 (/.f64 z a) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 z y)) (*.f64 (sqrt.f64 (*.f64 z y)) (/.f64 1 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (/.f64 z a) y)) (sqrt.f64 (*.f64 (/.f64 z a) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 a) (*.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z 1) (/.f64 y a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y 1) (/.f64 z a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z a) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 z y)) 2) 1) (/.f64 (cbrt.f64 (*.f64 z y)) a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 z y)) 1) (/.f64 (sqrt.f64 (*.f64 z y)) a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z (pow.f64 (cbrt.f64 a) 2)) (/.f64 y (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (pow.f64 (cbrt.f64 a) 2)) (/.f64 z (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 a) 2)) (/.f64 (*.f64 z y) (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 z y)) 2) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 (*.f64 (/.f64 z a) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 z y)) (pow.f64 (cbrt.f64 a) 2)) (/.f64 (sqrt.f64 (*.f64 z y)) (cbrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z (sqrt.f64 a)) (/.f64 y (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (sqrt.f64 a)) (/.f64 z (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 a)) (/.f64 (*.f64 z y) (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 z y)) 2) (sqrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 z y)) (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 z a) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 z a) y) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 z a) y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 z a) y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 a z) y) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (/.f64 z a) y))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 z a) y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (/.f64 z a) y)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 z a) y) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 z y) 3) (pow.f64 a 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 z a) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 z a) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 z a) y))))))) |
| 1× | egg-herbie |
| 145× | fma-def_binary64 |
| 46× | fma-neg_binary64 |
| 24× | sub-neg_binary64 |
| 18× | div-sub_binary64 |
| 14× | associate-/l*_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 324 |
| 1 | 15 | 324 |
| 2 | 35 | 324 |
| 3 | 69 | 324 |
| 4 | 114 | 324 |
| 5 | 162 | 324 |
| 6 | 202 | 324 |
| 7 | 238 | 324 |
| 8 | 275 | 324 |
| 9 | 394 | 324 |
| 10 | 445 | 324 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
| Outputs |
|---|
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
(*.f64 -1 (/.f64 (*.f64 y z) a)) |
(neg.f64 (/.f64 y (/.f64 a z))) |
(/.f64 (neg.f64 (*.f64 y z)) a) |
(*.f64 (neg.f64 (/.f64 y a)) z) |
(*.f64 z (/.f64 (neg.f64 y) a)) |
(*.f64 y (neg.f64 (/.f64 z a))) |
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.1b | (/.f64 y (sqrt.f64 a)) |
| ✓ | 0.1b | (/.f64 t (sqrt.f64 a)) |
| ✓ | 2.0b | (*.f64 (/.f64 y (sqrt.f64 a)) (/.f64 t (sqrt.f64 a))) |
Compiled 27 to 9 computations (66.7% saved)
21 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 18.0ms | y | @ | -inf | (/.f64 y (sqrt.f64 a)) |
| 1.0ms | a | @ | -inf | (*.f64 (/.f64 y (sqrt.f64 a)) (/.f64 t (sqrt.f64 a))) |
| 1.0ms | a | @ | 0 | (/.f64 t (sqrt.f64 a)) |
| 1.0ms | a | @ | -inf | (/.f64 t (sqrt.f64 a)) |
| 1.0ms | t | @ | 0 | (/.f64 t (sqrt.f64 a)) |
| 1× | batch-egg-rewrite |
| 968× | pow1_binary64 |
| 900× | add-log-exp_binary64 |
| 900× | log1p-expm1-u_binary64 |
| 900× | expm1-log1p-u_binary64 |
| 88× | add-sqr-sqrt_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 19 |
| 1 | 173 | 19 |
| 2 | 2475 | 19 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (/.f64 y (sqrt.f64 a)) (/.f64 t (sqrt.f64 a))) |
(/.f64 t (sqrt.f64 a)) |
(/.f64 y (sqrt.f64 a)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 y (/.f64 a t)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y (*.f64 (sqrt.f64 a) (/.f64 (sqrt.f64 a) t)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y (*.f64 (/.f64 (sqrt.f64 a) t) (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y (/.f64 a t))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 y (/.f64 (sqrt.f64 a) (/.f64 t (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 y (sqrt.f64 a)) (/.f64 (sqrt.f64 a) t))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 t (*.f64 (/.f64 (sqrt.f64 a) y) (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 t (*.f64 (sqrt.f64 a) (/.f64 (sqrt.f64 a) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 t (sqrt.f64 a)) (/.f64 (sqrt.f64 a) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 (/.f64 (sqrt.f64 a) y) (/.f64 (sqrt.f64 a) t)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 (/.f64 (sqrt.f64 a) t) (/.f64 (sqrt.f64 a) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 a (*.f64 y t)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 a) (*.f64 (/.f64 y (sqrt.f64 a)) t)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 y) (*.f64 (/.f64 (sqrt.f64 a) t) (neg.f64 (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 t) (*.f64 (/.f64 (sqrt.f64 a) y) (neg.f64 (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y t) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y (sqrt.f64 a)) t) (sqrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 y t)) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (/.f64 y (sqrt.f64 a)) t)) (neg.f64 (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 y) t) (*.f64 (neg.f64 (sqrt.f64 a)) (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 y) 1) (*.f64 (neg.f64 (sqrt.f64 a)) (/.f64 (sqrt.f64 a) t)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (neg.f64 t)) (*.f64 (sqrt.f64 a) (neg.f64 (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 y) (neg.f64 t)) (*.f64 (neg.f64 (sqrt.f64 a)) (neg.f64 (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 t) y) (*.f64 (neg.f64 (sqrt.f64 a)) (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 t) 1) (*.f64 (neg.f64 (sqrt.f64 a)) (/.f64 (sqrt.f64 a) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 t (neg.f64 y)) (*.f64 (sqrt.f64 a) (neg.f64 (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 t) (neg.f64 y)) (*.f64 (neg.f64 (sqrt.f64 a)) (neg.f64 (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y t) 1) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y t) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (/.f64 y (sqrt.f64 a)) t) 1) (sqrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (/.f64 y (sqrt.f64 a)) t) (cbrt.f64 a)) (cbrt.f64 (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (/.f64 y (sqrt.f64 a)) t) (pow.f64 a 1/4)) (pow.f64 a 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 y) (/.f64 t (sqrt.f64 a))) (neg.f64 (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 t) (/.f64 y (sqrt.f64 a))) (neg.f64 (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y (sqrt.f64 a)) (neg.f64 t)) (neg.f64 (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 t (sqrt.f64 a)) (neg.f64 y)) (neg.f64 (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y (/.f64 a t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 y (/.f64 a t)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 y (/.f64 a t))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 y (/.f64 a t))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 y (/.f64 a t)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 y (/.f64 a t))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 y (/.f64 a t)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 y (/.f64 a t)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 y (sqrt.f64 a)) 3) (pow.f64 (/.f64 t (sqrt.f64 a)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 t (sqrt.f64 a)) 3) (pow.f64 (/.f64 y (sqrt.f64 a)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 y (/.f64 a t))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 y (/.f64 a t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 y (/.f64 a t)))))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 t (sqrt.f64 a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 t (pow.f64 a -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 t (sqrt.f64 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 t (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 t) 2) (*.f64 (cbrt.f64 t) (pow.f64 a -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 t (sqrt.f64 a))) (cbrt.f64 (/.f64 (*.f64 t t) a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (*.f64 t t) a)) (cbrt.f64 (/.f64 t (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 t) (*.f64 (sqrt.f64 t) (pow.f64 a -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 t (sqrt.f64 a))) (sqrt.f64 (/.f64 t (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 t) (/.f64 1 (neg.f64 (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 a -1/2) t)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 a)) (/.f64 t (cbrt.f64 (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 a 1/4)) (/.f64 t (pow.f64 a 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 t) 2) 1) (/.f64 (cbrt.f64 t) (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 t) 1) (/.f64 (sqrt.f64 t) (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 t) 2) (cbrt.f64 a)) (cbrt.f64 (/.f64 t (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 t) (cbrt.f64 a)) (/.f64 (sqrt.f64 t) (cbrt.f64 (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 t) 2) (pow.f64 a 1/4)) (/.f64 (cbrt.f64 t) (pow.f64 a 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 t (sqrt.f64 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 t (sqrt.f64 a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 t (sqrt.f64 a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 t (sqrt.f64 a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 a) t) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 t (neg.f64 (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (*.f64 t t) a))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 t (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 t (sqrt.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 t (sqrt.f64 a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 t 3) (pow.f64 a 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 t (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 t (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 t (sqrt.f64 a)))))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 y (sqrt.f64 a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (pow.f64 a -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (sqrt.f64 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 y (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 y (sqrt.f64 a))) (cbrt.f64 (/.f64 (*.f64 y y) a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (*.f64 y y) a)) (cbrt.f64 (/.f64 y (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) (pow.f64 a -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 y (sqrt.f64 a))) (sqrt.f64 (/.f64 y (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (pow.f64 a -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (/.f64 1 (neg.f64 (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 a -1/2) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) 1) (/.f64 (cbrt.f64 y) (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 y) 1) (/.f64 (sqrt.f64 y) (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 a)) (/.f64 y (cbrt.f64 (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 a)) (cbrt.f64 (/.f64 y (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 y) (cbrt.f64 a)) (/.f64 (sqrt.f64 y) (cbrt.f64 (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 a 1/4)) (/.f64 y (pow.f64 a 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (pow.f64 a 1/4)) (/.f64 (cbrt.f64 y) (pow.f64 a 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y (sqrt.f64 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 y (sqrt.f64 a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 y (sqrt.f64 a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 y (sqrt.f64 a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 a) y) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 y (neg.f64 (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (*.f64 y y) a))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 y (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 y (sqrt.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 y (sqrt.f64 a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 y 3) (pow.f64 a 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 y (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 y (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 y (sqrt.f64 a)))))))) |
| 1× | egg-herbie |
| 1260× | div-sub_binary64 |
| 537× | distribute-neg-frac_binary64 |
| 506× | fma-neg_binary64 |
| 397× | distribute-rgt-neg-in_binary64 |
| 325× | distribute-lft-neg-in_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 18 | 468 |
| 1 | 41 | 468 |
| 2 | 122 | 468 |
| 3 | 413 | 468 |
| 4 | 1800 | 468 |
| 5 | 3323 | 468 |
| 6 | 5525 | 468 |
| 7 | 7367 | 468 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(*.f64 -1 (/.f64 (*.f64 y t) (*.f64 (pow.f64 (sqrt.f64 -1) 2) a))) |
(*.f64 -1 (/.f64 (*.f64 y t) (*.f64 (pow.f64 (sqrt.f64 -1) 2) a))) |
(*.f64 -1 (/.f64 (*.f64 y t) (*.f64 (pow.f64 (sqrt.f64 -1) 2) a))) |
(*.f64 -1 (/.f64 (*.f64 y t) (*.f64 (pow.f64 (sqrt.f64 -1) 2) a))) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 y t) a) |
(*.f64 (sqrt.f64 (/.f64 1 a)) t) |
(*.f64 (sqrt.f64 (/.f64 1 a)) t) |
(*.f64 (sqrt.f64 (/.f64 1 a)) t) |
(*.f64 (sqrt.f64 (/.f64 1 a)) t) |
(*.f64 (sqrt.f64 (/.f64 1 a)) t) |
(*.f64 (sqrt.f64 (/.f64 1 a)) t) |
(*.f64 (sqrt.f64 (/.f64 1 a)) t) |
(*.f64 (sqrt.f64 (/.f64 1 a)) t) |
(*.f64 (sqrt.f64 (/.f64 1 a)) t) |
(*.f64 (sqrt.f64 (/.f64 1 a)) t) |
(*.f64 (sqrt.f64 (/.f64 1 a)) t) |
(*.f64 (sqrt.f64 (/.f64 1 a)) t) |
(*.f64 (sqrt.f64 (/.f64 1 a)) y) |
(*.f64 (sqrt.f64 (/.f64 1 a)) y) |
(*.f64 (sqrt.f64 (/.f64 1 a)) y) |
(*.f64 (sqrt.f64 (/.f64 1 a)) y) |
(*.f64 (sqrt.f64 (/.f64 1 a)) y) |
(*.f64 (sqrt.f64 (/.f64 1 a)) y) |
(*.f64 (sqrt.f64 (/.f64 1 a)) y) |
(*.f64 (sqrt.f64 (/.f64 1 a)) y) |
(*.f64 (sqrt.f64 (/.f64 1 a)) y) |
(*.f64 (sqrt.f64 (/.f64 1 a)) y) |
(*.f64 (sqrt.f64 (/.f64 1 a)) y) |
(*.f64 (sqrt.f64 (/.f64 1 a)) y) |
| Outputs |
|---|
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(*.f64 -1 (/.f64 (*.f64 y t) (*.f64 (pow.f64 (sqrt.f64 -1) 2) a))) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(*.f64 -1 (/.f64 (*.f64 y t) (*.f64 (pow.f64 (sqrt.f64 -1) 2) a))) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(*.f64 -1 (/.f64 (*.f64 y t) (*.f64 (pow.f64 (sqrt.f64 -1) 2) a))) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(*.f64 -1 (/.f64 (*.f64 y t) (*.f64 (pow.f64 (sqrt.f64 -1) 2) a))) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(/.f64 (*.f64 y t) a) |
(*.f64 y (/.f64 t a)) |
(*.f64 (sqrt.f64 (/.f64 1 a)) t) |
(*.f64 t (sqrt.f64 (/.f64 1 a))) |
(*.f64 (sqrt.f64 (/.f64 1 a)) t) |
(*.f64 t (sqrt.f64 (/.f64 1 a))) |
(*.f64 (sqrt.f64 (/.f64 1 a)) t) |
(*.f64 t (sqrt.f64 (/.f64 1 a))) |
(*.f64 (sqrt.f64 (/.f64 1 a)) t) |
(*.f64 t (sqrt.f64 (/.f64 1 a))) |
(*.f64 (sqrt.f64 (/.f64 1 a)) t) |
(*.f64 t (sqrt.f64 (/.f64 1 a))) |
(*.f64 (sqrt.f64 (/.f64 1 a)) t) |
(*.f64 t (sqrt.f64 (/.f64 1 a))) |
(*.f64 (sqrt.f64 (/.f64 1 a)) t) |
(*.f64 t (sqrt.f64 (/.f64 1 a))) |
(*.f64 (sqrt.f64 (/.f64 1 a)) t) |
(*.f64 t (sqrt.f64 (/.f64 1 a))) |
(*.f64 (sqrt.f64 (/.f64 1 a)) t) |
(*.f64 t (sqrt.f64 (/.f64 1 a))) |
(*.f64 (sqrt.f64 (/.f64 1 a)) t) |
(*.f64 t (sqrt.f64 (/.f64 1 a))) |
(*.f64 (sqrt.f64 (/.f64 1 a)) t) |
(*.f64 t (sqrt.f64 (/.f64 1 a))) |
(*.f64 (sqrt.f64 (/.f64 1 a)) t) |
(*.f64 t (sqrt.f64 (/.f64 1 a))) |
(*.f64 (sqrt.f64 (/.f64 1 a)) y) |
(*.f64 y (sqrt.f64 (/.f64 1 a))) |
(*.f64 (sqrt.f64 (/.f64 1 a)) y) |
(*.f64 y (sqrt.f64 (/.f64 1 a))) |
(*.f64 (sqrt.f64 (/.f64 1 a)) y) |
(*.f64 y (sqrt.f64 (/.f64 1 a))) |
(*.f64 (sqrt.f64 (/.f64 1 a)) y) |
(*.f64 y (sqrt.f64 (/.f64 1 a))) |
(*.f64 (sqrt.f64 (/.f64 1 a)) y) |
(*.f64 y (sqrt.f64 (/.f64 1 a))) |
(*.f64 (sqrt.f64 (/.f64 1 a)) y) |
(*.f64 y (sqrt.f64 (/.f64 1 a))) |
(*.f64 (sqrt.f64 (/.f64 1 a)) y) |
(*.f64 y (sqrt.f64 (/.f64 1 a))) |
(*.f64 (sqrt.f64 (/.f64 1 a)) y) |
(*.f64 y (sqrt.f64 (/.f64 1 a))) |
(*.f64 (sqrt.f64 (/.f64 1 a)) y) |
(*.f64 y (sqrt.f64 (/.f64 1 a))) |
(*.f64 (sqrt.f64 (/.f64 1 a)) y) |
(*.f64 y (sqrt.f64 (/.f64 1 a))) |
(*.f64 (sqrt.f64 (/.f64 1 a)) y) |
(*.f64 y (sqrt.f64 (/.f64 1 a))) |
(*.f64 (sqrt.f64 (/.f64 1 a)) y) |
(*.f64 y (sqrt.f64 (/.f64 1 a))) |
Compiled 2804 to 946 computations (66.3% saved)
14 alts after pruning (1 fresh and 13 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 272 | 0 | 272 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 12 | 12 |
| Total | 272 | 14 | 286 |
| Status | Error | Program |
|---|---|---|
| 29.1b | x | |
| ✓ | 50.5b | (*.f64 y (/.f64 t a)) |
| ✓ | 50.3b | (/.f64 y (/.f64 a t)) |
| ✓ | 50.9b | (/.f64 (*.f64 z (neg.f64 y)) a) |
| ✓ | 39.0b | (/.f64 (*.f64 y (-.f64 t z)) a) |
| ✓ | 17.1b | (-.f64 x (*.f64 y (/.f64 (neg.f64 t) a))) |
| ✓ | 48.4b | (/.f64 z (/.f64 a (neg.f64 y))) |
| ✓ | 49.3b | (*.f64 (/.f64 z (neg.f64 a)) y) |
| ✓ | 17.7b | (+.f64 (/.f64 (*.f64 y t) a) x) |
| ✓ | 50.4b | (*.f64 t (/.f64 y a)) |
| ✓ | 50.9b | (/.f64 (*.f64 y t) a) |
| ✓ | 16.2b | (-.f64 x (*.f64 y (/.f64 z a))) |
| ✓ | 50.4b | (/.f64 t (/.f64 a y)) |
| ✓ | 57.6b | (*.f64 (/.f64 y (sqrt.f64 a)) (/.f64 t (sqrt.f64 a))) |
Compiled 152 to 106 computations (30.3% saved)
| Inputs |
|---|
x |
x |
(/.f64 y (/.f64 a t)) |
(*.f64 y (/.f64 t a)) |
(/.f64 t (/.f64 a y)) |
(*.f64 y (/.f64 t a)) |
(*.f64 t (/.f64 y a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 z (neg.f64 y)) a) |
(*.f64 (/.f64 z (neg.f64 a)) y) |
(*.f64 (neg.f64 z) (/.f64 y a)) |
(*.f64 y (/.f64 (neg.f64 z) a)) |
(/.f64 z (/.f64 a (neg.f64 y))) |
(/.f64 1 (/.f64 a (*.f64 t y))) |
(/.f64 (*.f64 y (-.f64 t z)) a) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(-.f64 x (*.f64 y (/.f64 z a))) |
(-.f64 x (*.f64 y (/.f64 (neg.f64 t) a))) |
(-.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) |
(-.f64 x (*.f64 (/.f64 1 a) (*.f64 y (-.f64 z t)))) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(*.f64 (/.f64 y (sqrt.f64 a)) (/.f64 t (sqrt.f64 a))) |
(-.f64 x (pow.f64 (sqrt.f64 (*.f64 (/.f64 y a) (-.f64 z t))) 2)) |
| Outputs |
|---|
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
(-.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) |
(fma.f64 y (/.f64 (-.f64 t z) a) x) |
12 calls:
| 91.0ms | (*.f64 y (-.f64 z t)) |
| 70.0ms | z |
| 59.0ms | (/.f64 (*.f64 y (-.f64 z t)) a) |
| 59.0ms | (-.f64 z t) |
| 55.0ms | a |
| Error | Segments | Branch |
|---|---|---|
| 3.8b | 1 | x |
| 0.1b | 3 | y |
| 2.8b | 3 | z |
| 3.8b | 1 | t |
| 0.1b | 3 | a |
| 0.1b | 3 | (-.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) |
| 0.1b | 3 | (/.f64 (*.f64 y (-.f64 z t)) a) |
| 0.1b | 3 | (/.f64 (*.f64 y (-.f64 z t)) a) |
| 0.1b | 3 | (*.f64 y (-.f64 z t)) |
| 0.1b | 3 | (*.f64 y (-.f64 z t)) |
| 3.8b | 1 | (-.f64 z t) |
| 3.8b | 1 | (-.f64 z t) |
Compiled 256 to 137 computations (46.5% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 10.0ms | 4.561245565742529e-60 | 7.293431442131194e-60 |
| 24.0ms | -1.3804930328694653e+42 | -9.451920588595159e+37 |
Compiled 51 to 35 computations (31.4% saved)
| Inputs |
|---|
x |
x |
(/.f64 y (/.f64 a t)) |
(*.f64 y (/.f64 t a)) |
(/.f64 t (/.f64 a y)) |
(*.f64 y (/.f64 t a)) |
(*.f64 t (/.f64 y a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 z (neg.f64 y)) a) |
(*.f64 (/.f64 z (neg.f64 a)) y) |
(*.f64 (neg.f64 z) (/.f64 y a)) |
(*.f64 y (/.f64 (neg.f64 z) a)) |
(/.f64 z (/.f64 a (neg.f64 y))) |
(/.f64 1 (/.f64 a (*.f64 t y))) |
(/.f64 (*.f64 y (-.f64 t z)) a) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(-.f64 x (*.f64 y (/.f64 z a))) |
(-.f64 x (*.f64 y (/.f64 (neg.f64 t) a))) |
(-.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) |
(-.f64 x (*.f64 (/.f64 1 a) (*.f64 y (-.f64 z t)))) |
| Outputs |
|---|
(-.f64 x (*.f64 y (/.f64 z a))) |
(-.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) |
(-.f64 x (*.f64 y (/.f64 z a))) |
11 calls:
| 124.0ms | y |
| 110.0ms | (*.f64 y (-.f64 z t)) |
| 101.0ms | z |
| 79.0ms | a |
| 69.0ms | (/.f64 (*.f64 y (-.f64 z t)) a) |
| Error | Segments | Branch |
|---|---|---|
| 5.8b | 1 | x |
| 4.8b | 2 | y |
| 4.8b | 2 | z |
| 5.8b | 1 | t |
| 4.8b | 2 | a |
| 2.0b | 3 | (-.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) |
| 2.0b | 3 | (/.f64 (*.f64 y (-.f64 z t)) a) |
| 2.0b | 3 | (/.f64 (*.f64 y (-.f64 z t)) a) |
| 2.0b | 3 | (*.f64 y (-.f64 z t)) |
| 2.0b | 3 | (*.f64 y (-.f64 z t)) |
| 5.8b | 1 | (-.f64 z t) |
Compiled 219 to 120 computations (45.2% saved)
| 2× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 3.2146818118707144e+286 | 1.7485147695842074e+288 |
| 0.0ms | -inf | -1.3864552458267056e+304 |
Compiled 22 to 16 computations (27.3% saved)
| Inputs |
|---|
x |
x |
(/.f64 y (/.f64 a t)) |
(*.f64 y (/.f64 t a)) |
(/.f64 t (/.f64 a y)) |
(*.f64 y (/.f64 t a)) |
(*.f64 t (/.f64 y a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 z (neg.f64 y)) a) |
(*.f64 (/.f64 z (neg.f64 a)) y) |
(*.f64 (neg.f64 z) (/.f64 y a)) |
(*.f64 y (/.f64 (neg.f64 z) a)) |
(/.f64 z (/.f64 a (neg.f64 y))) |
(/.f64 1 (/.f64 a (*.f64 t y))) |
(/.f64 (*.f64 y (-.f64 t z)) a) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(-.f64 x (*.f64 y (/.f64 z a))) |
(-.f64 x (*.f64 y (/.f64 (neg.f64 t) a))) |
| Outputs |
|---|
(-.f64 x (*.f64 y (/.f64 (neg.f64 t) a))) |
(-.f64 x (*.f64 y (/.f64 z a))) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
5 calls:
| 181.0ms | x |
| 174.0ms | z |
| 138.0ms | y |
| 112.0ms | a |
| 89.0ms | t |
| Error | Segments | Branch |
|---|---|---|
| 9.1b | 8 | x |
| 11.4b | 5 | y |
| 8.7b | 3 | z |
| 8.6b | 3 | t |
| 11.6b | 4 | a |
Compiled 133 to 67 computations (49.6% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 48.0ms | 1190516.9400455246 | 31562554762688.375 |
| 28.0ms | -805.4171436125572 | -9.067508065422552e-18 |
Compiled 22 to 16 computations (27.3% saved)
| Inputs |
|---|
x |
x |
(/.f64 y (/.f64 a t)) |
(*.f64 y (/.f64 t a)) |
(/.f64 t (/.f64 a y)) |
(*.f64 y (/.f64 t a)) |
(*.f64 t (/.f64 y a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 z (neg.f64 y)) a) |
(*.f64 (/.f64 z (neg.f64 a)) y) |
(*.f64 (neg.f64 z) (/.f64 y a)) |
(*.f64 y (/.f64 (neg.f64 z) a)) |
(/.f64 z (/.f64 a (neg.f64 y))) |
(/.f64 1 (/.f64 a (*.f64 t y))) |
(/.f64 (*.f64 y (-.f64 t z)) a) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(-.f64 x (*.f64 y (/.f64 z a))) |
| Outputs |
|---|
(-.f64 x (*.f64 y (/.f64 z a))) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(-.f64 x (*.f64 y (/.f64 z a))) |
5 calls:
| 81.0ms | a |
| 46.0ms | x |
| 29.0ms | z |
| 27.0ms | t |
| 27.0ms | y |
| Error | Segments | Branch |
|---|---|---|
| 10.8b | 4 | x |
| 12.6b | 3 | y |
| 9.2b | 3 | z |
| 10.0b | 3 | t |
| 10.5b | 6 | a |
Compiled 125 to 63 computations (49.6% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 21.0ms | 1.204094872476087e-56 | 4.3683191188481054e-52 |
| 22.0ms | -3.1634017390530787e-55 | -2.4224183395994475e-62 |
Compiled 22 to 16 computations (27.3% saved)
| Inputs |
|---|
x |
x |
(/.f64 y (/.f64 a t)) |
(*.f64 y (/.f64 t a)) |
(/.f64 t (/.f64 a y)) |
(*.f64 y (/.f64 t a)) |
(*.f64 t (/.f64 y a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 z (neg.f64 y)) a) |
(*.f64 (/.f64 z (neg.f64 a)) y) |
(*.f64 (neg.f64 z) (/.f64 y a)) |
(*.f64 y (/.f64 (neg.f64 z) a)) |
(/.f64 z (/.f64 a (neg.f64 y))) |
(/.f64 1 (/.f64 a (*.f64 t y))) |
(/.f64 (*.f64 y (-.f64 t z)) a) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
| Outputs |
|---|
(+.f64 (/.f64 (*.f64 y t) a) x) |
(/.f64 z (/.f64 a (neg.f64 y))) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
(/.f64 (*.f64 y (-.f64 t z)) a) |
(+.f64 (/.f64 (*.f64 y t) a) x) |
5 calls:
| 84.0ms | z |
| 79.0ms | x |
| 42.0ms | a |
| 20.0ms | y |
| 9.0ms | t |
| Error | Segments | Branch |
|---|---|---|
| 12.1b | 5 | x |
| 17.7b | 1 | y |
| 13.2b | 6 | z |
| 17.7b | 1 | t |
| 14.8b | 5 | a |
Compiled 118 to 60 computations (49.2% saved)
| 4× | binary-search |
| Time | Left | Right |
|---|---|---|
| 21.0ms | 1.8495272509234792e-126 | 1.3972255542640223e-120 |
| 21.0ms | -1.7510344433515037e-172 | -3.207698952692267e-178 |
| 21.0ms | -3.4895069410611724e-137 | -2.089186715842712e-137 |
| 22.0ms | -9.729848090895173e-110 | -6.109489961524187e-112 |
Compiled 22 to 16 computations (27.3% saved)
| Inputs |
|---|
x |
x |
(/.f64 y (/.f64 a t)) |
(*.f64 y (/.f64 t a)) |
(/.f64 t (/.f64 a y)) |
(*.f64 y (/.f64 t a)) |
(*.f64 t (/.f64 y a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 z (neg.f64 y)) a) |
(*.f64 (/.f64 z (neg.f64 a)) y) |
(*.f64 (neg.f64 z) (/.f64 y a)) |
(*.f64 y (/.f64 (neg.f64 z) a)) |
(/.f64 z (/.f64 a (neg.f64 y))) |
(/.f64 1 (/.f64 a (*.f64 t y))) |
(/.f64 (*.f64 y (-.f64 t z)) a) |
| Outputs |
|---|
x |
(/.f64 (*.f64 y (-.f64 t z)) a) |
x |
(/.f64 (*.f64 y (-.f64 t z)) a) |
x |
5 calls:
| 53.0ms | z |
| 53.0ms | t |
| 47.0ms | x |
| 46.0ms | y |
| 39.0ms | a |
| Error | Segments | Branch |
|---|---|---|
| 15.9b | 5 | x |
| 24.2b | 5 | y |
| 23.0b | 7 | z |
| 22.2b | 7 | t |
| 20.3b | 5 | a |
Compiled 111 to 59 computations (46.8% saved)
| 4× | binary-search |
| Time | Left | Right |
|---|---|---|
| 21.0ms | 7.140766910416544e-72 | 8.354469123648046e-64 |
| 22.0ms | -2.472983676869023e-83 | -1.1431966501603281e-85 |
| 22.0ms | -2.4950239964298727e-36 | -1.7144880991661384e-39 |
| 21.0ms | -3579062875979496000.0 | -112494380607198020.0 |
Compiled 22 to 16 computations (27.3% saved)
| Inputs |
|---|
x |
x |
(/.f64 y (/.f64 a t)) |
(*.f64 y (/.f64 t a)) |
(/.f64 t (/.f64 a y)) |
(*.f64 y (/.f64 t a)) |
(*.f64 t (/.f64 y a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 z (neg.f64 y)) a) |
(*.f64 (/.f64 z (neg.f64 a)) y) |
(*.f64 (neg.f64 z) (/.f64 y a)) |
(*.f64 y (/.f64 (neg.f64 z) a)) |
(/.f64 z (/.f64 a (neg.f64 y))) |
(/.f64 1 (/.f64 a (*.f64 t y))) |
| Outputs |
|---|
x |
(/.f64 (*.f64 y t) a) |
(*.f64 (/.f64 z (neg.f64 a)) y) |
(/.f64 y (/.f64 a t)) |
(*.f64 (neg.f64 z) (/.f64 y a)) |
x |
5 calls:
| 74.0ms | a |
| 46.0ms | x |
| 38.0ms | z |
| 31.0ms | t |
| 15.0ms | y |
| Error | Segments | Branch |
|---|---|---|
| 20.2b | 6 | x |
| 27.7b | 2 | y |
| 24.2b | 5 | z |
| 25.5b | 4 | t |
| 23.8b | 10 | a |
Compiled 104 to 56 computations (46.2% saved)
| 5× | binary-search |
| Time | Left | Right |
|---|---|---|
| 203.0ms | 7.140766910416544e-72 | 8.354469123648046e-64 |
| 21.0ms | -2.6386329653016047e-250 | -1.952122534162079e-259 |
| 46.0ms | -2.5632190709826754e-130 | -3.4895069410611724e-137 |
| 21.0ms | -9.729848090895173e-110 | -6.109489961524187e-112 |
| 22.0ms | -1.631652995356941e-86 | -6.016765421401446e-101 |
Compiled 22 to 16 computations (27.3% saved)
| Inputs |
|---|
x |
x |
(/.f64 y (/.f64 a t)) |
(*.f64 y (/.f64 t a)) |
(/.f64 t (/.f64 a y)) |
(*.f64 y (/.f64 t a)) |
(*.f64 t (/.f64 y a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 z (neg.f64 y)) a) |
(*.f64 (/.f64 z (neg.f64 a)) y) |
| Outputs |
|---|
x |
(/.f64 (*.f64 y t) a) |
(*.f64 (/.f64 z (neg.f64 a)) y) |
(/.f64 y (/.f64 a t)) |
(*.f64 (/.f64 z (neg.f64 a)) y) |
x |
5 calls:
| 60.0ms | a |
| 39.0ms | x |
| 24.0ms | z |
| 24.0ms | t |
| 14.0ms | y |
| Error | Segments | Branch |
|---|---|---|
| 20.6b | 6 | x |
| 27.7b | 2 | y |
| 25.9b | 4 | z |
| 25.5b | 4 | t |
| 23.8b | 10 | a |
Compiled 79 to 46 computations (41.8% saved)
| 5× | binary-search |
| Time | Left | Right |
|---|---|---|
| 38.0ms | 7.140766910416544e-72 | 8.354469123648046e-64 |
| 37.0ms | -8.733688695047591e-299 | -8.869719332268688e-305 |
| 40.0ms | -2.5632190709826754e-130 | -3.4895069410611724e-137 |
| 40.0ms | -9.729848090895173e-110 | -6.109489961524187e-112 |
| 41.0ms | -1.631652995356941e-86 | -6.016765421401446e-101 |
Compiled 22 to 16 computations (27.3% saved)
| Inputs |
|---|
x |
x |
(/.f64 y (/.f64 a t)) |
(*.f64 y (/.f64 t a)) |
(/.f64 t (/.f64 a y)) |
(*.f64 y (/.f64 t a)) |
(*.f64 t (/.f64 y a)) |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 z (neg.f64 y)) a) |
| Outputs |
|---|
x |
(/.f64 (*.f64 y t) a) |
(/.f64 (*.f64 z (neg.f64 y)) a) |
(/.f64 y (/.f64 a t)) |
(/.f64 (*.f64 z (neg.f64 y)) a) |
(/.f64 (*.f64 y t) a) |
x |
(*.f64 t (/.f64 y a)) |
x |
5 calls:
| 48.0ms | a |
| 47.0ms | x |
| 24.0ms | t |
| 22.0ms | z |
| 6.0ms | y |
| Error | Segments | Branch |
|---|---|---|
| 20.7b | 9 | x |
| 29.1b | 1 | y |
| 26.4b | 4 | z |
| 25.5b | 4 | t |
| 25.0b | 8 | a |
Compiled 73 to 43 computations (41.1% saved)
| 8× | binary-search |
| Time | Left | Right |
|---|---|---|
| 23.0ms | 2149141.061362807 | 1276007934471.9053 |
| 24.0ms | 1.6368081122149312e-57 | 5.055132327729347e-53 |
| 24.0ms | 6.933210449614127e-127 | 1.8495272509234792e-126 |
| 24.0ms | 7.869915740082897e-231 | 1.0331278728247974e-228 |
| 27.0ms | -8.733688695047591e-299 | -8.869719332268688e-305 |
| 24.0ms | -4.5359721866976623e-147 | -5.912263150968727e-151 |
| 24.0ms | -9.729848090895173e-110 | -6.109489961524187e-112 |
| 22.0ms | -1.631652995356941e-86 | -6.016765421401446e-101 |
Compiled 22 to 16 computations (27.3% saved)
| Inputs |
|---|
x |
x |
(/.f64 y (/.f64 a t)) |
(*.f64 y (/.f64 t a)) |
(/.f64 t (/.f64 a y)) |
(*.f64 y (/.f64 t a)) |
(*.f64 t (/.f64 y a)) |
(/.f64 (*.f64 y t) a) |
| Outputs |
|---|
x |
(*.f64 t (/.f64 y a)) |
x |
(/.f64 y (/.f64 a t)) |
x |
5 calls:
| 32.0ms | x |
| 22.0ms | t |
| 17.0ms | a |
| 7.0ms | z |
| 5.0ms | y |
| Error | Segments | Branch |
|---|---|---|
| 23.6b | 5 | x |
| 29.1b | 1 | y |
| 29.1b | 1 | z |
| 25.5b | 4 | t |
| 27.8b | 3 | a |
Compiled 67 to 40 computations (40.3% saved)
| 4× | binary-search |
| Time | Left | Right |
|---|---|---|
| 24.0ms | 6.933210449614127e-127 | 1.8495272509234792e-126 |
| 23.0ms | -1.7510344433515037e-172 | -3.207698952692267e-178 |
| 23.0ms | -3.4895069410611724e-137 | -2.089186715842712e-137 |
| 25.0ms | -1.631652995356941e-86 | -6.016765421401446e-101 |
Compiled 22 to 16 computations (27.3% saved)
| Inputs |
|---|
x |
x |
(/.f64 y (/.f64 a t)) |
(*.f64 y (/.f64 t a)) |
(/.f64 t (/.f64 a y)) |
(*.f64 y (/.f64 t a)) |
| Outputs |
|---|
x |
(/.f64 t (/.f64 a y)) |
x |
(/.f64 y (/.f64 a t)) |
x |
5 calls:
| 47.0ms | x |
| 19.0ms | t |
| 16.0ms | a |
| 10.0ms | z |
| 5.0ms | y |
| Error | Segments | Branch |
|---|---|---|
| 23.6b | 5 | x |
| 29.1b | 1 | y |
| 29.1b | 1 | z |
| 25.5b | 4 | t |
| 27.9b | 3 | a |
Compiled 57 to 36 computations (36.8% saved)
| 4× | binary-search |
| Time | Left | Right |
|---|---|---|
| 39.0ms | 6.933210449614127e-127 | 1.8495272509234792e-126 |
| 23.0ms | -1.7510344433515037e-172 | -3.207698952692267e-178 |
| 26.0ms | -3.4895069410611724e-137 | -2.089186715842712e-137 |
| 28.0ms | -1.631652995356941e-86 | -6.016765421401446e-101 |
Compiled 22 to 16 computations (27.3% saved)
| Inputs |
|---|
x |
x |
(/.f64 y (/.f64 a t)) |
(*.f64 y (/.f64 t a)) |
| Outputs |
|---|
x |
(/.f64 y (/.f64 a t)) |
x |
5 calls:
| 36.0ms | x |
| 32.0ms | t |
| 11.0ms | a |
| 10.0ms | z |
| 9.0ms | y |
| Error | Segments | Branch |
|---|---|---|
| 25.0b | 3 | x |
| 29.1b | 1 | y |
| 29.1b | 1 | z |
| 25.5b | 4 | t |
| 29.1b | 1 | a |
Compiled 47 to 34 computations (27.7% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 36.0ms | 6.933210449614127e-127 | 1.8495272509234792e-126 |
| 39.0ms | -6.016765421401446e-101 | -3.7792601032968964e-101 |
Compiled 22 to 16 computations (27.3% saved)
Total 0.0b remaining (0%)
Threshold costs 0.0b (0%)
| Inputs |
|---|
x |
x |
| Outputs |
|---|
x |
5 calls:
| 8.0ms | t |
| 8.0ms | x |
| 7.0ms | z |
| 7.0ms | a |
| 7.0ms | y |
| Error | Segments | Branch |
|---|---|---|
| 29.1b | 1 | x |
| 29.1b | 1 | y |
| 29.1b | 1 | z |
| 29.1b | 1 | t |
| 29.1b | 1 | a |
Compiled 37 to 30 computations (18.9% saved)
| 1× | egg-herbie |
| 90× | distribute-rgt-neg-in_binary64 |
| 74× | cancel-sign-sub-inv_binary64 |
| 64× | neg-sub0_binary64 |
| 64× | neg-mul-1_binary64 |
| 63× | distribute-lft-neg-in_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 135 | 651 |
| 1 | 173 | 649 |
| 2 | 226 | 649 |
| 3 | 282 | 649 |
| 4 | 336 | 649 |
| 5 | 404 | 649 |
| 6 | 523 | 649 |
| 7 | 643 | 649 |
| 8 | 743 | 649 |
| 9 | 793 | 649 |
| 10 | 813 | 649 |
| 11 | 822 | 649 |
| 12 | 826 | 649 |
| 1× | fuel |
| 1× | saturated |
| Inputs |
|---|
(if (<=.f64 a -1380493032869465325253561935959509849604096) (fma.f64 y (/.f64 (-.f64 t z) a) x) (if (<=.f64 a 578960446186580992/115792089237316195423570985008687907853269984665640564039457584007913129639936) (-.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) (fma.f64 y (/.f64 (-.f64 t z) a) x))) |
(if (<=.f64 (-.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) -inf.0) (-.f64 x (*.f64 y (/.f64 z a))) (if (<=.f64 (-.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) 50000000000000003762608676247009359680713540241291819259627219853176217150773285501269553819831059961969610458775763570700520984086102794838510643846931101957819443487143599535802327035633384549613035605948983170368441251455495172717176776840351126669214318337732342424653859009670938624) (-.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) (-.f64 x (*.f64 y (/.f64 z a))))) |
(if (<=.f64 t -7084524116897113/8796093022208) (-.f64 x (*.f64 y (/.f64 (neg.f64 t) a))) (if (<=.f64 t 5113231322829521/4294967296) (-.f64 x (*.f64 y (/.f64 z a))) (+.f64 (/.f64 (*.f64 y t) a) x))) |
(if (<=.f64 z -8733198558376201/27606985387162255149739023449108101809804435888681546220650096895197184) (-.f64 x (*.f64 y (/.f64 z a))) (if (<=.f64 z 5318628727872693/441711766194596082395824375185729628956870974218904739530401550323154944) (+.f64 (/.f64 (*.f64 y t) a) x) (-.f64 x (*.f64 y (/.f64 z a))))) |
(if (<=.f64 x -16465853839126168/169230328010303641331690318856389386196071598838855992136870091590247882556495704531248437872567112920983350278405979725889536) (+.f64 (/.f64 (*.f64 y t) a) x) (if (<=.f64 x -467866388359497216/13407807929942597099574024998205846127479365820592393377723561443721764030073546976801874298166903427690031858186486050853753882811946569946433649006084096) (/.f64 z (/.f64 a (neg.f64 y))) (if (<=.f64 x -3047558085328053/17404329748619824289860426352311291980336107281679382059399385520550823849520406290076876874227033232798165548605325345270876711736203910820971150664223534348495463082734165001231667298304) (+.f64 (/.f64 (*.f64 y t) a) x) (if (<=.f64 x 5773759014340293632/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (/.f64 (*.f64 y (-.f64 t z)) a) (+.f64 (/.f64 (*.f64 y t) a) x))))) |
(if (<=.f64 x -3579062875979495936) x (if (<=.f64 x -7467994431410487/2993155353253689176481146537402947624255349848014848) (/.f64 (*.f64 y (-.f64 t z)) a) (if (<=.f64 x -3380647087255205/136703170298938245273281389194851335334573089430825777276610662900622062449960995201469573563940864) x (if (<=.f64 x 7102538620672537/994646472819573284310764496293641680200912301594695434880927953786318994025066751066112) (/.f64 (*.f64 y (-.f64 t z)) a) x)))) |
(if (<=.f64 x -4568107771761717/279968092772225526319680285071055534765205687154331191862498637620473983897520118172609686658950889472) x (if (<=.f64 x -16465853839126168/169230328010303641331690318856389386196071598838855992136870091590247882556495704531248437872567112920983350278405979725889536) (/.f64 (*.f64 y t) a) (if (<=.f64 x -6401380335185977/24973988402527937851052777838345330445988785141319769206873255677002973910558124960962448824507935769278615448971252983163583805434306282450321408) (*.f64 (/.f64 z (neg.f64 a)) y) (if (<=.f64 x -8508150422626473/32244539253885818258809801325470984284597615114509370247067914369303827060346976286280350090799388909587060241287666545341940158661052584060701841947200901910912273193298650156782929545680324771302748590589061792245363054977512313161523248215761503691988438775496704) (/.f64 y (/.f64 a t)) (if (<=.f64 x 7102538620672537/994646472819573284310764496293641680200912301594695434880927953786318994025066751066112) (*.f64 (neg.f64 z) (/.f64 y a)) x))))) |
(if (<=.f64 x -4568107771761717/279968092772225526319680285071055534765205687154331191862498637620473983897520118172609686658950889472) x (if (<=.f64 x -16465853839126168/169230328010303641331690318856389386196071598838855992136870091590247882556495704531248437872567112920983350278405979725889536) (/.f64 (*.f64 y t) a) (if (<=.f64 x -6401380335185977/24973988402527937851052777838345330445988785141319769206873255677002973910558124960962448824507935769278615448971252983163583805434306282450321408) (*.f64 (/.f64 z (neg.f64 a)) y) (if (<=.f64 x -8231579659330741/94250893829069388263158195986839619953910191433570402840572110390025349132714488958921462158410402245441022265850013080700211570312172862173529993715108609721771173307935875544541938110298112193699817954782743504532616344943965179202194956899229230517898712545800381131625461678593653502029519299346025224452702208) (/.f64 y (/.f64 a t)) (if (<=.f64 x 7102538620672537/994646472819573284310764496293641680200912301594695434880927953786318994025066751066112) (*.f64 (/.f64 z (neg.f64 a)) y) x))))) |
(if (<=.f64 x -4568107771761717/279968092772225526319680285071055534765205687154331191862498637620473983897520118172609686658950889472) x (if (<=.f64 x -16465853839126168/169230328010303641331690318856389386196071598838855992136870091590247882556495704531248437872567112920983350278405979725889536) (/.f64 (*.f64 y t) a) (if (<=.f64 x -261208932382699264/57586096570152913699974892898380567793532123114264532903689671329431521032595044740083720782129802971518987656109067457577065805510327036019308994315074097345724416) (/.f64 (*.f64 z (neg.f64 y)) a) (if (<=.f64 x -8231579659330741/94250893829069388263158195986839619953910191433570402840572110390025349132714488958921462158410402245441022265850013080700211570312172862173529993715108609721771173307935875544541938110298112193699817954782743504532616344943965179202194956899229230517898712545800381131625461678593653502029519299346025224452702208) (/.f64 y (/.f64 a t)) (if (<=.f64 x 3439113780620237/436994993873214129706097166956708350993678881411295357199729151951767944417616335439228580716318181998128654620651240845861768505204366709906692902245553277900892247131030458103436298545516643924637451297481464347472084863384057367177715867713536) (/.f64 (*.f64 z (neg.f64 y)) a) (if (<=.f64 x 2164373967011858944/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (/.f64 (*.f64 y t) a) (if (<=.f64 x 5783979217344799/3533694129556768659166595001485837031654967793751237916243212402585239552) x (if (<=.f64 x 9230490573043986/4294967296) (*.f64 t (/.f64 y a)) x)))))))) |
(if (<=.f64 x -4568107771761717/279968092772225526319680285071055534765205687154331191862498637620473983897520118172609686658950889472) x (if (<=.f64 x -467866388359497216/13407807929942597099574024998205846127479365820592393377723561443721764030073546976801874298166903427690031858186486050853753882811946569946433649006084096) (*.f64 t (/.f64 y a)) (if (<=.f64 x -3047558085328053/17404329748619824289860426352311291980336107281679382059399385520550823849520406290076876874227033232798165548605325345270876711736203910820971150664223534348495463082734165001231667298304) x (if (<=.f64 x 2164373967011858944/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (/.f64 y (/.f64 a t)) x)))) |
(if (<=.f64 x -4568107771761717/279968092772225526319680285071055534765205687154331191862498637620473983897520118172609686658950889472) x (if (<=.f64 x -467866388359497216/13407807929942597099574024998205846127479365820592393377723561443721764030073546976801874298166903427690031858186486050853753882811946569946433649006084096) (/.f64 t (/.f64 a y)) (if (<=.f64 x -3047558085328053/17404329748619824289860426352311291980336107281679382059399385520550823849520406290076876874227033232798165548605325345270876711736203910820971150664223534348495463082734165001231667298304) x (if (<=.f64 x 2164373967011858944/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (/.f64 y (/.f64 a t)) x)))) |
(if (<=.f64 x -2370726284163118/39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816) x (if (<=.f64 x 2164373967011858944/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (/.f64 y (/.f64 a t)) x)) |
x |
| Outputs |
|---|
(if (<=.f64 a -1380493032869465325253561935959509849604096) (fma.f64 y (/.f64 (-.f64 t z) a) x) (if (<=.f64 a 578960446186580992/115792089237316195423570985008687907853269984665640564039457584007913129639936) (-.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) (fma.f64 y (/.f64 (-.f64 t z) a) x))) |
(if (<=.f64 a -1380493032869465325253561935959509849604096) (fma.f64 y (/.f64 (-.f64 t z) a) x) (if (<=.f64 a 565391060729083/113078212145816597093331040047546785012958969400039613319782796882727665664) (-.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) (fma.f64 y (/.f64 (-.f64 t z) a) x))) |
(if (<=.f64 a -1380493032869465325253561935959509849604096) (fma.f64 y (/.f64 (-.f64 t z) a) x) (if (<=.f64 a 565391060729083/113078212145816597093331040047546785012958969400039613319782796882727665664) (+.f64 x (/.f64 (*.f64 y (-.f64 t z)) a)) (fma.f64 y (/.f64 (-.f64 t z) a) x))) |
(if (<=.f64 (-.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) -inf.0) (-.f64 x (*.f64 y (/.f64 z a))) (if (<=.f64 (-.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) 50000000000000003762608676247009359680713540241291819259627219853176217150773285501269553819831059961969610458775763570700520984086102794838510643846931101957819443487143599535802327035633384549613035605948983170368441251455495172717176776840351126669214318337732342424653859009670938624) (-.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) (-.f64 x (*.f64 y (/.f64 z a))))) |
(if (<=.f64 (+.f64 x (/.f64 (*.f64 y (-.f64 t z)) a)) -inf.0) (-.f64 x (*.f64 y (/.f64 z a))) (if (<=.f64 (+.f64 x (/.f64 (*.f64 y (-.f64 t z)) a)) 50000000000000003762608676247009359680713540241291819259627219853176217150773285501269553819831059961969610458775763570700520984086102794838510643846931101957819443487143599535802327035633384549613035605948983170368441251455495172717176776840351126669214318337732342424653859009670938624) (+.f64 x (/.f64 (*.f64 y (-.f64 t z)) a)) (-.f64 x (*.f64 y (/.f64 z a))))) |
(if (<=.f64 t -7084524116897113/8796093022208) (-.f64 x (*.f64 y (/.f64 (neg.f64 t) a))) (if (<=.f64 t 5113231322829521/4294967296) (-.f64 x (*.f64 y (/.f64 z a))) (+.f64 (/.f64 (*.f64 y t) a) x))) |
(if (<=.f64 t -7084524116897113/8796093022208) (-.f64 x (*.f64 y (/.f64 (neg.f64 t) a))) (if (<=.f64 t 5113231322829521/4294967296) (-.f64 x (*.f64 y (/.f64 z a))) (+.f64 x (/.f64 (*.f64 y t) a)))) |
(if (<=.f64 t -7084524116897113/8796093022208) (+.f64 x (*.f64 (/.f64 t a) y)) (if (<=.f64 t 5113231322829521/4294967296) (-.f64 x (*.f64 y (/.f64 z a))) (+.f64 x (/.f64 (*.f64 y t) a)))) |
(if (<=.f64 t -7084524116897113/8796093022208) (+.f64 x (*.f64 y (/.f64 t a))) (if (<=.f64 t 5113231322829521/4294967296) (-.f64 x (*.f64 y (/.f64 z a))) (+.f64 x (/.f64 (*.f64 y t) a)))) |
(if (<=.f64 z -8733198558376201/27606985387162255149739023449108101809804435888681546220650096895197184) (-.f64 x (*.f64 y (/.f64 z a))) (if (<=.f64 z 5318628727872693/441711766194596082395824375185729628956870974218904739530401550323154944) (+.f64 (/.f64 (*.f64 y t) a) x) (-.f64 x (*.f64 y (/.f64 z a))))) |
(if (<=.f64 z -8733198558376201/27606985387162255149739023449108101809804435888681546220650096895197184) (-.f64 x (*.f64 y (/.f64 z a))) (if (<=.f64 z 5318628727872693/441711766194596082395824375185729628956870974218904739530401550323154944) (+.f64 x (/.f64 (*.f64 y t) a)) (-.f64 x (*.f64 y (/.f64 z a))))) |
(if (<=.f64 x -16465853839126168/169230328010303641331690318856389386196071598838855992136870091590247882556495704531248437872567112920983350278405979725889536) (+.f64 (/.f64 (*.f64 y t) a) x) (if (<=.f64 x -467866388359497216/13407807929942597099574024998205846127479365820592393377723561443721764030073546976801874298166903427690031858186486050853753882811946569946433649006084096) (/.f64 z (/.f64 a (neg.f64 y))) (if (<=.f64 x -3047558085328053/17404329748619824289860426352311291980336107281679382059399385520550823849520406290076876874227033232798165548605325345270876711736203910820971150664223534348495463082734165001231667298304) (+.f64 (/.f64 (*.f64 y t) a) x) (if (<=.f64 x 5773759014340293632/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (/.f64 (*.f64 y (-.f64 t z)) a) (+.f64 (/.f64 (*.f64 y t) a) x))))) |
(if (<=.f64 x -2058231729890771/21153791001287955166461289857048673274508949854856999017108761448780985319561963066406054734070889115122918784800747465736192) (+.f64 x (/.f64 (*.f64 y t) a)) (if (<=.f64 x -913801539764643/26187124863169134960105517574620793217733136368344518315866330944769070371237396439066160738607233257207093473020480568073738052367083144426628220715008) (/.f64 z (/.f64 a (neg.f64 y))) (if (<=.f64 x -3047558085328053/17404329748619824289860426352311291980336107281679382059399385520550823849520406290076876874227033232798165548605325345270876711736203910820971150664223534348495463082734165001231667298304) (+.f64 x (/.f64 (*.f64 y t) a)) (if (<=.f64 x 5638436537441693/3048582568667961163458591044719888970457615373696260889510895468384152088691177363398736428772941378085768487423248655171335913749304966119424) (/.f64 (*.f64 y (-.f64 t z)) a) (+.f64 x (/.f64 (*.f64 y t) a)))))) |
(if (<=.f64 x -3579062875979495936) x (if (<=.f64 x -7467994431410487/2993155353253689176481146537402947624255349848014848) (/.f64 (*.f64 y (-.f64 t z)) a) (if (<=.f64 x -3380647087255205/136703170298938245273281389194851335334573089430825777276610662900622062449960995201469573563940864) x (if (<=.f64 x 7102538620672537/994646472819573284310764496293641680200912301594695434880927953786318994025066751066112) (/.f64 (*.f64 y (-.f64 t z)) a) x)))) |
(if (<=.f64 x -4568107771761717/279968092772225526319680285071055534765205687154331191862498637620473983897520118172609686658950889472) x (if (<=.f64 x -16465853839126168/169230328010303641331690318856389386196071598838855992136870091590247882556495704531248437872567112920983350278405979725889536) (/.f64 (*.f64 y t) a) (if (<=.f64 x -6401380335185977/24973988402527937851052777838345330445988785141319769206873255677002973910558124960962448824507935769278615448971252983163583805434306282450321408) (*.f64 (/.f64 z (neg.f64 a)) y) (if (<=.f64 x -8508150422626473/32244539253885818258809801325470984284597615114509370247067914369303827060346976286280350090799388909587060241287666545341940158661052584060701841947200901910912273193298650156782929545680324771302748590589061792245363054977512313161523248215761503691988438775496704) (/.f64 y (/.f64 a t)) (if (<=.f64 x 7102538620672537/994646472819573284310764496293641680200912301594695434880927953786318994025066751066112) (*.f64 (neg.f64 z) (/.f64 y a)) x))))) |
(if (<=.f64 x -4568107771761717/279968092772225526319680285071055534765205687154331191862498637620473983897520118172609686658950889472) x (if (<=.f64 x -2058231729890771/21153791001287955166461289857048673274508949854856999017108761448780985319561963066406054734070889115122918784800747465736192) (/.f64 (*.f64 y t) a) (if (<=.f64 x -6401380335185977/24973988402527937851052777838345330445988785141319769206873255677002973910558124960962448824507935769278615448971252983163583805434306282450321408) (*.f64 y (/.f64 z (neg.f64 a))) (if (<=.f64 x -8508150422626473/32244539253885818258809801325470984284597615114509370247067914369303827060346976286280350090799388909587060241287666545341940158661052584060701841947200901910912273193298650156782929545680324771302748590589061792245363054977512313161523248215761503691988438775496704) (/.f64 y (/.f64 a t)) (if (<=.f64 x 7102538620672537/994646472819573284310764496293641680200912301594695434880927953786318994025066751066112) (*.f64 (neg.f64 z) (/.f64 y a)) x))))) |
(if (<=.f64 x -4568107771761717/279968092772225526319680285071055534765205687154331191862498637620473983897520118172609686658950889472) x (if (<=.f64 x -2058231729890771/21153791001287955166461289857048673274508949854856999017108761448780985319561963066406054734070889115122918784800747465736192) (/.f64 (*.f64 y t) a) (if (<=.f64 x -6401380335185977/24973988402527937851052777838345330445988785141319769206873255677002973910558124960962448824507935769278615448971252983163583805434306282450321408) (*.f64 y (/.f64 z (neg.f64 a))) (if (<=.f64 x -8508150422626473/32244539253885818258809801325470984284597615114509370247067914369303827060346976286280350090799388909587060241287666545341940158661052584060701841947200901910912273193298650156782929545680324771302748590589061792245363054977512313161523248215761503691988438775496704) (/.f64 y (/.f64 a t)) (if (<=.f64 x 7102538620672537/994646472819573284310764496293641680200912301594695434880927953786318994025066751066112) (*.f64 z (neg.f64 (/.f64 y a))) x))))) |
(if (<=.f64 x -4568107771761717/279968092772225526319680285071055534765205687154331191862498637620473983897520118172609686658950889472) x (if (<=.f64 x -2058231729890771/21153791001287955166461289857048673274508949854856999017108761448780985319561963066406054734070889115122918784800747465736192) (/.f64 (*.f64 y t) a) (if (<=.f64 x -6401380335185977/24973988402527937851052777838345330445988785141319769206873255677002973910558124960962448824507935769278615448971252983163583805434306282450321408) (*.f64 y (/.f64 z (neg.f64 a))) (if (<=.f64 x -8508150422626473/32244539253885818258809801325470984284597615114509370247067914369303827060346976286280350090799388909587060241287666545341940158661052584060701841947200901910912273193298650156782929545680324771302748590589061792245363054977512313161523248215761503691988438775496704) (/.f64 y (/.f64 a t)) (if (<=.f64 x 7102538620672537/994646472819573284310764496293641680200912301594695434880927953786318994025066751066112) (*.f64 z (/.f64 (neg.f64 y) a)) x))))) |
(if (<=.f64 x -4568107771761717/279968092772225526319680285071055534765205687154331191862498637620473983897520118172609686658950889472) x (if (<=.f64 x -16465853839126168/169230328010303641331690318856389386196071598838855992136870091590247882556495704531248437872567112920983350278405979725889536) (/.f64 (*.f64 y t) a) (if (<=.f64 x -6401380335185977/24973988402527937851052777838345330445988785141319769206873255677002973910558124960962448824507935769278615448971252983163583805434306282450321408) (*.f64 (/.f64 z (neg.f64 a)) y) (if (<=.f64 x -8231579659330741/94250893829069388263158195986839619953910191433570402840572110390025349132714488958921462158410402245441022265850013080700211570312172862173529993715108609721771173307935875544541938110298112193699817954782743504532616344943965179202194956899229230517898712545800381131625461678593653502029519299346025224452702208) (/.f64 y (/.f64 a t)) (if (<=.f64 x 7102538620672537/994646472819573284310764496293641680200912301594695434880927953786318994025066751066112) (*.f64 (/.f64 z (neg.f64 a)) y) x))))) |
(if (<=.f64 x -4568107771761717/279968092772225526319680285071055534765205687154331191862498637620473983897520118172609686658950889472) x (if (<=.f64 x -2058231729890771/21153791001287955166461289857048673274508949854856999017108761448780985319561963066406054734070889115122918784800747465736192) (/.f64 (*.f64 y t) a) (if (<=.f64 x -6401380335185977/24973988402527937851052777838345330445988785141319769206873255677002973910558124960962448824507935769278615448971252983163583805434306282450321408) (*.f64 y (/.f64 z (neg.f64 a))) (if (<=.f64 x -8231579659330741/94250893829069388263158195986839619953910191433570402840572110390025349132714488958921462158410402245441022265850013080700211570312172862173529993715108609721771173307935875544541938110298112193699817954782743504532616344943965179202194956899229230517898712545800381131625461678593653502029519299346025224452702208) (/.f64 y (/.f64 a t)) (if (<=.f64 x 7102538620672537/994646472819573284310764496293641680200912301594695434880927953786318994025066751066112) (*.f64 y (/.f64 z (neg.f64 a))) x))))) |
(if (<=.f64 x -4568107771761717/279968092772225526319680285071055534765205687154331191862498637620473983897520118172609686658950889472) x (if (<=.f64 x -16465853839126168/169230328010303641331690318856389386196071598838855992136870091590247882556495704531248437872567112920983350278405979725889536) (/.f64 (*.f64 y t) a) (if (<=.f64 x -261208932382699264/57586096570152913699974892898380567793532123114264532903689671329431521032595044740083720782129802971518987656109067457577065805510327036019308994315074097345724416) (/.f64 (*.f64 z (neg.f64 y)) a) (if (<=.f64 x -8231579659330741/94250893829069388263158195986839619953910191433570402840572110390025349132714488958921462158410402245441022265850013080700211570312172862173529993715108609721771173307935875544541938110298112193699817954782743504532616344943965179202194956899229230517898712545800381131625461678593653502029519299346025224452702208) (/.f64 y (/.f64 a t)) (if (<=.f64 x 3439113780620237/436994993873214129706097166956708350993678881411295357199729151951767944417616335439228580716318181998128654620651240845861768505204366709906692902245553277900892247131030458103436298545516643924637451297481464347472084863384057367177715867713536) (/.f64 (*.f64 z (neg.f64 y)) a) (if (<=.f64 x 2164373967011858944/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (/.f64 (*.f64 y t) a) (if (<=.f64 x 5783979217344799/3533694129556768659166595001485837031654967793751237916243212402585239552) x (if (<=.f64 x 9230490573043986/4294967296) (*.f64 t (/.f64 y a)) x)))))))) |
(if (<=.f64 x -4568107771761717/279968092772225526319680285071055534765205687154331191862498637620473983897520118172609686658950889472) x (if (<=.f64 x -2058231729890771/21153791001287955166461289857048673274508949854856999017108761448780985319561963066406054734070889115122918784800747465736192) (/.f64 (*.f64 y t) a) (if (<=.f64 x -1020347392119919/224945689727159819140526925384299092943484855915095831655037778630591879033574393515952034305194542857496045531676044756160413302774714984450425759043258192756736) (/.f64 (*.f64 z (neg.f64 y)) a) (if (<=.f64 x -8231579659330741/94250893829069388263158195986839619953910191433570402840572110390025349132714488958921462158410402245441022265850013080700211570312172862173529993715108609721771173307935875544541938110298112193699817954782743504532616344943965179202194956899229230517898712545800381131625461678593653502029519299346025224452702208) (/.f64 y (/.f64 a t)) (if (<=.f64 x 3439113780620237/436994993873214129706097166956708350993678881411295357199729151951767944417616335439228580716318181998128654620651240845861768505204366709906692902245553277900892247131030458103436298545516643924637451297481464347472084863384057367177715867713536) (/.f64 (*.f64 z (neg.f64 y)) a) (if (<=.f64 x 4227292904320037/6097165137335922326917182089439777940915230747392521779021790936768304177382354726797472857545882756171536974846497310342671827498609932238848) (/.f64 (*.f64 y t) a) (if (<=.f64 x 5783979217344799/3533694129556768659166595001485837031654967793751237916243212402585239552) x (if (<=.f64 x 4615245286521993/2147483648) (*.f64 t (/.f64 y a)) x)))))))) |
(if (<=.f64 x -4568107771761717/279968092772225526319680285071055534765205687154331191862498637620473983897520118172609686658950889472) x (if (<=.f64 x -2058231729890771/21153791001287955166461289857048673274508949854856999017108761448780985319561963066406054734070889115122918784800747465736192) (/.f64 (*.f64 y t) a) (if (<=.f64 x -1020347392119919/224945689727159819140526925384299092943484855915095831655037778630591879033574393515952034305194542857496045531676044756160413302774714984450425759043258192756736) (/.f64 (*.f64 y (neg.f64 z)) a) (if (<=.f64 x -8231579659330741/94250893829069388263158195986839619953910191433570402840572110390025349132714488958921462158410402245441022265850013080700211570312172862173529993715108609721771173307935875544541938110298112193699817954782743504532616344943965179202194956899229230517898712545800381131625461678593653502029519299346025224452702208) (/.f64 y (/.f64 a t)) (if (<=.f64 x 3439113780620237/436994993873214129706097166956708350993678881411295357199729151951767944417616335439228580716318181998128654620651240845861768505204366709906692902245553277900892247131030458103436298545516643924637451297481464347472084863384057367177715867713536) (/.f64 (*.f64 y (neg.f64 z)) a) (if (<=.f64 x 4227292904320037/6097165137335922326917182089439777940915230747392521779021790936768304177382354726797472857545882756171536974846497310342671827498609932238848) (/.f64 (*.f64 y t) a) (if (<=.f64 x 5783979217344799/3533694129556768659166595001485837031654967793751237916243212402585239552) x (if (<=.f64 x 4615245286521993/2147483648) (*.f64 t (/.f64 y a)) x)))))))) |
(if (<=.f64 x -4568107771761717/279968092772225526319680285071055534765205687154331191862498637620473983897520118172609686658950889472) x (if (<=.f64 x -467866388359497216/13407807929942597099574024998205846127479365820592393377723561443721764030073546976801874298166903427690031858186486050853753882811946569946433649006084096) (*.f64 t (/.f64 y a)) (if (<=.f64 x -3047558085328053/17404329748619824289860426352311291980336107281679382059399385520550823849520406290076876874227033232798165548605325345270876711736203910820971150664223534348495463082734165001231667298304) x (if (<=.f64 x 2164373967011858944/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (/.f64 y (/.f64 a t)) x)))) |
(if (<=.f64 x -4568107771761717/279968092772225526319680285071055534765205687154331191862498637620473983897520118172609686658950889472) x (if (<=.f64 x -913801539764643/26187124863169134960105517574620793217733136368344518315866330944769070371237396439066160738607233257207093473020480568073738052367083144426628220715008) (*.f64 t (/.f64 y a)) (if (<=.f64 x -3047558085328053/17404329748619824289860426352311291980336107281679382059399385520550823849520406290076876874227033232798165548605325345270876711736203910820971150664223534348495463082734165001231667298304) x (if (<=.f64 x 4227292904320037/6097165137335922326917182089439777940915230747392521779021790936768304177382354726797472857545882756171536974846497310342671827498609932238848) (/.f64 y (/.f64 a t)) x)))) |
(if (<=.f64 x -4568107771761717/279968092772225526319680285071055534765205687154331191862498637620473983897520118172609686658950889472) x (if (<=.f64 x -467866388359497216/13407807929942597099574024998205846127479365820592393377723561443721764030073546976801874298166903427690031858186486050853753882811946569946433649006084096) (/.f64 t (/.f64 a y)) (if (<=.f64 x -3047558085328053/17404329748619824289860426352311291980336107281679382059399385520550823849520406290076876874227033232798165548605325345270876711736203910820971150664223534348495463082734165001231667298304) x (if (<=.f64 x 2164373967011858944/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (/.f64 y (/.f64 a t)) x)))) |
(if (<=.f64 x -4568107771761717/279968092772225526319680285071055534765205687154331191862498637620473983897520118172609686658950889472) x (if (<=.f64 x -913801539764643/26187124863169134960105517574620793217733136368344518315866330944769070371237396439066160738607233257207093473020480568073738052367083144426628220715008) (/.f64 t (/.f64 a y)) (if (<=.f64 x -3047558085328053/17404329748619824289860426352311291980336107281679382059399385520550823849520406290076876874227033232798165548605325345270876711736203910820971150664223534348495463082734165001231667298304) x (if (<=.f64 x 4227292904320037/6097165137335922326917182089439777940915230747392521779021790936768304177382354726797472857545882756171536974846497310342671827498609932238848) (/.f64 y (/.f64 a t)) x)))) |
(if (<=.f64 x -2370726284163118/39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816) x (if (<=.f64 x 2164373967011858944/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (/.f64 y (/.f64 a t)) x)) |
(if (<=.f64 x -1185363142081559/19701003098197239606139520050071806902539869635232723333974146702122860885748605305707133127442457820403313995153408) x (if (<=.f64 x 4227292904320037/6097165137335922326917182089439777940915230747392521779021790936768304177382354726797472857545882756171536974846497310342671827498609932238848) (/.f64 y (/.f64 a t)) x)) |
x |
Compiled 515 to 273 computations (47% saved)
| 1× | egg-herbie |
| 783× | fma-neg_binary64 |
| 717× | fma-def_binary64 |
| 245× | cancel-sign-sub-inv_binary64 |
| 181× | distribute-rgt-in_binary64 |
| 139× | distribute-lft-in_binary64 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 13 |
| 1 | 17 | 13 |
| 2 | 39 | 13 |
| 3 | 107 | 13 |
| 4 | 327 | 11 |
| 5 | 879 | 11 |
| 6 | 1902 | 11 |
| 7 | 3302 | 11 |
| 8 | 3989 | 11 |
| 9 | 4045 | 11 |
| 10 | 4075 | 11 |
| 11 | 4080 | 11 |
| 12 | 4080 | 11 |
| 1× | saturated |
Compiled 206 to 136 computations (34% saved)
Compiled 455 to 169 computations (62.9% saved)
Loading profile data...