Time bar (total: 49.8s)
| 1× | search |
| True | Other | False | Iter |
|---|---|---|---|
| 0% | 99.7% | 0.3% | 0 |
| 0% | 99.7% | 0.3% | 1 |
| 0% | 99.7% | 0.3% | 2 |
| 0% | 99.7% | 0.3% | 3 |
| 0% | 99.7% | 0.3% | 4 |
| 0% | 99.7% | 0.3% | 5 |
| 0% | 99.7% | 0.3% | 6 |
| 0% | 99.7% | 0.3% | 7 |
| 0% | 99.7% | 0.3% | 8 |
| 0% | 99.7% | 0.3% | 9 |
| 0% | 99.7% | 0.3% | 10 |
| 0% | 99.7% | 0.3% | 11 |
| 0% | 99.7% | 0.3% | 12 |
Compiled 28 to 20 computations (28.6% saved)
| 2.0s | 8253× | body | 256 | valid |
| 1.2s | 4631× | body | 256 | invalid |
| 1.0ms | 3× | body | 512 | valid |
| 2× | egg-herbie |
| 853× | sub-neg_binary64 |
| 619× | fma-neg_binary64 |
| 567× | fma-def_binary64 |
| 428× | associate-+l+_binary64 |
| 390× | associate--r+_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 111 | 496 |
| 1 | 369 | 432 |
| 2 | 1332 | 400 |
| 3 | 7029 | 400 |
| 0 | 6 | 6 |
| 1× | saturated |
| 1× | node limit |
| Inputs |
|---|
0 |
1 |
2 |
3 |
4 |
5 |
| Outputs |
|---|
0 |
1 |
2 |
3 |
4 |
5 |
| Inputs |
|---|
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 (-.f64 y (*.f64 (-.f64 x 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 x t) 2) b)) |
(+.f64 (-.f64 (-.f64 z (*.f64 (-.f64 y 1) x)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 (-.f64 t (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 x 1) a)) (*.f64 (-.f64 (+.f64 y x) 2) b)) |
(+.f64 (-.f64 (-.f64 a (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 (-.f64 b (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) x)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 z 1) y)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 z t) 2) b)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 t 1) z)) (*.f64 (-.f64 y 1) a)) (*.f64 (-.f64 (+.f64 t y) 2) b)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 a 1) z)) (*.f64 (-.f64 t 1) y)) (*.f64 (-.f64 (+.f64 a t) 2) b)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 b 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 b t) 2) y)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) t)) (*.f64 (-.f64 z 1) a)) (*.f64 (-.f64 (+.f64 y z) 2) b)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) a)) (*.f64 (-.f64 t 1) z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) b)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) z)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 a 1) t)) (*.f64 (-.f64 (+.f64 y a) 2) b)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 b 1) a)) (*.f64 (-.f64 (+.f64 y b) 2) t)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) b)) (*.f64 (-.f64 (+.f64 y t) 2) a)) |
| Outputs |
|---|
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (+.f64 (*.f64 (+.f64 y -1) z) (*.f64 (+.f64 t -1) a))) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 (-.f64 (+.f64 y t) 2) b (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a)))) |
(fma.f64 (+.f64 t (-.f64 y 2)) b (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))) |
(+.f64 (-.f64 (-.f64 y (*.f64 (-.f64 x 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 x t) 2) b)) |
(+.f64 (-.f64 y (+.f64 (*.f64 z (+.f64 x -1)) (*.f64 (+.f64 t -1) a))) (*.f64 b (+.f64 x (-.f64 t 2)))) |
(fma.f64 b (+.f64 x (+.f64 t -2)) (-.f64 y (fma.f64 z (+.f64 x -1) (*.f64 (+.f64 t -1) a)))) |
(fma.f64 b (+.f64 x (+.f64 t -2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 x) y))) |
(+.f64 (-.f64 (-.f64 z (*.f64 (-.f64 y 1) x)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (-.f64 z (+.f64 (*.f64 x (+.f64 y -1)) (*.f64 (+.f64 t -1) a)))) |
(fma.f64 (-.f64 (+.f64 y t) 2) b (-.f64 z (fma.f64 x (+.f64 y -1) (*.f64 (+.f64 t -1) a)))) |
(fma.f64 (+.f64 t (-.f64 y 2)) b (fma.f64 a (-.f64 1 t) (fma.f64 x (-.f64 1 y) z))) |
(+.f64 (-.f64 (-.f64 t (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 x 1) a)) (*.f64 (-.f64 (+.f64 y x) 2) b)) |
(+.f64 (-.f64 (-.f64 t (*.f64 (+.f64 y -1) z)) (*.f64 a (+.f64 x -1))) (*.f64 b (+.f64 y (-.f64 x 2)))) |
(fma.f64 b (+.f64 x (+.f64 y -2)) (-.f64 t (fma.f64 (+.f64 y -1) z (*.f64 a (+.f64 x -1))))) |
(fma.f64 b (+.f64 x (-.f64 y 2)) (fma.f64 a (-.f64 1 x) (fma.f64 z (-.f64 1 y) t))) |
(+.f64 (-.f64 (-.f64 a (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (-.f64 a (+.f64 (*.f64 (+.f64 y -1) z) (*.f64 x (+.f64 t -1))))) |
(fma.f64 (-.f64 (+.f64 y t) 2) b (-.f64 a (fma.f64 (+.f64 y -1) z (*.f64 x (+.f64 t -1))))) |
(fma.f64 (+.f64 t (-.f64 y 2)) b (fma.f64 x (-.f64 1 t) (fma.f64 z (-.f64 1 y) a))) |
(+.f64 (-.f64 (-.f64 b (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) x)) |
(+.f64 (-.f64 b (+.f64 (*.f64 (+.f64 y -1) z) (*.f64 (+.f64 t -1) a))) (*.f64 x (+.f64 y (-.f64 t 2)))) |
(fma.f64 x (-.f64 (+.f64 y t) 2) (-.f64 b (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a)))) |
(fma.f64 x (+.f64 t (-.f64 y 2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) b))) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 z 1) y)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 z t) 2) b)) |
(+.f64 (-.f64 x (+.f64 (*.f64 y (+.f64 z -1)) (*.f64 (+.f64 t -1) a))) (*.f64 b (+.f64 z (-.f64 t 2)))) |
(fma.f64 b (+.f64 t (+.f64 z -2)) (-.f64 x (fma.f64 y (+.f64 z -1) (*.f64 (+.f64 t -1) a)))) |
(fma.f64 b (+.f64 z (+.f64 t -2)) (fma.f64 a (-.f64 1 t) (fma.f64 y (-.f64 1 z) x))) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 t 1) z)) (*.f64 (-.f64 y 1) a)) (*.f64 (-.f64 (+.f64 t y) 2) b)) |
(+.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (-.f64 (-.f64 x (*.f64 z (+.f64 t -1))) (*.f64 (+.f64 y -1) a))) |
(fma.f64 (-.f64 (+.f64 y t) 2) b (-.f64 x (fma.f64 (+.f64 y -1) a (*.f64 z (+.f64 t -1))))) |
(fma.f64 (+.f64 t (-.f64 y 2)) b (fma.f64 z (-.f64 1 t) (fma.f64 a (-.f64 1 y) x))) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 a 1) z)) (*.f64 (-.f64 t 1) y)) (*.f64 (-.f64 (+.f64 a t) 2) b)) |
(+.f64 (-.f64 x (+.f64 (*.f64 z (+.f64 a -1)) (*.f64 y (+.f64 t -1)))) (*.f64 b (+.f64 a (-.f64 t 2)))) |
(fma.f64 b (+.f64 t (+.f64 a -2)) (-.f64 x (fma.f64 z (+.f64 a -1) (*.f64 y (+.f64 t -1))))) |
(fma.f64 b (+.f64 t (+.f64 a -2)) (fma.f64 y (-.f64 1 t) (fma.f64 z (-.f64 1 a) x))) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 b 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 b t) 2) y)) |
(+.f64 (-.f64 x (+.f64 (*.f64 z (+.f64 b -1)) (*.f64 (+.f64 t -1) a))) (*.f64 y (+.f64 b (-.f64 t 2)))) |
(fma.f64 y (+.f64 t (-.f64 b 2)) (-.f64 x (fma.f64 z (+.f64 b -1) (*.f64 (+.f64 t -1) a)))) |
(fma.f64 y (+.f64 t (-.f64 b 2)) (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 b) x))) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) t)) (*.f64 (-.f64 z 1) a)) (*.f64 (-.f64 (+.f64 y z) 2) b)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (+.f64 y -1) t)) (*.f64 a (+.f64 z -1))) (*.f64 b (+.f64 y (-.f64 z 2)))) |
(fma.f64 b (+.f64 y (+.f64 z -2)) (-.f64 x (fma.f64 (+.f64 y -1) t (*.f64 a (+.f64 z -1))))) |
(fma.f64 b (+.f64 y (+.f64 z -2)) (fma.f64 a (-.f64 1 z) (fma.f64 t (-.f64 1 y) x))) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) a)) (*.f64 (-.f64 t 1) z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (-.f64 (-.f64 x (*.f64 z (+.f64 t -1))) (*.f64 (+.f64 y -1) a))) |
(fma.f64 (-.f64 (+.f64 y t) 2) b (-.f64 x (fma.f64 (+.f64 y -1) a (*.f64 z (+.f64 t -1))))) |
(fma.f64 (+.f64 t (-.f64 y 2)) b (fma.f64 z (-.f64 1 t) (fma.f64 a (-.f64 1 y) x))) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) b)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) z)) |
(+.f64 (-.f64 x (+.f64 (*.f64 (+.f64 y -1) b) (*.f64 (+.f64 t -1) a))) (*.f64 z (+.f64 y (-.f64 t 2)))) |
(fma.f64 z (-.f64 (+.f64 y t) 2) (-.f64 x (fma.f64 (+.f64 y -1) b (*.f64 (+.f64 t -1) a)))) |
(fma.f64 z (+.f64 t (-.f64 y 2)) (fma.f64 a (-.f64 1 t) (fma.f64 b (-.f64 1 y) x))) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 a 1) t)) (*.f64 (-.f64 (+.f64 y a) 2) b)) |
(+.f64 (-.f64 x (+.f64 (*.f64 (+.f64 y -1) z) (*.f64 t (+.f64 a -1)))) (*.f64 b (+.f64 y (-.f64 a 2)))) |
(fma.f64 b (+.f64 y (+.f64 a -2)) (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 t (+.f64 a -1))))) |
(fma.f64 b (+.f64 a (-.f64 y 2)) (fma.f64 t (-.f64 1 a) (fma.f64 z (-.f64 1 y) x))) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 b 1) a)) (*.f64 (-.f64 (+.f64 y b) 2) t)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (+.f64 y -1) z)) (*.f64 a (+.f64 b -1))) (*.f64 t (+.f64 y (-.f64 b 2)))) |
(fma.f64 t (+.f64 y (-.f64 b 2)) (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 a (+.f64 b -1))))) |
(fma.f64 t (+.f64 y (-.f64 b 2)) (fma.f64 a (-.f64 1 b) (fma.f64 z (-.f64 1 y) x))) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) b)) (*.f64 (-.f64 (+.f64 y t) 2) a)) |
(+.f64 (-.f64 x (+.f64 (*.f64 (+.f64 y -1) z) (*.f64 (+.f64 t -1) b))) (*.f64 a (+.f64 y (-.f64 t 2)))) |
(fma.f64 a (-.f64 (+.f64 y t) 2) (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) b)))) |
(fma.f64 a (+.f64 t (-.f64 y 2)) (fma.f64 b (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))) |
Compiled 33 to 25 computations (24.2% saved)
| 1× | egg-herbie |
| 494× | fma-neg_binary64 |
| 471× | distribute-neg-in_binary64 |
| 457× | associate--l-_binary64 |
| 369× | associate--r-_binary64 |
| 344× | +-commutative_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 19 | 31 |
| 1 | 49 | 27 |
| 2 | 145 | 25 |
| 3 | 616 | 25 |
| 4 | 2231 | 25 |
| 5 | 5563 | 25 |
| 6 | 7040 | 25 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| Outputs |
|---|
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(-.f64 (-.f64 x (*.f64 (+.f64 y -1) z)) (-.f64 (*.f64 (+.f64 t -1) a) (*.f64 (+.f64 y (-.f64 t 2)) b))) |
(fma.f64 (+.f64 t (-.f64 y 2)) b (-.f64 x (fma.f64 (-.f64 y 1) z (*.f64 (+.f64 t -1) a)))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x))) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 (+.f64 y t) -2) b (fma.f64 z (-.f64 1 y) x))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))) |
Compiled 45 to 29 computations (35.6% saved)
3 alts after pruning (3 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 2 | 2 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 0 | 3 | 3 |
| Status | Error | Program |
|---|---|---|
| ▶ | 0.0b | (+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| ▶ | 0.0b | (fma.f64 (+.f64 y (+.f64 t -2)) b (fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))) |
Compiled 51 to 35 computations (31.4% saved)
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (*.f64 (-.f64 y 1) z) |
| ✓ | 0.0b | (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) |
| ✓ | 0.0b | (*.f64 (-.f64 (+.f64 y t) 2) b) |
| ✓ | 0.0b | (*.f64 (-.f64 t 1) a) |
Compiled 86 to 48 computations (44.2% saved)
36 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 3.0ms | a | @ | inf | (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) |
| 1.0ms | t | @ | -inf | (*.f64 (-.f64 (+.f64 y t) 2) b) |
| 1.0ms | a | @ | inf | (*.f64 (-.f64 t 1) a) |
| 1.0ms | t | @ | inf | (*.f64 (-.f64 t 1) a) |
| 1.0ms | z | @ | -inf | (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) |
| 1× | batch-egg-rewrite |
| 575× | fma-neg_binary64 |
| 382× | expm1-udef_binary64 |
| 382× | log1p-udef_binary64 |
| 227× | add-sqr-sqrt_binary64 |
| 221× | *-un-lft-identity_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 18 | 43 |
| 1 | 422 | 41 |
| 2 | 6230 | 41 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (-.f64 t 1) a) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) |
(*.f64 (-.f64 y 1) z) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 t a) (*.f64 -1 a))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 a t) (*.f64 a -1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 t -1) a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 t 3) -1) a) (fma.f64 t t (+.f64 t 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 t t -1) a) (+.f64 t 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 a (+.f64 (pow.f64 t 3) -1)) (fma.f64 t t (+.f64 t 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 a (fma.f64 t t -1)) (+.f64 t 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 t -1) a) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (+.f64 t -1) a)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (+.f64 t -1) a)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 t -1) a) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (+.f64 t -1) a) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 a) (+.f64 t -1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 t -1) a))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (+.f64 t -1) a) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (+.f64 t -1) a)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (+.f64 t -1) a)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (+.f64 t -1) a)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 t -1) a)) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 t y) b) (*.f64 -2 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 b y) (*.f64 b (-.f64 t 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 b (+.f64 t y)) (*.f64 b -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 t (-.f64 y 2)) b))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (+.f64 t y) 3) -8) b) (+.f64 (pow.f64 (+.f64 t y) 2) (+.f64 4 (*.f64 (+.f64 t y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (+.f64 t y) 2) -4) b) (+.f64 y (+.f64 t 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 b (+.f64 (pow.f64 (+.f64 t y) 3) -8)) (+.f64 (pow.f64 (+.f64 t y) 2) (+.f64 4 (*.f64 (+.f64 t y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 b (+.f64 (pow.f64 (+.f64 t y) 2) -4)) (+.f64 y (+.f64 t 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 t (-.f64 y 2)) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 t (-.f64 y 2)) b) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (+.f64 t (-.f64 y 2)) b)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (+.f64 t (-.f64 y 2)) b)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (+.f64 t (-.f64 y 2)) b) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 b) (+.f64 t (-.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 t (-.f64 y 2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (+.f64 t (-.f64 y 2)) b) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (+.f64 t (-.f64 y 2)) 3) (pow.f64 b 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 b 3) (pow.f64 (+.f64 t (-.f64 y 2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (+.f64 t (-.f64 y 2)) b)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (+.f64 t (-.f64 y 2)) b)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (+.f64 t (-.f64 y 2)) b)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 t (-.f64 y 2)) b)) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 x (neg.f64 (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 x (fma.f64 (+.f64 y -1) (neg.f64 z) (*.f64 a (+.f64 (neg.f64 t) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 x (+.f64 (*.f64 (+.f64 y -1) (neg.f64 z)) (*.f64 a (+.f64 (neg.f64 t) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 (+.f64 y -1) z)) (*.f64 a (+.f64 (neg.f64 t) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 (+.f64 y -1) z)) (*.f64 (*.f64 a (+.f64 (neg.f64 t) 1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a))) (fma.f64 (*.f64 a (+.f64 (neg.f64 t) 1)) 1 (*.f64 (+.f64 t -1) a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a))) (fma.f64 (+.f64 (neg.f64 t) 1) a (*.f64 (+.f64 t -1) a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (+.f64 t -1) a))) (cbrt.f64 (pow.f64 (*.f64 (+.f64 t -1) a) 2)) (*.f64 (+.f64 t -1) a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 a (+.f64 (neg.f64 t) 1)) (-.f64 x (*.f64 (+.f64 y -1) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a)))) (cbrt.f64 (pow.f64 (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a))) 2)) (cbrt.f64 (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a)))) (sqrt.f64 (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 y -1) z)) 3) (pow.f64 (*.f64 (+.f64 t -1) a) 3)) (/.f64 1 (+.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 y -1) z)) 2) (*.f64 (*.f64 (+.f64 t -1) a) (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 a (+.f64 (neg.f64 t) 1))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 y -1) z)) 2) (pow.f64 (*.f64 (+.f64 t -1) a) 2)) (/.f64 1 (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 a (+.f64 (neg.f64 t) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (-.f64 x (*.f64 (+.f64 y -1) z))) (sqrt.f64 (*.f64 (+.f64 t -1) a))) (-.f64 (sqrt.f64 (-.f64 x (*.f64 (+.f64 y -1) z))) (sqrt.f64 (*.f64 (+.f64 t -1) a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 y -1) z)) 2) (*.f64 (*.f64 (+.f64 t -1) a) (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 a (+.f64 (neg.f64 t) 1)))))) (-.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 y -1) z)) 3) (pow.f64 (*.f64 (+.f64 t -1) a) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 a (+.f64 (neg.f64 t) 1)))) (-.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 y -1) z)) 2) (pow.f64 (*.f64 (+.f64 t -1) a) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 y -1) z)) 3) (pow.f64 (*.f64 (+.f64 t -1) a) 3)) (+.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 y -1) z)) 2) (*.f64 (*.f64 (+.f64 t -1) a) (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 a (+.f64 (neg.f64 t) 1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 y -1) z)) 2) (pow.f64 (*.f64 (+.f64 t -1) a) 2)) (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 a (+.f64 (neg.f64 t) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 y -1) z)) 3) (pow.f64 (*.f64 (+.f64 t -1) a) 3))) (neg.f64 (+.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 y -1) z)) 2) (*.f64 (*.f64 (+.f64 t -1) a) (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 a (+.f64 (neg.f64 t) 1))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 y -1) z)) 2) (pow.f64 (*.f64 (+.f64 t -1) a) 2))) (neg.f64 (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 a (+.f64 (neg.f64 t) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 3) (pow.f64 (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a)) 3)) (+.f64 (*.f64 x x) (+.f64 (*.f64 (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a)) (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a))) (*.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 y -1) z)) 3) (pow.f64 (*.f64 a (+.f64 (neg.f64 t) 1)) 3)) (+.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 y -1) z)) 2) (-.f64 (*.f64 (*.f64 a (+.f64 (neg.f64 t) 1)) (*.f64 a (+.f64 (neg.f64 t) 1))) (*.f64 (-.f64 x (*.f64 (+.f64 y -1) z)) (*.f64 a (+.f64 (neg.f64 t) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (*.f64 (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a)) (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a)))) (+.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 y -1) z)) 2) (*.f64 (*.f64 a (+.f64 (neg.f64 t) 1)) (*.f64 a (+.f64 (neg.f64 t) 1)))) (-.f64 (-.f64 x (*.f64 (+.f64 y -1) z)) (*.f64 a (+.f64 (neg.f64 t) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 x (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (neg.f64 (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (neg.f64 (-.f64 (*.f64 (+.f64 y -1) z) (*.f64 a (+.f64 (neg.f64 t) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 x (*.f64 (+.f64 y -1) z)) (*.f64 a (+.f64 (neg.f64 t) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (neg.f64 (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (neg.f64 (-.f64 (*.f64 (+.f64 y -1) z) (*.f64 a (+.f64 (neg.f64 t) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 x (*.f64 (+.f64 y -1) z)) 1 (*.f64 a (+.f64 (neg.f64 t) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 x (*.f64 (+.f64 y -1) z))) (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (+.f64 y -1) z))) 2) (*.f64 a (+.f64 (neg.f64 t) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (+.f64 y -1) z))) 2) (cbrt.f64 (-.f64 x (*.f64 (+.f64 y -1) z))) (*.f64 a (+.f64 (neg.f64 t) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (-.f64 (*.f64 (+.f64 y -1) z) (*.f64 a (+.f64 (neg.f64 t) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (-.f64 (*.f64 (+.f64 y -1) z) (*.f64 a (+.f64 (neg.f64 t) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 x (*.f64 (+.f64 y -1) z))) (sqrt.f64 (-.f64 x (*.f64 (+.f64 y -1) z))) (*.f64 a (+.f64 (neg.f64 t) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (fma.f64 (+.f64 y -1) z (*.f64 (+.f64 t -1) a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (-.f64 (*.f64 (+.f64 y -1) z) (*.f64 a (+.f64 (neg.f64 t) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (+.f64 y -1) z) 3)) (/.f64 1 (fma.f64 x x (*.f64 (*.f64 (+.f64 y -1) z) (+.f64 x (*.f64 (+.f64 y -1) z))))) (*.f64 a (+.f64 (neg.f64 t) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (+.f64 y -1) z) 2)) (/.f64 1 (+.f64 x (*.f64 (+.f64 y -1) z))) (*.f64 a (+.f64 (neg.f64 t) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (+.f64 y -1) z))) (-.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (+.f64 y -1) z))) (*.f64 a (+.f64 (neg.f64 t) 1))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y z) (*.f64 -1 z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z y) (*.f64 z -1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 y -1) z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 y 3) -1) z) (fma.f64 y y (+.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 y y -1) z) (+.f64 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (+.f64 (pow.f64 y 3) -1)) (fma.f64 y y (+.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (fma.f64 y y -1)) (+.f64 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 y -1) z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (+.f64 y -1) z)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (+.f64 y -1) z)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 y -1) z) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (+.f64 y -1) z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 z) (+.f64 y -1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 y -1) z))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (+.f64 y -1) z) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (+.f64 y -1) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (+.f64 y -1) z)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (+.f64 y -1) z)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 y -1) z)) 1)))))) |
| 1× | egg-herbie |
| 2216× | fma-neg_binary64 |
| 539× | fma-def_binary64 |
| 465× | sub-neg_binary64 |
| 422× | unsub-neg_binary64 |
| 345× | distribute-rgt-in_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 60 | 1369 |
| 1 | 179 | 1321 |
| 2 | 444 | 1223 |
| 3 | 1211 | 1223 |
| 4 | 3221 | 1223 |
| 5 | 3806 | 1223 |
| 6 | 4409 | 1223 |
| 7 | 4832 | 1223 |
| 8 | 4981 | 1223 |
| 9 | 5014 | 1223 |
| 10 | 5427 | 1223 |
| 11 | 5547 | 1223 |
| 12 | 5687 | 1223 |
| 13 | 5743 | 1223 |
| 14 | 5743 | 1223 |
| 15 | 7809 | 1223 |
| 16 | 7809 | 1223 |
| 17 | 7809 | 1223 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 -1 a) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(*.f64 a t) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(*.f64 a t) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(*.f64 b (-.f64 t 2)) |
(+.f64 (*.f64 y b) (*.f64 b (-.f64 t 2))) |
(+.f64 (*.f64 y b) (*.f64 b (-.f64 t 2))) |
(+.f64 (*.f64 y b) (*.f64 b (-.f64 t 2))) |
(*.f64 y b) |
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)) |
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)) |
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)) |
(*.f64 y b) |
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)) |
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)) |
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)) |
(*.f64 (-.f64 y 2) b) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x) |
x |
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x) |
x |
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x) |
(-.f64 x (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a))) |
(*.f64 -1 (*.f64 y z)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a))) |
(*.f64 -1 (*.f64 y z)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a))) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a)) |
(*.f64 z (-.f64 1 y)) |
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a)) |
(*.f64 -1 (*.f64 z (-.f64 y 1))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 y 1))) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 y 1))) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 y 1))) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 x (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(*.f64 -1 (*.f64 a t)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(*.f64 -1 (*.f64 a t)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(-.f64 x (*.f64 z (-.f64 y 1))) |
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1))) |
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1))) |
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1))) |
(*.f64 a (-.f64 1 t)) |
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1))) |
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1))) |
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1))) |
(*.f64 -1 (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) (*.f64 z (-.f64 y 1))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) (*.f64 z (-.f64 y 1))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) (*.f64 z (-.f64 y 1))) |
(*.f64 -1 z) |
(+.f64 (*.f64 y z) (*.f64 -1 z)) |
(+.f64 (*.f64 y z) (*.f64 -1 z)) |
(+.f64 (*.f64 y z) (*.f64 -1 z)) |
(*.f64 y z) |
(+.f64 (*.f64 -1 z) (*.f64 y z)) |
(+.f64 (*.f64 -1 z) (*.f64 y z)) |
(+.f64 (*.f64 -1 z) (*.f64 y z)) |
(*.f64 y z) |
(+.f64 (*.f64 -1 z) (*.f64 y z)) |
(+.f64 (*.f64 -1 z) (*.f64 y z)) |
(+.f64 (*.f64 -1 z) (*.f64 y z)) |
(*.f64 z (-.f64 y 1)) |
(*.f64 z (-.f64 y 1)) |
(*.f64 z (-.f64 y 1)) |
(*.f64 z (-.f64 y 1)) |
(*.f64 z (-.f64 y 1)) |
(*.f64 z (-.f64 y 1)) |
(*.f64 z (-.f64 y 1)) |
(*.f64 z (-.f64 y 1)) |
(*.f64 z (-.f64 y 1)) |
(*.f64 z (-.f64 y 1)) |
(*.f64 z (-.f64 y 1)) |
(*.f64 z (-.f64 y 1)) |
| Outputs |
|---|
(*.f64 -1 a) |
(neg.f64 a) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(fma.f64 a t (neg.f64 a)) |
(*.f64 a (+.f64 -1 t)) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(fma.f64 a t (neg.f64 a)) |
(*.f64 a (+.f64 -1 t)) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(fma.f64 a t (neg.f64 a)) |
(*.f64 a (+.f64 -1 t)) |
(*.f64 a t) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(fma.f64 a t (neg.f64 a)) |
(*.f64 a (+.f64 -1 t)) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(fma.f64 a t (neg.f64 a)) |
(*.f64 a (+.f64 -1 t)) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(fma.f64 a t (neg.f64 a)) |
(*.f64 a (+.f64 -1 t)) |
(*.f64 a t) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(fma.f64 a t (neg.f64 a)) |
(*.f64 a (+.f64 -1 t)) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(fma.f64 a t (neg.f64 a)) |
(*.f64 a (+.f64 -1 t)) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(fma.f64 a t (neg.f64 a)) |
(*.f64 a (+.f64 -1 t)) |
(*.f64 b (-.f64 t 2)) |
(*.f64 b (+.f64 t -2)) |
(+.f64 (*.f64 y b) (*.f64 b (-.f64 t 2))) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (+.f64 y t) -2)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(+.f64 (*.f64 y b) (*.f64 b (-.f64 t 2))) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (+.f64 y t) -2)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(+.f64 (*.f64 y b) (*.f64 b (-.f64 t 2))) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (+.f64 y t) -2)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 y b) |
(*.f64 b y) |
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (+.f64 y t) -2)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (+.f64 y t) -2)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (+.f64 y t) -2)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 y b) |
(*.f64 b y) |
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (+.f64 y t) -2)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (+.f64 y t) -2)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (+.f64 y t) -2)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 (-.f64 y 2) b) |
(*.f64 b (+.f64 y -2)) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (+.f64 y t) -2)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (+.f64 y t) -2)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (+.f64 y t) -2)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (+.f64 y t) -2)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (+.f64 y t) -2)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (+.f64 y t) -2)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (+.f64 y t) -2)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (+.f64 y t) -2)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (+.f64 y t) -2)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) |
(neg.f64 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1)))) |
(-.f64 (*.f64 a (-.f64 1 t)) (fma.f64 y z (neg.f64 z))) |
(-.f64 z (fma.f64 a (+.f64 -1 t) (*.f64 y z))) |
(-.f64 z (fma.f64 a t (fma.f64 y z (neg.f64 a)))) |
(-.f64 a (fma.f64 y z (fma.f64 a t (neg.f64 z)))) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
x |
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
x |
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 (-.f64 t 1) a) (*.f64 z (-.f64 y 1)))) x) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 x (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a))) |
(-.f64 x (fma.f64 -1 z (*.f64 a (+.f64 t -1)))) |
(-.f64 x (-.f64 (fma.f64 a t (neg.f64 a)) z)) |
(+.f64 z (fma.f64 a (-.f64 1 t) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(*.f64 -1 (*.f64 y z)) |
(neg.f64 (*.f64 y z)) |
(*.f64 y (neg.f64 z)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(*.f64 -1 (*.f64 y z)) |
(neg.f64 (*.f64 y z)) |
(*.f64 y (neg.f64 z)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (*.f64 (-.f64 t 1) a))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(-.f64 x (*.f64 a (+.f64 t -1))) |
(fma.f64 a (-.f64 1 t) x) |
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a)) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a)) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a)) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(*.f64 z (-.f64 1 y)) |
(fma.f64 y (neg.f64 z) z) |
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a)) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a)) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (*.f64 (-.f64 t 1) a)) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(*.f64 -1 (*.f64 z (-.f64 y 1))) |
(*.f64 z (-.f64 1 y)) |
(fma.f64 y (neg.f64 z) z) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 y 1))) x) (*.f64 (-.f64 t 1) a)) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 y 1))) x) (*.f64 (-.f64 t 1) a)) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 y 1))) x) (*.f64 (-.f64 t 1) a)) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 x (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(-.f64 x (fma.f64 z (+.f64 y -1) (neg.f64 a))) |
(-.f64 x (-.f64 (fma.f64 y z (neg.f64 z)) a)) |
(+.f64 x (fma.f64 z (-.f64 1 y) a)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(*.f64 -1 (*.f64 a t)) |
(*.f64 (neg.f64 a) t) |
(*.f64 a (neg.f64 t)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(*.f64 -1 (*.f64 a t)) |
(*.f64 (neg.f64 a) t) |
(*.f64 a (neg.f64 t)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 x (*.f64 z (-.f64 y 1))) |
(-.f64 x (*.f64 z (+.f64 y -1))) |
(-.f64 x (fma.f64 y z (neg.f64 z))) |
(fma.f64 z (-.f64 1 y) x) |
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
(fma.f64 a (neg.f64 t) a) |
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(*.f64 -1 (*.f64 (-.f64 t 1) a)) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
(fma.f64 a (neg.f64 t) a) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) (*.f64 z (-.f64 y 1))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) (*.f64 z (-.f64 y 1))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) (*.f64 z (-.f64 y 1))) |
(fma.f64 -1 (fma.f64 (+.f64 t -1) a (*.f64 z (+.f64 y -1))) x) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (fma.f64 a t (neg.f64 a)))) |
(fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(*.f64 -1 z) |
(neg.f64 z) |
(+.f64 (*.f64 y z) (*.f64 -1 z)) |
(*.f64 z (+.f64 y -1)) |
(fma.f64 y z (neg.f64 z)) |
(*.f64 z (+.f64 -1 y)) |
(+.f64 (*.f64 y z) (*.f64 -1 z)) |
(*.f64 z (+.f64 y -1)) |
(fma.f64 y z (neg.f64 z)) |
(*.f64 z (+.f64 -1 y)) |
(+.f64 (*.f64 y z) (*.f64 -1 z)) |
(*.f64 z (+.f64 y -1)) |
(fma.f64 y z (neg.f64 z)) |
(*.f64 z (+.f64 -1 y)) |
(*.f64 y z) |
(+.f64 (*.f64 -1 z) (*.f64 y z)) |
(*.f64 z (+.f64 y -1)) |
(fma.f64 y z (neg.f64 z)) |
(*.f64 z (+.f64 -1 y)) |
(+.f64 (*.f64 -1 z) (*.f64 y z)) |
(*.f64 z (+.f64 y -1)) |
(fma.f64 y z (neg.f64 z)) |
(*.f64 z (+.f64 -1 y)) |
(+.f64 (*.f64 -1 z) (*.f64 y z)) |
(*.f64 z (+.f64 y -1)) |
(fma.f64 y z (neg.f64 z)) |
(*.f64 z (+.f64 -1 y)) |
(*.f64 y z) |
(+.f64 (*.f64 -1 z) (*.f64 y z)) |
(*.f64 z (+.f64 y -1)) |
(fma.f64 y z (neg.f64 z)) |
(*.f64 z (+.f64 -1 y)) |
(+.f64 (*.f64 -1 z) (*.f64 y z)) |
(*.f64 z (+.f64 y -1)) |
(fma.f64 y z (neg.f64 z)) |
(*.f64 z (+.f64 -1 y)) |
(+.f64 (*.f64 -1 z) (*.f64 y z)) |
(*.f64 z (+.f64 y -1)) |
(fma.f64 y z (neg.f64 z)) |
(*.f64 z (+.f64 -1 y)) |
(*.f64 z (-.f64 y 1)) |
(*.f64 z (+.f64 y -1)) |
(fma.f64 y z (neg.f64 z)) |
(*.f64 z (+.f64 -1 y)) |
(*.f64 z (-.f64 y 1)) |
(*.f64 z (+.f64 y -1)) |
(fma.f64 y z (neg.f64 z)) |
(*.f64 z (+.f64 -1 y)) |
(*.f64 z (-.f64 y 1)) |
(*.f64 z (+.f64 y -1)) |
(fma.f64 y z (neg.f64 z)) |
(*.f64 z (+.f64 -1 y)) |
(*.f64 z (-.f64 y 1)) |
(*.f64 z (+.f64 y -1)) |
(fma.f64 y z (neg.f64 z)) |
(*.f64 z (+.f64 -1 y)) |
(*.f64 z (-.f64 y 1)) |
(*.f64 z (+.f64 y -1)) |
(fma.f64 y z (neg.f64 z)) |
(*.f64 z (+.f64 -1 y)) |
(*.f64 z (-.f64 y 1)) |
(*.f64 z (+.f64 y -1)) |
(fma.f64 y z (neg.f64 z)) |
(*.f64 z (+.f64 -1 y)) |
(*.f64 z (-.f64 y 1)) |
(*.f64 z (+.f64 y -1)) |
(fma.f64 y z (neg.f64 z)) |
(*.f64 z (+.f64 -1 y)) |
(*.f64 z (-.f64 y 1)) |
(*.f64 z (+.f64 y -1)) |
(fma.f64 y z (neg.f64 z)) |
(*.f64 z (+.f64 -1 y)) |
(*.f64 z (-.f64 y 1)) |
(*.f64 z (+.f64 y -1)) |
(fma.f64 y z (neg.f64 z)) |
(*.f64 z (+.f64 -1 y)) |
(*.f64 z (-.f64 y 1)) |
(*.f64 z (+.f64 y -1)) |
(fma.f64 y z (neg.f64 z)) |
(*.f64 z (+.f64 -1 y)) |
(*.f64 z (-.f64 y 1)) |
(*.f64 z (+.f64 y -1)) |
(fma.f64 y z (neg.f64 z)) |
(*.f64 z (+.f64 -1 y)) |
(*.f64 z (-.f64 y 1)) |
(*.f64 z (+.f64 y -1)) |
(fma.f64 y z (neg.f64 z)) |
(*.f64 z (+.f64 -1 y)) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (fma.f64 a (-.f64 1 t) x) |
Compiled 63 to 36 computations (42.9% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | a | @ | 0 | (fma.f64 a (-.f64 1 t) x) |
| 1.0ms | a | @ | -inf | (fma.f64 a (-.f64 1 t) x) |
| 1.0ms | t | @ | inf | (fma.f64 a (-.f64 1 t) x) |
| 1.0ms | t | @ | 0 | (fma.f64 a (-.f64 1 t) x) |
| 1.0ms | a | @ | inf | (fma.f64 a (-.f64 1 t) x) |
| 1× | batch-egg-rewrite |
| 719× | pow1_binary64 |
| 664× | add-log-exp_binary64 |
| 664× | log1p-expm1-u_binary64 |
| 664× | expm1-log1p-u_binary64 |
| 650× | add-exp-log_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 8 |
| 1 | 142 | 8 |
| 2 | 1737 | 8 |
| 1× | node limit |
| Inputs |
|---|
(fma.f64 a (-.f64 1 t) x) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 a (-.f64 1 t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 a (-.f64 1 t)) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 a (-.f64 1 t)) 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 a (-.f64 1 t) x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 a (-.f64 1 t) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 a (-.f64 1 t) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 a (-.f64 1 t) x)) (pow.f64 (cbrt.f64 (fma.f64 a (-.f64 1 t) x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 a (-.f64 1 t) x)) 2) (cbrt.f64 (fma.f64 a (-.f64 1 t) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 a (-.f64 1 t) x)) (sqrt.f64 (fma.f64 a (-.f64 1 t) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 a (-.f64 1 t)) 3) (pow.f64 x 3)) (+.f64 (*.f64 (*.f64 a (-.f64 1 t)) (*.f64 a (-.f64 1 t))) (-.f64 (*.f64 x x) (*.f64 (*.f64 a (-.f64 1 t)) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 a (-.f64 1 t)) (*.f64 a (-.f64 1 t))) (*.f64 x x)) (-.f64 (*.f64 a (-.f64 1 t)) x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 a (-.f64 1 t) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 a (-.f64 1 t) x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 a (-.f64 1 t) x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 a (-.f64 1 t) x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 a (-.f64 1 t) x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 a (-.f64 1 t) x)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 a (-.f64 1 t) x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 a (-.f64 1 t) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 a (-.f64 1 t) x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 a (-.f64 1 t) x))))))) |
| 1× | egg-herbie |
| 213× | fma-def_binary64 |
| 210× | fma-neg_binary64 |
| 52× | cancel-sign-sub-inv_binary64 |
| 38× | associate--r+_binary64 |
| 36× | sub-neg_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 14 | 256 |
| 1 | 32 | 256 |
| 2 | 58 | 256 |
| 3 | 105 | 256 |
| 4 | 182 | 256 |
| 5 | 327 | 256 |
| 6 | 601 | 256 |
| 7 | 790 | 256 |
| 8 | 929 | 256 |
| 9 | 953 | 256 |
| 1× | saturated |
| Inputs |
|---|
x |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(*.f64 a (-.f64 1 t)) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(*.f64 a (-.f64 1 t)) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(+.f64 a x) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x)) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x)) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x)) |
(*.f64 -1 (*.f64 a t)) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x)) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x)) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x)) |
(*.f64 -1 (*.f64 a t)) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x)) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x)) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x)) |
(*.f64 a (-.f64 1 t)) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
x |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
x |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
| Outputs |
|---|
x |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(fma.f64 a (-.f64 1 t) x) |
(*.f64 a (-.f64 1 t)) |
(fma.f64 a (neg.f64 t) a) |
(-.f64 a (*.f64 a t)) |
(fma.f64 t (neg.f64 a) a) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(fma.f64 a (-.f64 1 t) x) |
(*.f64 a (-.f64 1 t)) |
(fma.f64 a (neg.f64 t) a) |
(-.f64 a (*.f64 a t)) |
(fma.f64 t (neg.f64 a) a) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 a x) |
(+.f64 x a) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x)) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x)) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x)) |
(fma.f64 a (-.f64 1 t) x) |
(*.f64 -1 (*.f64 a t)) |
(neg.f64 (*.f64 a t)) |
(*.f64 a (neg.f64 t)) |
(*.f64 t (neg.f64 a)) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x)) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x)) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x)) |
(fma.f64 a (-.f64 1 t) x) |
(*.f64 -1 (*.f64 a t)) |
(neg.f64 (*.f64 a t)) |
(*.f64 a (neg.f64 t)) |
(*.f64 t (neg.f64 a)) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x)) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x)) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 a t)) x)) |
(fma.f64 a (-.f64 1 t) x) |
(*.f64 a (-.f64 1 t)) |
(fma.f64 a (neg.f64 t) a) |
(-.f64 a (*.f64 a t)) |
(fma.f64 t (neg.f64 a) a) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(fma.f64 a (-.f64 1 t) x) |
x |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(fma.f64 a (-.f64 1 t) x) |
x |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(fma.f64 a (-.f64 1 t) x) |
Compiled 4898 to 2922 computations (40.3% saved)
12 alts after pruning (12 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 186 | 12 | 198 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 1 | 0 | 1 |
| Total | 188 | 12 | 200 |
| Status | Error | Program |
|---|---|---|
| ▶ | 0.0b | (+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (+.f64 (*.f64 t a) (*.f64 -1 a))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| ▶ | 31.9b | (+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 28.2b | (+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) | |
| ▶ | 36.2b | (+.f64 (*.f64 y (neg.f64 z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 14.0b | (+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 y b)) | |
| 15.9b | (+.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 (-.f64 (+.f64 y t) 2) b)) | |
| 15.9b | (+.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 (-.f64 (+.f64 y t) 2) b)) | |
| 38.0b | (+.f64 (*.f64 a (neg.f64 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) | |
| 5.9b | (+.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) | |
| 5.9b | (+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (neg.f64 a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) | |
| ▶ | 27.5b | (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| ▶ | 16.9b | (+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
Compiled 498 to 354 computations (28.9% saved)
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| 0.0b | (*.f64 (-.f64 y 1) z) | |
| ✓ | 0.0b | (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (+.f64 (*.f64 t a) (*.f64 -1 a))) |
| 0.0b | (*.f64 (-.f64 (+.f64 y t) 2) b) | |
| ✓ | 0.0b | (+.f64 (*.f64 t a) (*.f64 -1 a)) |
Compiled 96 to 50 computations (47.9% saved)
21 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 4.0ms | x | @ | 0 | (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (+.f64 (*.f64 t a) (*.f64 -1 a))) |
| 1.0ms | a | @ | 0 | (+.f64 (*.f64 t a) (*.f64 -1 a)) |
| 1.0ms | t | @ | 0 | (+.f64 (*.f64 t a) (*.f64 -1 a)) |
| 1.0ms | a | @ | inf | (+.f64 (*.f64 t a) (*.f64 -1 a)) |
| 1.0ms | a | @ | -inf | (+.f64 (*.f64 t a) (*.f64 -1 a)) |
| 1× | batch-egg-rewrite |
| 785× | log-prod_binary64 |
| 507× | fma-neg_binary64 |
| 278× | expm1-udef_binary64 |
| 278× | log1p-udef_binary64 |
| 220× | log-pow_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 15 | 26 |
| 1 | 338 | 20 |
| 2 | 5242 | 20 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (*.f64 t a) (*.f64 -1 a)) |
(-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (+.f64 (*.f64 t a) (*.f64 -1 a))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 t a) a)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (fma.f64 t a a))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 t a a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 t a) 2) (fma.f64 t a a)) (/.f64 (*.f64 a a) (fma.f64 t a a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (fma.f64 t a a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 a (+.f64 t -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 a (neg.f64 (+.f64 t -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 a (-.f64 t -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 t a a) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 t a a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 t a a) 2) (/.f64 1 (fma.f64 t a a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (cbrt.f64 a) (+.f64 t -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 t a a)) (pow.f64 (cbrt.f64 (fma.f64 t a a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 t a a)) 2) (cbrt.f64 (fma.f64 t a a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 t a a)) 2) (neg.f64 (cbrt.f64 (fma.f64 t a a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) (+.f64 t -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 t a a)) (sqrt.f64 (fma.f64 t a a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 t a a)) (neg.f64 (sqrt.f64 (fma.f64 t a a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 t a) 3) (pow.f64 a 3)) (/.f64 1 (-.f64 (pow.f64 (fma.f64 t a a) 2) (*.f64 t (*.f64 a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 t -1) a)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (fma.f64 t a a))) (sqrt.f64 (fma.f64 t a a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (*.f64 t a)) (sqrt.f64 a)) (-.f64 (sqrt.f64 (*.f64 t a)) (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (pow.f64 (cbrt.f64 (fma.f64 t a a)) 2)) (cbrt.f64 (fma.f64 t a a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (pow.f64 (fma.f64 t a a) 2) (*.f64 t (*.f64 a a))) (+.f64 (pow.f64 (*.f64 t a) 3) (pow.f64 a 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 t a a) (pow.f64 (fma.f64 t a a) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (fma.f64 t a a) 2) (fma.f64 t a a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 t a) 3) (pow.f64 a 3)) (-.f64 (pow.f64 (fma.f64 t a a) 2) (*.f64 t (*.f64 a a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 t a) 3) (pow.f64 a 3)) (+.f64 (*.f64 a a) (-.f64 (pow.f64 (*.f64 t a) 2) (*.f64 t (*.f64 a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 (fma.f64 t a a) 2)) (fma.f64 t a a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 t a) 3) (pow.f64 a 3))) (-.f64 (pow.f64 (fma.f64 t a a) 2) (*.f64 t (*.f64 a a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 t a) 3) (pow.f64 a 3))) (neg.f64 (-.f64 (pow.f64 (fma.f64 t a a) 2) (*.f64 t (*.f64 a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 t a) 3) (pow.f64 a 3)) (-.f64 (pow.f64 (fma.f64 t a a) 2) (*.f64 t (*.f64 a a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 a a) (pow.f64 (*.f64 t a) 2)) (-.f64 a (*.f64 t a)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 t a a) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 t a a)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 t a a)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 t a a) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (fma.f64 t a a))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 t a a) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 t a a)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 t a a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 1 (exp.f64 (fma.f64 t a a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 a) t) (exp.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (fma.f64 t a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 1 (/.f64 1 (exp.f64 (fma.f64 t a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 1 (/.f64 (pow.f64 (exp.f64 a) t) (exp.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 t a))) (exp.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 a) t) (+.f64 1 (expm1.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 t a))) (+.f64 1 (expm1.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 t a))) (exp.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 a) t) (+.f64 1 (expm1.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 t a))) (+.f64 1 (expm1.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 a)) (pow.f64 (exp.f64 a) t)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 a) (+.f64 1 (expm1.f64 (*.f64 t a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 a)) (+.f64 1 (expm1.f64 (*.f64 t a)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 t a a) 3))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 t a) a)))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 t a a)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 t a a)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 t a a)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 t a a)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 t a a)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t a) 1 a)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 a (*.f64 t a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 a t a)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 a -1 (*.f64 t a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 t a) a)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 a (*.f64 t a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 a) 2) (cbrt.f64 a) (*.f64 t a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 a) 2) (*.f64 (cbrt.f64 a) t) a)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 t) 2) (*.f64 (cbrt.f64 t) a) a)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 t a)) (pow.f64 (cbrt.f64 (*.f64 t a)) 2) a)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 t a)) 2) (cbrt.f64 (*.f64 t a)) a)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 a) (sqrt.f64 a) (*.f64 t a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) t) a)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 t) (*.f64 (sqrt.f64 t) a) a)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 t a)) (sqrt.f64 (*.f64 t a)) a)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a) a)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 t (sqrt.f64 a)) (sqrt.f64 a) a)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a (pow.f64 (cbrt.f64 t) 2)) (cbrt.f64 t) a)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a (sqrt.f64 t)) (sqrt.f64 t) a))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 t a a) (-.f64 x (*.f64 (+.f64 -1 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 x (neg.f64 (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 x (fma.f64 (+.f64 -1 y) (neg.f64 z) (fma.f64 t a a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 x (+.f64 (*.f64 (+.f64 -1 y) (neg.f64 z)) (fma.f64 t a a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)) (fma.f64 t a a))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))) (fma.f64 (neg.f64 (+.f64 t -1)) a (fma.f64 t a a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))) (fma.f64 (neg.f64 (cbrt.f64 (fma.f64 t a a))) (pow.f64 (cbrt.f64 (fma.f64 t a a)) 2) (fma.f64 t a a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))) (+.f64 (fma.f64 t a a) (fma.f64 t a a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)) (*.f64 t a)) a)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)) a) (*.f64 t a))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))))) (cbrt.f64 (exp.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))))))) (log.f64 (cbrt.f64 (exp.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a)))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))) 2) (/.f64 1 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a)))) (pow.f64 (cbrt.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a)))) 2) (cbrt.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a)))) (sqrt.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)) 3) (pow.f64 (fma.f64 t a a) 3)) (/.f64 1 (+.f64 (pow.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))) 2) (*.f64 (fma.f64 t a a) (-.f64 x (*.f64 (+.f64 -1 y) z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (-.f64 x (*.f64 (+.f64 -1 y) z))) (sqrt.f64 (fma.f64 t a a))) (-.f64 (sqrt.f64 (-.f64 x (*.f64 (+.f64 -1 y) z))) (sqrt.f64 (fma.f64 t a a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))) 2) (*.f64 (fma.f64 t a a) (-.f64 x (*.f64 (+.f64 -1 y) z)))) (-.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)) 3) (pow.f64 (fma.f64 t a a) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))) (pow.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))) 2) (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)) 3) (pow.f64 (fma.f64 t a a) 3)) (+.f64 (pow.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))) 2) (*.f64 (fma.f64 t a a) (-.f64 x (*.f64 (+.f64 -1 y) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)) 3) (pow.f64 (fma.f64 t a a) 3))) (neg.f64 (+.f64 (pow.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))) 2) (*.f64 (fma.f64 t a a) (-.f64 x (*.f64 (+.f64 -1 y) z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))) 2)) (neg.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (+.f64 -1 y) z) 3)) (-.f64 (pow.f64 (fma.f64 t a a) 2) (*.f64 t (*.f64 a a)))) (*.f64 (fma.f64 x x (*.f64 (*.f64 (+.f64 -1 y) z) (+.f64 x (*.f64 (+.f64 -1 y) z)))) (+.f64 (pow.f64 (*.f64 t a) 3) (pow.f64 a 3)))) (*.f64 (fma.f64 x x (*.f64 (*.f64 (+.f64 -1 y) z) (+.f64 x (*.f64 (+.f64 -1 y) z)))) (-.f64 (pow.f64 (fma.f64 t a a) 2) (*.f64 t (*.f64 a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (+.f64 -1 y) z) 2)) (-.f64 (pow.f64 (fma.f64 t a a) 2) (*.f64 t (*.f64 a a)))) (*.f64 (+.f64 x (*.f64 (+.f64 -1 y) z)) (+.f64 (pow.f64 (*.f64 t a) 3) (pow.f64 a 3)))) (*.f64 (+.f64 x (*.f64 (+.f64 -1 y) z)) (-.f64 (pow.f64 (fma.f64 t a a) 2) (*.f64 t (*.f64 a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (+.f64 -1 y) z) 3)) (fma.f64 t a a)) (*.f64 (fma.f64 x x (*.f64 (*.f64 (+.f64 -1 y) z) (+.f64 x (*.f64 (+.f64 -1 y) z)))) (pow.f64 (fma.f64 t a a) 2))) (*.f64 (fma.f64 x x (*.f64 (*.f64 (+.f64 -1 y) z) (+.f64 x (*.f64 (+.f64 -1 y) z)))) (fma.f64 t a a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (+.f64 -1 y) z) 2)) (fma.f64 t a a)) (*.f64 (+.f64 x (*.f64 (+.f64 -1 y) z)) (pow.f64 (fma.f64 t a a) 2))) (*.f64 (+.f64 x (*.f64 (+.f64 -1 y) z)) (fma.f64 t a a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (+.f64 -1 y) z) 3)) (-.f64 (pow.f64 (fma.f64 t a a) 2) (*.f64 t (*.f64 a a)))) (*.f64 (fma.f64 x x (*.f64 (*.f64 (+.f64 -1 y) z) (+.f64 x (*.f64 (+.f64 -1 y) z)))) (+.f64 (pow.f64 (*.f64 t a) 3) (pow.f64 a 3)))) (*.f64 (fma.f64 x x (*.f64 (*.f64 (+.f64 -1 y) z) (+.f64 x (*.f64 (+.f64 -1 y) z)))) (-.f64 (pow.f64 (fma.f64 t a a) 2) (*.f64 t (*.f64 a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (+.f64 -1 y) z) 2)) (-.f64 (pow.f64 (fma.f64 t a a) 2) (*.f64 t (*.f64 a a)))) (*.f64 (+.f64 x (*.f64 (+.f64 -1 y) z)) (+.f64 (pow.f64 (*.f64 t a) 3) (pow.f64 a 3)))) (*.f64 (+.f64 x (*.f64 (+.f64 -1 y) z)) (-.f64 (pow.f64 (fma.f64 t a a) 2) (*.f64 t (*.f64 a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (+.f64 -1 y) z) 3)) (fma.f64 t a a)) (*.f64 (fma.f64 x x (*.f64 (*.f64 (+.f64 -1 y) z) (+.f64 x (*.f64 (+.f64 -1 y) z)))) (pow.f64 (fma.f64 t a a) 2))) (*.f64 (fma.f64 x x (*.f64 (*.f64 (+.f64 -1 y) z) (+.f64 x (*.f64 (+.f64 -1 y) z)))) (fma.f64 t a a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (+.f64 -1 y) z) 2)) (fma.f64 t a a)) (*.f64 (+.f64 x (*.f64 (+.f64 -1 y) z)) (pow.f64 (fma.f64 t a a) 2))) (*.f64 (+.f64 x (*.f64 (+.f64 -1 y) z)) (fma.f64 t a a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 3) (pow.f64 (fma.f64 (+.f64 -1 y) z (fma.f64 t a a)) 3)) (+.f64 (*.f64 x x) (+.f64 (*.f64 (fma.f64 (+.f64 -1 y) z (fma.f64 t a a)) (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))) (*.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (+.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)) (*.f64 t a)) 3) (pow.f64 a 3)) (+.f64 (*.f64 (+.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)) (*.f64 t a)) (+.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)) (*.f64 t a))) (+.f64 (*.f64 a a) (*.f64 (+.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)) (*.f64 t a)) a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)) 3) (pow.f64 (fma.f64 t a a) 3)) (+.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)) 2) (-.f64 (pow.f64 (fma.f64 t a a) 2) (*.f64 (fma.f64 t a a) (-.f64 x (*.f64 (+.f64 -1 y) z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (*.f64 (fma.f64 (+.f64 -1 y) z (fma.f64 t a a)) (fma.f64 (+.f64 -1 y) z (fma.f64 t a a)))) (+.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (+.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)) (*.f64 t a)) (+.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)) (*.f64 t a)) (*.f64 a a)) (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 x)) (exp.f64 (fma.f64 (+.f64 -1 y) z (fma.f64 t a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 x) (*.f64 (pow.f64 (exp.f64 z) (+.f64 -1 y)) (exp.f64 (fma.f64 t a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 x)) (*.f64 (pow.f64 (exp.f64 z) (+.f64 -1 y)) (exp.f64 (fma.f64 t a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)))) (exp.f64 (fma.f64 t a a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (-.f64 x (*.f64 (+.f64 -1 y) z))) (+.f64 1 (expm1.f64 (fma.f64 t a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)))) (+.f64 1 (expm1.f64 (fma.f64 t a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (-.f64 x (*.f64 (+.f64 -1 y) z))) (/.f64 1 (exp.f64 (fma.f64 t a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)))) (/.f64 1 (exp.f64 (fma.f64 t a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (-.f64 x (*.f64 (+.f64 -1 y) z))) (/.f64 (pow.f64 (exp.f64 a) t) (exp.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)))) (/.f64 (pow.f64 (exp.f64 a) t) (exp.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (/.f64 (exp.f64 (-.f64 x (*.f64 (+.f64 -1 y) z))) (pow.f64 (exp.f64 a) t)) (exp.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (+.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)) (*.f64 t a))) (+.f64 1 (expm1.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (/.f64 (exp.f64 (-.f64 x (*.f64 (+.f64 -1 y) z))) (pow.f64 (exp.f64 a) t)) (+.f64 1 (expm1.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 t a a)) (exp.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 t a a))) (exp.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 (fma.f64 t a a))) (exp.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 (pow.f64 (exp.f64 a) t) (exp.f64 a)) (exp.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 t a a)) (+.f64 1 (expm1.f64 (-.f64 x (*.f64 (+.f64 -1 y) z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 t a a))) (+.f64 1 (expm1.f64 (-.f64 x (*.f64 (+.f64 -1 y) z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 (fma.f64 t a a))) (+.f64 1 (expm1.f64 (-.f64 x (*.f64 (+.f64 -1 y) z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 (pow.f64 (exp.f64 a) t) (exp.f64 a)) (+.f64 1 (expm1.f64 (-.f64 x (*.f64 (+.f64 -1 y) z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)))) (exp.f64 (fma.f64 t a a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (-.f64 x (*.f64 (+.f64 -1 y) z))) (+.f64 1 (expm1.f64 (fma.f64 t a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)))) (+.f64 1 (expm1.f64 (fma.f64 t a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (-.f64 x (*.f64 (+.f64 -1 y) z))) (/.f64 1 (exp.f64 (fma.f64 t a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)))) (/.f64 1 (exp.f64 (fma.f64 t a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (-.f64 x (*.f64 (+.f64 -1 y) z))) (/.f64 (pow.f64 (exp.f64 a) t) (exp.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)))) (/.f64 (pow.f64 (exp.f64 a) t) (exp.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (+.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)) (*.f64 t a))) (exp.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 (exp.f64 (-.f64 x (*.f64 (+.f64 -1 y) z))) (pow.f64 (exp.f64 a) t)) (exp.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (+.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)) (*.f64 t a))) (+.f64 1 (expm1.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 (exp.f64 (-.f64 x (*.f64 (+.f64 -1 y) z))) (pow.f64 (exp.f64 a) t)) (+.f64 1 (expm1.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)) (fma.f64 t a a))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 x (fma.f64 (+.f64 -1 y) z (fma.f64 t a a)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (neg.f64 (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (neg.f64 (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 x (*.f64 (+.f64 -1 y) z)) (fma.f64 t a a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)) (*.f64 t a)) a)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)) 1 (fma.f64 t a a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 x (*.f64 (+.f64 -1 y) z))) (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (+.f64 -1 y) z))) 2) (fma.f64 t a a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (+.f64 -1 y) z))) 2) (cbrt.f64 (-.f64 x (*.f64 (+.f64 -1 y) z))) (fma.f64 t a a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 x (*.f64 (+.f64 -1 y) z))) (sqrt.f64 (-.f64 x (*.f64 (+.f64 -1 y) z))) (fma.f64 t a a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (fma.f64 (+.f64 -1 y) z (fma.f64 t a a))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (+.f64 -1 y) z) 3)) (/.f64 1 (fma.f64 x x (*.f64 (*.f64 (+.f64 -1 y) z) (+.f64 x (*.f64 (+.f64 -1 y) z))))) (fma.f64 t a a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (+.f64 -1 y) z) 2)) (/.f64 1 (+.f64 x (*.f64 (+.f64 -1 y) z))) (fma.f64 t a a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (+.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)) (*.f64 t a))) (cbrt.f64 (+.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)) (*.f64 t a)))) (cbrt.f64 (+.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)) (*.f64 t a))) a)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)) (*.f64 t a))) (sqrt.f64 (+.f64 (-.f64 x (*.f64 (+.f64 -1 y) z)) (*.f64 t a))) a)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (-.f64 x (*.f64 (+.f64 -1 y) z))) (sqrt.f64 (*.f64 t a))) (-.f64 (sqrt.f64 (-.f64 x (*.f64 (+.f64 -1 y) z))) (sqrt.f64 (*.f64 t a))) a)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (+.f64 -1 y) z))) (-.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (+.f64 -1 y) z))) (fma.f64 t a a)))))) |
| 1× | egg-herbie |
| 1947× | fma-neg_binary64 |
| 662× | fma-def_binary64 |
| 407× | sub-neg_binary64 |
| 291× | unsub-neg_binary64 |
| 277× | distribute-rgt-in_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 54 | 1085 |
| 1 | 187 | 1037 |
| 2 | 512 | 939 |
| 3 | 1346 | 939 |
| 4 | 3593 | 939 |
| 5 | 4212 | 939 |
| 6 | 4660 | 939 |
| 7 | 4855 | 939 |
| 8 | 4875 | 939 |
| 9 | 4875 | 939 |
| 10 | 5087 | 939 |
| 11 | 5117 | 939 |
| 12 | 5117 | 939 |
| 13 | 6588 | 939 |
| 14 | 6588 | 939 |
| 15 | 6588 | 939 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 -1 a) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(*.f64 a t) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(*.f64 a t) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(*.f64 (-.f64 t 1) a) |
(*.f64 (-.f64 t 1) a) |
(*.f64 (-.f64 t 1) a) |
(*.f64 (-.f64 t 1) a) |
(*.f64 (-.f64 t 1) a) |
(*.f64 (-.f64 t 1) a) |
(*.f64 (-.f64 t 1) a) |
(*.f64 (-.f64 t 1) a) |
(*.f64 -1 (*.f64 a (+.f64 (*.f64 -1 t) 1))) |
(*.f64 -1 (*.f64 a (+.f64 (*.f64 -1 t) 1))) |
(*.f64 -1 (*.f64 a (+.f64 (*.f64 -1 t) 1))) |
(*.f64 -1 (*.f64 a (+.f64 (*.f64 -1 t) 1))) |
(*.f64 -1 (+.f64 (*.f64 z (-.f64 y 1)) (+.f64 (*.f64 a t) (*.f64 -1 a)))) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 z (-.f64 y 1)) (+.f64 (*.f64 a t) (*.f64 -1 a)))) x) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 z (-.f64 y 1)) (+.f64 (*.f64 a t) (*.f64 -1 a)))) x) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 z (-.f64 y 1)) (+.f64 (*.f64 a t) (*.f64 -1 a)))) x) |
x |
(+.f64 (*.f64 -1 (+.f64 (*.f64 z (-.f64 y 1)) (+.f64 (*.f64 a t) (*.f64 -1 a)))) x) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 z (-.f64 y 1)) (+.f64 (*.f64 a t) (*.f64 -1 a)))) x) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 z (-.f64 y 1)) (+.f64 (*.f64 a t) (*.f64 -1 a)))) x) |
x |
(+.f64 (*.f64 -1 (+.f64 (*.f64 a t) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a)))) x) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 a t) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a)))) x) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 a t) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a)))) x) |
(-.f64 x (+.f64 (*.f64 -1 z) (+.f64 (*.f64 a t) (*.f64 -1 a)))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (+.f64 (*.f64 a t) (*.f64 -1 a)))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (+.f64 (*.f64 a t) (*.f64 -1 a)))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (+.f64 (*.f64 a t) (*.f64 -1 a)))) |
(*.f64 -1 (*.f64 y z)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (+.f64 (*.f64 a t) (*.f64 -1 a)))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (+.f64 (*.f64 a t) (*.f64 -1 a)))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (+.f64 (*.f64 a t) (*.f64 -1 a)))) |
(*.f64 -1 (*.f64 y z)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (+.f64 (*.f64 a t) (*.f64 -1 a)))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (+.f64 (*.f64 a t) (*.f64 -1 a)))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (+.f64 (*.f64 a t) (*.f64 -1 a)))) |
(-.f64 x (+.f64 (*.f64 a t) (*.f64 -1 a))) |
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (+.f64 (*.f64 a t) (*.f64 -1 a))) |
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (+.f64 (*.f64 a t) (*.f64 -1 a))) |
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (+.f64 (*.f64 a t) (*.f64 -1 a))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (+.f64 (*.f64 a t) (*.f64 -1 a))) |
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (+.f64 (*.f64 a t) (*.f64 -1 a))) |
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (+.f64 (*.f64 a t) (*.f64 -1 a))) |
(*.f64 -1 (*.f64 z (-.f64 y 1))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 y 1))) x) (+.f64 (*.f64 a t) (*.f64 -1 a))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 y 1))) x) (+.f64 (*.f64 a t) (*.f64 -1 a))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 y 1))) x) (+.f64 (*.f64 a t) (*.f64 -1 a))) |
(-.f64 x (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(*.f64 -1 (*.f64 a t)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(*.f64 -1 (*.f64 a t)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(-.f64 x (*.f64 z (-.f64 y 1))) |
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1))) |
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1))) |
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1))) |
(*.f64 a (-.f64 1 t)) |
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1))) |
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1))) |
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1))) |
(*.f64 a (+.f64 1 (*.f64 -1 t))) |
(-.f64 (+.f64 (*.f64 a (+.f64 1 (*.f64 -1 t))) x) (*.f64 z (-.f64 y 1))) |
(-.f64 (+.f64 (*.f64 a (+.f64 1 (*.f64 -1 t))) x) (*.f64 z (-.f64 y 1))) |
(-.f64 (+.f64 (*.f64 a (+.f64 1 (*.f64 -1 t))) x) (*.f64 z (-.f64 y 1))) |
| Outputs |
|---|
(*.f64 -1 a) |
(neg.f64 a) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(fma.f64 a t (neg.f64 a)) |
(-.f64 (*.f64 a t) a) |
(*.f64 a (+.f64 -1 t)) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(fma.f64 a t (neg.f64 a)) |
(-.f64 (*.f64 a t) a) |
(*.f64 a (+.f64 -1 t)) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(fma.f64 a t (neg.f64 a)) |
(-.f64 (*.f64 a t) a) |
(*.f64 a (+.f64 -1 t)) |
(*.f64 a t) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(fma.f64 a t (neg.f64 a)) |
(-.f64 (*.f64 a t) a) |
(*.f64 a (+.f64 -1 t)) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(fma.f64 a t (neg.f64 a)) |
(-.f64 (*.f64 a t) a) |
(*.f64 a (+.f64 -1 t)) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(fma.f64 a t (neg.f64 a)) |
(-.f64 (*.f64 a t) a) |
(*.f64 a (+.f64 -1 t)) |
(*.f64 a t) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(fma.f64 a t (neg.f64 a)) |
(-.f64 (*.f64 a t) a) |
(*.f64 a (+.f64 -1 t)) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(fma.f64 a t (neg.f64 a)) |
(-.f64 (*.f64 a t) a) |
(*.f64 a (+.f64 -1 t)) |
(+.f64 (*.f64 a t) (*.f64 -1 a)) |
(fma.f64 a t (neg.f64 a)) |
(-.f64 (*.f64 a t) a) |
(*.f64 a (+.f64 -1 t)) |
(*.f64 (-.f64 t 1) a) |
(fma.f64 a t (neg.f64 a)) |
(-.f64 (*.f64 a t) a) |
(*.f64 a (+.f64 -1 t)) |
(*.f64 (-.f64 t 1) a) |
(fma.f64 a t (neg.f64 a)) |
(-.f64 (*.f64 a t) a) |
(*.f64 a (+.f64 -1 t)) |
(*.f64 (-.f64 t 1) a) |
(fma.f64 a t (neg.f64 a)) |
(-.f64 (*.f64 a t) a) |
(*.f64 a (+.f64 -1 t)) |
(*.f64 (-.f64 t 1) a) |
(fma.f64 a t (neg.f64 a)) |
(-.f64 (*.f64 a t) a) |
(*.f64 a (+.f64 -1 t)) |
(*.f64 (-.f64 t 1) a) |
(fma.f64 a t (neg.f64 a)) |
(-.f64 (*.f64 a t) a) |
(*.f64 a (+.f64 -1 t)) |
(*.f64 (-.f64 t 1) a) |
(fma.f64 a t (neg.f64 a)) |
(-.f64 (*.f64 a t) a) |
(*.f64 a (+.f64 -1 t)) |
(*.f64 (-.f64 t 1) a) |
(fma.f64 a t (neg.f64 a)) |
(-.f64 (*.f64 a t) a) |
(*.f64 a (+.f64 -1 t)) |
(*.f64 (-.f64 t 1) a) |
(fma.f64 a t (neg.f64 a)) |
(-.f64 (*.f64 a t) a) |
(*.f64 a (+.f64 -1 t)) |
(*.f64 -1 (*.f64 a (+.f64 (*.f64 -1 t) 1))) |
(fma.f64 a t (neg.f64 a)) |
(-.f64 (*.f64 a t) a) |
(*.f64 a (+.f64 -1 t)) |
(*.f64 -1 (*.f64 a (+.f64 (*.f64 -1 t) 1))) |
(fma.f64 a t (neg.f64 a)) |
(-.f64 (*.f64 a t) a) |
(*.f64 a (+.f64 -1 t)) |
(*.f64 -1 (*.f64 a (+.f64 (*.f64 -1 t) 1))) |
(fma.f64 a t (neg.f64 a)) |
(-.f64 (*.f64 a t) a) |
(*.f64 a (+.f64 -1 t)) |
(*.f64 -1 (*.f64 a (+.f64 (*.f64 -1 t) 1))) |
(fma.f64 a t (neg.f64 a)) |
(-.f64 (*.f64 a t) a) |
(*.f64 a (+.f64 -1 t)) |
(*.f64 -1 (+.f64 (*.f64 z (-.f64 y 1)) (+.f64 (*.f64 a t) (*.f64 -1 a)))) |
(neg.f64 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a)))) |
(neg.f64 (-.f64 (fma.f64 a t (*.f64 z (+.f64 -1 y))) a)) |
(-.f64 a (fma.f64 a t (-.f64 (*.f64 z y) z))) |
(-.f64 z (-.f64 (fma.f64 a t (*.f64 z y)) a)) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 z (-.f64 y 1)) (+.f64 (*.f64 a t) (*.f64 -1 a)))) x) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 z (-.f64 y 1)) (+.f64 (*.f64 a t) (*.f64 -1 a)))) x) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 z (-.f64 y 1)) (+.f64 (*.f64 a t) (*.f64 -1 a)))) x) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
x |
(+.f64 (*.f64 -1 (+.f64 (*.f64 z (-.f64 y 1)) (+.f64 (*.f64 a t) (*.f64 -1 a)))) x) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 z (-.f64 y 1)) (+.f64 (*.f64 a t) (*.f64 -1 a)))) x) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 z (-.f64 y 1)) (+.f64 (*.f64 a t) (*.f64 -1 a)))) x) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
x |
(+.f64 (*.f64 -1 (+.f64 (*.f64 a t) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a)))) x) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 a t) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a)))) x) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (*.f64 -1 (+.f64 (*.f64 a t) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a)))) x) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 x (+.f64 (*.f64 -1 z) (+.f64 (*.f64 a t) (*.f64 -1 a)))) |
(-.f64 x (fma.f64 -1 z (fma.f64 a t (neg.f64 a)))) |
(-.f64 (fma.f64 a (-.f64 1 t) x) (neg.f64 z)) |
(+.f64 z (fma.f64 a (-.f64 1 t) x)) |
(+.f64 x (fma.f64 a (-.f64 1 t) z)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (+.f64 (*.f64 a t) (*.f64 -1 a)))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (+.f64 (*.f64 a t) (*.f64 -1 a)))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (+.f64 (*.f64 a t) (*.f64 -1 a)))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(*.f64 -1 (*.f64 y z)) |
(neg.f64 (*.f64 z y)) |
(*.f64 z (neg.f64 y)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (+.f64 (*.f64 a t) (*.f64 -1 a)))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (+.f64 (*.f64 a t) (*.f64 -1 a)))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (+.f64 (*.f64 a t) (*.f64 -1 a)))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(*.f64 -1 (*.f64 y z)) |
(neg.f64 (*.f64 z y)) |
(*.f64 z (neg.f64 y)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (+.f64 (*.f64 a t) (*.f64 -1 a)))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (+.f64 (*.f64 a t) (*.f64 -1 a)))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 y z)) x) (+.f64 (*.f64 -1 z) (+.f64 (*.f64 a t) (*.f64 -1 a)))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 x (+.f64 (*.f64 a t) (*.f64 -1 a))) |
(-.f64 x (fma.f64 a t (neg.f64 a))) |
(fma.f64 a (-.f64 1 t) x) |
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (+.f64 (*.f64 a t) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (+.f64 (*.f64 a t) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (+.f64 (*.f64 a t) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (+.f64 (*.f64 a t) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (+.f64 (*.f64 a t) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 z (-.f64 1 y)) x) (+.f64 (*.f64 a t) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(*.f64 -1 (*.f64 z (-.f64 y 1))) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 y 1))) x) (+.f64 (*.f64 a t) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 y 1))) x) (+.f64 (*.f64 a t) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 z (-.f64 y 1))) x) (+.f64 (*.f64 a t) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 x (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(-.f64 x (fma.f64 z (+.f64 y -1) (neg.f64 a))) |
(-.f64 x (fma.f64 z (+.f64 -1 y) (neg.f64 a))) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(*.f64 -1 (*.f64 a t)) |
(*.f64 (neg.f64 a) t) |
(*.f64 a (neg.f64 t)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(*.f64 -1 (*.f64 a t)) |
(*.f64 (neg.f64 a) t) |
(*.f64 a (neg.f64 t)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (+.f64 (*.f64 z (-.f64 y 1)) (*.f64 -1 a))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 x (*.f64 z (-.f64 y 1))) |
(-.f64 x (*.f64 z (+.f64 y -1))) |
(-.f64 x (*.f64 z (+.f64 -1 y))) |
(fma.f64 z (-.f64 1 y) x) |
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 a (-.f64 1 t)) x) (*.f64 z (-.f64 y 1))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(*.f64 a (+.f64 1 (*.f64 -1 t))) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
(-.f64 (+.f64 (*.f64 a (+.f64 1 (*.f64 -1 t))) x) (*.f64 z (-.f64 y 1))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 a (+.f64 1 (*.f64 -1 t))) x) (*.f64 z (-.f64 y 1))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
(-.f64 (+.f64 (*.f64 a (+.f64 1 (*.f64 -1 t))) x) (*.f64 z (-.f64 y 1))) |
(fma.f64 -1 (fma.f64 z (+.f64 y -1) (fma.f64 a t (neg.f64 a))) x) |
(fma.f64 (neg.f64 z) (+.f64 -1 y) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 z (-.f64 1 y) x)) |
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 0.0b | (*.f64 (-.f64 (+.f64 y t) 2) b) |
Compiled 35 to 17 computations (51.4% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | b | @ | inf | (+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 1.0ms | x | @ | 0 | (+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 0.0ms | y | @ | inf | (+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 0.0ms | t | @ | 0 | (+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 0.0ms | y | @ | 0 | (+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 1× | batch-egg-rewrite |
| 543× | log-prod_binary64 |
| 496× | fma-def_binary64 |
| 424× | pow-prod-down_binary64 |
| 320× | pow2_binary64 |
| 273× | fma-neg_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 13 |
| 1 | 232 | 11 |
| 2 | 3381 | 11 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) (-.f64 x (*.f64 (+.f64 y (+.f64 t -2)) b))) (/.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2) (-.f64 x (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (+.f64 y (+.f64 t -2)) b x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x)) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x)) 2) (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x)) (sqrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3)) (/.f64 1 (fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (fma.f64 (+.f64 y (+.f64 t -2)) b (neg.f64 x)) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2)) (/.f64 1 (-.f64 x (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (fma.f64 (+.f64 y (+.f64 t -2)) b (neg.f64 x)) (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 x (*.f64 (+.f64 y (+.f64 t -2)) b)) (-.f64 (*.f64 x x) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3)) (fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (fma.f64 (+.f64 y (+.f64 t -2)) b (neg.f64 x)) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3)) (+.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2) (-.f64 (*.f64 x x) (*.f64 (*.f64 x b) (+.f64 y (+.f64 t -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2)) (-.f64 x (*.f64 (+.f64 y (+.f64 t -2)) b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3))) (neg.f64 (fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (fma.f64 (+.f64 y (+.f64 t -2)) b (neg.f64 x)) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2))) (neg.f64 (-.f64 x (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2) (*.f64 x x)) (fma.f64 (+.f64 y (+.f64 t -2)) b (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (fma.f64 (+.f64 y (+.f64 t -2)) b (neg.f64 x)) (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 x (*.f64 (+.f64 y (+.f64 t -2)) b)) (-.f64 (*.f64 x x) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (pow.f64 (exp.f64 b) (+.f64 y (+.f64 t -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (+.f64 t -2)) b))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 b) (+.f64 y (+.f64 t -2))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (+.f64 t -2)) b))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y (+.f64 t -2)) b x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b (+.f64 y (+.f64 t -2)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (+.f64 y (+.f64 t -2)) b) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 b b)) (*.f64 (cbrt.f64 b) (+.f64 y (+.f64 t -2))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (pow.f64 (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) 2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) 2) (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 y (+.f64 t -2))) 2) (*.f64 (cbrt.f64 (+.f64 y (+.f64 t -2))) b) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) (+.f64 y (+.f64 t -2))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 y (+.f64 t -2))) (*.f64 (sqrt.f64 (+.f64 y (+.f64 t -2))) b) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) (cbrt.f64 (*.f64 b b))) (cbrt.f64 b) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) (sqrt.f64 b)) (sqrt.f64 b) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (pow.f64 (cbrt.f64 (+.f64 y (+.f64 t -2))) 2)) (cbrt.f64 (+.f64 y (+.f64 t -2))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (sqrt.f64 (+.f64 y (+.f64 t -2)))) (sqrt.f64 (+.f64 y (+.f64 t -2))) x))))) |
| 1× | egg-herbie |
| 983× | fma-neg_binary64 |
| 786× | fma-def_binary64 |
| 197× | distribute-rgt-in_binary64 |
| 146× | unsub-neg_binary64 |
| 111× | cancel-sign-sub-inv_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 23 | 461 |
| 1 | 53 | 461 |
| 2 | 91 | 461 |
| 3 | 166 | 461 |
| 4 | 216 | 461 |
| 5 | 243 | 461 |
| 6 | 307 | 461 |
| 7 | 483 | 461 |
| 8 | 894 | 461 |
| 9 | 1583 | 461 |
| 10 | 2412 | 461 |
| 11 | 3074 | 461 |
| 12 | 3482 | 461 |
| 13 | 3673 | 461 |
| 14 | 3703 | 461 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
x |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
x |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(+.f64 (*.f64 b (-.f64 t 2)) x) |
(+.f64 (*.f64 y b) (+.f64 (*.f64 b (-.f64 t 2)) x)) |
(+.f64 (*.f64 y b) (+.f64 (*.f64 b (-.f64 t 2)) x)) |
(+.f64 (*.f64 y b) (+.f64 (*.f64 b (-.f64 t 2)) x)) |
(*.f64 y b) |
(+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x)) |
(+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x)) |
(+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x)) |
(*.f64 y b) |
(+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x)) |
(+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x)) |
(+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x)) |
(+.f64 (*.f64 (-.f64 y 2) b) x) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x)) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x)) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x)) |
x |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
| Outputs |
|---|
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 (+.f64 y (+.f64 t -2)) b) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
x |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
x |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(+.f64 (*.f64 b (-.f64 t 2)) x) |
(fma.f64 b (+.f64 t -2) x) |
(+.f64 (*.f64 y b) (+.f64 (*.f64 b (-.f64 t 2)) x)) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(+.f64 (*.f64 y b) (+.f64 (*.f64 b (-.f64 t 2)) x)) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(+.f64 (*.f64 y b) (+.f64 (*.f64 b (-.f64 t 2)) x)) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(*.f64 y b) |
(+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x)) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x)) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x)) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(*.f64 y b) |
(+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x)) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x)) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x)) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(+.f64 (*.f64 (-.f64 y 2) b) x) |
(fma.f64 (+.f64 y -2) b x) |
(fma.f64 b (+.f64 y -2) x) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x)) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x)) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x)) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x)) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x)) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x)) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x)) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x)) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 (-.f64 y 2) b) x)) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
x |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 (+.f64 y (+.f64 t -2)) b) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 (+.f64 y (+.f64 t -2)) b) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (-.f64 (+.f64 y t) 2) b x) |
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| 0.0b | (*.f64 (-.f64 (+.f64 y t) 2) b) | |
| ✓ | 0.0b | (+.f64 (*.f64 y (neg.f64 z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
Compiled 44 to 19 computations (56.8% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | z | @ | 0 | (+.f64 (*.f64 y (neg.f64 z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 1.0ms | y | @ | 0 | (+.f64 (*.f64 y (neg.f64 z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 1.0ms | y | @ | inf | (+.f64 (*.f64 y (neg.f64 z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 1.0ms | t | @ | 0 | (+.f64 (*.f64 y (neg.f64 z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 0.0ms | z | @ | inf | (+.f64 (*.f64 y (neg.f64 z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 1× | batch-egg-rewrite |
| 630× | log-prod_binary64 |
| 575× | fma-def_binary64 |
| 349× | pow2_binary64 |
| 308× | fma-neg_binary64 |
| 240× | expm1-udef_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 12 | 16 |
| 1 | 278 | 14 |
| 2 | 4069 | 14 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 y z) 2) (-.f64 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))) (/.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2) (-.f64 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b))) (pow.f64 (cbrt.f64 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b))) 2) (cbrt.f64 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b))) (sqrt.f64 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3)) (/.f64 1 (fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)) (pow.f64 (*.f64 y z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 y z) 2) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2)) (/.f64 1 (-.f64 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)) (pow.f64 (*.f64 y z) 2)) (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b)) (-.f64 (pow.f64 (*.f64 y z) 2) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3)) (fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)) (pow.f64 (*.f64 y z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3)) (+.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2) (-.f64 (pow.f64 (*.f64 y z) 2) (*.f64 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 y z) 2) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2)) (-.f64 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3))) (neg.f64 (fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)) (pow.f64 (*.f64 y z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 y z) 2) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2))) (neg.f64 (-.f64 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2) (pow.f64 (*.f64 y z) 2)) (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)) (pow.f64 (*.f64 y z) 2)) (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b)) (-.f64 (pow.f64 (*.f64 y z) 2) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 b) (+.f64 y (+.f64 t -2))) (pow.f64 (exp.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (+.f64 t -2)) b))) (pow.f64 (exp.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 b) (+.f64 y (+.f64 t -2))) (+.f64 1 (expm1.f64 (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (+.f64 t -2)) b))) (+.f64 1 (expm1.f64 (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y z))) (pow.f64 (exp.f64 b) (+.f64 y (+.f64 t -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 y) z) (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y z))) (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (+.f64 t -2)) b))) (pow.f64 (exp.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 b) (+.f64 y (+.f64 t -2))) (+.f64 1 (expm1.f64 (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (+.f64 t -2)) b))) (+.f64 1 (expm1.f64 (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z y (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y z) 1 (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b (+.f64 y (+.f64 t -2)) (*.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 1 (*.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (pow.f64 (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) 2) (*.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) 2) (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (*.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 y z)) (pow.f64 (cbrt.f64 (*.f64 y z)) 2) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y z)) 2) (cbrt.f64 (*.f64 y z)) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) z) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 y (+.f64 t -2))) 2) (*.f64 (cbrt.f64 (+.f64 y (+.f64 t -2))) b) (*.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) y) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (*.f64 (cbrt.f64 b) (+.f64 y (+.f64 t -2))) (*.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (*.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y z)) (sqrt.f64 (*.f64 y z)) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) z) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 y (+.f64 t -2))) (*.f64 (sqrt.f64 (+.f64 y (+.f64 t -2))) b) (*.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) y) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) (+.f64 y (+.f64 t -2))) (*.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 y) z (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) (*.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) (sqrt.f64 b)) (sqrt.f64 b) (*.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (pow.f64 (cbrt.f64 (+.f64 y (+.f64 t -2))) 2)) (cbrt.f64 (+.f64 y (+.f64 t -2))) (*.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (sqrt.f64 (+.f64 y (+.f64 t -2)))) (sqrt.f64 (+.f64 y (+.f64 t -2))) (*.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y -1) z (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (sqrt.f64 y)) (sqrt.f64 y) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 z)) (sqrt.f64 z) (*.f64 (+.f64 y (+.f64 t -2)) b)))))) |
| 1× | egg-herbie |
| 1086× | fma-neg_binary64 |
| 473× | fma-def_binary64 |
| 200× | cancel-sign-sub-inv_binary64 |
| 198× | distribute-rgt-in_binary64 |
| 155× | unsub-neg_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 31 | 633 |
| 1 | 76 | 594 |
| 2 | 184 | 594 |
| 3 | 419 | 592 |
| 4 | 925 | 592 |
| 5 | 1812 | 592 |
| 6 | 3282 | 592 |
| 7 | 3601 | 592 |
| 8 | 3601 | 592 |
| 9 | 4057 | 592 |
| 10 | 4057 | 592 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 (-.f64 t 2) b) |
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (*.f64 (-.f64 t 2) b)) |
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (*.f64 (-.f64 t 2) b)) |
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (*.f64 (-.f64 t 2) b)) |
(*.f64 (+.f64 (*.f64 -1 z) b) y) |
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (*.f64 b (-.f64 t 2))) |
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (*.f64 b (-.f64 t 2))) |
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (*.f64 b (-.f64 t 2))) |
(*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (*.f64 b (-.f64 t 2))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (*.f64 b (-.f64 t 2))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (*.f64 b (-.f64 t 2))) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(*.f64 -1 (*.f64 y z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(*.f64 -1 (*.f64 y z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b))) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b))) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b))) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b))) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b))) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b))) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b))) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b))) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b))) |
(*.f64 -1 (*.f64 y z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| Outputs |
|---|
(*.f64 (-.f64 t 2) b) |
(*.f64 (+.f64 t -2) b) |
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (*.f64 (-.f64 t 2) b)) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (*.f64 (-.f64 t 2) b)) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (*.f64 (-.f64 t 2) b)) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(*.f64 (+.f64 (*.f64 -1 z) b) y) |
(*.f64 (fma.f64 -1 z b) y) |
(*.f64 (-.f64 b z) y) |
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (*.f64 b (-.f64 t 2))) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (*.f64 b (-.f64 t 2))) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (*.f64 b (-.f64 t 2))) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) |
(*.f64 (fma.f64 -1 z b) y) |
(*.f64 (-.f64 b z) y) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (*.f64 b (-.f64 t 2))) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (*.f64 b (-.f64 t 2))) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (*.f64 b (-.f64 t 2))) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 b (+.f64 (+.f64 t y) -2)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(*.f64 -1 (*.f64 y z)) |
(neg.f64 (*.f64 z y)) |
(*.f64 (neg.f64 z) y) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(*.f64 -1 (*.f64 y z)) |
(neg.f64 (*.f64 z y)) |
(*.f64 (neg.f64 z) y) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b)) |
(fma.f64 -1 (*.f64 z y) (*.f64 b (+.f64 y -2))) |
(-.f64 (*.f64 b (+.f64 y -2)) (*.f64 z y)) |
(fma.f64 (-.f64 b z) y (*.f64 b -2)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b))) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b))) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b))) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b))) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b))) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b))) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b))) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b))) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 y 2) b))) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(*.f64 -1 (*.f64 y z)) |
(neg.f64 (*.f64 z y)) |
(*.f64 (neg.f64 z) y) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 b (+.f64 (+.f64 t y) -2)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 b (+.f64 (+.f64 t y) -2)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (fma.f64 -1 z b) y (*.f64 (+.f64 t -2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (+.f64 t -2) b)) |
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| ✓ | 0.0b | (*.f64 z (-.f64 1 y)) |
| 0.0b | (*.f64 (-.f64 (+.f64 y t) 2) b) |
Compiled 48 to 26 computations (45.8% saved)
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | z | @ | 0 | (*.f64 z (-.f64 1 y)) |
| 1.0ms | z | @ | inf | (*.f64 z (-.f64 1 y)) |
| 0.0ms | z | @ | -inf | (*.f64 z (-.f64 1 y)) |
| 0.0ms | y | @ | 0 | (*.f64 z (-.f64 1 y)) |
| 0.0ms | t | @ | 0 | (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 1× | batch-egg-rewrite |
| 687× | log-prod_binary64 |
| 668× | fma-def_binary64 |
| 337× | fma-neg_binary64 |
| 268× | expm1-udef_binary64 |
| 267× | log1p-udef_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 24 |
| 1 | 295 | 24 |
| 2 | 4190 | 24 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 z (-.f64 1 y)) |
(+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 z (*.f64 (neg.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 z (*.f64 z (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 z (-.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 1 y))) (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 1 y))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (-.f64 1 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 1 y)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (-.f64 1 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 z (-.f64 1 y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (pow.f64 y 3)) z) (+.f64 1 (fma.f64 y y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (*.f64 y y)) z) (+.f64 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (-.f64 1 (pow.f64 y 3))) (+.f64 1 (fma.f64 y y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (-.f64 1 (*.f64 y y))) (+.f64 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 z (-.f64 1 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 z (-.f64 1 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 z (-.f64 1 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 z) (-.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 z (-.f64 1 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 z (-.f64 1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 z (-.f64 1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 z (-.f64 1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 z (-.f64 1 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z 1 (*.f64 (neg.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z 1 (*.f64 z (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 z (*.f64 (neg.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 z (*.f64 z (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 z) (pow.f64 (cbrt.f64 z) 2) (*.f64 (neg.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 z) (pow.f64 (cbrt.f64 z) 2) (*.f64 z (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 z) (*.f64 (neg.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 z) (*.f64 z (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (sqrt.f64 z) (*.f64 (neg.f64 y) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (sqrt.f64 z) (*.f64 z (neg.f64 y))))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (+.f64 t -2)) b)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 2) (-.f64 (*.f64 z (-.f64 1 y)) (*.f64 (+.f64 y (+.f64 t -2)) b))) (/.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2) (-.f64 (*.f64 z (-.f64 1 y)) (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (+.f64 t -2)) b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (+.f64 t -2)) b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (+.f64 t -2)) b))) (pow.f64 (cbrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (+.f64 t -2)) b))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (+.f64 t -2)) b))) 2) (cbrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (+.f64 t -2)) b))) (sqrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 3) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3)) (/.f64 1 (fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 z (-.f64 1 y))) (pow.f64 (*.f64 z (-.f64 1 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 2) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2)) (/.f64 1 (-.f64 (*.f64 z (-.f64 1 y)) (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 z (-.f64 1 y))) (pow.f64 (*.f64 z (-.f64 1 y)) 2)) (+.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 3) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 z (-.f64 1 y)) (*.f64 (+.f64 y (+.f64 t -2)) b)) (-.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 2) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 3) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3)) (fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 z (-.f64 1 y))) (pow.f64 (*.f64 z (-.f64 1 y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 3) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3)) (+.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2) (-.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 2) (*.f64 z (*.f64 (-.f64 1 y) (*.f64 (+.f64 y (+.f64 t -2)) b))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 2) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2)) (-.f64 (*.f64 z (-.f64 1 y)) (*.f64 (+.f64 y (+.f64 t -2)) b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 3) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3))) (neg.f64 (fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 z (-.f64 1 y))) (pow.f64 (*.f64 z (-.f64 1 y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 2) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2))) (neg.f64 (-.f64 (*.f64 z (-.f64 1 y)) (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2) (pow.f64 (*.f64 z (-.f64 1 y)) 2)) (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 z (-.f64 1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (+.f64 t -2)) b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (+.f64 t -2)) b)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (+.f64 t -2)) b))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (+.f64 t -2)) b))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (+.f64 t -2)) b)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (+.f64 t -2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z (-.f64 1 y)))) (pow.f64 (exp.f64 b) (+.f64 y (+.f64 t -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 z) (-.f64 1 y)) (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 z (-.f64 1 y)))) (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (+.f64 t -2)) b))) (pow.f64 (exp.f64 z) (-.f64 1 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 b) (+.f64 y (+.f64 t -2))) (+.f64 1 (expm1.f64 (*.f64 z (-.f64 1 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (+.f64 t -2)) b))) (+.f64 1 (expm1.f64 (*.f64 z (-.f64 1 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (+.f64 t -2)) b)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (+.f64 t -2)) b))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 z (-.f64 1 y)) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 z (-.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 1 y) z (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (-.f64 1 y)) 1 (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b (+.f64 y (+.f64 t -2)) (*.f64 z (-.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 1 (*.f64 z (-.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 b b)) (*.f64 (cbrt.f64 b) (+.f64 y (+.f64 t -2))) (*.f64 z (-.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 1 y)) 2) (*.f64 (cbrt.f64 (-.f64 1 y)) z) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (-.f64 1 y)) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (cbrt.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2)) (*.f64 z (-.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2)) (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (*.f64 z (-.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 z (-.f64 1 y))) (cbrt.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 2)) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 z (-.f64 1 y)) 2)) (cbrt.f64 (*.f64 z (-.f64 1 y))) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 y (+.f64 t -2))) 2) (*.f64 (cbrt.f64 (+.f64 y (+.f64 t -2))) b) (*.f64 z (-.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) (+.f64 y (+.f64 t -2))) (*.f64 z (-.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 1 y)) (*.f64 (sqrt.f64 (-.f64 1 y)) z) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (-.f64 1 y)) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (*.f64 z (-.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 z (-.f64 1 y))) (sqrt.f64 (*.f64 z (-.f64 1 y))) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 y (+.f64 t -2))) (*.f64 (sqrt.f64 (+.f64 y (+.f64 t -2))) b) (*.f64 z (-.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) (cbrt.f64 (*.f64 b b))) (cbrt.f64 b) (*.f64 z (-.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) (sqrt.f64 b)) (sqrt.f64 b) (*.f64 z (-.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (pow.f64 (cbrt.f64 (+.f64 y (+.f64 t -2))) 2)) (cbrt.f64 (+.f64 y (+.f64 t -2))) (*.f64 z (-.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (sqrt.f64 (+.f64 y (+.f64 t -2)))) (sqrt.f64 (+.f64 y (+.f64 t -2))) (*.f64 z (-.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (pow.f64 (cbrt.f64 (-.f64 1 y)) 2)) (cbrt.f64 (-.f64 1 y)) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (sqrt.f64 (-.f64 1 y))) (sqrt.f64 (-.f64 1 y)) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 1 y) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 1 y) (sqrt.f64 z)) (sqrt.f64 z) (*.f64 (+.f64 y (+.f64 t -2)) b)))))) |
| 1× | egg-herbie |
| 2293× | fma-neg_binary64 |
| 997× | fma-def_binary64 |
| 369× | unsub-neg_binary64 |
| 329× | sub-neg_binary64 |
| 199× | associate--r-_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 38 | 646 |
| 1 | 101 | 630 |
| 2 | 230 | 576 |
| 3 | 534 | 574 |
| 4 | 1498 | 574 |
| 5 | 3331 | 574 |
| 6 | 4646 | 574 |
| 7 | 4967 | 574 |
| 8 | 4983 | 574 |
| 9 | 4983 | 574 |
| 10 | 5032 | 574 |
| 11 | 5032 | 574 |
| 12 | 5032 | 574 |
| 13 | 7102 | 574 |
| 14 | 7102 | 574 |
| 15 | 7102 | 574 |
| 16 | 7102 | 574 |
| 1× | saturated |
| Inputs |
|---|
z |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(*.f64 -1 (*.f64 y z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(*.f64 -1 (*.f64 y z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 z (-.f64 1 y)) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (*.f64 z (-.f64 1 y))) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (*.f64 z (-.f64 1 y))) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (*.f64 z (-.f64 1 y))) |
(*.f64 z (-.f64 1 y)) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (*.f64 z (-.f64 1 y))) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (*.f64 z (-.f64 1 y))) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (*.f64 z (-.f64 1 y))) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 z (*.f64 b (-.f64 t 2)))) |
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 z (*.f64 b (-.f64 t 2)))) |
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 z (*.f64 b (-.f64 t 2)))) |
(*.f64 (+.f64 (*.f64 -1 z) b) y) |
(+.f64 z (+.f64 (*.f64 (-.f64 t 2) b) (*.f64 (+.f64 (*.f64 -1 z) b) y))) |
(+.f64 z (+.f64 (*.f64 (-.f64 t 2) b) (*.f64 (+.f64 (*.f64 -1 z) b) y))) |
(+.f64 z (+.f64 (*.f64 (-.f64 t 2) b) (*.f64 (+.f64 (*.f64 -1 z) b) y))) |
(*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (+.f64 z (*.f64 (-.f64 t 2) b))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (+.f64 z (*.f64 (-.f64 t 2) b))) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (+.f64 z (*.f64 (-.f64 t 2) b))) |
(+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 y 2) b)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 y 2) b))) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 y 2) b))) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 y 2) b))) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 y 2) b))) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 y 2) b))) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 y 2) b))) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 y 2) b))) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 y 2) b))) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 y 2) b))) |
(*.f64 z (-.f64 1 y)) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (*.f64 z (-.f64 1 y))) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (*.f64 z (-.f64 1 y))) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (*.f64 z (-.f64 1 y))) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
| Outputs |
|---|
z |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(fma.f64 -1 (*.f64 z y) z) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(fma.f64 -1 (*.f64 z y) z) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(fma.f64 -1 (*.f64 z y) z) |
(-.f64 z (*.f64 z y)) |
(*.f64 -1 (*.f64 y z)) |
(neg.f64 (*.f64 z y)) |
(*.f64 z (neg.f64 y)) |
(*.f64 y (neg.f64 z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(fma.f64 -1 (*.f64 z y) z) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(fma.f64 -1 (*.f64 z y) z) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(fma.f64 -1 (*.f64 z y) z) |
(-.f64 z (*.f64 z y)) |
(*.f64 -1 (*.f64 y z)) |
(neg.f64 (*.f64 z y)) |
(*.f64 z (neg.f64 y)) |
(*.f64 y (neg.f64 z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(fma.f64 -1 (*.f64 z y) z) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(fma.f64 -1 (*.f64 z y) z) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) z) |
(fma.f64 -1 (*.f64 z y) z) |
(-.f64 z (*.f64 z y)) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 (+.f64 y (+.f64 t -2)) b) |
(*.f64 (+.f64 y (-.f64 t 2)) b) |
(*.f64 z (-.f64 1 y)) |
(fma.f64 -1 (*.f64 z y) z) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (*.f64 z (-.f64 1 y))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (*.f64 z (-.f64 1 y))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (*.f64 z (-.f64 1 y))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(*.f64 z (-.f64 1 y)) |
(fma.f64 -1 (*.f64 z y) z) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (*.f64 z (-.f64 1 y))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (*.f64 z (-.f64 1 y))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (*.f64 z (-.f64 1 y))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(+.f64 z (*.f64 b (+.f64 t -2))) |
(fma.f64 b (-.f64 t 2) z) |
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 z (*.f64 b (-.f64 t 2)))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 z (*.f64 b (-.f64 t 2)))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(+.f64 (*.f64 (+.f64 (*.f64 -1 z) b) y) (+.f64 z (*.f64 b (-.f64 t 2)))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(*.f64 (+.f64 (*.f64 -1 z) b) y) |
(*.f64 y (fma.f64 -1 z b)) |
(*.f64 y (-.f64 b z)) |
(+.f64 z (+.f64 (*.f64 (-.f64 t 2) b) (*.f64 (+.f64 (*.f64 -1 z) b) y))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(+.f64 z (+.f64 (*.f64 (-.f64 t 2) b) (*.f64 (+.f64 (*.f64 -1 z) b) y))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(+.f64 z (+.f64 (*.f64 (-.f64 t 2) b) (*.f64 (+.f64 (*.f64 -1 z) b) y))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) |
(*.f64 y (fma.f64 -1 z b)) |
(*.f64 y (-.f64 b z)) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (+.f64 z (*.f64 (-.f64 t 2) b))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (+.f64 z (*.f64 (-.f64 t 2) b))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(+.f64 (*.f64 -1 (*.f64 y (+.f64 z (*.f64 -1 b)))) (+.f64 z (*.f64 (-.f64 t 2) b))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 y 2) b)) |
(fma.f64 z (-.f64 1 y) (*.f64 b (+.f64 y -2))) |
(fma.f64 b -2 (fma.f64 y (-.f64 b z) z)) |
(fma.f64 y (-.f64 b z) (fma.f64 b -2 z)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 y 2) b))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 y 2) b))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 y 2) b))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 y 2) b))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 y 2) b))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 y 2) b))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 y 2) b))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 y 2) b))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 y 2) b))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(*.f64 z (-.f64 1 y)) |
(fma.f64 -1 (*.f64 z y) z) |
(-.f64 z (*.f64 z y)) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (*.f64 z (-.f64 1 y))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (*.f64 z (-.f64 1 y))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (*.f64 z (-.f64 1 y))) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) (*.f64 (+.f64 y (-.f64 t 2)) b)) |
(fma.f64 y (-.f64 b z) (fma.f64 b (-.f64 t 2) z)) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 (+.f64 y (+.f64 t -2)) b) |
(*.f64 (+.f64 y (-.f64 t 2)) b) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 (+.f64 y (+.f64 t -2)) b) |
(*.f64 (+.f64 y (-.f64 t 2)) b) |
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| ✓ | 0.0b | (-.f64 x (*.f64 (-.f64 t 1) a)) |
| 0.0b | (*.f64 (-.f64 (+.f64 y t) 2) b) | |
| 0.0b | (*.f64 (-.f64 t 1) a) |
Compiled 58 to 31 computations (46.6% saved)
24 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | t | @ | -inf | (+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 1.0ms | a | @ | 0 | (+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 1.0ms | x | @ | 0 | (-.f64 x (*.f64 (-.f64 t 1) a)) |
| 1.0ms | t | @ | 0 | (+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 1.0ms | y | @ | 0 | (+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 1× | batch-egg-rewrite |
| 827× | log-prod_binary64 |
| 511× | fma-neg_binary64 |
| 318× | expm1-udef_binary64 |
| 318× | log1p-udef_binary64 |
| 248× | log-pow_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 15 | 32 |
| 1 | 351 | 30 |
| 2 | 5238 | 30 |
| 1× | node limit |
| Inputs |
|---|
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 (+.f64 t -1) (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 (*.f64 (+.f64 t -1) (neg.f64 a)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 (+.f64 t -1) a)) (fma.f64 (*.f64 (+.f64 t -1) (neg.f64 a)) 1 (*.f64 (+.f64 t -1) a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 (+.f64 t -1) a)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (+.f64 t -1) a))) (pow.f64 (cbrt.f64 (*.f64 (+.f64 t -1) a)) 2) (*.f64 (+.f64 t -1) a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (*.f64 (+.f64 t -1) a)) (fma.f64 (+.f64 (neg.f64 t) 1) a (*.f64 (+.f64 t -1) a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 x (*.f64 (+.f64 t -1) a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 t -1) (neg.f64 a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (-.f64 x (*.f64 (+.f64 t -1) a)))) (cbrt.f64 (exp.f64 (-.f64 x (*.f64 (+.f64 t -1) a)))))) (log.f64 (cbrt.f64 (exp.f64 (-.f64 x (*.f64 (+.f64 t -1) a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 x (*.f64 (+.f64 t -1) a))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 x (*.f64 (+.f64 t -1) a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 x (*.f64 (+.f64 t -1) a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x (*.f64 (+.f64 t -1) a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 x (*.f64 (+.f64 t -1) a))) (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (+.f64 t -1) a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (+.f64 t -1) a))) 2) (cbrt.f64 (-.f64 x (*.f64 (+.f64 t -1) a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 x (*.f64 (+.f64 t -1) a))) (sqrt.f64 (-.f64 x (*.f64 (+.f64 t -1) a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (+.f64 t -1) a) 3)) (/.f64 1 (fma.f64 x x (*.f64 (*.f64 (+.f64 t -1) a) (+.f64 x (*.f64 (+.f64 t -1) a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (+.f64 t -1) a) 2)) (/.f64 1 (+.f64 x (*.f64 (+.f64 t -1) a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (+.f64 t -1) a))) (-.f64 (sqrt.f64 x) (sqrt.f64 (*.f64 (+.f64 t -1) a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x x (*.f64 (*.f64 (+.f64 t -1) a) (+.f64 x (*.f64 (+.f64 t -1) a)))) (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (+.f64 t -1) a) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 x (*.f64 (+.f64 t -1) a)) (-.f64 (*.f64 x x) (pow.f64 (*.f64 (+.f64 t -1) a) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (+.f64 t -1) a) 3)) (fma.f64 x x (*.f64 (*.f64 (+.f64 t -1) a) (+.f64 x (*.f64 (+.f64 t -1) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (+.f64 t -1) a) 2)) (+.f64 x (*.f64 (+.f64 t -1) a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 x 3) (pow.f64 (*.f64 (+.f64 t -1) a) 3))) (neg.f64 (fma.f64 x x (*.f64 (*.f64 (+.f64 t -1) a) (+.f64 x (*.f64 (+.f64 t -1) a))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (+.f64 t -1) a) 2))) (neg.f64 (+.f64 x (*.f64 (+.f64 t -1) a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 (+.f64 t -1) (neg.f64 a)) 3)) (+.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 (+.f64 t -1) (neg.f64 a)) (*.f64 (+.f64 t -1) (neg.f64 a))) (*.f64 x (*.f64 (+.f64 t -1) (neg.f64 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 (+.f64 t -1) (neg.f64 a)) (*.f64 (+.f64 t -1) (neg.f64 a)))) (-.f64 x (*.f64 (+.f64 t -1) (neg.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 x (*.f64 (+.f64 t -1) a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 x (*.f64 (+.f64 t -1) a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 x (*.f64 (+.f64 t -1) a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 t -1) a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 t -1) a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 x (*.f64 (+.f64 t -1) a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 x (*.f64 (+.f64 t -1) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 x)) (pow.f64 (exp.f64 a) (+.f64 t -1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (*.f64 (+.f64 t -1) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (*.f64 (+.f64 t -1) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (exp.f64 (*.f64 (+.f64 t -1) (neg.f64 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (/.f64 1 (pow.f64 (exp.f64 a) (+.f64 t -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (/.f64 1 (pow.f64 (exp.f64 a) (+.f64 t -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (+.f64 t -1) (neg.f64 a))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 a) (+.f64 t -1))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (+.f64 t -1) (neg.f64 a))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 a) (+.f64 t -1))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 t -1) a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 x (*.f64 (+.f64 t -1) a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 x (*.f64 (+.f64 t -1) a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 x (*.f64 (+.f64 t -1) a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 x (*.f64 (+.f64 t -1) a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 (+.f64 t -1) (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 (+.f64 t -1) (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 (+.f64 t -1) (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 (+.f64 t -1) (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (+.f64 t -1) (neg.f64 a))))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 x (-.f64 (*.f64 (+.f64 t -1) a) (*.f64 (+.f64 t (-.f64 y 2)) b)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (+.f64 t (-.f64 y 2)) b (-.f64 x (*.f64 (+.f64 t -1) a))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 t -1) a)) 2) (-.f64 x (+.f64 (*.f64 (+.f64 t -1) a) (*.f64 (+.f64 t (-.f64 y 2)) b)))) (/.f64 (pow.f64 (*.f64 (+.f64 t (-.f64 y 2)) b) 2) (-.f64 x (+.f64 (*.f64 (+.f64 t -1) a) (*.f64 (+.f64 t (-.f64 y 2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 (+.f64 t (-.f64 y 2)) b) x) (*.f64 (+.f64 t -1) a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (+.f64 t (-.f64 y 2)) b (-.f64 x (*.f64 (+.f64 t -1) a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (+.f64 t (-.f64 y 2)) b (-.f64 x (*.f64 (+.f64 t -1) a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (+.f64 t (-.f64 y 2)) b (-.f64 x (*.f64 (+.f64 t -1) a)))) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 t (-.f64 y 2)) b (-.f64 x (*.f64 (+.f64 t -1) a)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (+.f64 t (-.f64 y 2)) b (-.f64 x (*.f64 (+.f64 t -1) a)))) 2) (cbrt.f64 (fma.f64 (+.f64 t (-.f64 y 2)) b (-.f64 x (*.f64 (+.f64 t -1) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (+.f64 t (-.f64 y 2)) b (-.f64 x (*.f64 (+.f64 t -1) a)))) (sqrt.f64 (fma.f64 (+.f64 t (-.f64 y 2)) b (-.f64 x (*.f64 (+.f64 t -1) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 t -1) a)) 3) (pow.f64 (*.f64 (+.f64 t (-.f64 y 2)) b) 3)) (/.f64 1 (+.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 t -1) a)) 2) (*.f64 (*.f64 (+.f64 t (-.f64 y 2)) b) (-.f64 (*.f64 (+.f64 t (-.f64 y 2)) b) (-.f64 x (*.f64 (+.f64 t -1) a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 t -1) a)) 2) (pow.f64 (*.f64 (+.f64 t (-.f64 y 2)) b) 2)) (/.f64 1 (-.f64 x (+.f64 (*.f64 (+.f64 t -1) a) (*.f64 (+.f64 t (-.f64 y 2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 t -1) a)) 2) (*.f64 (*.f64 (+.f64 t (-.f64 y 2)) b) (-.f64 (*.f64 (+.f64 t (-.f64 y 2)) b) (-.f64 x (*.f64 (+.f64 t -1) a))))) (+.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 t -1) a)) 3) (pow.f64 (*.f64 (+.f64 t (-.f64 y 2)) b) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 x (+.f64 (*.f64 (+.f64 t -1) a) (*.f64 (+.f64 t (-.f64 y 2)) b))) (-.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 t -1) a)) 2) (pow.f64 (*.f64 (+.f64 t (-.f64 y 2)) b) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 t -1) a)) 3) (pow.f64 (*.f64 (+.f64 t (-.f64 y 2)) b) 3)) (+.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 t -1) a)) 2) (*.f64 (*.f64 (+.f64 t (-.f64 y 2)) b) (-.f64 (*.f64 (+.f64 t (-.f64 y 2)) b) (-.f64 x (*.f64 (+.f64 t -1) a))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 t -1) a)) 3) (pow.f64 (*.f64 (+.f64 t (-.f64 y 2)) b) 3)) (+.f64 (pow.f64 (*.f64 (+.f64 t (-.f64 y 2)) b) 2) (-.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 t -1) a)) 2) (*.f64 (-.f64 x (*.f64 (+.f64 t -1) a)) (*.f64 (+.f64 t (-.f64 y 2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 t -1) a)) 2) (pow.f64 (*.f64 (+.f64 t (-.f64 y 2)) b) 2)) (-.f64 x (+.f64 (*.f64 (+.f64 t -1) a) (*.f64 (+.f64 t (-.f64 y 2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 t -1) a)) 3) (pow.f64 (*.f64 (+.f64 t (-.f64 y 2)) b) 3))) (neg.f64 (+.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 t -1) a)) 2) (*.f64 (*.f64 (+.f64 t (-.f64 y 2)) b) (-.f64 (*.f64 (+.f64 t (-.f64 y 2)) b) (-.f64 x (*.f64 (+.f64 t -1) a)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 x (*.f64 (+.f64 t -1) a)) 2) (pow.f64 (*.f64 (+.f64 t (-.f64 y 2)) b) 2))) (neg.f64 (-.f64 x (+.f64 (*.f64 (+.f64 t -1) a) (*.f64 (+.f64 t (-.f64 y 2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 3) (pow.f64 (-.f64 (*.f64 (+.f64 t -1) a) (*.f64 (+.f64 t (-.f64 y 2)) b)) 3)) (+.f64 (*.f64 x x) (+.f64 (*.f64 (-.f64 (*.f64 (+.f64 t -1) a) (*.f64 (+.f64 t (-.f64 y 2)) b)) (-.f64 (*.f64 (+.f64 t -1) a) (*.f64 (+.f64 t (-.f64 y 2)) b))) (*.f64 x (-.f64 (*.f64 (+.f64 t -1) a) (*.f64 (+.f64 t (-.f64 y 2)) b))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (*.f64 (-.f64 (*.f64 (+.f64 t -1) a) (*.f64 (+.f64 t (-.f64 y 2)) b)) (-.f64 (*.f64 (+.f64 t -1) a) (*.f64 (+.f64 t (-.f64 y 2)) b)))) (+.f64 x (-.f64 (*.f64 (+.f64 t -1) a) (*.f64 (+.f64 t (-.f64 y 2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (+.f64 t (-.f64 y 2)) b) 2) (pow.f64 (-.f64 x (*.f64 (+.f64 t -1) a)) 2)) (-.f64 (*.f64 (+.f64 t (-.f64 y 2)) b) (-.f64 x (*.f64 (+.f64 t -1) a))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (+.f64 t (-.f64 y 2)) b (-.f64 x (*.f64 (+.f64 t -1) a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (+.f64 t (-.f64 y 2)) b (-.f64 x (*.f64 (+.f64 t -1) a))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (+.f64 t (-.f64 y 2)) b (-.f64 x (*.f64 (+.f64 t -1) a)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (+.f64 t (-.f64 y 2)) b (-.f64 x (*.f64 (+.f64 t -1) a)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (+.f64 t (-.f64 y 2)) b (-.f64 x (*.f64 (+.f64 t -1) a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (+.f64 t (-.f64 y 2)) b (-.f64 x (*.f64 (+.f64 t -1) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (+.f64 t (-.f64 y 2)) b (-.f64 x (*.f64 (+.f64 t -1) a))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 x)) (exp.f64 (-.f64 (*.f64 (+.f64 t -1) a) (*.f64 (+.f64 t (-.f64 y 2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 x) (/.f64 (pow.f64 (exp.f64 a) (+.f64 t -1)) (pow.f64 (exp.f64 b) (+.f64 t (-.f64 y 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 x)) (/.f64 (pow.f64 (exp.f64 a) (+.f64 t -1)) (pow.f64 (exp.f64 b) (+.f64 t (-.f64 y 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (-.f64 x (*.f64 (+.f64 t -1) a)))) (pow.f64 (exp.f64 b) (+.f64 t (-.f64 y 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (-.f64 x (*.f64 (+.f64 t -1) a))) (+.f64 1 (expm1.f64 (*.f64 (+.f64 t (-.f64 y 2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (-.f64 x (*.f64 (+.f64 t -1) a)))) (+.f64 1 (expm1.f64 (*.f64 (+.f64 t (-.f64 y 2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 t (-.f64 y 2)) b))) (exp.f64 (-.f64 x (*.f64 (+.f64 t -1) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 b) (+.f64 t (-.f64 y 2))) (+.f64 1 (expm1.f64 (-.f64 x (*.f64 (+.f64 t -1) a))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 t (-.f64 y 2)) b))) (+.f64 1 (expm1.f64 (-.f64 x (*.f64 (+.f64 t -1) a))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (+.f64 t (-.f64 y 2)) b (-.f64 x (*.f64 (+.f64 t -1) a))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (+.f64 t (-.f64 y 2)) b (-.f64 x (*.f64 (+.f64 t -1) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (+.f64 t (-.f64 y 2)) b (-.f64 x (*.f64 (+.f64 t -1) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (+.f64 t (-.f64 y 2)) b (-.f64 x (*.f64 (+.f64 t -1) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (+.f64 t (-.f64 y 2)) b (-.f64 x (*.f64 (+.f64 t -1) a)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (neg.f64 (-.f64 (*.f64 (+.f64 t -1) a) (*.f64 (+.f64 t (-.f64 y 2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (neg.f64 (-.f64 (*.f64 (+.f64 t -1) a) (*.f64 (+.f64 t (-.f64 y 2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 x (*.f64 (+.f64 t -1) a)) (*.f64 (+.f64 t (-.f64 y 2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (+.f64 t (-.f64 y 2)) b) (-.f64 x (*.f64 (+.f64 t -1) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 t (-.f64 y 2)) b (-.f64 x (*.f64 (+.f64 t -1) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b (+.f64 t (-.f64 y 2)) (-.f64 x (*.f64 (+.f64 t -1) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 t (-.f64 y 2)) b)) 2) (cbrt.f64 (*.f64 (+.f64 t (-.f64 y 2)) b)) (-.f64 x (*.f64 (+.f64 t -1) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 x (*.f64 (+.f64 t -1) a))) 2) (cbrt.f64 (-.f64 x (*.f64 (+.f64 t -1) a))) (*.f64 (+.f64 t (-.f64 y 2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (-.f64 (*.f64 (+.f64 t -1) a) (*.f64 (+.f64 t (-.f64 y 2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (neg.f64 (-.f64 (*.f64 (+.f64 t -1) a) (*.f64 (+.f64 t (-.f64 y 2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (+.f64 t (-.f64 y 2)) b)) (sqrt.f64 (*.f64 (+.f64 t (-.f64 y 2)) b)) (-.f64 x (*.f64 (+.f64 t -1) a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 x (*.f64 (+.f64 t -1) a))) (sqrt.f64 (-.f64 x (*.f64 (+.f64 t -1) a))) (*.f64 (+.f64 t (-.f64 y 2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (neg.f64 (-.f64 (*.f64 (+.f64 t -1) a) (*.f64 (+.f64 t (-.f64 y 2)) b)))))))) |
| 1× | egg-herbie |
| 786× | fma-neg_binary64 |
| 716× | unsub-neg_binary64 |
| 594× | fma-def_binary64 |
| 535× | sub-neg_binary64 |
| 394× | distribute-rgt-in_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 56 | 1350 |
| 1 | 172 | 1186 |
| 2 | 378 | 1186 |
| 3 | 1091 | 1184 |
| 4 | 3036 | 1184 |
| 5 | 5324 | 1184 |
| 6 | 7640 | 1184 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -1 (*.f64 (-.f64 t 1) a)) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) |
x |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) |
x |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) |
(-.f64 x (*.f64 -1 a)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (*.f64 -1 a)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (*.f64 -1 a)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (*.f64 -1 a)) |
(*.f64 -1 (*.f64 a t)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (*.f64 -1 a)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (*.f64 -1 a)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (*.f64 -1 a)) |
(*.f64 -1 (*.f64 a t)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (*.f64 -1 a)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (*.f64 -1 a)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (*.f64 -1 a)) |
x |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(*.f64 a (-.f64 1 t)) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(*.f64 -1 (*.f64 (-.f64 t 1) a)) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) |
(-.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
x |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
x |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 (-.f64 y 2) b) x) (*.f64 -1 a)) |
(-.f64 (+.f64 (*.f64 t (-.f64 b a)) (+.f64 (*.f64 (-.f64 y 2) b) x)) (*.f64 -1 a)) |
(-.f64 (+.f64 (*.f64 t (-.f64 b a)) (+.f64 (*.f64 (-.f64 y 2) b) x)) (*.f64 -1 a)) |
(-.f64 (+.f64 (*.f64 t (-.f64 b a)) (+.f64 (*.f64 (-.f64 y 2) b) x)) (*.f64 -1 a)) |
(*.f64 t (-.f64 b a)) |
(-.f64 (+.f64 (*.f64 t (-.f64 b a)) (+.f64 (*.f64 (-.f64 y 2) b) x)) (*.f64 -1 a)) |
(-.f64 (+.f64 (*.f64 t (-.f64 b a)) (+.f64 (*.f64 (-.f64 y 2) b) x)) (*.f64 -1 a)) |
(-.f64 (+.f64 (*.f64 t (-.f64 b a)) (+.f64 (*.f64 (-.f64 y 2) b) x)) (*.f64 -1 a)) |
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 b) (*.f64 -1 a)) t)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 b) (*.f64 -1 a)) t)) (+.f64 (*.f64 (-.f64 y 2) b) x)) (*.f64 -1 a)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 b) (*.f64 -1 a)) t)) (+.f64 (*.f64 (-.f64 y 2) b) x)) (*.f64 -1 a)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 b) (*.f64 -1 a)) t)) (+.f64 (*.f64 (-.f64 y 2) b) x)) (*.f64 -1 a)) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)) |
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)) |
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)) |
(*.f64 a (-.f64 1 t)) |
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)) |
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)) |
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)) |
(*.f64 -1 (*.f64 (-.f64 t 1) a)) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)) |
(-.f64 (+.f64 (*.f64 (-.f64 t 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x)) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x)) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x)) (*.f64 (-.f64 t 1) a)) |
(*.f64 y b) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 (*.f64 b (-.f64 t 2)) x)) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 (*.f64 b (-.f64 t 2)) x)) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 (*.f64 b (-.f64 t 2)) x)) (*.f64 (-.f64 t 1) a)) |
(*.f64 y b) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 (*.f64 b (-.f64 t 2)) x)) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 (*.f64 b (-.f64 t 2)) x)) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 (*.f64 b (-.f64 t 2)) x)) (*.f64 (-.f64 t 1) a)) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
| Outputs |
|---|
(*.f64 -1 (*.f64 (-.f64 t 1) a)) |
(neg.f64 (*.f64 (+.f64 t -1) a)) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 t a)) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
x |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
x |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
(-.f64 x (*.f64 -1 a)) |
(-.f64 x (neg.f64 a)) |
(+.f64 a x) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (*.f64 -1 a)) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (*.f64 -1 a)) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (*.f64 -1 a)) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
(*.f64 -1 (*.f64 a t)) |
(neg.f64 (*.f64 t a)) |
(*.f64 t (neg.f64 a)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (*.f64 -1 a)) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (*.f64 -1 a)) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (*.f64 -1 a)) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
(*.f64 -1 (*.f64 a t)) |
(neg.f64 (*.f64 t a)) |
(*.f64 t (neg.f64 a)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (*.f64 -1 a)) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (*.f64 -1 a)) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 a t)) x) (*.f64 -1 a)) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
x |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
(*.f64 a (-.f64 1 t)) |
(neg.f64 (*.f64 (+.f64 t -1) a)) |
(-.f64 a (*.f64 t a)) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 (*.f64 a (-.f64 1 t)) x) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
(*.f64 -1 (*.f64 (-.f64 t 1) a)) |
(neg.f64 (*.f64 (+.f64 t -1) a)) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 t a)) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) x) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
(-.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (*.f64 (-.f64 t 1) a)) |
(-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 t (+.f64 y -2)) b)) |
(fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a)) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
x |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
x |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 (+.f64 (*.f64 (-.f64 y 2) b) x) (*.f64 -1 a)) |
(-.f64 (fma.f64 (+.f64 y -2) b x) (neg.f64 a)) |
(+.f64 a (fma.f64 b (+.f64 y -2) x)) |
(-.f64 (+.f64 (*.f64 t (-.f64 b a)) (+.f64 (*.f64 (-.f64 y 2) b) x)) (*.f64 -1 a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 (+.f64 (*.f64 t (-.f64 b a)) (+.f64 (*.f64 (-.f64 y 2) b) x)) (*.f64 -1 a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 (+.f64 (*.f64 t (-.f64 b a)) (+.f64 (*.f64 (-.f64 y 2) b) x)) (*.f64 -1 a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(*.f64 t (-.f64 b a)) |
(-.f64 (+.f64 (*.f64 t (-.f64 b a)) (+.f64 (*.f64 (-.f64 y 2) b) x)) (*.f64 -1 a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 (+.f64 (*.f64 t (-.f64 b a)) (+.f64 (*.f64 (-.f64 y 2) b) x)) (*.f64 -1 a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 (+.f64 (*.f64 t (-.f64 b a)) (+.f64 (*.f64 (-.f64 y 2) b) x)) (*.f64 -1 a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 b) (*.f64 -1 a)) t)) |
(*.f64 t (-.f64 b a)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 b) (*.f64 -1 a)) t)) (+.f64 (*.f64 (-.f64 y 2) b) x)) (*.f64 -1 a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 b) (*.f64 -1 a)) t)) (+.f64 (*.f64 (-.f64 y 2) b) x)) (*.f64 -1 a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 b) (*.f64 -1 a)) t)) (+.f64 (*.f64 (-.f64 y 2) b) x)) (*.f64 -1 a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) |
(fma.f64 (+.f64 y (+.f64 t -2)) b x) |
(fma.f64 (+.f64 t (+.f64 y -2)) b x) |
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(*.f64 a (-.f64 1 t)) |
(neg.f64 (*.f64 (+.f64 t -1) a)) |
(-.f64 a (*.f64 t a)) |
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(+.f64 (*.f64 a (-.f64 1 t)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(*.f64 -1 (*.f64 (-.f64 t 1) a)) |
(neg.f64 (*.f64 (+.f64 t -1) a)) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 t a)) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 t 1) a)) (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 (+.f64 (*.f64 (-.f64 t 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 b (+.f64 t -2) x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 b (+.f64 t -2) (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 b (+.f64 t -2) x)) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x)) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x)) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 (*.f64 (-.f64 t 2) b) x)) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(*.f64 y b) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 (*.f64 b (-.f64 t 2)) x)) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 (*.f64 b (-.f64 t 2)) x)) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 (*.f64 b (-.f64 t 2)) x)) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(*.f64 y b) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 (*.f64 b (-.f64 t 2)) x)) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 (*.f64 b (-.f64 t 2)) x)) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 (*.f64 b (-.f64 t 2)) x)) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(-.f64 x (*.f64 (+.f64 t -1) a)) |
(fma.f64 a (-.f64 1 t) x) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 (+.f64 y (+.f64 t -2)) b) |
(*.f64 (+.f64 t (+.f64 y -2)) b) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 (+.f64 y (+.f64 t -2)) b) |
(*.f64 (+.f64 t (+.f64 y -2)) b) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
(-.f64 (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x) (*.f64 (-.f64 t 1) a)) |
(-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b x) (*.f64 (+.f64 t -1) a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (fma.f64 a (-.f64 1 t) x)) |
(fma.f64 a (-.f64 1 t) (fma.f64 (+.f64 t (+.f64 y -2)) b x)) |
(+.f64 x (fma.f64 b (+.f64 y -2) (fma.f64 t (-.f64 b a) a))) |
Compiled 17890 to 9894 computations (44.7% saved)
20 alts after pruning (20 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 841 | 18 | 859 |
| Fresh | 5 | 2 | 7 |
| Picked | 1 | 0 | 1 |
| Done | 4 | 0 | 4 |
| Total | 851 | 20 | 871 |
| Status | Error | Program |
|---|---|---|
| 49.6b | (*.f64 (-.f64 b z) y) | |
| ▶ | 47.1b | (*.f64 z (-.f64 1 y)) |
| ▶ | 36.2b | (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
| ▶ | 5.9b | (+.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 36.5b | (-.f64 x (*.f64 (-.f64 t 1) a)) | |
| ▶ | 56.7b | (*.f64 t b) |
| 37.6b | (+.f64 (*.f64 (-.f64 y 2) b) x) | |
| 55.6b | (*.f64 (neg.f64 z) y) | |
| 51.5b | (*.f64 t (-.f64 b a)) | |
| 15.9b | (+.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 (-.f64 (+.f64 y t) 2) b)) | |
| 15.9b | (+.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 (-.f64 (+.f64 y t) 2) b)) | |
| 30.4b | (+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) | |
| 45.2b | (+.f64 x (*.f64 y b)) | |
| 51.3b | x | |
| 28.2b | (+.f64 (-.f64 a (*.f64 t a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) | |
| 28.1b | (-.f64 (+.f64 (*.f64 (-.f64 y 2) b) x) (*.f64 -1 a)) | |
| ▶ | 40.7b | (+.f64 z (*.f64 b (-.f64 t 2))) |
| 49.3b | (*.f64 (-.f64 t 2) b) | |
| 56.5b | (*.f64 y b) | |
| 14.0b | (+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
Compiled 563 to 414 computations (26.5% saved)
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f64 x (fma.f64 z (-.f64 1 y) a)) |
| 0.0b | (*.f64 (-.f64 (+.f64 y t) 2) b) |
Compiled 62 to 31 computations (50% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 4.0ms | a | @ | inf | (+.f64 x (fma.f64 z (-.f64 1 y) a)) |
| 1.0ms | x | @ | 0 | (+.f64 x (fma.f64 z (-.f64 1 y) a)) |
| 1.0ms | z | @ | -inf | (+.f64 x (fma.f64 z (-.f64 1 y) a)) |
| 1.0ms | z | @ | inf | (+.f64 x (fma.f64 z (-.f64 1 y) a)) |
| 0.0ms | y | @ | -inf | (+.f64 x (fma.f64 z (-.f64 1 y) a)) |
| 1× | batch-egg-rewrite |
| 701× | prod-diff_binary64 |
| 574× | unpow-prod-down_binary64 |
| 433× | log-prod_binary64 |
| 275× | fma-def_binary64 |
| 262× | pow2_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 11 |
| 1 | 191 | 11 |
| 2 | 2562 | 11 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 x (fma.f64 z (-.f64 1 y) a)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) (-.f64 x (fma.f64 z (-.f64 1 y) a))) (/.f64 (pow.f64 (fma.f64 z (-.f64 1 y) a) 2) (-.f64 x (fma.f64 z (-.f64 1 y) a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 x (fma.f64 z (-.f64 1 y) a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a))) (pow.f64 (cbrt.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a))) 2) (cbrt.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a))) (sqrt.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x 3) (pow.f64 (fma.f64 z (-.f64 1 y) a) 3)) (/.f64 1 (fma.f64 (fma.f64 z (-.f64 1 y) a) (-.f64 (fma.f64 z (-.f64 1 y) a) x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x 3) (pow.f64 (fma.f64 z (-.f64 1 y) a) 3)) (pow.f64 (/.f64 1 (fma.f64 (fma.f64 z (-.f64 1 y) a) (-.f64 (fma.f64 z (-.f64 1 y) a) x) (*.f64 x x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x x) (pow.f64 (fma.f64 z (-.f64 1 y) a) 2)) (/.f64 1 (-.f64 x (fma.f64 z (-.f64 1 y) a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x x) (pow.f64 (fma.f64 z (-.f64 1 y) a) 2)) (pow.f64 (/.f64 1 (-.f64 x (fma.f64 z (-.f64 1 y) a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (+.f64 x (fma.f64 z (-.f64 1 y) a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (pow.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a)) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a)) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a)) 2) (pow.f64 (cbrt.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a))) 2)) 1/3) (cbrt.f64 (cbrt.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a)) 2) (sqrt.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a)))) 1/3) (cbrt.f64 (sqrt.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a)))) 2) 3) (cbrt.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (fma.f64 z (-.f64 1 y) a) (-.f64 (fma.f64 z (-.f64 1 y) a) x) (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (fma.f64 z (-.f64 1 y) a) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 x (fma.f64 z (-.f64 1 y) a)) (-.f64 (*.f64 x x) (pow.f64 (fma.f64 z (-.f64 1 y) a) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (fma.f64 z (-.f64 1 y) a) 3)) (fma.f64 (fma.f64 z (-.f64 1 y) a) (-.f64 (fma.f64 z (-.f64 1 y) a) x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (fma.f64 z (-.f64 1 y) a) 3)) (+.f64 (pow.f64 (fma.f64 z (-.f64 1 y) a) 2) (-.f64 (*.f64 x x) (*.f64 x (fma.f64 z (-.f64 1 y) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (fma.f64 z (-.f64 1 y) a) 2)) (-.f64 x (fma.f64 z (-.f64 1 y) a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 (fma.f64 z (-.f64 1 y) a) 3))) (neg.f64 (fma.f64 (fma.f64 z (-.f64 1 y) a) (-.f64 (fma.f64 z (-.f64 1 y) a) x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (fma.f64 z (-.f64 1 y) a) 2))) (neg.f64 (-.f64 x (fma.f64 z (-.f64 1 y) a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 z (-.f64 1 y) a) 2) (*.f64 x x)) (-.f64 (fma.f64 z (-.f64 1 y) a) x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (fma.f64 z (-.f64 1 y) a) (-.f64 (fma.f64 z (-.f64 1 y) a) x) (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (fma.f64 z (-.f64 1 y) a) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 x (fma.f64 z (-.f64 1 y) a)) (-.f64 (*.f64 x x) (pow.f64 (fma.f64 z (-.f64 1 y) a) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (exp.f64 (fma.f64 z (-.f64 1 y) a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (fma.f64 z (-.f64 1 y) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (fma.f64 z (-.f64 1 y) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 z (-.f64 1 y) a))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 z (-.f64 1 y) a)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 z (-.f64 1 y) a))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (fma.f64 z (-.f64 1 y) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (-.f64 1 y) (+.f64 a x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (fma.f64 z (-.f64 1 y) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 z (-.f64 1 y) a) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 z (-.f64 1 y)) (+.f64 a x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 1 y) z (+.f64 a x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 z (-.f64 1 y) a) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 z (-.f64 1 y) a)) (pow.f64 (cbrt.f64 (fma.f64 z (-.f64 1 y) a)) 2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 z (-.f64 1 y) a)) 2) (cbrt.f64 (fma.f64 z (-.f64 1 y) a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (fma.f64 z (-.f64 1 y) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (fma.f64 z (-.f64 1 y) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (-.f64 1 y)) (+.f64 a x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 z (-.f64 1 y) a)) (sqrt.f64 (fma.f64 z (-.f64 1 y) a)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (fma.f64 z (-.f64 1 y) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (-.f64 1 y)) (+.f64 a x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 z (-.f64 1 y))) 2) (cbrt.f64 (*.f64 z (-.f64 1 y))) (+.f64 a x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 z (-.f64 1 y))) (sqrt.f64 (*.f64 z (-.f64 1 y))) (+.f64 a x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 z) (sqrt.f64 (-.f64 1 y))) (*.f64 (sqrt.f64 z) (sqrt.f64 (-.f64 1 y))) (+.f64 a x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (pow.f64 (cbrt.f64 (-.f64 1 y)) 2)) (cbrt.f64 (-.f64 1 y)) (+.f64 a x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (sqrt.f64 (-.f64 1 y))) (sqrt.f64 (-.f64 1 y)) (+.f64 a x)))))) |
| 1× | egg-herbie |
| 654× | fma-neg_binary64 |
| 494× | fma-def_binary64 |
| 145× | cancel-sign-sub-inv_binary64 |
| 118× | associate--r+_binary64 |
| 96× | distribute-rgt-in_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 20 | 455 |
| 1 | 51 | 453 |
| 2 | 117 | 453 |
| 3 | 221 | 453 |
| 4 | 377 | 453 |
| 5 | 679 | 453 |
| 6 | 1313 | 453 |
| 7 | 1916 | 453 |
| 8 | 2281 | 453 |
| 9 | 2398 | 453 |
| 10 | 2402 | 453 |
| 1× | saturated |
| Inputs |
|---|
(+.f64 a (*.f64 z (-.f64 1 y))) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
x |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
x |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a x) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(*.f64 z (-.f64 1 y)) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(*.f64 z (-.f64 1 y)) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (+.f64 z x)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 a (+.f64 z x))) |
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 a (+.f64 z x))) |
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 a (+.f64 z x))) |
(*.f64 -1 (*.f64 y z)) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x))) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x))) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x))) |
(*.f64 -1 (*.f64 y z)) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x))) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x))) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x))) |
(+.f64 (*.f64 z (-.f64 1 y)) x) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
a |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
a |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
| Outputs |
|---|
(+.f64 a (*.f64 z (-.f64 1 y))) |
(fma.f64 z (-.f64 1 y) a) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
x |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
x |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 a x) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(fma.f64 y (neg.f64 z) z) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(*.f64 z (-.f64 1 y)) |
(-.f64 z (*.f64 z y)) |
(fma.f64 y (neg.f64 z) z) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 a (+.f64 z x)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 a (+.f64 z x))) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 a (+.f64 z x))) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 a (+.f64 z x))) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(*.f64 -1 (*.f64 y z)) |
(neg.f64 (*.f64 z y)) |
(*.f64 z (neg.f64 y)) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x))) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x))) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x))) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(*.f64 -1 (*.f64 y z)) |
(neg.f64 (*.f64 z y)) |
(*.f64 z (neg.f64 y)) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x))) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x))) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 y z)) (+.f64 z x))) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 (*.f64 z (-.f64 1 y)) x) |
(fma.f64 z (-.f64 1 y) x) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
a |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
a |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
(+.f64 a (+.f64 (*.f64 z (-.f64 1 y)) x)) |
(+.f64 a (fma.f64 z (-.f64 1 y) x)) |
(+.f64 (fma.f64 z (-.f64 1 y) a) x) |
Compiled 11 to 7 computations (36.4% saved)
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| 0.0b | (*.f64 z (-.f64 1 y)) |
Compiled 17 to 12 computations (29.4% saved)
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f64 z (*.f64 b (-.f64 t 2))) |
Compiled 25 to 16 computations (36% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 2.0ms | b | @ | -inf | (+.f64 z (*.f64 b (-.f64 t 2))) |
| 1.0ms | t | @ | -inf | (+.f64 z (*.f64 b (-.f64 t 2))) |
| 1.0ms | z | @ | 0 | (+.f64 z (*.f64 b (-.f64 t 2))) |
| 1.0ms | t | @ | inf | (+.f64 z (*.f64 b (-.f64 t 2))) |
| 1.0ms | t | @ | 0 | (+.f64 z (*.f64 b (-.f64 t 2))) |
| 1× | batch-egg-rewrite |
| 815× | prod-diff_binary64 |
| 570× | unpow-prod-down_binary64 |
| 416× | log-prod_binary64 |
| 279× | fma-def_binary64 |
| 244× | pow2_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 10 |
| 1 | 181 | 8 |
| 2 | 2484 | 8 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 z (*.f64 b (-.f64 t 2))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 b (+.f64 t -2) z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 z z) (-.f64 z (*.f64 b (+.f64 t -2)))) (/.f64 (pow.f64 (*.f64 b (+.f64 t -2)) 2) (-.f64 z (*.f64 b (+.f64 t -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 b (+.f64 t -2) z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 b (+.f64 t -2) z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 b (+.f64 t -2) z)) (pow.f64 (cbrt.f64 (fma.f64 b (+.f64 t -2) z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 b (+.f64 t -2) z)) 2) (cbrt.f64 (fma.f64 b (+.f64 t -2) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 b (+.f64 t -2) z)) (sqrt.f64 (fma.f64 b (+.f64 t -2) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 z 3) (pow.f64 (*.f64 b (+.f64 t -2)) 3)) (/.f64 1 (fma.f64 z z (*.f64 (*.f64 b (+.f64 t -2)) (fma.f64 b (+.f64 t -2) (neg.f64 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 z 3) (pow.f64 (*.f64 b (+.f64 t -2)) 3)) (pow.f64 (/.f64 1 (fma.f64 z z (*.f64 (*.f64 b (+.f64 t -2)) (fma.f64 b (+.f64 t -2) (neg.f64 z))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 z z) (pow.f64 (*.f64 b (+.f64 t -2)) 2)) (/.f64 1 (-.f64 z (*.f64 b (+.f64 t -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 z z) (pow.f64 (*.f64 b (+.f64 t -2)) 2)) (pow.f64 (/.f64 1 (-.f64 z (*.f64 b (+.f64 t -2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (fma.f64 b (+.f64 t -2) z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 b (+.f64 t -2) z) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 b (+.f64 t -2) z) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (fma.f64 b (+.f64 t -2) z) 2) (pow.f64 (cbrt.f64 (fma.f64 b (+.f64 t -2) z)) 2)) 1/3) (cbrt.f64 (cbrt.f64 (fma.f64 b (+.f64 t -2) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (fma.f64 b (+.f64 t -2) z) 2) (sqrt.f64 (fma.f64 b (+.f64 t -2) z))) 1/3) (cbrt.f64 (sqrt.f64 (fma.f64 b (+.f64 t -2) z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 b (+.f64 t -2) z))) 2) 3) (cbrt.f64 (fma.f64 b (+.f64 t -2) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 b (+.f64 t -2) z))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 b (+.f64 t -2) z))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 z z (*.f64 (*.f64 b (+.f64 t -2)) (fma.f64 b (+.f64 t -2) (neg.f64 z)))) (+.f64 (pow.f64 z 3) (pow.f64 (*.f64 b (+.f64 t -2)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 z (*.f64 b (+.f64 t -2))) (-.f64 (*.f64 z z) (pow.f64 (*.f64 b (+.f64 t -2)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 z 3) (pow.f64 (*.f64 b (+.f64 t -2)) 3)) (fma.f64 z z (*.f64 (*.f64 b (+.f64 t -2)) (fma.f64 b (+.f64 t -2) (neg.f64 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 z 3) (pow.f64 (*.f64 b (+.f64 t -2)) 3)) (+.f64 (pow.f64 (*.f64 b (+.f64 t -2)) 2) (-.f64 (*.f64 z z) (*.f64 (*.f64 z b) (+.f64 t -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 z z) (pow.f64 (*.f64 b (+.f64 t -2)) 2)) (-.f64 z (*.f64 b (+.f64 t -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 z 3) (pow.f64 (*.f64 b (+.f64 t -2)) 3))) (neg.f64 (fma.f64 z z (*.f64 (*.f64 b (+.f64 t -2)) (fma.f64 b (+.f64 t -2) (neg.f64 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 z z) (pow.f64 (*.f64 b (+.f64 t -2)) 2))) (neg.f64 (-.f64 z (*.f64 b (+.f64 t -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 b (+.f64 t -2)) 2) (*.f64 z z)) (fma.f64 b (+.f64 t -2) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 b (+.f64 t -2) z) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 b (+.f64 t -2) z) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 b (+.f64 t -2) z) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 b (+.f64 t -2) z)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 b (+.f64 t -2) z)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 z z (*.f64 (*.f64 b (+.f64 t -2)) (fma.f64 b (+.f64 t -2) (neg.f64 z)))) (+.f64 (pow.f64 z 3) (pow.f64 (*.f64 b (+.f64 t -2)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 z (*.f64 b (+.f64 t -2))) (-.f64 (*.f64 z z) (pow.f64 (*.f64 b (+.f64 t -2)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 b (+.f64 t -2) z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 b (+.f64 t -2) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 b (+.f64 t -2) z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 z)) (pow.f64 (exp.f64 b) (+.f64 t -2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 z) (+.f64 1 (expm1.f64 (*.f64 b (+.f64 t -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 z)) (+.f64 1 (expm1.f64 (*.f64 b (+.f64 t -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 b (+.f64 t -2)))) (exp.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 b) (+.f64 t -2)) (+.f64 1 (expm1.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 b (+.f64 t -2)))) (+.f64 1 (expm1.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 b (+.f64 t -2) z) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 b (+.f64 t -2) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 b (+.f64 t -2) z)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 b (+.f64 t -2) z)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 b (+.f64 t -2) z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z 1 (*.f64 b (+.f64 t -2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b (+.f64 t -2) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 t -2) b z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (+.f64 t -2)) 1 z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 z (*.f64 b (+.f64 t -2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 b (+.f64 t -2)) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 z) (pow.f64 (cbrt.f64 z) 2) (*.f64 b (+.f64 t -2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 z) (*.f64 b (+.f64 t -2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 t -2)) 2) (*.f64 (cbrt.f64 (+.f64 t -2)) b) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (*.f64 (cbrt.f64 b) (+.f64 t -2)) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 b (+.f64 t -2))) (pow.f64 (cbrt.f64 (*.f64 b (+.f64 t -2))) 2) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 b (+.f64 t -2))) 2) (cbrt.f64 (*.f64 b (+.f64 t -2))) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (sqrt.f64 z) (*.f64 b (+.f64 t -2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 t -2)) (*.f64 (sqrt.f64 (+.f64 t -2)) b) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) (+.f64 t -2)) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 b (+.f64 t -2))) (sqrt.f64 (*.f64 b (+.f64 t -2))) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (pow.f64 (cbrt.f64 (+.f64 t -2)) 2)) (cbrt.f64 (+.f64 t -2)) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (sqrt.f64 (+.f64 t -2))) (sqrt.f64 (+.f64 t -2)) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 t -2) (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) z)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 t -2) (sqrt.f64 b)) (sqrt.f64 b) z))))) |
| 1× | egg-herbie |
| 14× | fma-def_binary64 |
| 6× | +-commutative_binary64 |
| 3× | *-commutative_binary64 |
| 3× | associate-+r+_binary64 |
| 3× | associate-+l+_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 14 | 253 |
| 1 | 26 | 253 |
| 2 | 38 | 253 |
| 3 | 46 | 253 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 (-.f64 t 2) b) |
(+.f64 z (*.f64 (-.f64 t 2) b)) |
(+.f64 z (*.f64 (-.f64 t 2) b)) |
(+.f64 z (*.f64 (-.f64 t 2) b)) |
z |
(+.f64 (*.f64 (-.f64 t 2) b) z) |
(+.f64 (*.f64 (-.f64 t 2) b) z) |
(+.f64 (*.f64 (-.f64 t 2) b) z) |
z |
(+.f64 (*.f64 (-.f64 t 2) b) z) |
(+.f64 (*.f64 (-.f64 t 2) b) z) |
(+.f64 (*.f64 (-.f64 t 2) b) z) |
z |
(+.f64 (*.f64 (-.f64 t 2) b) z) |
(+.f64 (*.f64 (-.f64 t 2) b) z) |
(+.f64 (*.f64 (-.f64 t 2) b) z) |
(*.f64 (-.f64 t 2) b) |
(+.f64 z (*.f64 (-.f64 t 2) b)) |
(+.f64 z (*.f64 (-.f64 t 2) b)) |
(+.f64 z (*.f64 (-.f64 t 2) b)) |
(*.f64 (-.f64 t 2) b) |
(+.f64 z (*.f64 (-.f64 t 2) b)) |
(+.f64 z (*.f64 (-.f64 t 2) b)) |
(+.f64 z (*.f64 (-.f64 t 2) b)) |
(+.f64 (*.f64 -2 b) z) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) z)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) z)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) z)) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) z)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) z)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) z)) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) z)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) z)) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) z)) |
| Outputs |
|---|
(*.f64 (-.f64 t 2) b) |
(*.f64 (+.f64 t -2) b) |
(+.f64 z (*.f64 (-.f64 t 2) b)) |
(fma.f64 (+.f64 t -2) b z) |
(+.f64 z (*.f64 (-.f64 t 2) b)) |
(fma.f64 (+.f64 t -2) b z) |
(+.f64 z (*.f64 (-.f64 t 2) b)) |
(fma.f64 (+.f64 t -2) b z) |
z |
(+.f64 (*.f64 (-.f64 t 2) b) z) |
(fma.f64 (+.f64 t -2) b z) |
(+.f64 (*.f64 (-.f64 t 2) b) z) |
(fma.f64 (+.f64 t -2) b z) |
(+.f64 (*.f64 (-.f64 t 2) b) z) |
(fma.f64 (+.f64 t -2) b z) |
z |
(+.f64 (*.f64 (-.f64 t 2) b) z) |
(fma.f64 (+.f64 t -2) b z) |
(+.f64 (*.f64 (-.f64 t 2) b) z) |
(fma.f64 (+.f64 t -2) b z) |
(+.f64 (*.f64 (-.f64 t 2) b) z) |
(fma.f64 (+.f64 t -2) b z) |
z |
(+.f64 (*.f64 (-.f64 t 2) b) z) |
(fma.f64 (+.f64 t -2) b z) |
(+.f64 (*.f64 (-.f64 t 2) b) z) |
(fma.f64 (+.f64 t -2) b z) |
(+.f64 (*.f64 (-.f64 t 2) b) z) |
(fma.f64 (+.f64 t -2) b z) |
(*.f64 (-.f64 t 2) b) |
(*.f64 (+.f64 t -2) b) |
(+.f64 z (*.f64 (-.f64 t 2) b)) |
(fma.f64 (+.f64 t -2) b z) |
(+.f64 z (*.f64 (-.f64 t 2) b)) |
(fma.f64 (+.f64 t -2) b z) |
(+.f64 z (*.f64 (-.f64 t 2) b)) |
(fma.f64 (+.f64 t -2) b z) |
(*.f64 (-.f64 t 2) b) |
(*.f64 (+.f64 t -2) b) |
(+.f64 z (*.f64 (-.f64 t 2) b)) |
(fma.f64 (+.f64 t -2) b z) |
(+.f64 z (*.f64 (-.f64 t 2) b)) |
(fma.f64 (+.f64 t -2) b z) |
(+.f64 z (*.f64 (-.f64 t 2) b)) |
(fma.f64 (+.f64 t -2) b z) |
(+.f64 (*.f64 -2 b) z) |
(fma.f64 -2 b z) |
(fma.f64 b -2 z) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) z)) |
(fma.f64 (+.f64 t -2) b z) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) z)) |
(fma.f64 (+.f64 t -2) b z) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) z)) |
(fma.f64 (+.f64 t -2) b z) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) z)) |
(fma.f64 (+.f64 t -2) b z) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) z)) |
(fma.f64 (+.f64 t -2) b z) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) z)) |
(fma.f64 (+.f64 t -2) b z) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) z)) |
(fma.f64 (+.f64 t -2) b z) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) z)) |
(fma.f64 (+.f64 t -2) b z) |
(+.f64 (*.f64 t b) (+.f64 (*.f64 -2 b) z)) |
(fma.f64 (+.f64 t -2) b z) |
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (*.f64 (+.f64 y (+.f64 t -2)) b) |
| ✓ | 0.0b | (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
Compiled 40 to 22 computations (45% saved)
21 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 2.0ms | y | @ | inf | (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
| 1.0ms | y | @ | -inf | (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
| 1.0ms | y | @ | 0 | (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
| 1.0ms | t | @ | inf | (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
| 1.0ms | t | @ | 0 | (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
| 1× | batch-egg-rewrite |
| 647× | log-prod_binary64 |
| 641× | fma-def_binary64 |
| 357× | pow2_binary64 |
| 333× | fma-neg_binary64 |
| 243× | pow1/3_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 26 |
| 1 | 262 | 26 |
| 2 | 3819 | 26 |
| 1× | node limit |
| Inputs |
|---|
(-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
(*.f64 (+.f64 y (+.f64 t -2)) b) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 (*.f64 y (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (fma.f64 y (neg.f64 z) (fma.f64 y (neg.f64 z) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))) (fma.f64 y (neg.f64 z) (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))) (fma.f64 (*.f64 y (neg.f64 z)) 1 (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y z))) (pow.f64 (cbrt.f64 (*.f64 y z)) 2) (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))) (*.f64 (fma.f64 y (neg.f64 z) (*.f64 y z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))) (+.f64 (fma.f64 y (neg.f64 z) (*.f64 y z)) (fma.f64 y (neg.f64 z) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 y (neg.f64 z) (*.f64 y z)) (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (neg.f64 z)) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) 2) (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) (sqrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3) (pow.f64 (*.f64 y z) 3)) (/.f64 1 (fma.f64 (*.f64 y z) (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2) (pow.f64 (*.f64 y z) 2)) (/.f64 1 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (sqrt.f64 (*.f64 y z))) (-.f64 (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (sqrt.f64 (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 y z) (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2)) (-.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3) (pow.f64 (*.f64 y z) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)) (-.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2) (pow.f64 (*.f64 y z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 (*.f64 y z) (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2) (pow.f64 (*.f64 y z) 2)) (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3) (pow.f64 (*.f64 y z) 3))) (neg.f64 (fma.f64 (*.f64 y z) (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2) (pow.f64 (*.f64 y z) 2))) (neg.f64 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3) (pow.f64 (*.f64 y (neg.f64 z)) 3)) (+.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2) (-.f64 (pow.f64 (*.f64 y (neg.f64 z)) 2) (*.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y (neg.f64 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))) 3) (pow.f64 (fma.f64 y (neg.f64 z) (*.f64 y z)) 3)) (+.f64 (pow.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))) 2) (-.f64 (pow.f64 (fma.f64 y (neg.f64 z) (*.f64 y z)) 2) (*.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))) (fma.f64 y (neg.f64 z) (*.f64 y z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2) (pow.f64 (*.f64 y (neg.f64 z)) 2)) (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))) 2) (pow.f64 (fma.f64 y (neg.f64 z) (*.f64 y z)) 2)) (-.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))) (fma.f64 y (neg.f64 z) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 y z) (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2)) (-.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3) (pow.f64 (*.f64 y z) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)) (-.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2) (pow.f64 (*.f64 y z) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (+.f64 t -2)) b))) (pow.f64 (exp.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 b) (+.f64 y (+.f64 t -2))) (+.f64 1 (expm1.f64 (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (+.f64 t -2)) b))) (+.f64 1 (expm1.f64 (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (+.f64 t -2)) b))) (exp.f64 (*.f64 y (neg.f64 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 b) (+.f64 y (+.f64 t -2))) (/.f64 1 (pow.f64 (exp.f64 y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (+.f64 t -2)) b))) (/.f64 1 (pow.f64 (exp.f64 y) z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))))) (exp.f64 (fma.f64 y (neg.f64 z) (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 y (neg.f64 z) (*.f64 y z))) (exp.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 y (neg.f64 z) (*.f64 y z))) (+.f64 1 (expm1.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 y (neg.f64 z))) (pow.f64 (exp.f64 b) (+.f64 y (+.f64 t -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 y) z)) (pow.f64 (exp.f64 b) (+.f64 y (+.f64 t -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 y (neg.f64 z))) (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 y) z)) (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y (neg.f64 z) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 (*.f64 y (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y (+.f64 t -2)) b (fma.f64 y (neg.f64 z) (fma.f64 y (neg.f64 z) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y (+.f64 t -2)) b (neg.f64 (-.f64 (*.f64 y z) (fma.f64 y (neg.f64 z) (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b (+.f64 y (+.f64 t -2)) (*.f64 y (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b (+.f64 y (+.f64 t -2)) (*.f64 (*.f64 y (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b (+.f64 y (+.f64 t -2)) (fma.f64 y (neg.f64 z) (fma.f64 y (neg.f64 z) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b (+.f64 y (+.f64 t -2)) (neg.f64 (-.f64 (*.f64 y z) (fma.f64 y (neg.f64 z) (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 1 (*.f64 y (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 1 (*.f64 (*.f64 y (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 1 (fma.f64 y (neg.f64 z) (fma.f64 y (neg.f64 z) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 1 (neg.f64 (-.f64 (*.f64 y z) (fma.f64 y (neg.f64 z) (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (neg.f64 y) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))) 1 (fma.f64 y (neg.f64 z) (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))) 1 (fma.f64 (*.f64 y (neg.f64 z)) 1 (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y z))) (pow.f64 (cbrt.f64 (*.f64 y z)) 2) (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))) 1 (*.f64 (fma.f64 y (neg.f64 z) (*.f64 y z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))) 1 (+.f64 (fma.f64 y (neg.f64 z) (*.f64 y z)) (fma.f64 y (neg.f64 z) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 (*.f64 y (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (+.f64 y (+.f64 t -2)) b) (fma.f64 y (neg.f64 z) (fma.f64 y (neg.f64 z) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (+.f64 y (+.f64 t -2)) b) (neg.f64 (-.f64 (*.f64 y z) (fma.f64 y (neg.f64 z) (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))) (fma.f64 y (neg.f64 z) (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))) (fma.f64 (*.f64 y (neg.f64 z)) 1 (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y z))) (pow.f64 (cbrt.f64 (*.f64 y z)) 2) (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))) (*.f64 (fma.f64 y (neg.f64 z) (*.f64 y z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))) (+.f64 (fma.f64 y (neg.f64 z) (*.f64 y z)) (fma.f64 y (neg.f64 z) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 y (neg.f64 z) (*.f64 y z)) (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y (neg.f64 z)) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) 2) (fma.f64 y (neg.f64 z) (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) 2) (fma.f64 (*.f64 y (neg.f64 z)) 1 (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y z))) (pow.f64 (cbrt.f64 (*.f64 y z)) 2) (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) 2) (*.f64 (fma.f64 y (neg.f64 z) (*.f64 y z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) 2) (+.f64 (fma.f64 y (neg.f64 z) (*.f64 y z)) (fma.f64 y (neg.f64 z) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) 2) (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) (fma.f64 y (neg.f64 z) (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) 2) (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) (fma.f64 (*.f64 y (neg.f64 z)) 1 (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) 2) (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y z))) (pow.f64 (cbrt.f64 (*.f64 y z)) 2) (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) 2) (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) (*.f64 (fma.f64 y (neg.f64 z) (*.f64 y z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) 2) (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) (+.f64 (fma.f64 y (neg.f64 z) (*.f64 y z)) (fma.f64 y (neg.f64 z) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (pow.f64 (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) 2) (*.f64 y (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (pow.f64 (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) 2) (*.f64 (*.f64 y (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (pow.f64 (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) 2) (fma.f64 y (neg.f64 z) (fma.f64 y (neg.f64 z) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (pow.f64 (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) 2) (neg.f64 (-.f64 (*.f64 y z) (fma.f64 y (neg.f64 z) (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) 2) (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (*.f64 y (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) 2) (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (*.f64 (*.f64 y (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) 2) (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (fma.f64 y (neg.f64 z) (fma.f64 y (neg.f64 z) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) 2) (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (neg.f64 (-.f64 (*.f64 y z) (fma.f64 y (neg.f64 z) (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (+.f64 y (+.f64 t -2)) 2)) (*.f64 (cbrt.f64 (+.f64 y (+.f64 t -2))) b) (*.f64 y (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (+.f64 y (+.f64 t -2)) 2)) (*.f64 (cbrt.f64 (+.f64 y (+.f64 t -2))) b) (*.f64 (*.f64 y (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (+.f64 y (+.f64 t -2)) 2)) (*.f64 (cbrt.f64 (+.f64 y (+.f64 t -2))) b) (fma.f64 y (neg.f64 z) (fma.f64 y (neg.f64 z) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (+.f64 y (+.f64 t -2)) 2)) (*.f64 (cbrt.f64 (+.f64 y (+.f64 t -2))) b) (neg.f64 (-.f64 (*.f64 y z) (fma.f64 y (neg.f64 z) (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y z)) 2) (neg.f64 (cbrt.f64 (*.f64 y z))) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (*.f64 (cbrt.f64 b) (+.f64 y (+.f64 t -2))) (*.f64 y (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (*.f64 (cbrt.f64 b) (+.f64 y (+.f64 t -2))) (*.f64 (*.f64 y (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (*.f64 (cbrt.f64 b) (+.f64 y (+.f64 t -2))) (fma.f64 y (neg.f64 z) (fma.f64 y (neg.f64 z) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (*.f64 (cbrt.f64 b) (+.f64 y (+.f64 t -2))) (neg.f64 (-.f64 (*.f64 y z) (fma.f64 y (neg.f64 z) (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) (sqrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) (fma.f64 y (neg.f64 z) (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) (sqrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) (fma.f64 (*.f64 y (neg.f64 z)) 1 (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) (sqrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y z))) (pow.f64 (cbrt.f64 (*.f64 y z)) 2) (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) (sqrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) (*.f64 (fma.f64 y (neg.f64 z) (*.f64 y z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) (sqrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z)))) (+.f64 (fma.f64 y (neg.f64 z) (*.f64 y z)) (fma.f64 y (neg.f64 z) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (*.f64 y (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (*.f64 (*.f64 y (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (fma.f64 y (neg.f64 z) (fma.f64 y (neg.f64 z) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (neg.f64 (-.f64 (*.f64 y z) (fma.f64 y (neg.f64 z) (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 y (+.f64 t -2))) (*.f64 (sqrt.f64 (+.f64 y (+.f64 t -2))) b) (*.f64 y (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 y (+.f64 t -2))) (*.f64 (sqrt.f64 (+.f64 y (+.f64 t -2))) b) (*.f64 (*.f64 y (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 y (+.f64 t -2))) (*.f64 (sqrt.f64 (+.f64 y (+.f64 t -2))) b) (fma.f64 y (neg.f64 z) (fma.f64 y (neg.f64 z) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 y (+.f64 t -2))) (*.f64 (sqrt.f64 (+.f64 y (+.f64 t -2))) b) (neg.f64 (-.f64 (*.f64 y z) (fma.f64 y (neg.f64 z) (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y z)) (neg.f64 (sqrt.f64 (*.f64 y z))) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) (+.f64 y (+.f64 t -2))) (*.f64 y (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) (+.f64 y (+.f64 t -2))) (*.f64 (*.f64 y (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) (+.f64 y (+.f64 t -2))) (fma.f64 y (neg.f64 z) (fma.f64 y (neg.f64 z) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) (+.f64 y (+.f64 t -2))) (neg.f64 (-.f64 (*.f64 y z) (fma.f64 y (neg.f64 z) (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 z) y (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3) (pow.f64 (*.f64 y z) 3)) (/.f64 1 (fma.f64 (*.f64 y z) (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2))) (fma.f64 y (neg.f64 z) (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3) (pow.f64 (*.f64 y z) 3)) (/.f64 1 (fma.f64 (*.f64 y z) (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2))) (fma.f64 (*.f64 y (neg.f64 z)) 1 (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3) (pow.f64 (*.f64 y z) 3)) (/.f64 1 (fma.f64 (*.f64 y z) (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y z))) (pow.f64 (cbrt.f64 (*.f64 y z)) 2) (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3) (pow.f64 (*.f64 y z) 3)) (/.f64 1 (fma.f64 (*.f64 y z) (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2))) (*.f64 (fma.f64 y (neg.f64 z) (*.f64 y z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3) (pow.f64 (*.f64 y z) 3)) (/.f64 1 (fma.f64 (*.f64 y z) (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b)) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2))) (+.f64 (fma.f64 y (neg.f64 z) (*.f64 y z)) (fma.f64 y (neg.f64 z) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2) (pow.f64 (*.f64 y z) 2)) (/.f64 1 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b))) (fma.f64 y (neg.f64 z) (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2) (pow.f64 (*.f64 y z) 2)) (/.f64 1 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b))) (fma.f64 (*.f64 y (neg.f64 z)) 1 (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2) (pow.f64 (*.f64 y z) 2)) (/.f64 1 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y z))) (pow.f64 (cbrt.f64 (*.f64 y z)) 2) (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2) (pow.f64 (*.f64 y z) 2)) (/.f64 1 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b))) (*.f64 (fma.f64 y (neg.f64 z) (*.f64 y z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2) (pow.f64 (*.f64 y z) 2)) (/.f64 1 (fma.f64 y z (*.f64 (+.f64 y (+.f64 t -2)) b))) (+.f64 (fma.f64 y (neg.f64 z) (*.f64 y z)) (fma.f64 y (neg.f64 z) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 y) z (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 y (neg.f64 z) (*.f64 y z))) 2) (cbrt.f64 (fma.f64 y (neg.f64 z) (*.f64 y z))) (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 y (neg.f64 z))) 2) (cbrt.f64 (*.f64 y (neg.f64 z))) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 y (neg.f64 z) (*.f64 y z))) (sqrt.f64 (fma.f64 y (neg.f64 z) (*.f64 y z))) (fma.f64 (+.f64 y (+.f64 t -2)) b (*.f64 y (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 y (neg.f64 z))) (sqrt.f64 (*.f64 y (neg.f64 z))) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (*.f64 y z))) (sqrt.f64 (*.f64 y z)) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 y z) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (sqrt.f64 (*.f64 y z))) (-.f64 (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (sqrt.f64 (*.f64 y z))) (fma.f64 y (neg.f64 z) (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (sqrt.f64 (*.f64 y z))) (-.f64 (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (sqrt.f64 (*.f64 y z))) (fma.f64 (*.f64 y (neg.f64 z)) 1 (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (sqrt.f64 (*.f64 y z))) (-.f64 (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (sqrt.f64 (*.f64 y z))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y z))) (pow.f64 (cbrt.f64 (*.f64 y z)) 2) (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (sqrt.f64 (*.f64 y z))) (-.f64 (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (sqrt.f64 (*.f64 y z))) (*.f64 (fma.f64 y (neg.f64 z) (*.f64 y z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (sqrt.f64 (*.f64 y z))) (-.f64 (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (sqrt.f64 (*.f64 y z))) (+.f64 (fma.f64 y (neg.f64 z) (*.f64 y z)) (fma.f64 y (neg.f64 z) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 y z)) 2)) (cbrt.f64 (*.f64 y z)) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) (*.f64 y (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) (*.f64 (*.f64 y (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) (fma.f64 y (neg.f64 z) (fma.f64 y (neg.f64 z) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) (neg.f64 (-.f64 (*.f64 y z) (fma.f64 y (neg.f64 z) (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) (sqrt.f64 b)) (sqrt.f64 b) (*.f64 y (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) (sqrt.f64 b)) (sqrt.f64 b) (*.f64 (*.f64 y (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) (sqrt.f64 b)) (sqrt.f64 b) (fma.f64 y (neg.f64 z) (fma.f64 y (neg.f64 z) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 y (+.f64 t -2)) (sqrt.f64 b)) (sqrt.f64 b) (neg.f64 (-.f64 (*.f64 y z) (fma.f64 y (neg.f64 z) (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (cbrt.f64 (pow.f64 (+.f64 y (+.f64 t -2)) 2))) (cbrt.f64 (+.f64 y (+.f64 t -2))) (*.f64 y (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (cbrt.f64 (pow.f64 (+.f64 y (+.f64 t -2)) 2))) (cbrt.f64 (+.f64 y (+.f64 t -2))) (*.f64 (*.f64 y (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (cbrt.f64 (pow.f64 (+.f64 y (+.f64 t -2)) 2))) (cbrt.f64 (+.f64 y (+.f64 t -2))) (fma.f64 y (neg.f64 z) (fma.f64 y (neg.f64 z) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (cbrt.f64 (pow.f64 (+.f64 y (+.f64 t -2)) 2))) (cbrt.f64 (+.f64 y (+.f64 t -2))) (neg.f64 (-.f64 (*.f64 y z) (fma.f64 y (neg.f64 z) (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (sqrt.f64 (+.f64 y (+.f64 t -2)))) (sqrt.f64 (+.f64 y (+.f64 t -2))) (*.f64 y (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (sqrt.f64 (+.f64 y (+.f64 t -2)))) (sqrt.f64 (+.f64 y (+.f64 t -2))) (*.f64 (*.f64 y (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (sqrt.f64 (+.f64 y (+.f64 t -2)))) (sqrt.f64 (+.f64 y (+.f64 t -2))) (fma.f64 y (neg.f64 z) (fma.f64 y (neg.f64 z) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (sqrt.f64 (+.f64 y (+.f64 t -2)))) (sqrt.f64 (+.f64 y (+.f64 t -2))) (neg.f64 (-.f64 (*.f64 y z) (fma.f64 y (neg.f64 z) (*.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 y) 1) z (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 y) (cbrt.f64 (*.f64 z z))) (cbrt.f64 z) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 y) (sqrt.f64 z)) (sqrt.f64 z) (*.f64 (+.f64 y (+.f64 t -2)) b)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y b) (*.f64 (+.f64 t -2) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 t -2) b) (*.f64 y b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 y t) b) (*.f64 -2 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 b y) (*.f64 b (+.f64 t -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 b (+.f64 t -2)) (*.f64 b y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 b (+.f64 y t)) (*.f64 b -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 b) (+.f64 y (+.f64 t -2)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 b) (+.f64 y (+.f64 t -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 b) (+.f64 y (+.f64 t -2))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 b) (+.f64 y (+.f64 t -2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 y (+.f64 t -2)) b))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 y 3) (pow.f64 (+.f64 t -2) 3)) b) (fma.f64 (+.f64 t -2) (-.f64 (+.f64 t -2) y) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 y y) (pow.f64 (+.f64 t -2) 2)) b) (-.f64 (-.f64 y t) -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 b (+.f64 (pow.f64 y 3) (pow.f64 (+.f64 t -2) 3))) (fma.f64 (+.f64 t -2) (-.f64 (+.f64 t -2) y) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 b (-.f64 (*.f64 y y) (pow.f64 (+.f64 t -2) 2))) (-.f64 (-.f64 y t) -2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 b) (+.f64 y (+.f64 t -2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y b (*.f64 (+.f64 t -2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 t -2) b (*.f64 y b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b y (*.f64 b (+.f64 t -2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b (+.f64 t -2) (*.f64 b y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b (+.f64 y t) (*.f64 b -2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y t) b (*.f64 -2 b)))))) |
| 1× | egg-herbie |
| 968× | fma-neg_binary64 |
| 471× | fma-def_binary64 |
| 195× | cancel-sign-sub-inv_binary64 |
| 185× | distribute-rgt-in_binary64 |
| 146× | unsub-neg_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 35 | 924 |
| 1 | 94 | 924 |
| 2 | 201 | 924 |
| 3 | 475 | 922 |
| 4 | 941 | 922 |
| 5 | 1826 | 922 |
| 6 | 3161 | 922 |
| 7 | 3331 | 922 |
| 8 | 3331 | 922 |
| 9 | 3774 | 922 |
| 10 | 3774 | 922 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 (-.f64 t 2) b) |
(+.f64 (*.f64 (-.f64 t 2) b) (*.f64 (-.f64 b z) y)) |
(+.f64 (*.f64 (-.f64 t 2) b) (*.f64 (-.f64 b z) y)) |
(+.f64 (*.f64 (-.f64 t 2) b) (*.f64 (-.f64 b z) y)) |
(*.f64 (-.f64 b z) y) |
(+.f64 (*.f64 b (-.f64 t 2)) (*.f64 (-.f64 b z) y)) |
(+.f64 (*.f64 b (-.f64 t 2)) (*.f64 (-.f64 b z) y)) |
(+.f64 (*.f64 b (-.f64 t 2)) (*.f64 (-.f64 b z) y)) |
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 b) (*.f64 -1 z)))) |
(+.f64 (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 b) (*.f64 -1 z)))) (*.f64 b (-.f64 t 2))) |
(+.f64 (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 b) (*.f64 -1 z)))) (*.f64 b (-.f64 t 2))) |
(+.f64 (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 b) (*.f64 -1 z)))) (*.f64 b (-.f64 t 2))) |
(-.f64 (*.f64 (-.f64 y 2) b) (*.f64 y z)) |
(-.f64 (+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) (*.f64 y z)) |
(-.f64 (+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) (*.f64 y z)) |
(-.f64 (+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) (*.f64 y z)) |
(*.f64 t b) |
(-.f64 (+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) (*.f64 y z)) |
(-.f64 (+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) (*.f64 y z)) |
(-.f64 (+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) (*.f64 y z)) |
(*.f64 t b) |
(-.f64 (+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) (*.f64 y z)) |
(-.f64 (+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) (*.f64 y z)) |
(-.f64 (+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) (*.f64 y z)) |
(*.f64 -1 (*.f64 y z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(*.f64 -1 (*.f64 y z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(*.f64 -1 (*.f64 y z)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(*.f64 b (-.f64 t 2)) |
(+.f64 (*.f64 y b) (*.f64 b (-.f64 t 2))) |
(+.f64 (*.f64 y b) (*.f64 b (-.f64 t 2))) |
(+.f64 (*.f64 y b) (*.f64 b (-.f64 t 2))) |
(*.f64 y b) |
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)) |
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)) |
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)) |
(*.f64 y b) |
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)) |
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)) |
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)) |
(*.f64 (-.f64 y 2) b) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
| Outputs |
|---|
(*.f64 (-.f64 t 2) b) |
(*.f64 (+.f64 t -2) b) |
(+.f64 (*.f64 (-.f64 t 2) b) (*.f64 (-.f64 b z) y)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(+.f64 (*.f64 (-.f64 t 2) b) (*.f64 (-.f64 b z) y)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(+.f64 (*.f64 (-.f64 t 2) b) (*.f64 (-.f64 b z) y)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(*.f64 (-.f64 b z) y) |
(+.f64 (*.f64 b (-.f64 t 2)) (*.f64 (-.f64 b z) y)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(+.f64 (*.f64 b (-.f64 t 2)) (*.f64 (-.f64 b z) y)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(+.f64 (*.f64 b (-.f64 t 2)) (*.f64 (-.f64 b z) y)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 b) (*.f64 -1 z)))) |
(*.f64 (-.f64 b z) y) |
(+.f64 (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 b) (*.f64 -1 z)))) (*.f64 b (-.f64 t 2))) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(+.f64 (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 b) (*.f64 -1 z)))) (*.f64 b (-.f64 t 2))) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(+.f64 (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 b) (*.f64 -1 z)))) (*.f64 b (-.f64 t 2))) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(-.f64 (*.f64 (-.f64 y 2) b) (*.f64 y z)) |
(-.f64 (*.f64 b (+.f64 y -2)) (*.f64 z y)) |
(+.f64 (*.f64 (-.f64 b z) y) (*.f64 b -2)) |
(fma.f64 b -2 (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 b -2)) |
(-.f64 (+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) (*.f64 y z)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(-.f64 (+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) (*.f64 y z)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(-.f64 (+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) (*.f64 y z)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(*.f64 t b) |
(-.f64 (+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) (*.f64 y z)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(-.f64 (+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) (*.f64 y z)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(-.f64 (+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) (*.f64 y z)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(*.f64 t b) |
(-.f64 (+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) (*.f64 y z)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(-.f64 (+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) (*.f64 y z)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(-.f64 (+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) (*.f64 y z)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(*.f64 -1 (*.f64 y z)) |
(neg.f64 (*.f64 z y)) |
(*.f64 z (neg.f64 y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(*.f64 -1 (*.f64 y z)) |
(neg.f64 (*.f64 z y)) |
(*.f64 z (neg.f64 y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(*.f64 -1 (*.f64 y z)) |
(neg.f64 (*.f64 z y)) |
(*.f64 z (neg.f64 y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (+.f64 t -2) b (*.f64 (-.f64 b z) y)) |
(fma.f64 (-.f64 b z) y (*.f64 (-.f64 t 2) b)) |
(fma.f64 (-.f64 t 2) b (*.f64 (-.f64 b z) y)) |
(*.f64 b (-.f64 t 2)) |
(*.f64 (+.f64 t -2) b) |
(*.f64 (-.f64 t 2) b) |
(+.f64 (*.f64 y b) (*.f64 b (-.f64 t 2))) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(+.f64 (*.f64 y b) (*.f64 b (-.f64 t 2))) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(+.f64 (*.f64 y b) (*.f64 b (-.f64 t 2))) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(*.f64 y b) |
(*.f64 b y) |
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(*.f64 y b) |
(*.f64 b y) |
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(+.f64 (*.f64 y b) (*.f64 (-.f64 t 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(*.f64 (-.f64 y 2) b) |
(*.f64 b (+.f64 y -2)) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(+.f64 (*.f64 t b) (*.f64 (-.f64 y 2) b)) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 b (+.f64 y (+.f64 t -2))) |
(*.f64 b (+.f64 (-.f64 t 2) y)) |
(*.f64 b (+.f64 (+.f64 t -2) y)) |
(*.f64 b (+.f64 t (+.f64 y -2))) |
Compiled 8978 to 4458 computations (50.3% saved)
24 alts after pruning (20 fresh and 4 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 451 | 9 | 460 |
| Fresh | 4 | 11 | 15 |
| Picked | 0 | 1 | 1 |
| Done | 1 | 3 | 4 |
| Total | 456 | 24 | 480 |
| Status | Error | Program |
|---|---|---|
| 46.8b | (+.f64 (*.f64 -2 b) z) | |
| 49.6b | (*.f64 (-.f64 b z) y) | |
| 19.9b | (+.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a)) (*.f64 y b)) | |
| ✓ | 47.1b | (*.f64 z (-.f64 1 y)) |
| ✓ | 36.2b | (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
| 52.1b | (/.f64 (*.f64 (-.f64 1 (*.f64 y y)) z) (+.f64 1 y)) | |
| ▶ | 36.5b | (-.f64 x (*.f64 (-.f64 t 1) a)) |
| ✓ | 56.7b | (*.f64 t b) |
| 37.6b | (+.f64 (*.f64 (-.f64 y 2) b) x) | |
| ▶ | 49.3b | (*.f64 (-.f64 t 2) b) |
| ▶ | 56.5b | (*.f64 y b) |
| 54.1b | z | |
| 17.4b | (+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)) | |
| 55.6b | (*.f64 (neg.f64 z) y) | |
| 51.5b | (*.f64 t (-.f64 b a)) | |
| 33.6b | (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) | |
| 15.9b | (+.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 (-.f64 (+.f64 y t) 2) b)) | |
| 30.4b | (+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) | |
| 45.2b | (+.f64 x (*.f64 y b)) | |
| 51.3b | x | |
| ✓ | 40.7b | (+.f64 z (*.f64 b (-.f64 t 2))) |
| ▶ | 13.3b | (+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| ▶ | 28.2b | (+.f64 (-.f64 a (*.f64 t a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 14.0b | (+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
Compiled 602 to 442 computations (26.6% saved)
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| ✓ | 0.0b | (+.f64 a (+.f64 z x)) |
| 0.0b | (*.f64 (-.f64 (+.f64 y t) 2) b) |
Compiled 49 to 19 computations (61.2% saved)
27 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | a | @ | 0 | (+.f64 a (+.f64 z x)) |
| 0.0ms | t | @ | 0 | (+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 0.0ms | y | @ | 0 | (+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 0.0ms | y | @ | inf | (+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 0.0ms | x | @ | -inf | (+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 1× | batch-egg-rewrite |
| 512× | fma-neg_binary64 |
| 318× | expm1-udef_binary64 |
| 318× | log1p-udef_binary64 |
| 250× | log-pow_binary64 |
| 187× | log-div_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 14 | 26 |
| 1 | 334 | 24 |
| 2 | 5182 | 24 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 a (+.f64 z x)) |
(+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (+.f64 x (+.f64 a z)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 a a) (-.f64 a (+.f64 z x))) (/.f64 (pow.f64 (+.f64 z x) 2) (-.f64 a (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (+.f64 a z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 x (+.f64 a z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 x (+.f64 a z))) (pow.f64 (cbrt.f64 (+.f64 x (+.f64 a z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 x (+.f64 a z))) 2) (cbrt.f64 (+.f64 x (+.f64 a z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 x (+.f64 a z))) (sqrt.f64 (+.f64 x (+.f64 a z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 a 3) (pow.f64 (+.f64 z x) 3)) (/.f64 1 (fma.f64 a a (*.f64 (+.f64 z x) (-.f64 (+.f64 z x) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 a a) (pow.f64 (+.f64 z x) 2)) (/.f64 1 (-.f64 a (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 a a (*.f64 (+.f64 z x) (-.f64 (+.f64 z x) a))) (+.f64 (pow.f64 a 3) (pow.f64 (+.f64 z x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 a (+.f64 z x)) (-.f64 (*.f64 a a) (pow.f64 (+.f64 z x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 a 3) (pow.f64 (+.f64 z x) 3)) (fma.f64 a a (*.f64 (+.f64 z x) (-.f64 (+.f64 z x) a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 a 3) (pow.f64 (+.f64 z x) 3)) (+.f64 (pow.f64 (+.f64 z x) 2) (-.f64 (*.f64 a a) (*.f64 a (+.f64 z x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 a a) (pow.f64 (+.f64 z x) 2)) (-.f64 a (+.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 a 3) (pow.f64 (+.f64 z x) 3))) (neg.f64 (fma.f64 a a (*.f64 (+.f64 z x) (-.f64 (+.f64 z x) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 a a) (pow.f64 (+.f64 z x) 2))) (neg.f64 (-.f64 a (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (+.f64 a z) 3) (pow.f64 x 3)) (+.f64 (*.f64 (+.f64 a z) (+.f64 a z)) (-.f64 (*.f64 x x) (*.f64 (+.f64 a z) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (+.f64 z x) 2) (*.f64 a a)) (-.f64 (+.f64 z x) a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 a z) (+.f64 a z)) (*.f64 x x)) (-.f64 (+.f64 a z) x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 x (+.f64 a z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 x (+.f64 a z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 x (+.f64 a z))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 x (+.f64 a z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 x (+.f64 a z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 x (+.f64 a z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (+.f64 x (+.f64 a z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 a)) (exp.f64 (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 a) (+.f64 1 (expm1.f64 (+.f64 z x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 a)) (+.f64 1 (expm1.f64 (+.f64 z x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (exp.f64 (+.f64 a z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (exp.f64 (+.f64 a z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (*.f64 (exp.f64 a) (exp.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (*.f64 (exp.f64 a) (exp.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (+.f64 z x))) (exp.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (+.f64 z x)) (+.f64 1 (expm1.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (+.f64 z x))) (+.f64 1 (expm1.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (exp.f64 a) (exp.f64 z)) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (+.f64 a z)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (exp.f64 a) (exp.f64 z)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 x (+.f64 a z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 x (+.f64 a z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 x (+.f64 a z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 x (+.f64 a z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (+.f64 x (+.f64 a z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 a (+.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 z x) a)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 z x)) 2) (cbrt.f64 (+.f64 z x)) a)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 a) 2) (cbrt.f64 a) (+.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 z x)) (sqrt.f64 (+.f64 z x)) a)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 a) (sqrt.f64 a) (+.f64 z x)))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (+.f64 x (+.f64 a z))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (+.f64 x (+.f64 a z)) 2) (+.f64 a (-.f64 (+.f64 z x) (*.f64 (+.f64 y (+.f64 t -2)) b)))) (/.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2) (+.f64 a (-.f64 (+.f64 z x) (*.f64 (+.f64 y (+.f64 t -2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (+.f64 x (+.f64 a z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (+.f64 y (+.f64 t -2)) b (+.f64 x (+.f64 a z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (+.f64 x (+.f64 a z)))) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (+.f64 x (+.f64 a z)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (+.f64 x (+.f64 a z)))) 2) (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (+.f64 x (+.f64 a z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (+.f64 x (+.f64 a z)))) (sqrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (+.f64 x (+.f64 a z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (+.f64 x (+.f64 a z)) 3) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3)) (/.f64 1 (+.f64 (pow.f64 (+.f64 x (+.f64 a z)) 2) (*.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (+.f64 x (+.f64 a z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (+.f64 x (+.f64 a z)) 2) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2)) (/.f64 1 (+.f64 a (-.f64 (+.f64 z x) (*.f64 (+.f64 y (+.f64 t -2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (+.f64 x (+.f64 a z)) 2) (*.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (+.f64 x (+.f64 a z))))) (+.f64 (pow.f64 (+.f64 x (+.f64 a z)) 3) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 a (-.f64 (+.f64 z x) (*.f64 (+.f64 y (+.f64 t -2)) b))) (-.f64 (pow.f64 (+.f64 x (+.f64 a z)) 2) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (+.f64 x (+.f64 a z)) 3) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3)) (+.f64 (pow.f64 (+.f64 x (+.f64 a z)) 2) (*.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (+.f64 x (+.f64 a z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (+.f64 x (+.f64 a z)) 3) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3)) (+.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2) (-.f64 (pow.f64 (+.f64 x (+.f64 a z)) 2) (*.f64 (+.f64 x (+.f64 a z)) (*.f64 (+.f64 y (+.f64 t -2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (+.f64 x (+.f64 a z)) 2) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2)) (+.f64 a (-.f64 (+.f64 z x) (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (+.f64 x (+.f64 a z)) 3) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 3))) (neg.f64 (+.f64 (pow.f64 (+.f64 x (+.f64 a z)) 2) (*.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (+.f64 x (+.f64 a z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (+.f64 x (+.f64 a z)) 2) (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2))) (neg.f64 (+.f64 a (-.f64 (+.f64 z x) (*.f64 (+.f64 y (+.f64 t -2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 a 3) (pow.f64 (+.f64 z (+.f64 x (*.f64 (+.f64 y (+.f64 t -2)) b))) 3)) (+.f64 (*.f64 a a) (fma.f64 (+.f64 z (+.f64 x (*.f64 (+.f64 y (+.f64 t -2)) b))) (+.f64 z (+.f64 x (*.f64 (+.f64 y (+.f64 t -2)) b))) (neg.f64 (*.f64 a (+.f64 z (+.f64 x (*.f64 (+.f64 y (+.f64 t -2)) b))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 a a) (*.f64 (+.f64 z (+.f64 x (*.f64 (+.f64 y (+.f64 t -2)) b))) (+.f64 z (+.f64 x (*.f64 (+.f64 y (+.f64 t -2)) b))))) (-.f64 a (+.f64 z (+.f64 x (*.f64 (+.f64 y (+.f64 t -2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2) (pow.f64 (+.f64 x (+.f64 a z)) 2)) (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (+.f64 x (+.f64 a z))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (+.f64 x (+.f64 a z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (+.f64 x (+.f64 a z))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (+.f64 x (+.f64 a z)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (+.f64 x (+.f64 a z)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (+.f64 x (+.f64 a z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (+.f64 x (+.f64 a z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (+.f64 x (+.f64 a z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 a)) (exp.f64 (+.f64 z (+.f64 x (*.f64 (+.f64 y (+.f64 t -2)) b))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 a) (*.f64 (exp.f64 (+.f64 z x)) (pow.f64 (exp.f64 (+.f64 y (+.f64 t -2))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 a)) (*.f64 (exp.f64 (+.f64 z x)) (pow.f64 (exp.f64 (+.f64 y (+.f64 t -2))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (+.f64 x (+.f64 a z)))) (pow.f64 (exp.f64 (+.f64 y (+.f64 t -2))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (+.f64 x (+.f64 a z))) (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (+.f64 x (+.f64 a z)))) (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (+.f64 t -2)) b))) (exp.f64 (+.f64 x (+.f64 a z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (+.f64 y (+.f64 t -2))) b) (+.f64 1 (expm1.f64 (+.f64 x (+.f64 a z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (+.f64 t -2)) b))) (+.f64 1 (expm1.f64 (+.f64 x (+.f64 a z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (+.f64 z (+.f64 x (*.f64 (+.f64 y (+.f64 t -2)) b)))) (exp.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (exp.f64 (+.f64 z x)) (pow.f64 (exp.f64 (+.f64 y (+.f64 t -2))) b)) (exp.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (+.f64 z (+.f64 x (*.f64 (+.f64 y (+.f64 t -2)) b)))) (+.f64 1 (expm1.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (exp.f64 (+.f64 z x)) (pow.f64 (exp.f64 (+.f64 y (+.f64 t -2))) b)) (+.f64 1 (expm1.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (+.f64 x (+.f64 a z))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (+.f64 x (+.f64 a z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (+.f64 x (+.f64 a z)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (+.f64 x (+.f64 a z)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (+.f64 y (+.f64 t -2)) b (+.f64 x (+.f64 a z)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y (+.f64 t -2)) b (+.f64 x (+.f64 a z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b (+.f64 y (+.f64 t -2)) (+.f64 x (+.f64 a z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 a (+.f64 z (+.f64 x (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 x (+.f64 a z)) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (+.f64 y (+.f64 t -2)) b) (+.f64 x (+.f64 a z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 a) 2) (cbrt.f64 a) (+.f64 z (+.f64 x (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 x (+.f64 a z))) 2) (cbrt.f64 (+.f64 x (+.f64 a z))) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) 2)) (cbrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (+.f64 x (+.f64 a z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 a) (sqrt.f64 a) (+.f64 z (+.f64 x (*.f64 (+.f64 y (+.f64 t -2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 x (+.f64 a z))) (sqrt.f64 (+.f64 x (+.f64 a z))) (*.f64 (+.f64 y (+.f64 t -2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (sqrt.f64 (*.f64 (+.f64 y (+.f64 t -2)) b)) (+.f64 x (+.f64 a z))))))) |
| 1× | egg-herbie |
| 687× | sub-neg_binary64 |
| 643× | fma-def_binary64 |
| 549× | unsub-neg_binary64 |
| 433× | associate-+l+_binary64 |
| 416× | associate-+l-_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 39 | 1057 |
| 1 | 102 | 1055 |
| 2 | 232 | 1055 |
| 3 | 592 | 1055 |
| 4 | 1238 | 1055 |
| 5 | 1474 | 1055 |
| 6 | 1554 | 1055 |
| 7 | 1772 | 1055 |
| 8 | 2583 | 1055 |
| 9 | 3936 | 1055 |
| 10 | 5048 | 1055 |
| 11 | 5931 | 1055 |
| 12 | 7336 | 1055 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 z x) |
a |
a |
(+.f64 a x) |
z |
z |
(+.f64 a z) |
x |
x |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x)) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
a |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
a |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
z |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
z |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(+.f64 a (+.f64 z (*.f64 (-.f64 (+.f64 y t) 2) b))) |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
x |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
x |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 t 2) b) x))) |
(+.f64 (*.f64 y b) (+.f64 a (+.f64 (*.f64 (-.f64 t 2) b) (+.f64 z x)))) |
(+.f64 (*.f64 y b) (+.f64 a (+.f64 (*.f64 (-.f64 t 2) b) (+.f64 z x)))) |
(+.f64 (*.f64 y b) (+.f64 a (+.f64 (*.f64 (-.f64 t 2) b) (+.f64 z x)))) |
(*.f64 y b) |
(+.f64 (*.f64 y b) (+.f64 a (+.f64 (*.f64 (-.f64 t 2) b) (+.f64 z x)))) |
(+.f64 (*.f64 y b) (+.f64 a (+.f64 (*.f64 (-.f64 t 2) b) (+.f64 z x)))) |
(+.f64 (*.f64 y b) (+.f64 a (+.f64 (*.f64 (-.f64 t 2) b) (+.f64 z x)))) |
(*.f64 y b) |
(+.f64 (*.f64 y b) (+.f64 a (+.f64 (*.f64 (-.f64 t 2) b) (+.f64 z x)))) |
(+.f64 (*.f64 y b) (+.f64 a (+.f64 (*.f64 (-.f64 t 2) b) (+.f64 z x)))) |
(+.f64 (*.f64 y b) (+.f64 a (+.f64 (*.f64 (-.f64 t 2) b) (+.f64 z x)))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 y 2) b) x))) |
(+.f64 (*.f64 t b) (+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 y 2) b) x)))) |
(+.f64 (*.f64 t b) (+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 y 2) b) x)))) |
(+.f64 (*.f64 t b) (+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 y 2) b) x)))) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 y 2) b) x)))) |
(+.f64 (*.f64 t b) (+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 y 2) b) x)))) |
(+.f64 (*.f64 t b) (+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 y 2) b) x)))) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 y 2) b) x)))) |
(+.f64 (*.f64 t b) (+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 y 2) b) x)))) |
(+.f64 (*.f64 t b) (+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 y 2) b) x)))) |
(+.f64 a (+.f64 z x)) |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
| Outputs |
|---|
(+.f64 z x) |
a |
a |
(+.f64 a x) |
(+.f64 x a) |
z |
z |
(+.f64 a z) |
(+.f64 z a) |
x |
x |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x)) |
(+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x)) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
a |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
a |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x)) |
(+.f64 a (fma.f64 (+.f64 y (+.f64 t -2)) b x)) |
(+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a)) |
(+.f64 x (fma.f64 (+.f64 t (+.f64 y -2)) b a)) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
z |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
z |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 z (*.f64 (-.f64 (+.f64 y t) 2) b))) |
(+.f64 a (+.f64 z (*.f64 (+.f64 y (+.f64 t -2)) b))) |
(+.f64 a (fma.f64 (+.f64 y (+.f64 t -2)) b z)) |
(+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b a)) |
(fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z a)) |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
x |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
x |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 t 2) b) x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 t -2) b x))) |
(+.f64 a (+.f64 x (fma.f64 b (+.f64 t -2) z))) |
(+.f64 (+.f64 z x) (fma.f64 b (+.f64 t -2) a)) |
(+.f64 z (fma.f64 b (+.f64 t -2) (+.f64 x a))) |
(+.f64 (*.f64 y b) (+.f64 a (+.f64 (*.f64 (-.f64 t 2) b) (+.f64 z x)))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 (*.f64 y b) (+.f64 a (+.f64 (*.f64 (-.f64 t 2) b) (+.f64 z x)))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 (*.f64 y b) (+.f64 a (+.f64 (*.f64 (-.f64 t 2) b) (+.f64 z x)))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(*.f64 y b) |
(+.f64 (*.f64 y b) (+.f64 a (+.f64 (*.f64 (-.f64 t 2) b) (+.f64 z x)))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 (*.f64 y b) (+.f64 a (+.f64 (*.f64 (-.f64 t 2) b) (+.f64 z x)))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 (*.f64 y b) (+.f64 a (+.f64 (*.f64 (-.f64 t 2) b) (+.f64 z x)))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(*.f64 y b) |
(+.f64 (*.f64 y b) (+.f64 a (+.f64 (*.f64 (-.f64 t 2) b) (+.f64 z x)))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 (*.f64 y b) (+.f64 a (+.f64 (*.f64 (-.f64 t 2) b) (+.f64 z x)))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 (*.f64 y b) (+.f64 a (+.f64 (*.f64 (-.f64 t 2) b) (+.f64 z x)))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 y 2) b) x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y -2) b x))) |
(+.f64 a (+.f64 z (fma.f64 b (+.f64 y -2) x))) |
(+.f64 z (+.f64 a (fma.f64 b (+.f64 y -2) x))) |
(+.f64 (+.f64 z x) (fma.f64 b (+.f64 y -2) a)) |
(fma.f64 b (+.f64 y -2) (+.f64 x (+.f64 z a))) |
(+.f64 x (+.f64 z (fma.f64 b (+.f64 y -2) a))) |
(+.f64 (*.f64 t b) (+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 y 2) b) x)))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 (*.f64 t b) (+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 y 2) b) x)))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 (*.f64 t b) (+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 y 2) b) x)))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 y 2) b) x)))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 (*.f64 t b) (+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 y 2) b) x)))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 (*.f64 t b) (+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 y 2) b) x)))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(*.f64 t b) |
(+.f64 (*.f64 t b) (+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 y 2) b) x)))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 (*.f64 t b) (+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 y 2) b) x)))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 (*.f64 t b) (+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 y 2) b) x)))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 z x)) |
(+.f64 (+.f64 z x) a) |
(+.f64 z (+.f64 x a)) |
(+.f64 x (+.f64 z a)) |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (+.f64 z x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 (+.f64 y (+.f64 t -2)) b) |
(*.f64 (+.f64 t (+.f64 y -2)) b) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 (+.f64 y (+.f64 t -2)) b) |
(*.f64 (+.f64 t (+.f64 y -2)) b) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
(+.f64 a (+.f64 z (+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) x))) |
(+.f64 a (+.f64 z (fma.f64 (+.f64 y (+.f64 t -2)) b x))) |
(+.f64 z (+.f64 x (fma.f64 (+.f64 y (+.f64 t -2)) b a))) |
(+.f64 a (fma.f64 (+.f64 t (+.f64 y -2)) b (+.f64 z x))) |
Compiled 11 to 7 computations (36.4% saved)
Compiled 17 to 12 computations (29.4% saved)
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| 0.0b | (-.f64 x (*.f64 (-.f64 t 1) a)) | |
| 0.0b | (*.f64 (-.f64 t 1) a) |
Compiled 25 to 16 computations (36% saved)
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f64 (-.f64 a (*.f64 t a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 0.0b | (*.f64 (-.f64 (+.f64 y t) 2) b) | |
| ✓ | 0.0b | (-.f64 a (*.f64 t a)) |
Compiled 47 to 19 computations (59.6% saved)
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | b | @ | 0 | (+.f64 (-.f64 a (*.f64 t a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 0.0ms | t | @ | inf | (-.f64 a (*.f64 t a)) |
| 0.0ms | a | @ | 0 | (-.f64 a (*.f64 t a)) |
| 0.0ms | y | @ | -inf | (+.f64 (-.f64 a (*.f64 t a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 0.0ms | y | @ | 0 | (+.f64 (-.f64 a (*.f64 t a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 1× | batch-egg-rewrite |
| 724× | log-prod_binary64 |
| 444× | fma-neg_binary64 |
| 272× | expm1-udef_binary64 |
| 272× | log1p-udef_binary64 |
| 213× | log-pow_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 12 | 26 |
| 1 | 288 | 24 |
| 2 | 4456 | 24 |
| 1× | node limit |
| Inputs |
|---|
(-.f64 a (*.f64 t a)) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 a (*.f64 a (neg.f64 t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 a (*.f64 (*.f64 a (neg.f64 t)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 a (*.f64 a t)) (fma.f64 (*.f64 a (neg.f64 t)) 1 (*.f64 a t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 a (*.f64 a t)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a t))) (pow.f64 (cbrt.f64 (*.f64 a t)) 2) (*.f64 a t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 a (*.f64 a t)) (fma.f64 (neg.f64 t) a (*.f64 a t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 a (neg.f64 t)) a)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 a (*.f64 a t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (-.f64 a (*.f64 a t)))) (cbrt.f64 (exp.f64 (-.f64 a (*.f64 a t)))))) (log.f64 (cbrt.f64 (exp.f64 (-.f64 a (*.f64 a t))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 a (*.f64 a t))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 a (*.f64 a t))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 a (-.f64 1 t))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 a (+.f64 1 (neg.f64 t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 a (*.f64 a t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 a (*.f64 a t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 a (*.f64 a t))) (pow.f64 (cbrt.f64 (-.f64 a (*.f64 a t))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 a (*.f64 a t))) 2) (cbrt.f64 (-.f64 a (*.f64 a t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 a (*.f64 a t))) (sqrt.f64 (-.f64 a (*.f64 a t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 a 3) (pow.f64 (*.f64 a t) 3)) (/.f64 1 (fma.f64 a a (*.f64 (*.f64 a t) (+.f64 a (*.f64 a t))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 a a) (pow.f64 (*.f64 a t) 2)) (/.f64 1 (+.f64 a (*.f64 a t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 a) (sqrt.f64 (*.f64 a t))) (-.f64 (sqrt.f64 a) (sqrt.f64 (*.f64 a t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (neg.f64 t) 1) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 a a (*.f64 (*.f64 a t) (+.f64 a (*.f64 a t)))) (-.f64 (pow.f64 a 3) (pow.f64 (*.f64 a t) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 a (*.f64 a t)) (-.f64 (*.f64 a a) (pow.f64 (*.f64 a t) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 a 3) (pow.f64 (*.f64 a t) 3)) (fma.f64 a a (*.f64 (*.f64 a t) (+.f64 a (*.f64 a t)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 a a) (pow.f64 (*.f64 a t) 2)) (+.f64 a (*.f64 a t)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 a 3) (pow.f64 (*.f64 a t) 3))) (neg.f64 (fma.f64 a a (*.f64 (*.f64 a t) (+.f64 a (*.f64 a t))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 a a) (pow.f64 (*.f64 a t) 2))) (neg.f64 (+.f64 a (*.f64 a t))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 a 3) (pow.f64 (*.f64 a (neg.f64 t)) 3)) (+.f64 (*.f64 a a) (-.f64 (*.f64 (*.f64 a (neg.f64 t)) (*.f64 a (neg.f64 t))) (*.f64 a (*.f64 a (neg.f64 t))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 a a) (*.f64 (*.f64 a (neg.f64 t)) (*.f64 a (neg.f64 t)))) (-.f64 a (*.f64 a (neg.f64 t))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 a (*.f64 a t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 a (*.f64 a t))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 a (*.f64 a t))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 a (*.f64 a t)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 a (*.f64 a t)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 a (*.f64 a t))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 a (*.f64 a t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 a)) (pow.f64 (exp.f64 a) t)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 a) (+.f64 1 (expm1.f64 (*.f64 a t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 a)) (+.f64 1 (expm1.f64 (*.f64 a t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 a)) (exp.f64 (*.f64 a (neg.f64 t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 a) (/.f64 1 (pow.f64 (exp.f64 a) t))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 a)) (/.f64 1 (pow.f64 (exp.f64 a) t))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 a (neg.f64 t))) (exp.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 a) t)) (exp.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 a (neg.f64 t))) (+.f64 1 (expm1.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 a) t)) (+.f64 1 (expm1.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 a (*.f64 a t)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 a (*.f64 a t))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 a (*.f64 a t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 a (*.f64 a t))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 a (*.f64 a t))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 a 1 (*.f64 a (neg.f64 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 a (*.f64 a (neg.f64 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 a) (pow.f64 (cbrt.f64 a) 2) (*.f64 a (neg.f64 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 a) 2) (cbrt.f64 a) (*.f64 a (neg.f64 t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 a) (sqrt.f64 a) (*.f64 a (neg.f64 t))))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 a (-.f64 (*.f64 a t) (*.f64 (+.f64 y (-.f64 t 2)) b)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (+.f64 y (-.f64 t 2)) b (-.f64 a (*.f64 a t))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (-.f64 a (*.f64 a t)) 2) (-.f64 a (+.f64 (*.f64 a t) (*.f64 (+.f64 y (-.f64 t 2)) b)))) (/.f64 (pow.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) 2) (-.f64 a (+.f64 (*.f64 a t) (*.f64 (+.f64 y (-.f64 t 2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) a) (*.f64 a t))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (+.f64 y (-.f64 t 2)) b (-.f64 a (*.f64 a t))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (+.f64 y (-.f64 t 2)) b (-.f64 a (*.f64 a t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (+.f64 y (-.f64 t 2)) b (-.f64 a (*.f64 a t)))) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y (-.f64 t 2)) b (-.f64 a (*.f64 a t)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (+.f64 y (-.f64 t 2)) b (-.f64 a (*.f64 a t)))) 2) (cbrt.f64 (fma.f64 (+.f64 y (-.f64 t 2)) b (-.f64 a (*.f64 a t)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (+.f64 y (-.f64 t 2)) b (-.f64 a (*.f64 a t)))) (sqrt.f64 (fma.f64 (+.f64 y (-.f64 t 2)) b (-.f64 a (*.f64 a t)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (-.f64 a (*.f64 a t)) 3) (pow.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) 3)) (/.f64 1 (+.f64 (pow.f64 (-.f64 a (*.f64 a t)) 2) (*.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (-.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (-.f64 a (*.f64 a t)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (-.f64 a (*.f64 a t)) 2) (pow.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) 2)) (/.f64 1 (-.f64 a (+.f64 (*.f64 a t) (*.f64 (+.f64 y (-.f64 t 2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (-.f64 a (*.f64 a t)) 2) (*.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (-.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (-.f64 a (*.f64 a t))))) (+.f64 (pow.f64 (-.f64 a (*.f64 a t)) 3) (pow.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 a (+.f64 (*.f64 a t) (*.f64 (+.f64 y (-.f64 t 2)) b))) (-.f64 (pow.f64 (-.f64 a (*.f64 a t)) 2) (pow.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (-.f64 a (*.f64 a t)) 3) (pow.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) 3)) (+.f64 (pow.f64 (-.f64 a (*.f64 a t)) 2) (*.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (-.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (-.f64 a (*.f64 a t))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (-.f64 a (*.f64 a t)) 3) (pow.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) 3)) (+.f64 (pow.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) 2) (-.f64 (pow.f64 (-.f64 a (*.f64 a t)) 2) (*.f64 (-.f64 a (*.f64 a t)) (*.f64 (+.f64 y (-.f64 t 2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (-.f64 a (*.f64 a t)) 2) (pow.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) 2)) (-.f64 a (+.f64 (*.f64 a t) (*.f64 (+.f64 y (-.f64 t 2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (-.f64 a (*.f64 a t)) 3) (pow.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) 3))) (neg.f64 (+.f64 (pow.f64 (-.f64 a (*.f64 a t)) 2) (*.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (-.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (-.f64 a (*.f64 a t)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 a (*.f64 a t)) 2) (pow.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) 2))) (neg.f64 (-.f64 a (+.f64 (*.f64 a t) (*.f64 (+.f64 y (-.f64 t 2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 a 3) (pow.f64 (-.f64 (*.f64 a t) (*.f64 (+.f64 y (-.f64 t 2)) b)) 3)) (+.f64 (*.f64 a a) (+.f64 (*.f64 (-.f64 (*.f64 a t) (*.f64 (+.f64 y (-.f64 t 2)) b)) (-.f64 (*.f64 a t) (*.f64 (+.f64 y (-.f64 t 2)) b))) (*.f64 a (-.f64 (*.f64 a t) (*.f64 (+.f64 y (-.f64 t 2)) b))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 a a) (*.f64 (-.f64 (*.f64 a t) (*.f64 (+.f64 y (-.f64 t 2)) b)) (-.f64 (*.f64 a t) (*.f64 (+.f64 y (-.f64 t 2)) b)))) (+.f64 a (-.f64 (*.f64 a t) (*.f64 (+.f64 y (-.f64 t 2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) 2) (pow.f64 (-.f64 a (*.f64 a t)) 2)) (-.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (-.f64 a (*.f64 a t))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (+.f64 y (-.f64 t 2)) b (-.f64 a (*.f64 a t))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (+.f64 y (-.f64 t 2)) b (-.f64 a (*.f64 a t))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (+.f64 y (-.f64 t 2)) b (-.f64 a (*.f64 a t)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (+.f64 y (-.f64 t 2)) b (-.f64 a (*.f64 a t)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (+.f64 y (-.f64 t 2)) b (-.f64 a (*.f64 a t))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (+.f64 y (-.f64 t 2)) b (-.f64 a (*.f64 a t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (+.f64 y (-.f64 t 2)) b (-.f64 a (*.f64 a t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 a)) (exp.f64 (-.f64 (*.f64 a t) (*.f64 (+.f64 y (-.f64 t 2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 a) (/.f64 (pow.f64 (exp.f64 a) t) (pow.f64 (exp.f64 b) (+.f64 y (-.f64 t 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 a)) (/.f64 (pow.f64 (exp.f64 a) t) (pow.f64 (exp.f64 b) (+.f64 y (-.f64 t 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (-.f64 a (*.f64 a t)))) (pow.f64 (exp.f64 b) (+.f64 y (-.f64 t 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (-.f64 a (*.f64 a t))) (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (-.f64 t 2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (-.f64 a (*.f64 a t)))) (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (-.f64 t 2)) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (-.f64 t 2)) b))) (exp.f64 (-.f64 a (*.f64 a t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 b) (+.f64 y (-.f64 t 2))) (+.f64 1 (expm1.f64 (-.f64 a (*.f64 a t))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 y (-.f64 t 2)) b))) (+.f64 1 (expm1.f64 (-.f64 a (*.f64 a t))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (+.f64 y (-.f64 t 2)) b (-.f64 a (*.f64 a t))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (+.f64 y (-.f64 t 2)) b (-.f64 a (*.f64 a t)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (+.f64 y (-.f64 t 2)) b (-.f64 a (*.f64 a t)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (+.f64 y (-.f64 t 2)) b (-.f64 a (*.f64 a t)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (+.f64 y (-.f64 t 2)) b (-.f64 a (*.f64 a t)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 a 1 (neg.f64 (-.f64 (*.f64 a t) (*.f64 (+.f64 y (-.f64 t 2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y (-.f64 t 2)) b (-.f64 a (*.f64 a t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b (+.f64 y (-.f64 t 2)) (-.f64 a (*.f64 a t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 a (neg.f64 (-.f64 (*.f64 a t) (*.f64 (+.f64 y (-.f64 t 2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 a (*.f64 a t)) (*.f64 (+.f64 y (-.f64 t 2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (+.f64 y (-.f64 t 2)) b) (-.f64 a (*.f64 a t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 y (-.f64 t 2)) b)) 2) (cbrt.f64 (*.f64 (+.f64 y (-.f64 t 2)) b)) (-.f64 a (*.f64 a t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 a (*.f64 a t))) 2) (cbrt.f64 (-.f64 a (*.f64 a t))) (*.f64 (+.f64 y (-.f64 t 2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 a) (pow.f64 (cbrt.f64 a) 2) (neg.f64 (-.f64 (*.f64 a t) (*.f64 (+.f64 y (-.f64 t 2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 a) 2) (cbrt.f64 a) (neg.f64 (-.f64 (*.f64 a t) (*.f64 (+.f64 y (-.f64 t 2)) b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (+.f64 y (-.f64 t 2)) b)) (sqrt.f64 (*.f64 (+.f64 y (-.f64 t 2)) b)) (-.f64 a (*.f64 a t)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 a (*.f64 a t))) (sqrt.f64 (-.f64 a (*.f64 a t))) (*.f64 (+.f64 y (-.f64 t 2)) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 a) (sqrt.f64 a) (neg.f64 (-.f64 (*.f64 a t) (*.f64 (+.f64 y (-.f64 t 2)) b)))))))) |
| 1× | egg-herbie |
| 2514× | fma-neg_binary64 |
| 518× | fma-def_binary64 |
| 483× | unsub-neg_binary64 |
| 383× | sub-neg_binary64 |
| 314× | associate-+l-_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 52 | 871 |
| 1 | 148 | 867 |
| 2 | 284 | 867 |
| 3 | 824 | 793 |
| 4 | 2161 | 793 |
| 5 | 3883 | 793 |
| 6 | 5278 | 793 |
| 7 | 5527 | 793 |
| 8 | 5528 | 793 |
| 9 | 5528 | 793 |
| 10 | 5806 | 793 |
| 11 | 5893 | 793 |
| 12 | 5893 | 793 |
| 13 | 7856 | 793 |
| 14 | 7856 | 793 |
| 15 | 7856 | 793 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 a (-.f64 1 t)) |
(*.f64 a (-.f64 1 t)) |
(*.f64 a (-.f64 1 t)) |
(*.f64 a (-.f64 1 t)) |
(*.f64 a (-.f64 1 t)) |
(*.f64 a (-.f64 1 t)) |
(*.f64 a (-.f64 1 t)) |
(*.f64 a (-.f64 1 t)) |
(*.f64 a (+.f64 (*.f64 -1 t) 1)) |
(*.f64 a (+.f64 (*.f64 -1 t) 1)) |
(*.f64 a (+.f64 (*.f64 -1 t) 1)) |
(*.f64 a (+.f64 (*.f64 -1 t) 1)) |
a |
(+.f64 a (*.f64 -1 (*.f64 a t))) |
(+.f64 a (*.f64 -1 (*.f64 a t))) |
(+.f64 a (*.f64 -1 (*.f64 a t))) |
(*.f64 -1 (*.f64 a t)) |
(+.f64 a (*.f64 -1 (*.f64 a t))) |
(+.f64 a (*.f64 -1 (*.f64 a t))) |
(+.f64 a (*.f64 -1 (*.f64 a t))) |
(*.f64 -1 (*.f64 a t)) |
(+.f64 a (*.f64 -1 (*.f64 a t))) |
(+.f64 a (*.f64 -1 (*.f64 a t))) |
(+.f64 a (*.f64 -1 (*.f64 a t))) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(*.f64 a (-.f64 1 t)) |
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(*.f64 a (+.f64 1 (*.f64 -1 t))) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (*.f64 a (+.f64 1 (*.f64 -1 t)))) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (*.f64 a (+.f64 1 (*.f64 -1 t)))) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (*.f64 a (+.f64 1 (*.f64 -1 t)))) |
(+.f64 a (*.f64 (-.f64 y 2) b)) |
(+.f64 (*.f64 t (-.f64 b a)) (+.f64 a (*.f64 (-.f64 y 2) b))) |
(+.f64 (*.f64 t (-.f64 b a)) (+.f64 a (*.f64 (-.f64 y 2) b))) |
(+.f64 (*.f64 t (-.f64 b a)) (+.f64 a (*.f64 (-.f64 y 2) b))) |
(*.f64 t (-.f64 b a)) |
(+.f64 a (+.f64 (*.f64 t (-.f64 b a)) (*.f64 (-.f64 y 2) b))) |
(+.f64 a (+.f64 (*.f64 t (-.f64 b a)) (*.f64 (-.f64 y 2) b))) |
(+.f64 a (+.f64 (*.f64 t (-.f64 b a)) (*.f64 (-.f64 y 2) b))) |
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 b) (*.f64 -1 a)) t)) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 b) (*.f64 -1 a)) t)) (*.f64 (-.f64 y 2) b))) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 b) (*.f64 -1 a)) t)) (*.f64 (-.f64 y 2) b))) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 b) (*.f64 -1 a)) t)) (*.f64 (-.f64 y 2) b))) |
(-.f64 (+.f64 a (*.f64 (-.f64 t 2) b)) (*.f64 a t)) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 a (*.f64 (-.f64 t 2) b))) (*.f64 a t)) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 a (*.f64 (-.f64 t 2) b))) (*.f64 a t)) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 a (*.f64 (-.f64 t 2) b))) (*.f64 a t)) |
(*.f64 y b) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 a (*.f64 b (-.f64 t 2)))) (*.f64 a t)) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 a (*.f64 b (-.f64 t 2)))) (*.f64 a t)) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 a (*.f64 b (-.f64 t 2)))) (*.f64 a t)) |
(*.f64 y b) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 a (*.f64 b (-.f64 t 2)))) (*.f64 a t)) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 a (*.f64 b (-.f64 t 2)))) (*.f64 a t)) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 a (*.f64 b (-.f64 t 2)))) (*.f64 a t)) |
(-.f64 a (*.f64 a t)) |
(-.f64 (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (*.f64 a t)) |
(-.f64 (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (*.f64 a t)) |
(-.f64 (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (*.f64 a t)) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(-.f64 (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (*.f64 a t)) |
(-.f64 (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (*.f64 a t)) |
(-.f64 (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (*.f64 a t)) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(-.f64 (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (*.f64 a t)) |
(-.f64 (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (*.f64 a t)) |
(-.f64 (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (*.f64 a t)) |
| Outputs |
|---|
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
(*.f64 a (+.f64 (*.f64 -1 t) 1)) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
(*.f64 a (+.f64 (*.f64 -1 t) 1)) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
(*.f64 a (+.f64 (*.f64 -1 t) 1)) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
(*.f64 a (+.f64 (*.f64 -1 t) 1)) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
a |
(+.f64 a (*.f64 -1 (*.f64 a t))) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
(+.f64 a (*.f64 -1 (*.f64 a t))) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
(+.f64 a (*.f64 -1 (*.f64 a t))) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
(*.f64 -1 (*.f64 a t)) |
(*.f64 (neg.f64 a) t) |
(*.f64 t (neg.f64 a)) |
(*.f64 a (neg.f64 t)) |
(+.f64 a (*.f64 -1 (*.f64 a t))) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
(+.f64 a (*.f64 -1 (*.f64 a t))) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
(+.f64 a (*.f64 -1 (*.f64 a t))) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
(*.f64 -1 (*.f64 a t)) |
(*.f64 (neg.f64 a) t) |
(*.f64 t (neg.f64 a)) |
(*.f64 a (neg.f64 t)) |
(+.f64 a (*.f64 -1 (*.f64 a t))) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
(+.f64 a (*.f64 -1 (*.f64 a t))) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
(+.f64 a (*.f64 -1 (*.f64 a t))) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 (+.f64 y (+.f64 t -2)) b) |
(*.f64 (+.f64 t (+.f64 y -2)) b) |
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(*.f64 a (+.f64 1 (*.f64 -1 t))) |
(*.f64 a (-.f64 1 t)) |
(-.f64 a (*.f64 a t)) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (*.f64 a (+.f64 1 (*.f64 -1 t)))) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (*.f64 a (+.f64 1 (*.f64 -1 t)))) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(+.f64 (*.f64 (-.f64 (+.f64 y t) 2) b) (*.f64 a (+.f64 1 (*.f64 -1 t)))) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(+.f64 a (*.f64 (-.f64 y 2) b)) |
(+.f64 a (*.f64 b (+.f64 y -2))) |
(fma.f64 b (+.f64 y -2) a) |
(+.f64 (*.f64 t (-.f64 b a)) (+.f64 a (*.f64 (-.f64 y 2) b))) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(+.f64 (*.f64 t (-.f64 b a)) (+.f64 a (*.f64 (-.f64 y 2) b))) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(+.f64 (*.f64 t (-.f64 b a)) (+.f64 a (*.f64 (-.f64 y 2) b))) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(*.f64 t (-.f64 b a)) |
(+.f64 a (+.f64 (*.f64 t (-.f64 b a)) (*.f64 (-.f64 y 2) b))) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(+.f64 a (+.f64 (*.f64 t (-.f64 b a)) (*.f64 (-.f64 y 2) b))) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(+.f64 a (+.f64 (*.f64 t (-.f64 b a)) (*.f64 (-.f64 y 2) b))) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(*.f64 -1 (*.f64 (-.f64 (*.f64 -1 b) (*.f64 -1 a)) t)) |
(*.f64 t (-.f64 b a)) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 b) (*.f64 -1 a)) t)) (*.f64 (-.f64 y 2) b))) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 b) (*.f64 -1 a)) t)) (*.f64 (-.f64 y 2) b))) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(+.f64 a (+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -1 b) (*.f64 -1 a)) t)) (*.f64 (-.f64 y 2) b))) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(-.f64 (+.f64 a (*.f64 (-.f64 t 2) b)) (*.f64 a t)) |
(+.f64 a (-.f64 (*.f64 b (+.f64 t -2)) (*.f64 a t))) |
(-.f64 (fma.f64 b (+.f64 t -2) a) (*.f64 a t)) |
(fma.f64 b -2 (fma.f64 t (-.f64 b a) a)) |
(fma.f64 t (-.f64 b a) (fma.f64 b -2 a)) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 a (*.f64 (-.f64 t 2) b))) (*.f64 a t)) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 a (*.f64 (-.f64 t 2) b))) (*.f64 a t)) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 a (*.f64 (-.f64 t 2) b))) (*.f64 a t)) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(*.f64 y b) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 a (*.f64 b (-.f64 t 2)))) (*.f64 a t)) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 a (*.f64 b (-.f64 t 2)))) (*.f64 a t)) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 a (*.f64 b (-.f64 t 2)))) (*.f64 a t)) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(*.f64 y b) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 a (*.f64 b (-.f64 t 2)))) (*.f64 a t)) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 a (*.f64 b (-.f64 t 2)))) (*.f64 a t)) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(-.f64 (+.f64 (*.f64 y b) (+.f64 a (*.f64 b (-.f64 t 2)))) (*.f64 a t)) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(-.f64 a (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(-.f64 (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (*.f64 a t)) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(-.f64 (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (*.f64 a t)) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(-.f64 (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (*.f64 a t)) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 (+.f64 y (+.f64 t -2)) b) |
(*.f64 (+.f64 t (+.f64 y -2)) b) |
(-.f64 (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (*.f64 a t)) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(-.f64 (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (*.f64 a t)) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(-.f64 (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (*.f64 a t)) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(*.f64 (-.f64 (+.f64 y t) 2) b) |
(*.f64 (+.f64 y (+.f64 t -2)) b) |
(*.f64 (+.f64 t (+.f64 y -2)) b) |
(-.f64 (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (*.f64 a t)) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(-.f64 (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (*.f64 a t)) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
(-.f64 (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (*.f64 a t)) |
(fma.f64 a (-.f64 1 t) (*.f64 (+.f64 y (+.f64 t -2)) b)) |
(-.f64 (fma.f64 (+.f64 t (+.f64 y -2)) b a) (*.f64 a t)) |
(fma.f64 t (-.f64 b a) (fma.f64 b (+.f64 y -2) a)) |
Compiled 7382 to 3491 computations (52.7% saved)
26 alts after pruning (20 fresh and 6 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 415 | 8 | 423 |
| Fresh | 3 | 12 | 15 |
| Picked | 1 | 0 | 1 |
| Done | 2 | 6 | 8 |
| Total | 421 | 26 | 447 |
| Status | Error | Program |
|---|---|---|
| ✓ | 40.7b | (+.f64 z (*.f64 b (-.f64 t 2))) |
| 39.4b | (+.f64 a (*.f64 (-.f64 y 2) b)) | |
| 46.8b | (+.f64 (*.f64 -2 b) z) | |
| 49.6b | (*.f64 (-.f64 b z) y) | |
| 19.9b | (+.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a)) (*.f64 y b)) | |
| ✓ | 47.1b | (*.f64 z (-.f64 1 y)) |
| ✓ | 36.2b | (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
| 52.1b | (/.f64 (*.f64 (-.f64 1 (*.f64 y y)) z) (+.f64 1 y)) | |
| ✓ | 56.7b | (*.f64 t b) |
| 45.9b | (-.f64 x (*.f64 a t)) | |
| 37.6b | (+.f64 (*.f64 (-.f64 y 2) b) x) | |
| 57.3b | (*.f64 t (neg.f64 a)) | |
| ✓ | 49.3b | (*.f64 (-.f64 t 2) b) |
| ✓ | 56.5b | (*.f64 y b) |
| 47.7b | (*.f64 a (-.f64 1 t)) | |
| 54.1b | z | |
| 17.4b | (+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)) | |
| 15.9b | (+.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 (-.f64 (+.f64 y t) 2) b)) | |
| 33.2b | (+.f64 x (+.f64 z a)) | |
| 45.2b | (+.f64 x (*.f64 y b)) | |
| 51.3b | x | |
| 14.0b | (+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 y b)) | |
| 47.7b | (-.f64 a (*.f64 t a)) | |
| 42.0b | (+.f64 a x) | |
| 41.6b | (+.f64 (-.f64 a (*.f64 t a)) (*.f64 y b)) | |
| 55.6b | (*.f64 (neg.f64 z) y) |
Compiled 330 to 247 computations (25.2% saved)
| Inputs |
|---|
z |
x |
(+.f64 a x) |
(*.f64 t b) |
(*.f64 y b) |
(*.f64 t (neg.f64 a)) |
(*.f64 (neg.f64 z) y) |
(-.f64 x (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(+.f64 x (+.f64 z a)) |
(-.f64 a (*.f64 t a)) |
(+.f64 (*.f64 -2 b) z) |
(*.f64 (-.f64 t 2) b) |
(*.f64 (-.f64 b z) y) |
(*.f64 z (-.f64 1 y)) |
(*.f64 t (-.f64 b a)) |
(+.f64 x (*.f64 y b)) |
(*.f64 (-.f64 t 2) b) |
(+.f64 a (*.f64 (-.f64 y 2) b)) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(+.f64 (*.f64 (-.f64 y 2) b) x) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 y b)) |
(+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(/.f64 (*.f64 (-.f64 1 (*.f64 y y)) z) (+.f64 1 y)) |
(-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
(-.f64 (+.f64 (*.f64 (-.f64 y 2) b) x) (*.f64 -1 a)) |
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 a (neg.f64 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (neg.f64 a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (+.f64 (*.f64 t a) (*.f64 -1 a))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a)) (*.f64 y b)) |
(+.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(fma.f64 (+.f64 y (+.f64 t -2)) b (fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))) |
| Outputs |
|---|
(fma.f64 (+.f64 y (+.f64 t -2)) b (fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))) |
7 calls:
| 41.0ms | x |
| 39.0ms | y |
| 32.0ms | (+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 28.0ms | b |
| 27.0ms | z |
| Error | Segments | Branch |
|---|---|---|
| 0.0b | 1 | x |
| 0.0b | 1 | y |
| 0.0b | 1 | z |
| 0.0b | 1 | t |
| 0.0b | 1 | a |
| 0.0b | 1 | b |
| 0.0b | 1 | (+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
Compiled 551 to 298 computations (45.9% saved)
| Inputs |
|---|
z |
x |
(+.f64 a x) |
(*.f64 t b) |
(*.f64 y b) |
(*.f64 t (neg.f64 a)) |
(*.f64 (neg.f64 z) y) |
(-.f64 x (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(+.f64 x (+.f64 z a)) |
(-.f64 a (*.f64 t a)) |
(+.f64 (*.f64 -2 b) z) |
(*.f64 (-.f64 t 2) b) |
(*.f64 (-.f64 b z) y) |
(*.f64 z (-.f64 1 y)) |
(*.f64 t (-.f64 b a)) |
(+.f64 x (*.f64 y b)) |
(*.f64 (-.f64 t 2) b) |
(+.f64 a (*.f64 (-.f64 y 2) b)) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(+.f64 (*.f64 (-.f64 y 2) b) x) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 y b)) |
(+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(/.f64 (*.f64 (-.f64 1 (*.f64 y y)) z) (+.f64 1 y)) |
(-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
(-.f64 (+.f64 (*.f64 (-.f64 y 2) b) x) (*.f64 -1 a)) |
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 a (neg.f64 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (neg.f64 a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (+.f64 (*.f64 t a) (*.f64 -1 a))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a)) (*.f64 y b)) |
(+.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (fma.f64 z (-.f64 1 y) x) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (+.f64 x (fma.f64 z (-.f64 1 y) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| Outputs |
|---|
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (+.f64 (*.f64 t a) (*.f64 -1 a))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
7 calls:
| 47.0ms | z |
| 45.0ms | y |
| 44.0ms | x |
| 43.0ms | (+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 43.0ms | a |
| Error | Segments | Branch |
|---|---|---|
| 0.0b | 1 | x |
| 0.0b | 1 | y |
| 0.0b | 1 | z |
| 0.0b | 1 | t |
| 0.0b | 1 | a |
| 0.0b | 1 | b |
| 0.0b | 1 | (+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
Compiled 533 to 288 computations (46% saved)
| Inputs |
|---|
z |
x |
(+.f64 a x) |
(*.f64 t b) |
(*.f64 y b) |
(*.f64 t (neg.f64 a)) |
(*.f64 (neg.f64 z) y) |
(-.f64 x (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(+.f64 x (+.f64 z a)) |
(-.f64 a (*.f64 t a)) |
(+.f64 (*.f64 -2 b) z) |
(*.f64 (-.f64 t 2) b) |
(*.f64 (-.f64 b z) y) |
(*.f64 z (-.f64 1 y)) |
(*.f64 t (-.f64 b a)) |
(+.f64 x (*.f64 y b)) |
(*.f64 (-.f64 t 2) b) |
(+.f64 a (*.f64 (-.f64 y 2) b)) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(+.f64 (*.f64 (-.f64 y 2) b) x) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 y b)) |
(+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(/.f64 (*.f64 (-.f64 1 (*.f64 y y)) z) (+.f64 1 y)) |
(-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
(-.f64 (+.f64 (*.f64 (-.f64 y 2) b) x) (*.f64 -1 a)) |
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 a (neg.f64 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (neg.f64 a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| Outputs |
|---|
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
7 calls:
| 61.0ms | t |
| 54.0ms | y |
| 40.0ms | (+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| 39.0ms | b |
| 23.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 0.0b | 1 | x |
| 0.0b | 1 | y |
| 0.0b | 1 | z |
| 0.0b | 1 | t |
| 0.0b | 1 | a |
| 0.0b | 1 | b |
| 0.0b | 1 | (+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
Compiled 440 to 242 computations (45% saved)
| Inputs |
|---|
z |
x |
(+.f64 a x) |
(*.f64 t b) |
(*.f64 y b) |
(*.f64 t (neg.f64 a)) |
(*.f64 (neg.f64 z) y) |
(-.f64 x (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(+.f64 x (+.f64 z a)) |
(-.f64 a (*.f64 t a)) |
(+.f64 (*.f64 -2 b) z) |
(*.f64 (-.f64 t 2) b) |
(*.f64 (-.f64 b z) y) |
(*.f64 z (-.f64 1 y)) |
(*.f64 t (-.f64 b a)) |
(+.f64 x (*.f64 y b)) |
(*.f64 (-.f64 t 2) b) |
(+.f64 a (*.f64 (-.f64 y 2) b)) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(+.f64 (*.f64 (-.f64 y 2) b) x) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 y b)) |
(+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(/.f64 (*.f64 (-.f64 1 (*.f64 y y)) z) (+.f64 1 y)) |
(-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
(-.f64 (+.f64 (*.f64 (-.f64 y 2) b) x) (*.f64 -1 a)) |
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 a (neg.f64 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (neg.f64 a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| Outputs |
|---|
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (neg.f64 a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (neg.f64 a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
6 calls:
| 215.0ms | t |
| 143.0ms | a |
| 99.0ms | b |
| 85.0ms | z |
| 56.0ms | y |
| Error | Segments | Branch |
|---|---|---|
| 5.9b | 1 | x |
| 3.4b | 3 | y |
| 3.2b | 3 | z |
| 2.7b | 3 | t |
| 4.8b | 2 | a |
| 2.0b | 3 | b |
Compiled 392 to 211 computations (46.2% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 30.0ms | 1.1084241365096605e-35 | 3.6901609002733365e-32 |
| 29.0ms | -1.3970115083720693e-72 | -4.812572402242178e-77 |
Compiled 36 to 27 computations (25% saved)
| Inputs |
|---|
z |
x |
(+.f64 a x) |
(*.f64 t b) |
(*.f64 y b) |
(*.f64 t (neg.f64 a)) |
(*.f64 (neg.f64 z) y) |
(-.f64 x (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(+.f64 x (+.f64 z a)) |
(-.f64 a (*.f64 t a)) |
(+.f64 (*.f64 -2 b) z) |
(*.f64 (-.f64 t 2) b) |
(*.f64 (-.f64 b z) y) |
(*.f64 z (-.f64 1 y)) |
(*.f64 t (-.f64 b a)) |
(+.f64 x (*.f64 y b)) |
(*.f64 (-.f64 t 2) b) |
(+.f64 a (*.f64 (-.f64 y 2) b)) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(+.f64 (*.f64 (-.f64 y 2) b) x) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 y b)) |
(+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(/.f64 (*.f64 (-.f64 1 (*.f64 y y)) z) (+.f64 1 y)) |
(-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
(-.f64 (+.f64 (*.f64 (-.f64 y 2) b) x) (*.f64 -1 a)) |
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 a (neg.f64 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
| Outputs |
|---|
(+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
(+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
6 calls:
| 132.0ms | t |
| 80.0ms | b |
| 64.0ms | z |
| 58.0ms | x |
| 57.0ms | y |
| Error | Segments | Branch |
|---|---|---|
| 7.2b | 3 | x |
| 3.4b | 3 | y |
| 6.4b | 3 | z |
| 5.6b | 6 | t |
| 4.6b | 3 | a |
| 3.3b | 3 | b |
Compiled 374 to 202 computations (46% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 51.0ms | 1.1084241365096605e-35 | 3.6901609002733365e-32 |
| 31.0ms | -3.41310942603858e-6 | -1.3084497886703182e-8 |
Compiled 36 to 27 computations (25% saved)
| Inputs |
|---|
z |
x |
(+.f64 a x) |
(*.f64 t b) |
(*.f64 y b) |
(*.f64 t (neg.f64 a)) |
(*.f64 (neg.f64 z) y) |
(-.f64 x (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(+.f64 x (+.f64 z a)) |
(-.f64 a (*.f64 t a)) |
(+.f64 (*.f64 -2 b) z) |
(*.f64 (-.f64 t 2) b) |
(*.f64 (-.f64 b z) y) |
(*.f64 z (-.f64 1 y)) |
(*.f64 t (-.f64 b a)) |
(+.f64 x (*.f64 y b)) |
(*.f64 (-.f64 t 2) b) |
(+.f64 a (*.f64 (-.f64 y 2) b)) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(+.f64 (*.f64 (-.f64 y 2) b) x) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 y b)) |
(+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(/.f64 (*.f64 (-.f64 1 (*.f64 y y)) z) (+.f64 1 y)) |
(-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
(-.f64 (+.f64 (*.f64 (-.f64 y 2) b) x) (*.f64 -1 a)) |
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 a (neg.f64 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| Outputs |
|---|
(+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
6 calls:
| 196.0ms | b |
| 149.0ms | y |
| 125.0ms | x |
| 86.0ms | t |
| 83.0ms | z |
| Error | Segments | Branch |
|---|---|---|
| 7.9b | 3 | x |
| 6.7b | 4 | y |
| 6.6b | 3 | z |
| 7.0b | 4 | t |
| 4.4b | 4 | a |
| 8.3b | 6 | b |
Compiled 357 to 193 computations (45.9% saved)
| 3× | binary-search |
| Time | Left | Right |
|---|---|---|
| 253.0ms | 2.6699435868844752e+116 | 1.0530412382863436e+123 |
| 70.0ms | -0.9682999720078009 | -0.0001658059003656556 |
| 100.0ms | -1.884773274446726e+180 | -5.325125681966985e+171 |
Compiled 828 to 603 computations (27.2% saved)
| Inputs |
|---|
z |
x |
(+.f64 a x) |
(*.f64 t b) |
(*.f64 y b) |
(*.f64 t (neg.f64 a)) |
(*.f64 (neg.f64 z) y) |
(-.f64 x (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(+.f64 x (+.f64 z a)) |
(-.f64 a (*.f64 t a)) |
(+.f64 (*.f64 -2 b) z) |
(*.f64 (-.f64 t 2) b) |
(*.f64 (-.f64 b z) y) |
(*.f64 z (-.f64 1 y)) |
(*.f64 t (-.f64 b a)) |
(+.f64 x (*.f64 y b)) |
(*.f64 (-.f64 t 2) b) |
(+.f64 a (*.f64 (-.f64 y 2) b)) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(+.f64 (*.f64 (-.f64 y 2) b) x) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 y b)) |
(+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(/.f64 (*.f64 (-.f64 1 (*.f64 y y)) z) (+.f64 1 y)) |
(-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
(-.f64 (+.f64 (*.f64 (-.f64 y 2) b) x) (*.f64 -1 a)) |
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 a (neg.f64 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| Outputs |
|---|
(+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
(+.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
6 calls:
| 254.0ms | b |
| 213.0ms | y |
| 179.0ms | x |
| 131.0ms | z |
| 126.0ms | a |
| Error | Segments | Branch |
|---|---|---|
| 6.4b | 6 | x |
| 5.5b | 7 | y |
| 9.5b | 4 | z |
| 7.6b | 4 | t |
| 5.3b | 4 | a |
| 8.5b | 8 | b |
Compiled 342 to 185 computations (45.9% saved)
| 3× | binary-search |
| Time | Left | Right |
|---|---|---|
| 533.0ms | 2.6699435868844752e+116 | 1.0530412382863436e+123 |
| 51.0ms | -45485211.15641851 | -0.9682999720078009 |
| 49.0ms | -3.424960343343039e+36 | -14232988100400073000.0 |
Compiled 414 to 306 computations (26.1% saved)
| Inputs |
|---|
z |
x |
(+.f64 a x) |
(*.f64 t b) |
(*.f64 y b) |
(*.f64 t (neg.f64 a)) |
(*.f64 (neg.f64 z) y) |
(-.f64 x (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(+.f64 x (+.f64 z a)) |
(-.f64 a (*.f64 t a)) |
(+.f64 (*.f64 -2 b) z) |
(*.f64 (-.f64 t 2) b) |
(*.f64 (-.f64 b z) y) |
(*.f64 z (-.f64 1 y)) |
(*.f64 t (-.f64 b a)) |
(+.f64 x (*.f64 y b)) |
(*.f64 (-.f64 t 2) b) |
(+.f64 a (*.f64 (-.f64 y 2) b)) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(+.f64 (*.f64 (-.f64 y 2) b) x) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 y b)) |
(+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(/.f64 (*.f64 (-.f64 1 (*.f64 y y)) z) (+.f64 1 y)) |
(-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
(-.f64 (+.f64 (*.f64 (-.f64 y 2) b) x) (*.f64 -1 a)) |
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 a (neg.f64 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| Outputs |
|---|
(+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
(+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
(+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
6 calls:
| 387.0ms | b |
| 361.0ms | y |
| 314.0ms | a |
| 208.0ms | x |
| 103.0ms | t |
| Error | Segments | Branch |
|---|---|---|
| 7.1b | 6 | x |
| 6.3b | 7 | y |
| 9.5b | 4 | z |
| 8.6b | 5 | t |
| 9.3b | 6 | a |
| 10.2b | 4 | b |
Compiled 312 to 169 computations (45.8% saved)
| 6× | binary-search |
| Time | Left | Right |
|---|---|---|
| 104.0ms | 2.6876895519996477e+131 | 1.840297527231983e+147 |
| 117.0ms | 1.2119480720960594e+66 | 7.233790636896163e+66 |
| 192.0ms | 111224.30086519121 | 7326797403.588401 |
| 401.0ms | -2.408258830211939e+28 | -5.9839659906314554e+26 |
| 322.0ms | -3.3020588086244747e+53 | -3.1902712895643096e+49 |
| 80.0ms | -2.5167429146900576e+128 | -2.998470549430023e+124 |
Compiled 1610 to 1165 computations (27.6% saved)
| Inputs |
|---|
z |
x |
(+.f64 a x) |
(*.f64 t b) |
(*.f64 y b) |
(*.f64 t (neg.f64 a)) |
(*.f64 (neg.f64 z) y) |
(-.f64 x (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(+.f64 x (+.f64 z a)) |
(-.f64 a (*.f64 t a)) |
(+.f64 (*.f64 -2 b) z) |
(*.f64 (-.f64 t 2) b) |
(*.f64 (-.f64 b z) y) |
(*.f64 z (-.f64 1 y)) |
(*.f64 t (-.f64 b a)) |
(+.f64 x (*.f64 y b)) |
(*.f64 (-.f64 t 2) b) |
(+.f64 a (*.f64 (-.f64 y 2) b)) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(+.f64 (*.f64 (-.f64 y 2) b) x) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 y b)) |
(+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(/.f64 (*.f64 (-.f64 1 (*.f64 y y)) z) (+.f64 1 y)) |
(-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
(-.f64 (+.f64 (*.f64 (-.f64 y 2) b) x) (*.f64 -1 a)) |
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 a (neg.f64 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 z (-.f64 1 y)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| Outputs |
|---|
(*.f64 t (-.f64 b a)) |
(+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(*.f64 (neg.f64 z) y) |
(+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
6 calls:
| 156.0ms | a |
| 133.0ms | x |
| 108.0ms | t |
| 97.0ms | y |
| 82.0ms | b |
| Error | Segments | Branch |
|---|---|---|
| 11.8b | 3 | x |
| 9.4b | 4 | y |
| 11.8b | 3 | z |
| 8.6b | 5 | t |
| 8.8b | 8 | a |
| 11.6b | 3 | b |
Compiled 297 to 161 computations (45.8% saved)
| 4× | binary-search |
| Time | Left | Right |
|---|---|---|
| 421.0ms | 9.694956812980023e+64 | 1.0513033936013334e+67 |
| 54.0ms | -5.0239468909326105e-18 | -1.4232142579828179e-18 |
| 51.0ms | -16733060379087469000.0 | -5433632973141774000.0 |
| 73.0ms | -1.1425049739851853e+229 | -2.0944315991105497e+225 |
Compiled 572 to 407 computations (28.8% saved)
| Inputs |
|---|
z |
x |
(+.f64 a x) |
(*.f64 t b) |
(*.f64 y b) |
(*.f64 t (neg.f64 a)) |
(*.f64 (neg.f64 z) y) |
(-.f64 x (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(+.f64 x (+.f64 z a)) |
(-.f64 a (*.f64 t a)) |
(+.f64 (*.f64 -2 b) z) |
(*.f64 (-.f64 t 2) b) |
(*.f64 (-.f64 b z) y) |
(*.f64 z (-.f64 1 y)) |
(*.f64 t (-.f64 b a)) |
(+.f64 x (*.f64 y b)) |
(*.f64 (-.f64 t 2) b) |
(+.f64 a (*.f64 (-.f64 y 2) b)) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(+.f64 (*.f64 (-.f64 y 2) b) x) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 y b)) |
(+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(/.f64 (*.f64 (-.f64 1 (*.f64 y y)) z) (+.f64 1 y)) |
(-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
(-.f64 (+.f64 (*.f64 (-.f64 y 2) b) x) (*.f64 -1 a)) |
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 a (neg.f64 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| Outputs |
|---|
(*.f64 t (-.f64 b a)) |
(+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(*.f64 (neg.f64 z) y) |
(+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 a (neg.f64 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
6 calls:
| 291.0ms | t |
| 202.0ms | z |
| 147.0ms | a |
| 128.0ms | y |
| 89.0ms | b |
| Error | Segments | Branch |
|---|---|---|
| 13.3b | 1 | x |
| 9.4b | 4 | y |
| 10.5b | 5 | z |
| 8.6b | 5 | t |
| 11.0b | 5 | a |
| 11.6b | 3 | b |
Compiled 258 to 143 computations (44.6% saved)
| 4× | binary-search |
| Time | Left | Right |
|---|---|---|
| 121.0ms | 9.694956812980023e+64 | 1.0513033936013334e+67 |
| 69.0ms | -5.0239468909326105e-18 | -1.4232142579828179e-18 |
| 70.0ms | -16733060379087469000.0 | -5433632973141774000.0 |
| 734.0ms | -1.1425049739851853e+229 | -2.0944315991105497e+225 |
Compiled 565 to 407 computations (28% saved)
| Inputs |
|---|
z |
x |
(+.f64 a x) |
(*.f64 t b) |
(*.f64 y b) |
(*.f64 t (neg.f64 a)) |
(*.f64 (neg.f64 z) y) |
(-.f64 x (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(+.f64 x (+.f64 z a)) |
(-.f64 a (*.f64 t a)) |
(+.f64 (*.f64 -2 b) z) |
(*.f64 (-.f64 t 2) b) |
(*.f64 (-.f64 b z) y) |
(*.f64 z (-.f64 1 y)) |
(*.f64 t (-.f64 b a)) |
(+.f64 x (*.f64 y b)) |
(*.f64 (-.f64 t 2) b) |
(+.f64 a (*.f64 (-.f64 y 2) b)) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(+.f64 (*.f64 (-.f64 y 2) b) x) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 y b)) |
(+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(/.f64 (*.f64 (-.f64 1 (*.f64 y y)) z) (+.f64 1 y)) |
(-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
(-.f64 (+.f64 (*.f64 (-.f64 y 2) b) x) (*.f64 -1 a)) |
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 a (neg.f64 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| Outputs |
|---|
(+.f64 x (+.f64 z a)) |
(-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
(-.f64 (+.f64 (*.f64 (-.f64 y 2) b) x) (*.f64 -1 a)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
(+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
(+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 x (+.f64 z a)) |
(-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
(*.f64 z (-.f64 1 y)) |
6 calls:
| 166.0ms | y |
| 150.0ms | t |
| 147.0ms | b |
| 141.0ms | z |
| 136.0ms | a |
| Error | Segments | Branch |
|---|---|---|
| 22.3b | 4 | x |
| 15.7b | 12 | y |
| 13.7b | 10 | z |
| 16.4b | 5 | t |
| 18.6b | 6 | a |
| 18.3b | 5 | b |
Compiled 245 to 137 computations (44.1% saved)
| 9× | binary-search |
| Time | Left | Right |
|---|---|---|
| 32.0ms | 6.352642669751146e+122 | 1.0400989416618447e+124 |
| 304.0ms | 1.0576413492479097e+99 | 2.740084976504036e+108 |
| 39.0ms | 8.112381576878481e+45 | 4.0572255788639395e+52 |
| 28.0ms | 1.6961289837747637e-43 | 4.2714840820174987e-42 |
| 29.0ms | 2.076330123999511e-113 | 6.443750304506312e-113 |
| 28.0ms | 5.569434505190601e-211 | 4.465034162602175e-202 |
| 28.0ms | 4.610917539953622e-307 | 6.8205290921512e-298 |
| 28.0ms | -6.37129763460183e-49 | -5.13429433030019e-61 |
| 60.0ms | -7.187978000582303e+160 | -6.109209863660956e+159 |
Compiled 516 to 380 computations (26.4% saved)
| Inputs |
|---|
z |
x |
(+.f64 a x) |
(*.f64 t b) |
(*.f64 y b) |
(*.f64 t (neg.f64 a)) |
(*.f64 (neg.f64 z) y) |
(-.f64 x (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(+.f64 x (+.f64 z a)) |
(-.f64 a (*.f64 t a)) |
(+.f64 (*.f64 -2 b) z) |
(*.f64 (-.f64 t 2) b) |
(*.f64 (-.f64 b z) y) |
(*.f64 z (-.f64 1 y)) |
(*.f64 t (-.f64 b a)) |
(+.f64 x (*.f64 y b)) |
(*.f64 (-.f64 t 2) b) |
(+.f64 a (*.f64 (-.f64 y 2) b)) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(+.f64 (*.f64 (-.f64 y 2) b) x) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 y b)) |
(+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(/.f64 (*.f64 (-.f64 1 (*.f64 y y)) z) (+.f64 1 y)) |
(-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
| Outputs |
|---|
(+.f64 x (+.f64 z a)) |
(-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
(+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
(+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) |
(+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 x (+.f64 z a)) |
(-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
(*.f64 z (-.f64 1 y)) |
6 calls:
| 157.0ms | t |
| 150.0ms | b |
| 149.0ms | y |
| 140.0ms | z |
| 138.0ms | a |
| Error | Segments | Branch |
|---|---|---|
| 21.9b | 6 | x |
| 15.7b | 12 | y |
| 14.9b | 11 | z |
| 17.4b | 12 | t |
| 18.6b | 6 | a |
| 18.3b | 5 | b |
Compiled 210 to 119 computations (43.3% saved)
| 10× | binary-search |
| Time | Left | Right |
|---|---|---|
| 16.0ms | 6.352642669751146e+122 | 1.0400989416618447e+124 |
| 205.0ms | 1.0576413492479097e+99 | 2.740084976504036e+108 |
| 56.0ms | 8.112381576878481e+45 | 4.0572255788639395e+52 |
| 40.0ms | 1.6961289837747637e-43 | 4.2714840820174987e-42 |
| 29.0ms | 2.076330123999511e-113 | 6.443750304506312e-113 |
| 28.0ms | 5.569434505190601e-211 | 4.465034162602175e-202 |
| 28.0ms | 4.610917539953622e-307 | 6.8205290921512e-298 |
| 28.0ms | -2.1670893755167368e-258 | -3.8408345562736377e-264 |
| 28.0ms | -6.37129763460183e-49 | -5.13429433030019e-61 |
| 57.0ms | -7.187978000582303e+160 | -6.109209863660956e+159 |
Compiled 516 to 380 computations (26.4% saved)
| Inputs |
|---|
z |
x |
(+.f64 a x) |
(*.f64 t b) |
(*.f64 y b) |
(*.f64 t (neg.f64 a)) |
(*.f64 (neg.f64 z) y) |
(-.f64 x (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(+.f64 x (+.f64 z a)) |
(-.f64 a (*.f64 t a)) |
(+.f64 (*.f64 -2 b) z) |
(*.f64 (-.f64 t 2) b) |
(*.f64 (-.f64 b z) y) |
(*.f64 z (-.f64 1 y)) |
(*.f64 t (-.f64 b a)) |
(+.f64 x (*.f64 y b)) |
(*.f64 (-.f64 t 2) b) |
(+.f64 a (*.f64 (-.f64 y 2) b)) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(+.f64 (*.f64 (-.f64 y 2) b) x) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 y b)) |
(+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(/.f64 (*.f64 (-.f64 1 (*.f64 y y)) z) (+.f64 1 y)) |
(-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
| Outputs |
|---|
(-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(+.f64 x (+.f64 z a)) |
(+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 x (+.f64 z a)) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(+.f64 x (+.f64 z a)) |
(+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 x (+.f64 z a)) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) |
6 calls:
| 287.0ms | y |
| 230.0ms | z |
| 212.0ms | x |
| 173.0ms | t |
| 96.0ms | a |
| Error | Segments | Branch |
|---|---|---|
| 22.8b | 6 | x |
| 15.5b | 15 | y |
| 16.8b | 10 | z |
| 17.5b | 12 | t |
| 18.1b | 7 | a |
| 19.5b | 5 | b |
Compiled 199 to 114 computations (42.7% saved)
| 14× | binary-search |
| Time | Left | Right |
|---|---|---|
| 268.0ms | 5.497100047755874e+85 | 2.2879892460029648e+92 |
| 53.0ms | 9.052758852143905e-36 | 1.6739081392917566e-28 |
| 41.0ms | 1.2609296086578406e-101 | 3.1658866275646784e-100 |
| 30.0ms | 1.8723620902757192e-153 | 1.3527653757519677e-151 |
| 31.0ms | 2.0478789540777642e-176 | 2.75164294679928e-175 |
| 29.0ms | 1.5060454037526894e-205 | 9.938711720477083e-205 |
| 33.0ms | 3.9136452976539704e-285 | 6.245690391034063e-273 |
| 29.0ms | -7.615699183790719e-305 | 1.7604087726288352e-306 |
| 65.0ms | -7.35106379611236e-283 | -1.770536139695871e-284 |
| 27.0ms | -2.869801489297713e-183 | -2.0925787767496335e-183 |
| 29.0ms | -5.353268731909357e-118 | -6.354382392572455e-128 |
| 279.0ms | -2.408258830211939e+28 | -5.9839659906314554e+26 |
| 362.0ms | -3.1902712895643096e+49 | -2.2303910751902523e+46 |
| 79.0ms | -4.8887332045180454e+113 | -8.031644759936609e+111 |
Compiled 1028 to 771 computations (25% saved)
| Inputs |
|---|
z |
x |
(+.f64 a x) |
(*.f64 t b) |
(*.f64 y b) |
(*.f64 t (neg.f64 a)) |
(*.f64 (neg.f64 z) y) |
(-.f64 x (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(+.f64 x (+.f64 z a)) |
(-.f64 a (*.f64 t a)) |
(+.f64 (*.f64 -2 b) z) |
(*.f64 (-.f64 t 2) b) |
(*.f64 (-.f64 b z) y) |
(*.f64 z (-.f64 1 y)) |
(*.f64 t (-.f64 b a)) |
(+.f64 x (*.f64 y b)) |
(*.f64 (-.f64 t 2) b) |
(+.f64 a (*.f64 (-.f64 y 2) b)) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(+.f64 (*.f64 (-.f64 y 2) b) x) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 y b)) |
(+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(/.f64 (*.f64 (-.f64 1 (*.f64 y y)) z) (+.f64 1 y)) |
| Outputs |
|---|
(*.f64 (-.f64 b z) y) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(*.f64 (-.f64 b z) y) |
(+.f64 x (+.f64 z a)) |
(+.f64 (*.f64 -2 b) z) |
(+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 x (+.f64 z a)) |
(+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 x (+.f64 z a)) |
(+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 x (+.f64 z a)) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(+.f64 x (+.f64 z a)) |
(+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 x (+.f64 z a)) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(*.f64 (-.f64 b z) y) |
6 calls:
| 559.0ms | y |
| 318.0ms | z |
| 318.0ms | t |
| 305.0ms | a |
| 176.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 23.0b | 7 | x |
| 16.1b | 18 | y |
| 18.6b | 9 | z |
| 18.2b | 12 | t |
| 17.9b | 8 | a |
| 19.5b | 5 | b |
Compiled 188 to 108 computations (42.6% saved)
| 17× | binary-search |
| Time | Left | Right |
|---|---|---|
| 80.0ms | 5.497100047755874e+85 | 2.2879892460029648e+92 |
| 31.0ms | 9.052758852143905e-36 | 1.6739081392917566e-28 |
| 27.0ms | 1.2609296086578406e-101 | 3.1658866275646784e-100 |
| 29.0ms | 1.8723620902757192e-153 | 1.3527653757519677e-151 |
| 37.0ms | 2.0478789540777642e-176 | 2.75164294679928e-175 |
| 27.0ms | 1.5060454037526894e-205 | 9.938711720477083e-205 |
| 29.0ms | 3.9136452976539704e-285 | 6.245690391034063e-273 |
| 28.0ms | -7.615699183790719e-305 | 1.7604087726288352e-306 |
| 48.0ms | -7.35106379611236e-283 | -1.770536139695871e-284 |
| 28.0ms | -2.4712600847828604e-275 | -2.9927352573195605e-277 |
| 84.0ms | -3.356775202303174e-200 | -2.623813439957701e-213 |
| 54.0ms | -8.930741323974776e-189 | -7.277816807403317e-193 |
| 39.0ms | -1.4839014187145083e-145 | -1.7331193170185005e-147 |
| 30.0ms | -3.730607802328015e-130 | -7.013459232188804e-137 |
| 298.0ms | -2.408258830211939e+28 | -5.9839659906314554e+26 |
| 342.0ms | -3.1902712895643096e+49 | -2.2303910751902523e+46 |
| 84.0ms | -4.8887332045180454e+113 | -8.031644759936609e+111 |
Compiled 828 to 633 computations (23.6% saved)
| Inputs |
|---|
z |
x |
(+.f64 a x) |
(*.f64 t b) |
(*.f64 y b) |
(*.f64 t (neg.f64 a)) |
(*.f64 (neg.f64 z) y) |
(-.f64 x (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(+.f64 x (+.f64 z a)) |
(-.f64 a (*.f64 t a)) |
(+.f64 (*.f64 -2 b) z) |
(*.f64 (-.f64 t 2) b) |
(*.f64 (-.f64 b z) y) |
(*.f64 z (-.f64 1 y)) |
(*.f64 t (-.f64 b a)) |
(+.f64 x (*.f64 y b)) |
(*.f64 (-.f64 t 2) b) |
(+.f64 a (*.f64 (-.f64 y 2) b)) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(+.f64 (*.f64 (-.f64 y 2) b) x) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 y b)) |
(+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) |
| Outputs |
|---|
(*.f64 (-.f64 b z) y) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(+.f64 x (+.f64 z a)) |
(+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 x (+.f64 z a)) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(+.f64 x (+.f64 z a)) |
(+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 x (+.f64 z a)) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(*.f64 (-.f64 b z) y) |
6 calls:
| 269.0ms | y |
| 222.0ms | t |
| 144.0ms | z |
| 131.0ms | x |
| 91.0ms | a |
| Error | Segments | Branch |
|---|---|---|
| 23.2b | 7 | x |
| 17.1b | 13 | y |
| 23.3b | 5 | z |
| 19.5b | 11 | t |
| 22.2b | 8 | a |
| 20.2b | 5 | b |
Compiled 168 to 97 computations (42.3% saved)
| 12× | binary-search |
| Time | Left | Right |
|---|---|---|
| 116.0ms | 5.497100047755874e+85 | 2.2879892460029648e+92 |
| 28.0ms | 9.052758852143905e-36 | 1.6739081392917566e-28 |
| 30.0ms | 1.2609296086578406e-101 | 3.1658866275646784e-100 |
| 77.0ms | 1.8723620902757192e-153 | 1.3527653757519677e-151 |
| 28.0ms | 2.0478789540777642e-176 | 2.75164294679928e-175 |
| 29.0ms | 1.5060454037526894e-205 | 9.938711720477083e-205 |
| 51.0ms | 3.9136452976539704e-285 | 6.245690391034063e-273 |
| 27.0ms | -7.615699183790719e-305 | 1.7604087726288352e-306 |
| 29.0ms | -7.35106379611236e-283 | -1.770536139695871e-284 |
| 72.0ms | -2.869801489297713e-183 | -2.0925787767496335e-183 |
| 28.0ms | -5.353268731909357e-118 | -6.354382392572455e-128 |
| 42.0ms | -4.8887332045180454e+113 | -8.031644759936609e+111 |
Compiled 452 to 347 computations (23.2% saved)
| Inputs |
|---|
z |
x |
(+.f64 a x) |
(*.f64 t b) |
(*.f64 y b) |
(*.f64 t (neg.f64 a)) |
(*.f64 (neg.f64 z) y) |
(-.f64 x (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(+.f64 x (+.f64 z a)) |
(-.f64 a (*.f64 t a)) |
(+.f64 (*.f64 -2 b) z) |
(*.f64 (-.f64 t 2) b) |
(*.f64 (-.f64 b z) y) |
(*.f64 z (-.f64 1 y)) |
(*.f64 t (-.f64 b a)) |
(+.f64 x (*.f64 y b)) |
(*.f64 (-.f64 t 2) b) |
(+.f64 a (*.f64 (-.f64 y 2) b)) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(+.f64 (*.f64 (-.f64 y 2) b) x) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(+.f64 (-.f64 a (*.f64 t a)) (*.f64 y b)) |
| Outputs |
|---|
(*.f64 (-.f64 b z) y) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(+.f64 x (+.f64 z a)) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(+.f64 x (+.f64 z a)) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(+.f64 x (+.f64 z a)) |
(+.f64 z (*.f64 b (-.f64 t 2))) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(*.f64 (-.f64 b z) y) |
6 calls:
| 344.0ms | y |
| 139.0ms | z |
| 134.0ms | t |
| 114.0ms | a |
| 110.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 24.6b | 8 | x |
| 18.5b | 11 | y |
| 21.4b | 11 | z |
| 19.5b | 11 | t |
| 23.3b | 7 | a |
| 22.8b | 6 | b |
Compiled 159 to 92 computations (42.1% saved)
| 10× | binary-search |
| Time | Left | Right |
|---|---|---|
| 87.0ms | 5.497100047755874e+85 | 2.2879892460029648e+92 |
| 54.0ms | 9.052758852143905e-36 | 1.6739081392917566e-28 |
| 49.0ms | 1.2609296086578406e-101 | 3.1658866275646784e-100 |
| 33.0ms | 1.5060454037526894e-205 | 9.938711720477083e-205 |
| 78.0ms | 3.9136452976539704e-285 | 6.245690391034063e-273 |
| 28.0ms | -3.1320366555343017e-298 | -7.615699183790719e-305 |
| 34.0ms | -7.318161527358649e-273 | -2.4712600847828604e-275 |
| 31.0ms | -2.869801489297713e-183 | -2.0925787767496335e-183 |
| 28.0ms | -5.353268731909357e-118 | -6.354382392572455e-128 |
| 69.0ms | -4.8887332045180454e+113 | -8.031644759936609e+111 |
Compiled 452 to 347 computations (23.2% saved)
| Inputs |
|---|
z |
x |
(+.f64 a x) |
(*.f64 t b) |
(*.f64 y b) |
(*.f64 t (neg.f64 a)) |
(*.f64 (neg.f64 z) y) |
(-.f64 x (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(+.f64 x (+.f64 z a)) |
(-.f64 a (*.f64 t a)) |
(+.f64 (*.f64 -2 b) z) |
(*.f64 (-.f64 t 2) b) |
(*.f64 (-.f64 b z) y) |
(*.f64 z (-.f64 1 y)) |
(*.f64 t (-.f64 b a)) |
(+.f64 x (*.f64 y b)) |
(*.f64 (-.f64 t 2) b) |
(+.f64 a (*.f64 (-.f64 y 2) b)) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
(+.f64 (*.f64 (-.f64 y 2) b) x) |
| Outputs |
|---|
(*.f64 t (-.f64 b a)) |
(+.f64 x (+.f64 z a)) |
(*.f64 (neg.f64 z) y) |
(+.f64 a (*.f64 (-.f64 y 2) b)) |
(*.f64 (-.f64 b z) y) |
(+.f64 x (+.f64 z a)) |
(+.f64 a (*.f64 (-.f64 y 2) b)) |
(+.f64 x (+.f64 z a)) |
(+.f64 (*.f64 (-.f64 y 2) b) x) |
(+.f64 x (+.f64 z a)) |
(*.f64 t (-.f64 b a)) |
6 calls:
| 232.0ms | z |
| 199.0ms | y |
| 123.0ms | t |
| 115.0ms | x |
| 99.0ms | a |
| Error | Segments | Branch |
|---|---|---|
| 27.6b | 7 | x |
| 21.6b | 10 | y |
| 20.2b | 17 | z |
| 19.5b | 11 | t |
| 23.3b | 8 | a |
| 23.5b | 6 | b |
Compiled 143 to 87 computations (39.2% saved)
| 10× | binary-search |
| Time | Left | Right |
|---|---|---|
| 59.0ms | 942635700843.2919 | 1194748679421.7524 |
| 115.0ms | 3.2204105472883876e-19 | 3.424477979744524e-19 |
| 144.0ms | 2.658998345829016e-118 | 1.5776419604046026e-116 |
| 61.0ms | -2.944647353184704e-290 | -3.8757048449738772e-295 |
| 58.0ms | -7.437226096839237e-243 | -6.4410537495006e-246 |
| 59.0ms | -8.582588039470876e-135 | -5.456892834199912e-136 |
| 59.0ms | -1.667705203329412e-116 | -4.178264894405944e-119 |
| 56.0ms | -5.0239468909326105e-18 | -1.4232142579828179e-18 |
| 56.0ms | -16733060379087469000.0 | -5433632973141774000.0 |
| 89.0ms | -7.047019668905304e+164 | -8.94595278828794e+163 |
Compiled 180 to 135 computations (25% saved)
| Inputs |
|---|
z |
x |
(+.f64 a x) |
(*.f64 t b) |
(*.f64 y b) |
(*.f64 t (neg.f64 a)) |
(*.f64 (neg.f64 z) y) |
(-.f64 x (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(+.f64 x (+.f64 z a)) |
(-.f64 a (*.f64 t a)) |
(+.f64 (*.f64 -2 b) z) |
(*.f64 (-.f64 t 2) b) |
(*.f64 (-.f64 b z) y) |
(*.f64 z (-.f64 1 y)) |
(*.f64 t (-.f64 b a)) |
(+.f64 x (*.f64 y b)) |
(*.f64 (-.f64 t 2) b) |
(+.f64 a (*.f64 (-.f64 y 2) b)) |
(-.f64 x (*.f64 (-.f64 t 1) a)) |
| Outputs |
|---|
(*.f64 t (-.f64 b a)) |
(+.f64 x (+.f64 z a)) |
(*.f64 (neg.f64 z) y) |
(+.f64 a (*.f64 (-.f64 y 2) b)) |
(*.f64 (-.f64 b z) y) |
(+.f64 x (+.f64 z a)) |
(+.f64 a (*.f64 (-.f64 y 2) b)) |
(+.f64 x (+.f64 z a)) |
(*.f64 t (-.f64 b a)) |
6 calls:
| 401.0ms | z |
| 399.0ms | t |
| 270.0ms | y |
| 260.0ms | b |
| 243.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 26.5b | 11 | x |
| 21.6b | 10 | y |
| 21.3b | 17 | z |
| 20.7b | 9 | t |
| 24.3b | 11 | a |
| 24.0b | 6 | b |
Compiled 136 to 83 computations (39% saved)
| 8× | binary-search |
| Time | Left | Right |
|---|---|---|
| 86.0ms | 942635700843.2919 | 1194748679421.7524 |
| 59.0ms | -2.944647353184704e-290 | -3.8757048449738772e-295 |
| 168.0ms | -7.437226096839237e-243 | -6.4410537495006e-246 |
| 59.0ms | -8.582588039470876e-135 | -5.456892834199912e-136 |
| 91.0ms | -1.667705203329412e-116 | -4.178264894405944e-119 |
| 66.0ms | -5.0239468909326105e-18 | -1.4232142579828179e-18 |
| 110.0ms | -16733060379087469000.0 | -5433632973141774000.0 |
| 119.0ms | -7.047019668905304e+164 | -8.94595278828794e+163 |
Compiled 180 to 135 computations (25% saved)
| Inputs |
|---|
z |
x |
(+.f64 a x) |
(*.f64 t b) |
(*.f64 y b) |
(*.f64 t (neg.f64 a)) |
(*.f64 (neg.f64 z) y) |
(-.f64 x (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(+.f64 x (+.f64 z a)) |
(-.f64 a (*.f64 t a)) |
(+.f64 (*.f64 -2 b) z) |
(*.f64 (-.f64 t 2) b) |
(*.f64 (-.f64 b z) y) |
(*.f64 z (-.f64 1 y)) |
(*.f64 t (-.f64 b a)) |
(+.f64 x (*.f64 y b)) |
(*.f64 (-.f64 t 2) b) |
| Outputs |
|---|
(*.f64 t (-.f64 b a)) |
(+.f64 x (+.f64 z a)) |
(*.f64 (neg.f64 z) y) |
(+.f64 x (+.f64 z a)) |
(*.f64 (-.f64 b z) y) |
(+.f64 x (+.f64 z a)) |
(+.f64 (*.f64 -2 b) z) |
(+.f64 x (+.f64 z a)) |
(*.f64 t (-.f64 b a)) |
6 calls:
| 388.0ms | t |
| 285.0ms | a |
| 247.0ms | z |
| 182.0ms | b |
| 89.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 29.5b | 6 | x |
| 23.1b | 7 | y |
| 27.7b | 9 | z |
| 21.9b | 9 | t |
| 27.3b | 8 | a |
| 26.7b | 5 | b |
Compiled 122 to 75 computations (38.5% saved)
| 8× | binary-search |
| Time | Left | Right |
|---|---|---|
| 56.0ms | 942635700843.2919 | 1194748679421.7524 |
| 36.0ms | -2.944647353184704e-290 | -3.8757048449738772e-295 |
| 28.0ms | -1.296153814822923e-253 | -2.8466495341518264e-255 |
| 29.0ms | -8.582588039470876e-135 | -5.456892834199912e-136 |
| 31.0ms | -1.667705203329412e-116 | -4.178264894405944e-119 |
| 31.0ms | -5.0239468909326105e-18 | -1.4232142579828179e-18 |
| 29.0ms | -16733060379087469000.0 | -5433632973141774000.0 |
| 51.0ms | -7.047019668905304e+164 | -8.94595278828794e+163 |
Compiled 180 to 135 computations (25% saved)
| Inputs |
|---|
z |
x |
(+.f64 a x) |
(*.f64 t b) |
(*.f64 y b) |
(*.f64 t (neg.f64 a)) |
(*.f64 (neg.f64 z) y) |
(-.f64 x (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(+.f64 x (+.f64 z a)) |
(-.f64 a (*.f64 t a)) |
(+.f64 (*.f64 -2 b) z) |
(*.f64 (-.f64 t 2) b) |
(*.f64 (-.f64 b z) y) |
(*.f64 z (-.f64 1 y)) |
| Outputs |
|---|
(*.f64 t (neg.f64 a)) |
(+.f64 x (+.f64 z a)) |
(*.f64 (neg.f64 z) y) |
(+.f64 x (+.f64 z a)) |
(*.f64 (-.f64 b z) y) |
(+.f64 x (+.f64 z a)) |
(+.f64 (*.f64 -2 b) z) |
(+.f64 x (+.f64 z a)) |
(*.f64 (-.f64 b z) y) |
(-.f64 x (*.f64 a t)) |
(*.f64 t b) |
(-.f64 x (*.f64 a t)) |
6 calls:
| 464.0ms | t |
| 289.0ms | a |
| 266.0ms | z |
| 182.0ms | y |
| 112.0ms | b |
| Error | Segments | Branch |
|---|---|---|
| 29.5b | 6 | x |
| 23.1b | 7 | y |
| 27.9b | 9 | z |
| 22.9b | 12 | t |
| 27.3b | 8 | a |
| 26.7b | 5 | b |
Compiled 107 to 69 computations (35.5% saved)
| 11× | binary-search |
| Time | Left | Right |
|---|---|---|
| 103.0ms | 1.0521334635371157e+174 | 2.0166000518854832e+182 |
| 350.0ms | 4.9558061401914257e+145 | 2.1203923431458702e+147 |
| 231.0ms | 1.516615021921097e+58 | 2.7732986843547893e+59 |
| 49.0ms | 942635700843.2919 | 1194748679421.7524 |
| 29.0ms | -2.944647353184704e-290 | -3.8757048449738772e-295 |
| 30.0ms | -1.296153814822923e-253 | -2.8466495341518264e-255 |
| 47.0ms | -8.582588039470876e-135 | -5.456892834199912e-136 |
| 53.0ms | -1.667705203329412e-116 | -4.178264894405944e-119 |
| 50.0ms | -5.0239468909326105e-18 | -1.4232142579828179e-18 |
| 53.0ms | -16733060379087469000.0 | -5433632973141774000.0 |
| 75.0ms | -1.1425049739851853e+229 | -2.0944315991105497e+225 |
Compiled 740 to 569 computations (23.1% saved)
| Inputs |
|---|
z |
x |
(+.f64 a x) |
(*.f64 t b) |
(*.f64 y b) |
(*.f64 t (neg.f64 a)) |
(*.f64 (neg.f64 z) y) |
(-.f64 x (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(+.f64 x (+.f64 z a)) |
(-.f64 a (*.f64 t a)) |
(+.f64 (*.f64 -2 b) z) |
(*.f64 (-.f64 t 2) b) |
| Outputs |
|---|
(*.f64 t (neg.f64 a)) |
(+.f64 x (+.f64 z a)) |
(*.f64 (neg.f64 z) y) |
(+.f64 x (+.f64 z a)) |
(+.f64 (*.f64 -2 b) z) |
(+.f64 x (+.f64 z a)) |
(-.f64 x (*.f64 a t)) |
6 calls:
| 168.0ms | b |
| 85.0ms | x |
| 80.0ms | y |
| 67.0ms | a |
| 65.0ms | z |
| Error | Segments | Branch |
|---|---|---|
| 29.5b | 6 | x |
| 26.4b | 8 | y |
| 28.2b | 9 | z |
| 26.3b | 7 | t |
| 29.3b | 7 | a |
| 26.7b | 5 | b |
Compiled 97 to 64 computations (34% saved)
| 6× | binary-search |
| Time | Left | Right |
|---|---|---|
| 217.0ms | 8.525073240403805e+53 | 4.031837960057284e+54 |
| 56.0ms | -2.944647353184704e-290 | -3.8757048449738772e-295 |
| 54.0ms | -1.296153814822923e-253 | -2.8466495341518264e-255 |
| 51.0ms | -5.0239468909326105e-18 | -1.4232142579828179e-18 |
| 49.0ms | -16733060379087469000.0 | -5433632973141774000.0 |
| 67.0ms | -1.1425049739851853e+229 | -2.0944315991105497e+225 |
Compiled 364 to 279 computations (23.4% saved)
| Inputs |
|---|
z |
x |
(+.f64 a x) |
(*.f64 t b) |
(*.f64 y b) |
(*.f64 t (neg.f64 a)) |
(*.f64 (neg.f64 z) y) |
(-.f64 x (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
(+.f64 x (+.f64 z a)) |
(-.f64 a (*.f64 t a)) |
| Outputs |
|---|
(*.f64 t (neg.f64 a)) |
(+.f64 x (+.f64 z a)) |
(*.f64 (neg.f64 z) y) |
(+.f64 x (+.f64 z a)) |
(-.f64 x (*.f64 a t)) |
6 calls:
| 243.0ms | y |
| 221.0ms | t |
| 205.0ms | a |
| 67.0ms | b |
| 65.0ms | z |
| Error | Segments | Branch |
|---|---|---|
| 33.2b | 1 | x |
| 27.8b | 6 | y |
| 30.7b | 5 | z |
| 27.8b | 5 | t |
| 32.2b | 3 | a |
| 31.6b | 3 | b |
Compiled 87 to 58 computations (33.3% saved)
| 4× | binary-search |
| Time | Left | Right |
|---|---|---|
| 238.0ms | 4.031837960057284e+54 | 8.101256350476753e+54 |
| 202.0ms | -5.0239468909326105e-18 | -1.4232142579828179e-18 |
| 56.0ms | -16733060379087469000.0 | -5433632973141774000.0 |
| 238.0ms | -1.1425049739851853e+229 | -2.0944315991105497e+225 |
Compiled 340 to 261 computations (23.2% saved)
| Inputs |
|---|
z |
x |
(+.f64 a x) |
(*.f64 t b) |
(*.f64 y b) |
(*.f64 t (neg.f64 a)) |
(*.f64 (neg.f64 z) y) |
(-.f64 x (*.f64 a t)) |
(*.f64 a (-.f64 1 t)) |
| Outputs |
|---|
z |
(+.f64 a x) |
(*.f64 a (-.f64 1 t)) |
(+.f64 a x) |
z |
6 calls:
| 82.0ms | a |
| 34.0ms | y |
| 32.0ms | x |
| 29.0ms | z |
| 27.0ms | b |
| Error | Segments | Branch |
|---|---|---|
| 36.0b | 6 | x |
| 36.6b | 6 | y |
| 34.6b | 5 | z |
| 35.5b | 4 | t |
| 34.9b | 7 | a |
| 38.5b | 5 | b |
Compiled 77 to 54 computations (29.9% saved)
| 4× | binary-search |
| Time | Left | Right |
|---|---|---|
| 532.0ms | 8.590896959985966e+88 | 1.0576413492479097e+99 |
| 29.0ms | 5.569434505190601e-211 | 4.465034162602175e-202 |
| 29.0ms | 1.6362699700259369e-286 | 5.80606530215816e-283 |
| 35.0ms | -3.0217621958471173e+201 | -1.1752805539157644e+201 |
Compiled 306 to 252 computations (17.6% saved)
| Inputs |
|---|
z |
x |
(+.f64 a x) |
(*.f64 t b) |
(*.f64 y b) |
(*.f64 t (neg.f64 a)) |
(*.f64 (neg.f64 z) y) |
(-.f64 x (*.f64 a t)) |
| Outputs |
|---|
z |
(+.f64 a x) |
(-.f64 x (*.f64 a t)) |
(+.f64 a x) |
z |
6 calls:
| 194.0ms | x |
| 75.0ms | a |
| 31.0ms | y |
| 30.0ms | z |
| 25.0ms | b |
| Error | Segments | Branch |
|---|---|---|
| 37.5b | 7 | x |
| 36.6b | 6 | y |
| 35.0b | 5 | z |
| 35.5b | 4 | t |
| 35.6b | 7 | a |
| 38.5b | 5 | b |
Compiled 72 to 51 computations (29.2% saved)
| 4× | binary-search |
| Time | Left | Right |
|---|---|---|
| 428.0ms | 8.590896959985966e+88 | 1.0576413492479097e+99 |
| 188.0ms | 1.3491969247671918e-263 | 8.089922863313267e-263 |
| 68.0ms | 2.3331088114996612e-297 | 1.5080420214819137e-290 |
| 33.0ms | -3.0217621958471173e+201 | -1.1752805539157644e+201 |
Compiled 306 to 252 computations (17.6% saved)
| Inputs |
|---|
z |
x |
(+.f64 a x) |
(*.f64 t b) |
(*.f64 y b) |
(*.f64 t (neg.f64 a)) |
(*.f64 (neg.f64 z) y) |
| Outputs |
|---|
z |
(+.f64 a x) |
(*.f64 t (neg.f64 a)) |
(+.f64 a x) |
z |
6 calls:
| 67.0ms | x |
| 54.0ms | z |
| 41.0ms | y |
| 38.0ms | a |
| 31.0ms | t |
| Error | Segments | Branch |
|---|---|---|
| 38.1b | 7 | x |
| 37.6b | 4 | y |
| 35.0b | 5 | z |
| 35.9b | 5 | t |
| 37.6b | 8 | a |
| 40.7b | 3 | b |
Compiled 67 to 49 computations (26.9% saved)
| 4× | binary-search |
| Time | Left | Right |
|---|---|---|
| 261.0ms | 8.590896959985966e+88 | 1.0576413492479097e+99 |
| 54.0ms | 1.3491969247671918e-263 | 8.089922863313267e-263 |
| 52.0ms | 1.6362699700259369e-286 | 5.80606530215816e-283 |
| 58.0ms | -3.0217621958471173e+201 | -1.1752805539157644e+201 |
Compiled 306 to 252 computations (17.6% saved)
| Inputs |
|---|
z |
x |
(+.f64 a x) |
(*.f64 t b) |
(*.f64 y b) |
| Outputs |
|---|
z |
(+.f64 a x) |
z |
6 calls:
| 154.0ms | a |
| 39.0ms | y |
| 29.0ms | x |
| 14.0ms | t |
| 13.0ms | z |
| Error | Segments | Branch |
|---|---|---|
| 38.1b | 7 | x |
| 38.9b | 3 | y |
| 36.1b | 3 | z |
| 38.8b | 2 | t |
| 40.6b | 3 | a |
| 40.7b | 3 | b |
Compiled 59 to 45 computations (23.7% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 605.0ms | 8.590896959985966e+88 | 1.0576413492479097e+99 |
| 48.0ms | -3.0217621958471173e+201 | -1.1752805539157644e+201 |
Compiled 306 to 252 computations (17.6% saved)
Total -18.5b remaining (-41.7%)
Threshold costs -18.5b (-41.7%)
| Inputs |
|---|
z |
x |
| Outputs |
|---|
z |
x |
z |
6 calls:
| 24.0ms | b |
| 22.0ms | a |
| 21.0ms | x |
| 16.0ms | y |
| 15.0ms | z |
| Error | Segments | Branch |
|---|---|---|
| 45.4b | 3 | x |
| 48.5b | 3 | y |
| 44.3b | 3 | z |
| 51.3b | 1 | t |
| 48.7b | 4 | a |
| 48.4b | 5 | b |
Compiled 50 to 42 computations (16% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 46.0ms | 4.2062554921828315e+53 | 8.644393197006491e+55 |
| 137.0ms | -3.365842898927816e+150 | -2.794450247736706e+147 |
Compiled 164 to 139 computations (15.2% saved)
| 1× | egg-herbie |
| 207× | cancel-sign-sub-inv_binary64 |
| 164× | distribute-rgt-neg-in_binary64 |
| 121× | unsub-neg_binary64 |
| 109× | neg-sub0_binary64 |
| 109× | neg-mul-1_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 360 | 2864 |
| 1 | 469 | 2854 |
| 2 | 532 | 2854 |
| 3 | 587 | 2854 |
| 4 | 649 | 2854 |
| 5 | 699 | 2854 |
| 6 | 735 | 2854 |
| 7 | 751 | 2854 |
| 8 | 781 | 2854 |
| 9 | 811 | 2854 |
| 10 | 868 | 2854 |
| 11 | 1031 | 2854 |
| 12 | 1170 | 2854 |
| 13 | 1321 | 2854 |
| 14 | 1484 | 2854 |
| 15 | 1570 | 2854 |
| 16 | 1611 | 2854 |
| 17 | 1653 | 2854 |
| 18 | 1699 | 2854 |
| 19 | 1741 | 2854 |
| 20 | 1791 | 2854 |
| 21 | 1810 | 2854 |
| 1× | fuel |
| 1× | saturated |
| Inputs |
|---|
(fma.f64 (+.f64 y (+.f64 t -2)) b (fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (+.f64 (*.f64 t a) (*.f64 -1 a))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(if (<=.f64 b -2779065138581261/1989292945639146568621528992587283360401824603189390869761855907572637988050133502132224) (+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (neg.f64 a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 b 8294214094673721/748288838313422294120286634350736906063837462003712) (+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 y b)) (+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (neg.f64 a)) (*.f64 (-.f64 (+.f64 y t) 2) b)))) |
(if (<=.f64 b -8058976777945521/2361183241434822606848) (+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 b 8294214094673721/748288838313422294120286634350736906063837462003712) (+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 y b)) (+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)))) |
(if (<=.f64 a -5500000000000000283159454210816670147492432353798899003243711366275334032009659721516422830325794340130464936851432254159503751971898424056661867456142507311642682046021632) (+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 a -2180417696558597/2251799813685248) (+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 a 1049999999999999969256272646806107316406256647507989445712679523457116259474047594343606683300431627444936028222096721051648) (+.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 (-.f64 (+.f64 y t) 2) b)) (+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b))))) |
(if (<=.f64 a -3424960343343038725260243039271518208) (+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 a -6104921699014745/134217728) (+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) (if (<=.f64 a 1049999999999999969256272646806107316406256647507989445712679523457116259474047594343606683300431627444936028222096721051648) (+.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 (-.f64 (+.f64 y t) 2) b)) (+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b))))) |
(if (<=.f64 y -249999999999999999554360891046310353997232217189853125109135834932485100476476162374278941535567140002444293991687916344058052608) (+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y -32000000000000001403066977442438315348289524858880) (+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) (if (<=.f64 y -23999999999999998119878066176) (+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y 1910818938945843/17179869184) (+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y 1219999999999999929551803127694771582764335643672237937773139460096) (+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y 1800000000000000102354176669169509124271489229167927561335634100186483739340948013837077848609900824792272475679913138030339179375978941155131785216) (+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) (+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)))))))) |
(if (<=.f64 t -11199999999999999693140077370276212031478492650132747982139565947482915913620681765447888315365194943710996915637507140040049300257696830215614673572332010350502902625676965264204327023849066666682328188992876579126632568212946944) (*.f64 t (-.f64 b a)) (if (<=.f64 t -16733060379087468544) (+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 (neg.f64 z) y) (if (<=.f64 t 10500000000000000641853867875909401765417069805170575562727212711936) (+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) (+.f64 (-.f64 a (*.f64 t a)) (*.f64 (-.f64 (+.f64 y t) 2) b)))))) |
(if (<=.f64 t -11199999999999999693140077370276212031478492650132747982139565947482915913620681765447888315365194943710996915637507140040049300257696830215614673572332010350502902625676965264204327023849066666682328188992876579126632568212946944) (*.f64 t (-.f64 b a)) (if (<=.f64 t -16733060379087468544) (+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 (neg.f64 z) y) (if (<=.f64 t 10500000000000000641853867875909401765417069805170575562727212711936) (+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) (+.f64 (*.f64 a (neg.f64 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)))))) |
(if (<=.f64 z -6199999999999999634648816478344014572835478259197865866120525071776467690569267557058083209623566946566338933262092736042624027159236012412597581855794644647936) (+.f64 x (+.f64 z a)) (if (<=.f64 z -8387199435029705/13164036458569648337239753460458804039861886925068638906788872192) (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) (if (<=.f64 z 5832875624380091/12650140831706913647030959169932331690597290610258882397306334876714396222999709180747523981339820280949192366519800744461863046086612092304188337496296156870094839017285397585279181733880826021327485479904546566785125467714043293663631459728072472271300628532022423097020838413451906408261645469290375391456731733818343424) (-.f64 (+.f64 (*.f64 (-.f64 y 2) b) x) (*.f64 -1 a)) (if (<=.f64 z 6596868769220165/11844773043065711480323635013294239465766037117894719018089691452225120183459296312949206610325977157215024800850914559983608856537741198665193842125253152001987113769690322155382272992184436377145866387891513586051123404341248) (+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) (if (<=.f64 z 7196222012254447/346583711765101857447301773017885462929554634421977071896309947576827663475703202879996800763017447262173901370175446478621769728) (+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 z 8517419349993773/50216813883093446110686315385661331328818843555712276103168) (+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) (if (<=.f64 z 8112381576878481386405175365430240976062906368) (+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 z 2600000000000000244841741436295875372270963141093777692807692492122379755335908676977612024414165994280321024) (+.f64 x (+.f64 z a)) (if (<=.f64 z 9999999999999999483531874467312143214394768377282087351960514613084929070487027419252537449089020883885200422613425626021888) (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) (*.f64 z (-.f64 1 y))))))))))) |
(if (<=.f64 z -6199999999999999634648816478344014572835478259197865866120525071776467690569267557058083209623566946566338933262092736042624027159236012412597581855794644647936) (+.f64 x (+.f64 z a)) (if (<=.f64 z -8387199435029705/13164036458569648337239753460458804039861886925068638906788872192) (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) (if (<=.f64 z -4689352562965283/2163894399531684849059183759018052020301198647443953754636127064173256304872345024407213080115843841616586321892381199068702095603722999960578207655784200507016751857659924824755124296402642702553187257992033027703390323887110396882282073697349781407701150027357134841184256) (+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 z 5832875624380091/12650140831706913647030959169932331690597290610258882397306334876714396222999709180747523981339820280949192366519800744461863046086612092304188337496296156870094839017285397585279181733880826021327485479904546566785125467714043293663631459728072472271300628532022423097020838413451906408261645469290375391456731733818343424) (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 z 6596868769220165/11844773043065711480323635013294239465766037117894719018089691452225120183459296312949206610325977157215024800850914559983608856537741198665193842125253152001987113769690322155382272992184436377145866387891513586051123404341248) (+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) (if (<=.f64 z 7196222012254447/346583711765101857447301773017885462929554634421977071896309947576827663475703202879996800763017447262173901370175446478621769728) (+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 z 8517419349993773/50216813883093446110686315385661331328818843555712276103168) (+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) (if (<=.f64 z 8112381576878481386405175365430240976062906368) (+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 z 2600000000000000244841741436295875372270963141093777692807692492122379755335908676977612024414165994280321024) (+.f64 x (+.f64 z a)) (if (<=.f64 z 9999999999999999483531874467312143214394768377282087351960514613084929070487027419252537449089020883885200422613425626021888) (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) (*.f64 z (-.f64 1 y)))))))))))) |
(if (<=.f64 y -479999999999999966457568652462611069664319912066708887645563049359067031975883867380574252170924214443706945634304) (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) (if (<=.f64 y -22500000000000000479471228422922679880584790016) (-.f64 x (*.f64 (-.f64 t 1) a)) (if (<=.f64 y -23999999999999998119878066176) (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) (if (<=.f64 y -1519907428090843/2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776) (-.f64 x (*.f64 (-.f64 t 1) a)) (if (<=.f64 y -1716164870705585/598008216632976371697735644702348584536405246902083247220875921706093794716375762404103004004990504111786204800430166155026589905240121409306972824498630058082565445957748647537262486126146850127872) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y -7692117313974365/10463951242053391806136963369726580181263718864311851635192874886429209483641954321222640418122029864527291727710479949464718215680589004332016189037791576956967351342601788071700268169006221818240189631008834448226154239518944108944497601509840881752510934060240763835605888507473266002770708660224) (+.f64 x (+.f64 z a)) (if (<=.f64 y -3763268250268281/49414612623855131433714684257548170666395666446323759364477870612165610246092613987295015552108672972457782681717971658054152523775828485563235693344906862773807964911271084317496803647971976645810490155877135026504396358257981615873560389562783094809768080203212590222737650052546509407272052614415528872877858335227904) (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y 5241880777387863/1339385758982834151185531311325002263201756014631917009304687985462938813906170153116497973519619822659493341146941433531483931607115392554498072196837321850491820971853028873177634325632796392734744272769130809372947742658424845944895692993259632864321399559710817770957553728956578048354650708508672) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6804949188233517/45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 5839578825036281/285152538601387201165073225356268207805826781703034995661199532368704697950542336656619550707335712486165144348349650456918044045085964874890791332482638386765749667147516559380179637015412736) (+.f64 x (+.f64 z a)) (if (<=.f64 y 7066224174360883/3773962424821541352241554580988268890916921220416440428376206300245624162392148852086126725177658767541468375030763844899770584629924792632561434251432696043649395326976) (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y 496831562535535/39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6774078405002313/748288838313422294120286634350736906063837462003712) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 224999999999999995285880664624792438543942872028197863494401019395555777967980248972656640000) (-.f64 x (*.f64 (-.f64 t 1) a)) (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)))))))))))))))) |
(if (<=.f64 y -479999999999999966457568652462611069664319912066708887645563049359067031975883867380574252170924214443706945634304) (*.f64 (-.f64 b z) y) (if (<=.f64 y -22500000000000000479471228422922679880584790016) (-.f64 x (*.f64 (-.f64 t 1) a)) (if (<=.f64 y -23999999999999998119878066176) (*.f64 (-.f64 b z) y) (if (<=.f64 y -1164601949871501/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (+.f64 x (+.f64 z a)) (if (<=.f64 y -8344930702996151/56236422431789954785131731346074773235871213978773957913759444657647969758393598378988008576298635714374011382919011189040103325693678746112606439760814548189184) (+.f64 (*.f64 -2 b) z) (if (<=.f64 y -2800042215924345/313528531882069915964662425689704934689422834087799421518938595239444503444259215719322355763768461419760165742407930953086580768238532773442734168210737755891992072530296122920016274326105279759841755136) (+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y -723234560207349/21545516652742137885659094560277007014094191832363720128504958578969526904000843047377578132593002296225722240434905979752527594496752860623371529300590103961416596156942109074193054752294185849943217159109760516096) (+.f64 x (+.f64 z a)) (if (<=.f64 y -7706625769615347/311850048364799970571308236412006025948039259443040240859773006630814358104525635278899682108224328295209757319405077381870693435686499009490495593482004909425000886398607136955865268975681716747289586991334988123957939133612635998263883635695006899610487641699336881506618514879741251551232) (+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y -7692117313974365/10463951242053391806136963369726580181263718864311851635192874886429209483641954321222640418122029864527291727710479949464718215680589004332016189037791576956967351342601788071700268169006221818240189631008834448226154239518944108944497601509840881752510934060240763835605888507473266002770708660224) (+.f64 x (+.f64 z a)) (if (<=.f64 y -3763268250268281/49414612623855131433714684257548170666395666446323759364477870612165610246092613987295015552108672972457782681717971658054152523775828485563235693344906862773807964911271084317496803647971976645810490155877135026504396358257981615873560389562783094809768080203212590222737650052546509407272052614415528872877858335227904) (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y 5241880777387863/1339385758982834151185531311325002263201756014631917009304687985462938813906170153116497973519619822659493341146941433531483931607115392554498072196837321850491820971853028873177634325632796392734744272769130809372947742658424845944895692993259632864321399559710817770957553728956578048354650708508672) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6804949188233517/45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 5839578825036281/285152538601387201165073225356268207805826781703034995661199532368704697950542336656619550707335712486165144348349650456918044045085964874890791332482638386765749667147516559380179637015412736) (+.f64 x (+.f64 z a)) (if (<=.f64 y 7066224174360883/3773962424821541352241554580988268890916921220416440428376206300245624162392148852086126725177658767541468375030763844899770584629924792632561434251432696043649395326976) (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y 496831562535535/39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6774078405002313/748288838313422294120286634350736906063837462003712) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 224999999999999995285880664624792438543942872028197863494401019395555777967980248972656640000) (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 b z) y)))))))))))))))))) |
(if (<=.f64 y -479999999999999966457568652462611069664319912066708887645563049359067031975883867380574252170924214443706945634304) (*.f64 (-.f64 b z) y) (if (<=.f64 y -1519907428090843/2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776) (-.f64 x (*.f64 (-.f64 t 1) a)) (if (<=.f64 y -1716164870705585/598008216632976371697735644702348584536405246902083247220875921706093794716375762404103004004990504111786204800430166155026589905240121409306972824498630058082565445957748647537262486126146850127872) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y -7692117313974365/10463951242053391806136963369726580181263718864311851635192874886429209483641954321222640418122029864527291727710479949464718215680589004332016189037791576956967351342601788071700268169006221818240189631008834448226154239518944108944497601509840881752510934060240763835605888507473266002770708660224) (+.f64 x (+.f64 z a)) (if (<=.f64 y -3763268250268281/49414612623855131433714684257548170666395666446323759364477870612165610246092613987295015552108672972457782681717971658054152523775828485563235693344906862773807964911271084317496803647971976645810490155877135026504396358257981615873560389562783094809768080203212590222737650052546509407272052614415528872877858335227904) (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y 5241880777387863/1339385758982834151185531311325002263201756014631917009304687985462938813906170153116497973519619822659493341146941433531483931607115392554498072196837321850491820971853028873177634325632796392734744272769130809372947742658424845944895692993259632864321399559710817770957553728956578048354650708508672) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6804949188233517/45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 5839578825036281/285152538601387201165073225356268207805826781703034995661199532368704697950542336656619550707335712486165144348349650456918044045085964874890791332482638386765749667147516559380179637015412736) (+.f64 x (+.f64 z a)) (if (<=.f64 y 7066224174360883/3773962424821541352241554580988268890916921220416440428376206300245624162392148852086126725177658767541468375030763844899770584629924792632561434251432696043649395326976) (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y 496831562535535/39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6774078405002313/748288838313422294120286634350736906063837462003712) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 224999999999999995285880664624792438543942872028197863494401019395555777967980248972656640000) (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 b z) y))))))))))))) |
(if (<=.f64 y -479999999999999966457568652462611069664319912066708887645563049359067031975883867380574252170924214443706945634304) (*.f64 (-.f64 b z) y) (if (<=.f64 y -1519907428090843/2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776) (-.f64 x (*.f64 (-.f64 t 1) a)) (if (<=.f64 y -1716164870705585/598008216632976371697735644702348584536405246902083247220875921706093794716375762404103004004990504111786204800430166155026589905240121409306972824498630058082565445957748647537262486126146850127872) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y -4457361379391041/609082125712499942522086399242199269429764178599687970429244153575809293172901631404100941617625641201581557264463041761466198116575193377911124206019540838720704856247279564366924353468128353022049974592451148679605349870337179684109147725966810350801733675194017346692614286874494631936) (+.f64 x (+.f64 z a)) (if (<=.f64 y -3689965678618963/11781361728633673532894774498354952494238773929196300355071513798753168641589311119865182769801300280680127783231251635087526446289021607771691249214388576215221396663491984443067742263787264024212477244347842938066577043117995647400274369612403653814737339068225047641453182709824206687753689912418253153056587776) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 5241880777387863/1339385758982834151185531311325002263201756014631917009304687985462938813906170153116497973519619822659493341146941433531483931607115392554498072196837321850491820971853028873177634325632796392734744272769130809372947742658424845944895692993259632864321399559710817770957553728956578048354650708508672) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6804949188233517/45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 496831562535535/39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6774078405002313/748288838313422294120286634350736906063837462003712) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 224999999999999995285880664624792438543942872028197863494401019395555777967980248972656640000) (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 b z) y))))))))))) |
(if (<=.f64 t -699999999999999950101616715634326136645856484990872995589878724968019184258102048432237526771950152648043086661294392166902214029095290845156638753308677673584689152) (*.f64 t (-.f64 b a)) (if (<=.f64 t -16733060379087468544) (+.f64 x (+.f64 z a)) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 (neg.f64 z) y) (if (<=.f64 t -5918714465278787/354901720847464302026037015570314714039863945648104521621821386318671527399120079749116723981329865996466075003059657194108692201472) (+.f64 a (*.f64 (-.f64 y 2) b)) (if (<=.f64 t -877942596245179/102293456496754433437912178025862473506770063938845774671352855253004181137646079840102190385184504910965208878986252219038039267058918532916516487168) (*.f64 (-.f64 b z) y) (if (<=.f64 t -7146892810450697/960962154087001629436308185025184878247905227974336452694771122017616840015261658617268505418282416748614914455642299215255384405286687137505466996049907860485085046091635529899088428785810612776957410293491536147754283397719630991265870577566668501257551872) (+.f64 x (+.f64 z a)) (if (<=.f64 t -5169504229893195/175555970201398037864189960037990696642380564349834626243584063630598316216309534309285622385163609395625111210811907575838661883607828732903171318983861449587663958422720200465138886329341888788528401320395513446131006525725061407689368272012526598792334483090416306874948482361796597953940777665648656384) (+.f64 a (*.f64 (-.f64 y 2) b)) (if (<=.f64 t 754946470932223/2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776) (+.f64 x (+.f64 z a)) (if (<=.f64 t 104508297299237/324518553658426726783156020576256) (+.f64 (*.f64 (-.f64 y 2) b) x) (if (<=.f64 t 7722071661308247/8192) (+.f64 x (+.f64 z a)) (*.f64 t (-.f64 b a)))))))))))) |
(if (<=.f64 t -699999999999999950101616715634326136645856484990872995589878724968019184258102048432237526771950152648043086661294392166902214029095290845156638753308677673584689152) (*.f64 t (-.f64 b a)) (if (<=.f64 t -16733060379087468544) (+.f64 x (+.f64 z a)) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 (neg.f64 z) y) (if (<=.f64 t -5918714465278787/354901720847464302026037015570314714039863945648104521621821386318671527399120079749116723981329865996466075003059657194108692201472) (+.f64 a (*.f64 (-.f64 y 2) b)) (if (<=.f64 t -877942596245179/102293456496754433437912178025862473506770063938845774671352855253004181137646079840102190385184504910965208878986252219038039267058918532916516487168) (*.f64 (-.f64 b z) y) (if (<=.f64 t -7146892810450697/960962154087001629436308185025184878247905227974336452694771122017616840015261658617268505418282416748614914455642299215255384405286687137505466996049907860485085046091635529899088428785810612776957410293491536147754283397719630991265870577566668501257551872) (+.f64 x (+.f64 z a)) (if (<=.f64 t -5169504229893195/175555970201398037864189960037990696642380564349834626243584063630598316216309534309285622385163609395625111210811907575838661883607828732903171318983861449587663958422720200465138886329341888788528401320395513446131006525725061407689368272012526598792334483090416306874948482361796597953940777665648656384) (+.f64 a (*.f64 (-.f64 y 2) b)) (if (<=.f64 t 7722071661308247/8192) (+.f64 x (+.f64 z a)) (*.f64 t (-.f64 b a)))))))))) |
(if (<=.f64 t -699999999999999950101616715634326136645856484990872995589878724968019184258102048432237526771950152648043086661294392166902214029095290845156638753308677673584689152) (*.f64 t (-.f64 b a)) (if (<=.f64 t -16733060379087468544) (+.f64 x (+.f64 z a)) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 (neg.f64 z) y) (if (<=.f64 t -5918714465278787/354901720847464302026037015570314714039863945648104521621821386318671527399120079749116723981329865996466075003059657194108692201472) (+.f64 x (+.f64 z a)) (if (<=.f64 t -877942596245179/102293456496754433437912178025862473506770063938845774671352855253004181137646079840102190385184504910965208878986252219038039267058918532916516487168) (*.f64 (-.f64 b z) y) (if (<=.f64 t -4279693574259875/33018408195979077897021236557282287907427957877257595132997544314167118909795303717151078492978574243417149687078570542430146722468917846078158686153933723556774167749937817760545719854776652565814014556763199275259251768296972608677399806172939779780596161306108624896) (+.f64 x (+.f64 z a)) (if (<=.f64 t -5169504229893195/175555970201398037864189960037990696642380564349834626243584063630598316216309534309285622385163609395625111210811907575838661883607828732903171318983861449587663958422720200465138886329341888788528401320395513446131006525725061407689368272012526598792334483090416306874948482361796597953940777665648656384) (+.f64 (*.f64 -2 b) z) (if (<=.f64 t 7722071661308247/8192) (+.f64 x (+.f64 z a)) (*.f64 t (-.f64 b a)))))))))) |
(if (<=.f64 t -11199999999999999693140077370276212031478492650132747982139565947482915913620681765447888315365194943710996915637507140040049300257696830215614673572332010350502902625676965264204327023849066666682328188992876579126632568212946944) (*.f64 t (neg.f64 a)) (if (<=.f64 t -16733060379087468544) (+.f64 x (+.f64 z a)) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 (neg.f64 z) y) (if (<=.f64 t -5918714465278787/354901720847464302026037015570314714039863945648104521621821386318671527399120079749116723981329865996466075003059657194108692201472) (+.f64 x (+.f64 z a)) (if (<=.f64 t -877942596245179/102293456496754433437912178025862473506770063938845774671352855253004181137646079840102190385184504910965208878986252219038039267058918532916516487168) (*.f64 (-.f64 b z) y) (if (<=.f64 t -4279693574259875/33018408195979077897021236557282287907427957877257595132997544314167118909795303717151078492978574243417149687078570542430146722468917846078158686153933723556774167749937817760545719854776652565814014556763199275259251768296972608677399806172939779780596161306108624896) (+.f64 x (+.f64 z a)) (if (<=.f64 t -5169504229893195/175555970201398037864189960037990696642380564349834626243584063630598316216309534309285622385163609395625111210811907575838661883607828732903171318983861449587663958422720200465138886329341888788528401320395513446131006525725061407689368272012526598792334483090416306874948482361796597953940777665648656384) (+.f64 (*.f64 -2 b) z) (if (<=.f64 t 7722071661308247/8192) (+.f64 x (+.f64 z a)) (if (<=.f64 t 274999999999999995001760286107604445029289687088032372490240) (*.f64 (-.f64 b z) y) (if (<=.f64 t 49999999999999996681683364986231121055509847158923091289463001947809936825071710129649256226662527266508888537465191395528952846213699856588865536) (-.f64 x (*.f64 a t)) (if (<=.f64 t 200000000000000012906239745447679119308421504820578339539671915665471618650040573112543019986749031403290765577790368360384389590184578101271409790645582658247315902435527641605865472) (*.f64 t b) (-.f64 x (*.f64 a t))))))))))))) |
(if (<=.f64 t -11199999999999999693140077370276212031478492650132747982139565947482915913620681765447888315365194943710996915637507140040049300257696830215614673572332010350502902625676965264204327023849066666682328188992876579126632568212946944) (*.f64 t (neg.f64 a)) (if (<=.f64 t -16733060379087468544) (+.f64 x (+.f64 z a)) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 (neg.f64 z) y) (if (<=.f64 t -4279693574259875/33018408195979077897021236557282287907427957877257595132997544314167118909795303717151078492978574243417149687078570542430146722468917846078158686153933723556774167749937817760545719854776652565814014556763199275259251768296972608677399806172939779780596161306108624896) (+.f64 x (+.f64 z a)) (if (<=.f64 t -5169504229893195/175555970201398037864189960037990696642380564349834626243584063630598316216309534309285622385163609395625111210811907575838661883607828732903171318983861449587663958422720200465138886329341888788528401320395513446131006525725061407689368272012526598792334483090416306874948482361796597953940777665648656384) (+.f64 (*.f64 -2 b) z) (if (<=.f64 t 4000000000000000313166161618384975369221441199544467456) (+.f64 x (+.f64 z a)) (-.f64 x (*.f64 a t)))))))) |
(if (<=.f64 t -11199999999999999693140077370276212031478492650132747982139565947482915913620681765447888315365194943710996915637507140040049300257696830215614673572332010350502902625676965264204327023849066666682328188992876579126632568212946944) (*.f64 t (neg.f64 a)) (if (<=.f64 t -16733060379087468544) (+.f64 x (+.f64 z a)) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 (neg.f64 z) y) (if (<=.f64 t 8000000000000000626332323236769950738442882399088934912) (+.f64 x (+.f64 z a)) (-.f64 x (*.f64 a t)))))) |
(if (<=.f64 z -3000000000000000249127682040262028139759962019944992370386847873810836300710870714284168463086622909104826822225959300334634943228809004360992327329149829558223494142619604698387467733836674045952655360) z (if (<=.f64 z 1753277356563207/10715086071862673209484250490600018105614048117055336074437503883703510511249361224931983788156958581275946729175531468251871452856923140435984577574698574803934567774824230985421074605062371141877954182153046474983581941267398767559165543946077062914571196477686542167660429831652624386837205668069376) (+.f64 a x) (if (<=.f64 z 6596868769220165/11844773043065711480323635013294239465766037117894719018089691452225120183459296312949206610325977157215024800850914559983608856537741198665193842125253152001987113769690322155382272992184436377145866387891513586051123404341248) (*.f64 a (-.f64 1 t)) (if (<=.f64 z 85999999999999994742991238467746865325014162966848307984113657967757579252175879301758976) (+.f64 a x) z)))) |
(if (<=.f64 z -3000000000000000249127682040262028139759962019944992370386847873810836300710870714284168463086622909104826822225959300334634943228809004360992327329149829558223494142619604698387467733836674045952655360) z (if (<=.f64 z 3435899857567513/1472670216079209191611846812294369061779846741149537544383939224844146080198663889983147846225162535085015972903906454385940805786127700971461406151798572026902674582936498055383467782973408003026559655543480367258322130389749455925034296201550456726842167383528130955181647838728025835969211239052281644132073472) (+.f64 a x) (if (<=.f64 z 7653345642070929/567251933470833993071770667324028228809837418235547813055332893110634100784456014078204465673887768016738404766156377048665842149942362101665813667717893457711399398974403333260607303556174368618102720559063506014277553065062667880308951927318061097340410272771508755807405604864) (-.f64 x (*.f64 a t)) (if (<=.f64 z 85999999999999994742991238467746865325014162966848307984113657967757579252175879301758976) (+.f64 a x) z)))) |
(if (<=.f64 z -3000000000000000249127682040262028139759962019944992370386847873810836300710870714284168463086622909104826822225959300334634943228809004360992327329149829558223494142619604698387467733836674045952655360) z (if (<=.f64 z 1753277356563207/10715086071862673209484250490600018105614048117055336074437503883703510511249361224931983788156958581275946729175531468251871452856923140435984577574698574803934567774824230985421074605062371141877954182153046474983581941267398767559165543946077062914571196477686542167660429831652624386837205668069376) (+.f64 a x) (if (<=.f64 z 7653345642070929/567251933470833993071770667324028228809837418235547813055332893110634100784456014078204465673887768016738404766156377048665842149942362101665813667717893457711399398974403333260607303556174368618102720559063506014277553065062667880308951927318061097340410272771508755807405604864) (*.f64 t (neg.f64 a)) (if (<=.f64 z 85999999999999994742991238467746865325014162966848307984113657967757579252175879301758976) (+.f64 a x) z)))) |
(if (<=.f64 z -3000000000000000249127682040262028139759962019944992370386847873810836300710870714284168463086622909104826822225959300334634943228809004360992327329149829558223494142619604698387467733836674045952655360) z (if (<=.f64 z 85999999999999994742991238467746865325014162966848307984113657967757579252175879301758976) (+.f64 a x) z)) |
(if (<=.f64 z -3299999999999999809560690617312130302759629665899258505313605753227869821011354467209908866588893219393482923969756844820429925596406594660614847594496) z (if (<=.f64 z 420625549218283154951205684381344308663928790865412096) x z)) |
z |
| Outputs |
|---|
(fma.f64 (+.f64 y (+.f64 t -2)) b (fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))) |
(fma.f64 (+.f64 y (-.f64 t 2)) b (fma.f64 z (-.f64 1 y) (fma.f64 a (-.f64 1 t) x))) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (+.f64 (*.f64 t a) (*.f64 -1 a))) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (-.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (+.f64 (*.f64 t a) (neg.f64 a))) (*.f64 b (+.f64 (+.f64 y t) -2))) |
(+.f64 (+.f64 (+.f64 x (*.f64 z (-.f64 1 y))) (-.f64 a (*.f64 t a))) (*.f64 b (+.f64 -2 (+.f64 y t)))) |
(+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) |
(+.f64 (*.f64 b (+.f64 (+.f64 y t) -2)) (-.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 a (+.f64 t -1)))) |
(+.f64 (*.f64 b (+.f64 -2 (+.f64 y t))) (+.f64 (+.f64 x (*.f64 z (-.f64 1 y))) (*.f64 a (-.f64 1 t)))) |
(if (<=.f64 b -2779065138581261/1989292945639146568621528992587283360401824603189390869761855907572637988050133502132224) (+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (neg.f64 a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 b 8294214094673721/748288838313422294120286634350736906063837462003712) (+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 y b)) (+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (neg.f64 a)) (*.f64 (-.f64 (+.f64 y t) 2) b)))) |
(if (<=.f64 b -2779065138581261/1989292945639146568621528992587283360401824603189390869761855907572637988050133502132224) (+.f64 (*.f64 b (+.f64 (+.f64 y t) -2)) (-.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (neg.f64 a))) (if (<=.f64 b 8294214094673721/748288838313422294120286634350736906063837462003712) (+.f64 (-.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 a (+.f64 t -1))) (*.f64 y b)) (+.f64 (*.f64 b (+.f64 (+.f64 y t) -2)) (-.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (neg.f64 a))))) |
(if (<=.f64 b -2779065138581261/1989292945639146568621528992587283360401824603189390869761855907572637988050133502132224) (+.f64 (*.f64 b (+.f64 -2 (+.f64 y t))) (+.f64 a (+.f64 x (*.f64 z (-.f64 1 y))))) (if (<=.f64 b 8294214094673721/748288838313422294120286634350736906063837462003712) (+.f64 (+.f64 (+.f64 x (*.f64 z (-.f64 1 y))) (*.f64 a (-.f64 1 t))) (*.f64 y b)) (+.f64 (*.f64 b (+.f64 -2 (+.f64 y t))) (+.f64 a (+.f64 x (*.f64 z (-.f64 1 y))))))) |
(if (<=.f64 b -8058976777945521/2361183241434822606848) (+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 b 8294214094673721/748288838313422294120286634350736906063837462003712) (+.f64 (-.f64 (-.f64 x (*.f64 (-.f64 y 1) z)) (*.f64 (-.f64 t 1) a)) (*.f64 y b)) (+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)))) |
(if (<=.f64 b -8058976777945521/2361183241434822606848) (+.f64 (*.f64 b (+.f64 (+.f64 y t) -2)) (+.f64 a (+.f64 z x))) (if (<=.f64 b 8294214094673721/748288838313422294120286634350736906063837462003712) (+.f64 (-.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 a (+.f64 t -1))) (*.f64 y b)) (+.f64 (*.f64 b (+.f64 (+.f64 y t) -2)) (+.f64 a (+.f64 z x))))) |
(if (<=.f64 b -8058976777945521/2361183241434822606848) (+.f64 (*.f64 b (+.f64 -2 (+.f64 y t))) (+.f64 a (+.f64 z x))) (if (<=.f64 b 8294214094673721/748288838313422294120286634350736906063837462003712) (+.f64 (+.f64 (+.f64 x (*.f64 z (-.f64 1 y))) (*.f64 a (-.f64 1 t))) (*.f64 y b)) (+.f64 (*.f64 b (+.f64 -2 (+.f64 y t))) (+.f64 a (+.f64 z x))))) |
(if (<=.f64 a -5500000000000000283159454210816670147492432353798899003243711366275334032009659721516422830325794340130464936851432254159503751971898424056661867456142507311642682046021632) (+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 a -2180417696558597/2251799813685248) (+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 a 1049999999999999969256272646806107316406256647507989445712679523457116259474047594343606683300431627444936028222096721051648) (+.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 (-.f64 (+.f64 y t) 2) b)) (+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 (+.f64 y t) 2) b))))) |
(if (<=.f64 a -5500000000000000283159454210816670147492432353798899003243711366275334032009659721516422830325794340130464936851432254159503751971898424056661867456142507311642682046021632) (+.f64 (*.f64 b (+.f64 (+.f64 y t) -2)) (+.f64 a (*.f64 z (-.f64 1 y)))) (if (<=.f64 a -2180417696558597/2251799813685248) (+.f64 (*.f64 b (+.f64 (+.f64 y t) -2)) (-.f64 x (*.f64 a (+.f64 t -1)))) (if (<=.f64 a 1049999999999999969256272646806107316406256647507989445712679523457116259474047594343606683300431627444936028222096721051648) (+.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 b (+.f64 (+.f64 y t) -2))) (+.f64 (*.f64 b (+.f64 (+.f64 y t) -2)) (-.f64 x (*.f64 a (+.f64 t -1))))))) |
(if (<=.f64 a -5500000000000000283159454210816670147492432353798899003243711366275334032009659721516422830325794340130464936851432254159503751971898424056661867456142507311642682046021632) (+.f64 (*.f64 b (+.f64 -2 (+.f64 y t))) (+.f64 a (*.f64 z (-.f64 1 y)))) (if (<=.f64 a -2180417696558597/2251799813685248) (+.f64 (*.f64 b (+.f64 -2 (+.f64 y t))) (+.f64 x (*.f64 a (-.f64 1 t)))) (if (<=.f64 a 1049999999999999969256272646806107316406256647507989445712679523457116259474047594343606683300431627444936028222096721051648) (+.f64 (+.f64 x (*.f64 z (-.f64 1 y))) (*.f64 b (+.f64 -2 (+.f64 y t)))) (+.f64 (*.f64 b (+.f64 -2 (+.f64 y t))) (+.f64 x (*.f64 a (-.f64 1 t))))))) |
(if (<=.f64 a -3424960343343038725260243039271518208) (+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 a -6104921699014745/134217728) (+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) (if (<=.f64 a 1049999999999999969256272646806107316406256647507989445712679523457116259474047594343606683300431627444936028222096721051648) (+.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 (-.f64 (+.f64 y t) 2) b)) (+.f64 (*.f64 a (-.f64 1 t)) (*.f64 (-.f64 (+.f64 y t) 2) b))))) |
(if (<=.f64 a -3424960343343038725260243039271518208) (+.f64 (*.f64 b (+.f64 (+.f64 y t) -2)) (+.f64 a (*.f64 z (-.f64 1 y)))) (if (<=.f64 a -6104921699014745/134217728) (+.f64 (*.f64 y b) (-.f64 x (*.f64 a (+.f64 t -1)))) (if (<=.f64 a 1049999999999999969256272646806107316406256647507989445712679523457116259474047594343606683300431627444936028222096721051648) (+.f64 (-.f64 x (*.f64 z (-.f64 y 1))) (*.f64 b (+.f64 (+.f64 y t) -2))) (+.f64 (*.f64 b (+.f64 (+.f64 y t) -2)) (*.f64 a (-.f64 1 t)))))) |
(if (<=.f64 a -3424960343343038725260243039271518208) (+.f64 (*.f64 b (+.f64 -2 (+.f64 y t))) (+.f64 a (*.f64 z (-.f64 1 y)))) (if (<=.f64 a -6104921699014745/134217728) (+.f64 (*.f64 y b) (+.f64 x (*.f64 a (-.f64 1 t)))) (if (<=.f64 a 1049999999999999969256272646806107316406256647507989445712679523457116259474047594343606683300431627444936028222096721051648) (+.f64 (+.f64 x (*.f64 z (-.f64 1 y))) (*.f64 b (+.f64 -2 (+.f64 y t)))) (+.f64 (*.f64 b (+.f64 -2 (+.f64 y t))) (*.f64 a (-.f64 1 t)))))) |
(if (<=.f64 y -249999999999999999554360891046310353997232217189853125109135834932485100476476162374278941535567140002444293991687916344058052608) (+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y -32000000000000001403066977442438315348289524858880) (+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) (if (<=.f64 y -23999999999999998119878066176) (+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y 1910818938945843/17179869184) (+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y 1219999999999999929551803127694771582764335643672237937773139460096) (+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y 1800000000000000102354176669169509124271489229167927561335634100186483739340948013837077848609900824792272475679913138030339179375978941155131785216) (+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) (+.f64 (+.f64 a (*.f64 z (-.f64 1 y))) (*.f64 (-.f64 (+.f64 y t) 2) b)))))))) |
(if (<=.f64 y -249999999999999999554360891046310353997232217189853125109135834932485100476476162374278941535567140002444293991687916344058052608) (+.f64 (*.f64 b (+.f64 (+.f64 y t) -2)) (+.f64 a (*.f64 z (-.f64 1 y)))) (if (<=.f64 y -32000000000000001403066977442438315348289524858880) (+.f64 (*.f64 y b) (-.f64 x (*.f64 a (+.f64 t -1)))) (if (<=.f64 y -23999999999999998119878066176) (+.f64 (*.f64 b (+.f64 (+.f64 y t) -2)) (+.f64 a (*.f64 z (-.f64 1 y)))) (if (<=.f64 y 1910818938945843/17179869184) (+.f64 (*.f64 b (+.f64 (+.f64 y t) -2)) (+.f64 a (+.f64 z x))) (if (<=.f64 y 1219999999999999929551803127694771582764335643672237937773139460096) (+.f64 (*.f64 b (+.f64 (+.f64 y t) -2)) (+.f64 a (*.f64 z (-.f64 1 y)))) (if (<=.f64 y 1800000000000000102354176669169509124271489229167927561335634100186483739340948013837077848609900824792272475679913138030339179375978941155131785216) (+.f64 (*.f64 y b) (-.f64 x (*.f64 a (+.f64 t -1)))) (+.f64 (*.f64 b (+.f64 (+.f64 y t) -2)) (+.f64 a (*.f64 z (-.f64 1 y)))))))))) |
(if (<=.f64 y -249999999999999999554360891046310353997232217189853125109135834932485100476476162374278941535567140002444293991687916344058052608) (+.f64 (*.f64 b (+.f64 -2 (+.f64 y t))) (+.f64 a (*.f64 z (-.f64 1 y)))) (if (<=.f64 y -32000000000000001403066977442438315348289524858880) (+.f64 (*.f64 y b) (+.f64 x (*.f64 a (-.f64 1 t)))) (if (<=.f64 y -23999999999999998119878066176) (+.f64 (*.f64 b (+.f64 -2 (+.f64 y t))) (+.f64 a (*.f64 z (-.f64 1 y)))) (if (<=.f64 y 1910818938945843/17179869184) (+.f64 (*.f64 b (+.f64 -2 (+.f64 y t))) (+.f64 a (+.f64 z x))) (if (<=.f64 y 1219999999999999929551803127694771582764335643672237937773139460096) (+.f64 (*.f64 b (+.f64 -2 (+.f64 y t))) (+.f64 a (*.f64 z (-.f64 1 y)))) (if (<=.f64 y 1800000000000000102354176669169509124271489229167927561335634100186483739340948013837077848609900824792272475679913138030339179375978941155131785216) (+.f64 (*.f64 y b) (+.f64 x (*.f64 a (-.f64 1 t)))) (+.f64 (*.f64 b (+.f64 -2 (+.f64 y t))) (+.f64 a (*.f64 z (-.f64 1 y)))))))))) |
(if (<=.f64 t -11199999999999999693140077370276212031478492650132747982139565947482915913620681765447888315365194943710996915637507140040049300257696830215614673572332010350502902625676965264204327023849066666682328188992876579126632568212946944) (*.f64 t (-.f64 b a)) (if (<=.f64 t -16733060379087468544) (+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 (neg.f64 z) y) (if (<=.f64 t 10500000000000000641853867875909401765417069805170575562727212711936) (+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) (+.f64 (-.f64 a (*.f64 t a)) (*.f64 (-.f64 (+.f64 y t) 2) b)))))) |
(if (<=.f64 t -11199999999999999693140077370276212031478492650132747982139565947482915913620681765447888315365194943710996915637507140040049300257696830215614673572332010350502902625676965264204327023849066666682328188992876579126632568212946944) (*.f64 t (-.f64 b a)) (if (<=.f64 t -16733060379087468544) (+.f64 (*.f64 b (+.f64 (+.f64 y t) -2)) (+.f64 a (+.f64 z x))) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 y (neg.f64 z)) (if (<=.f64 t 10500000000000000641853867875909401765417069805170575562727212711936) (+.f64 (*.f64 b (+.f64 (+.f64 y t) -2)) (+.f64 a (+.f64 z x))) (+.f64 (*.f64 b (+.f64 (+.f64 y t) -2)) (-.f64 a (*.f64 t a))))))) |
(if (<=.f64 t -11199999999999999693140077370276212031478492650132747982139565947482915913620681765447888315365194943710996915637507140040049300257696830215614673572332010350502902625676965264204327023849066666682328188992876579126632568212946944) (*.f64 t (-.f64 b a)) (if (<=.f64 t -16733060379087468544) (+.f64 (*.f64 b (+.f64 -2 (+.f64 y t))) (+.f64 a (+.f64 z x))) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 y (neg.f64 z)) (if (<=.f64 t 10500000000000000641853867875909401765417069805170575562727212711936) (+.f64 (*.f64 b (+.f64 -2 (+.f64 y t))) (+.f64 a (+.f64 z x))) (+.f64 (*.f64 b (+.f64 -2 (+.f64 y t))) (-.f64 a (*.f64 t a))))))) |
(if (<=.f64 t -11199999999999999693140077370276212031478492650132747982139565947482915913620681765447888315365194943710996915637507140040049300257696830215614673572332010350502902625676965264204327023849066666682328188992876579126632568212946944) (*.f64 t (-.f64 b a)) (if (<=.f64 t -16733060379087468544) (+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 (neg.f64 z) y) (if (<=.f64 t 10500000000000000641853867875909401765417069805170575562727212711936) (+.f64 (+.f64 a (+.f64 z x)) (*.f64 (-.f64 (+.f64 y t) 2) b)) (+.f64 (*.f64 a (neg.f64 t)) (*.f64 (-.f64 (+.f64 y t) 2) b)))))) |
(if (<=.f64 t -11199999999999999693140077370276212031478492650132747982139565947482915913620681765447888315365194943710996915637507140040049300257696830215614673572332010350502902625676965264204327023849066666682328188992876579126632568212946944) (*.f64 t (-.f64 b a)) (if (<=.f64 t -16733060379087468544) (+.f64 (*.f64 b (+.f64 (+.f64 y t) -2)) (+.f64 a (+.f64 z x))) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 y (neg.f64 z)) (if (<=.f64 t 10500000000000000641853867875909401765417069805170575562727212711936) (+.f64 (*.f64 b (+.f64 (+.f64 y t) -2)) (+.f64 a (+.f64 z x))) (+.f64 (*.f64 b (+.f64 (+.f64 y t) -2)) (*.f64 t (neg.f64 a))))))) |
(if (<=.f64 t -11199999999999999693140077370276212031478492650132747982139565947482915913620681765447888315365194943710996915637507140040049300257696830215614673572332010350502902625676965264204327023849066666682328188992876579126632568212946944) (*.f64 t (-.f64 b a)) (if (<=.f64 t -16733060379087468544) (+.f64 (*.f64 b (+.f64 -2 (+.f64 y t))) (+.f64 a (+.f64 z x))) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 y (neg.f64 z)) (if (<=.f64 t 10500000000000000641853867875909401765417069805170575562727212711936) (+.f64 (*.f64 b (+.f64 -2 (+.f64 y t))) (+.f64 a (+.f64 z x))) (-.f64 (*.f64 b (+.f64 -2 (+.f64 y t))) (*.f64 t a)))))) |
(if (<=.f64 z -6199999999999999634648816478344014572835478259197865866120525071776467690569267557058083209623566946566338933262092736042624027159236012412597581855794644647936) (+.f64 x (+.f64 z a)) (if (<=.f64 z -8387199435029705/13164036458569648337239753460458804039861886925068638906788872192) (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) (if (<=.f64 z 5832875624380091/12650140831706913647030959169932331690597290610258882397306334876714396222999709180747523981339820280949192366519800744461863046086612092304188337496296156870094839017285397585279181733880826021327485479904546566785125467714043293663631459728072472271300628532022423097020838413451906408261645469290375391456731733818343424) (-.f64 (+.f64 (*.f64 (-.f64 y 2) b) x) (*.f64 -1 a)) (if (<=.f64 z 6596868769220165/11844773043065711480323635013294239465766037117894719018089691452225120183459296312949206610325977157215024800850914559983608856537741198665193842125253152001987113769690322155382272992184436377145866387891513586051123404341248) (+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) (if (<=.f64 z 7196222012254447/346583711765101857447301773017885462929554634421977071896309947576827663475703202879996800763017447262173901370175446478621769728) (+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 z 8517419349993773/50216813883093446110686315385661331328818843555712276103168) (+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) (if (<=.f64 z 8112381576878481386405175365430240976062906368) (+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 z 2600000000000000244841741436295875372270963141093777692807692492122379755335908676977612024414165994280321024) (+.f64 x (+.f64 z a)) (if (<=.f64 z 9999999999999999483531874467312143214394768377282087351960514613084929070487027419252537449089020883885200422613425626021888) (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) (*.f64 z (-.f64 1 y))))))))))) |
(if (<=.f64 z -6199999999999999634648816478344014572835478259197865866120525071776467690569267557058083209623566946566338933262092736042624027159236012412597581855794644647936) (+.f64 x (+.f64 z a)) (if (<=.f64 z -8387199435029705/13164036458569648337239753460458804039861886925068638906788872192) (-.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (*.f64 y z)) (if (<=.f64 z 5832875624380091/12650140831706913647030959169932331690597290610258882397306334876714396222999709180747523981339820280949192366519800744461863046086612092304188337496296156870094839017285397585279181733880826021327485479904546566785125467714043293663631459728072472271300628532022423097020838413451906408261645469290375391456731733818343424) (-.f64 (+.f64 x (*.f64 b (-.f64 y 2))) (neg.f64 a)) (if (<=.f64 z 6596868769220165/11844773043065711480323635013294239465766037117894719018089691452225120183459296312949206610325977157215024800850914559983608856537741198665193842125253152001987113769690322155382272992184436377145866387891513586051123404341248) (+.f64 (*.f64 y b) (-.f64 x (*.f64 a (+.f64 t -1)))) (if (<=.f64 z 7196222012254447/346583711765101857447301773017885462929554634421977071896309947576827663475703202879996800763017447262173901370175446478621769728) (+.f64 x (*.f64 b (+.f64 (+.f64 y t) -2))) (if (<=.f64 z 8517419349993773/50216813883093446110686315385661331328818843555712276103168) (+.f64 (*.f64 y b) (-.f64 x (*.f64 a (+.f64 t -1)))) (if (<=.f64 z 8112381576878481386405175365430240976062906368) (+.f64 x (*.f64 b (+.f64 (+.f64 y t) -2))) (if (<=.f64 z 2600000000000000244841741436295875372270963141093777692807692492122379755335908676977612024414165994280321024) (+.f64 x (+.f64 z a)) (if (<=.f64 z 9999999999999999483531874467312143214394768377282087351960514613084929070487027419252537449089020883885200422613425626021888) (-.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (*.f64 y z)) (*.f64 z (-.f64 1 y))))))))))) |
(if (<=.f64 z -6199999999999999634648816478344014572835478259197865866120525071776467690569267557058083209623566946566338933262092736042624027159236012412597581855794644647936) (+.f64 x (+.f64 z a)) (if (<=.f64 z -8387199435029705/13164036458569648337239753460458804039861886925068638906788872192) (-.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (*.f64 y z)) (if (<=.f64 z 5832875624380091/12650140831706913647030959169932331690597290610258882397306334876714396222999709180747523981339820280949192366519800744461863046086612092304188337496296156870094839017285397585279181733880826021327485479904546566785125467714043293663631459728072472271300628532022423097020838413451906408261645469290375391456731733818343424) (+.f64 a (+.f64 x (*.f64 b (-.f64 y 2)))) (if (<=.f64 z 6596868769220165/11844773043065711480323635013294239465766037117894719018089691452225120183459296312949206610325977157215024800850914559983608856537741198665193842125253152001987113769690322155382272992184436377145866387891513586051123404341248) (+.f64 (*.f64 y b) (+.f64 x (*.f64 a (-.f64 1 t)))) (if (<=.f64 z 7196222012254447/346583711765101857447301773017885462929554634421977071896309947576827663475703202879996800763017447262173901370175446478621769728) (+.f64 x (*.f64 b (+.f64 -2 (+.f64 y t)))) (if (<=.f64 z 8517419349993773/50216813883093446110686315385661331328818843555712276103168) (+.f64 (*.f64 y b) (+.f64 x (*.f64 a (-.f64 1 t)))) (if (<=.f64 z 8112381576878481386405175365430240976062906368) (+.f64 x (*.f64 b (+.f64 -2 (+.f64 y t)))) (if (<=.f64 z 2600000000000000244841741436295875372270963141093777692807692492122379755335908676977612024414165994280321024) (+.f64 x (+.f64 z a)) (if (<=.f64 z 9999999999999999483531874467312143214394768377282087351960514613084929070487027419252537449089020883885200422613425626021888) (-.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (*.f64 y z)) (*.f64 z (-.f64 1 y))))))))))) |
(if (<=.f64 z -6199999999999999634648816478344014572835478259197865866120525071776467690569267557058083209623566946566338933262092736042624027159236012412597581855794644647936) (+.f64 x (+.f64 z a)) (if (<=.f64 z -8387199435029705/13164036458569648337239753460458804039861886925068638906788872192) (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) (if (<=.f64 z -4689352562965283/2163894399531684849059183759018052020301198647443953754636127064173256304872345024407213080115843841616586321892381199068702095603722999960578207655784200507016751857659924824755124296402642702553187257992033027703390323887110396882282073697349781407701150027357134841184256) (+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 z 5832875624380091/12650140831706913647030959169932331690597290610258882397306334876714396222999709180747523981339820280949192366519800744461863046086612092304188337496296156870094839017285397585279181733880826021327485479904546566785125467714043293663631459728072472271300628532022423097020838413451906408261645469290375391456731733818343424) (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 z 6596868769220165/11844773043065711480323635013294239465766037117894719018089691452225120183459296312949206610325977157215024800850914559983608856537741198665193842125253152001987113769690322155382272992184436377145866387891513586051123404341248) (+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) (if (<=.f64 z 7196222012254447/346583711765101857447301773017885462929554634421977071896309947576827663475703202879996800763017447262173901370175446478621769728) (+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 z 8517419349993773/50216813883093446110686315385661331328818843555712276103168) (+.f64 (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 y b)) (if (<=.f64 z 8112381576878481386405175365430240976062906368) (+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 z 2600000000000000244841741436295875372270963141093777692807692492122379755335908676977612024414165994280321024) (+.f64 x (+.f64 z a)) (if (<=.f64 z 9999999999999999483531874467312143214394768377282087351960514613084929070487027419252537449089020883885200422613425626021888) (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) (*.f64 z (-.f64 1 y)))))))))))) |
(if (<=.f64 z -6199999999999999634648816478344014572835478259197865866120525071776467690569267557058083209623566946566338933262092736042624027159236012412597581855794644647936) (+.f64 x (+.f64 z a)) (if (<=.f64 z -8387199435029705/13164036458569648337239753460458804039861886925068638906788872192) (-.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (*.f64 y z)) (if (<=.f64 z -4689352562965283/2163894399531684849059183759018052020301198647443953754636127064173256304872345024407213080115843841616586321892381199068702095603722999960578207655784200507016751857659924824755124296402642702553187257992033027703390323887110396882282073697349781407701150027357134841184256) (+.f64 x (*.f64 b (+.f64 (+.f64 y t) -2))) (if (<=.f64 z 5832875624380091/12650140831706913647030959169932331690597290610258882397306334876714396222999709180747523981339820280949192366519800744461863046086612092304188337496296156870094839017285397585279181733880826021327485479904546566785125467714043293663631459728072472271300628532022423097020838413451906408261645469290375391456731733818343424) (+.f64 a (*.f64 b (+.f64 (+.f64 y t) -2))) (if (<=.f64 z 6596868769220165/11844773043065711480323635013294239465766037117894719018089691452225120183459296312949206610325977157215024800850914559983608856537741198665193842125253152001987113769690322155382272992184436377145866387891513586051123404341248) (+.f64 (*.f64 y b) (-.f64 x (*.f64 a (+.f64 t -1)))) (if (<=.f64 z 7196222012254447/346583711765101857447301773017885462929554634421977071896309947576827663475703202879996800763017447262173901370175446478621769728) (+.f64 x (*.f64 b (+.f64 (+.f64 y t) -2))) (if (<=.f64 z 8517419349993773/50216813883093446110686315385661331328818843555712276103168) (+.f64 (*.f64 y b) (-.f64 x (*.f64 a (+.f64 t -1)))) (if (<=.f64 z 8112381576878481386405175365430240976062906368) (+.f64 x (*.f64 b (+.f64 (+.f64 y t) -2))) (if (<=.f64 z 2600000000000000244841741436295875372270963141093777692807692492122379755335908676977612024414165994280321024) (+.f64 x (+.f64 z a)) (if (<=.f64 z 9999999999999999483531874467312143214394768377282087351960514613084929070487027419252537449089020883885200422613425626021888) (-.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (*.f64 y z)) (*.f64 z (-.f64 1 y)))))))))))) |
(if (<=.f64 z -6199999999999999634648816478344014572835478259197865866120525071776467690569267557058083209623566946566338933262092736042624027159236012412597581855794644647936) (+.f64 x (+.f64 z a)) (if (<=.f64 z -8387199435029705/13164036458569648337239753460458804039861886925068638906788872192) (-.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (*.f64 y z)) (if (<=.f64 z -4689352562965283/2163894399531684849059183759018052020301198647443953754636127064173256304872345024407213080115843841616586321892381199068702095603722999960578207655784200507016751857659924824755124296402642702553187257992033027703390323887110396882282073697349781407701150027357134841184256) (+.f64 x (*.f64 b (+.f64 -2 (+.f64 y t)))) (if (<=.f64 z 5832875624380091/12650140831706913647030959169932331690597290610258882397306334876714396222999709180747523981339820280949192366519800744461863046086612092304188337496296156870094839017285397585279181733880826021327485479904546566785125467714043293663631459728072472271300628532022423097020838413451906408261645469290375391456731733818343424) (+.f64 a (*.f64 b (+.f64 -2 (+.f64 y t)))) (if (<=.f64 z 6596868769220165/11844773043065711480323635013294239465766037117894719018089691452225120183459296312949206610325977157215024800850914559983608856537741198665193842125253152001987113769690322155382272992184436377145866387891513586051123404341248) (+.f64 (*.f64 y b) (+.f64 x (*.f64 a (-.f64 1 t)))) (if (<=.f64 z 7196222012254447/346583711765101857447301773017885462929554634421977071896309947576827663475703202879996800763017447262173901370175446478621769728) (+.f64 x (*.f64 b (+.f64 -2 (+.f64 y t)))) (if (<=.f64 z 8517419349993773/50216813883093446110686315385661331328818843555712276103168) (+.f64 (*.f64 y b) (+.f64 x (*.f64 a (-.f64 1 t)))) (if (<=.f64 z 8112381576878481386405175365430240976062906368) (+.f64 x (*.f64 b (+.f64 -2 (+.f64 y t)))) (if (<=.f64 z 2600000000000000244841741436295875372270963141093777692807692492122379755335908676977612024414165994280321024) (+.f64 x (+.f64 z a)) (if (<=.f64 z 9999999999999999483531874467312143214394768377282087351960514613084929070487027419252537449089020883885200422613425626021888) (-.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (*.f64 y z)) (*.f64 z (-.f64 1 y)))))))))))) |
(if (<=.f64 y -479999999999999966457568652462611069664319912066708887645563049359067031975883867380574252170924214443706945634304) (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) (if (<=.f64 y -22500000000000000479471228422922679880584790016) (-.f64 x (*.f64 (-.f64 t 1) a)) (if (<=.f64 y -23999999999999998119878066176) (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)) (if (<=.f64 y -1519907428090843/2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776) (-.f64 x (*.f64 (-.f64 t 1) a)) (if (<=.f64 y -1716164870705585/598008216632976371697735644702348584536405246902083247220875921706093794716375762404103004004990504111786204800430166155026589905240121409306972824498630058082565445957748647537262486126146850127872) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y -7692117313974365/10463951242053391806136963369726580181263718864311851635192874886429209483641954321222640418122029864527291727710479949464718215680589004332016189037791576956967351342601788071700268169006221818240189631008834448226154239518944108944497601509840881752510934060240763835605888507473266002770708660224) (+.f64 x (+.f64 z a)) (if (<=.f64 y -3763268250268281/49414612623855131433714684257548170666395666446323759364477870612165610246092613987295015552108672972457782681717971658054152523775828485563235693344906862773807964911271084317496803647971976645810490155877135026504396358257981615873560389562783094809768080203212590222737650052546509407272052614415528872877858335227904) (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y 5241880777387863/1339385758982834151185531311325002263201756014631917009304687985462938813906170153116497973519619822659493341146941433531483931607115392554498072196837321850491820971853028873177634325632796392734744272769130809372947742658424845944895692993259632864321399559710817770957553728956578048354650708508672) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6804949188233517/45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 5839578825036281/285152538601387201165073225356268207805826781703034995661199532368704697950542336656619550707335712486165144348349650456918044045085964874890791332482638386765749667147516559380179637015412736) (+.f64 x (+.f64 z a)) (if (<=.f64 y 7066224174360883/3773962424821541352241554580988268890916921220416440428376206300245624162392148852086126725177658767541468375030763844899770584629924792632561434251432696043649395326976) (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y 496831562535535/39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6774078405002313/748288838313422294120286634350736906063837462003712) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 224999999999999995285880664624792438543942872028197863494401019395555777967980248972656640000) (-.f64 x (*.f64 (-.f64 t 1) a)) (-.f64 (*.f64 (+.f64 y (+.f64 t -2)) b) (*.f64 y z)))))))))))))))) |
(if (<=.f64 y -479999999999999966457568652462611069664319912066708887645563049359067031975883867380574252170924214443706945634304) (-.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (*.f64 y z)) (if (<=.f64 y -22500000000000000479471228422922679880584790016) (-.f64 x (*.f64 a (+.f64 t -1))) (if (<=.f64 y -23999999999999998119878066176) (-.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (*.f64 y z)) (if (<=.f64 y -1519907428090843/2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776) (-.f64 x (*.f64 a (+.f64 t -1))) (if (<=.f64 y -1716164870705585/598008216632976371697735644702348584536405246902083247220875921706093794716375762404103004004990504111786204800430166155026589905240121409306972824498630058082565445957748647537262486126146850127872) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y -7692117313974365/10463951242053391806136963369726580181263718864311851635192874886429209483641954321222640418122029864527291727710479949464718215680589004332016189037791576956967351342601788071700268169006221818240189631008834448226154239518944108944497601509840881752510934060240763835605888507473266002770708660224) (+.f64 x (+.f64 z a)) (if (<=.f64 y -3763268250268281/49414612623855131433714684257548170666395666446323759364477870612165610246092613987295015552108672972457782681717971658054152523775828485563235693344906862773807964911271084317496803647971976645810490155877135026504396358257981615873560389562783094809768080203212590222737650052546509407272052614415528872877858335227904) (+.f64 a (*.f64 b (+.f64 (+.f64 y t) -2))) (if (<=.f64 y 5241880777387863/1339385758982834151185531311325002263201756014631917009304687985462938813906170153116497973519619822659493341146941433531483931607115392554498072196837321850491820971853028873177634325632796392734744272769130809372947742658424845944895692993259632864321399559710817770957553728956578048354650708508672) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6804949188233517/45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 5839578825036281/285152538601387201165073225356268207805826781703034995661199532368704697950542336656619550707335712486165144348349650456918044045085964874890791332482638386765749667147516559380179637015412736) (+.f64 x (+.f64 z a)) (if (<=.f64 y 7066224174360883/3773962424821541352241554580988268890916921220416440428376206300245624162392148852086126725177658767541468375030763844899770584629924792632561434251432696043649395326976) (+.f64 a (*.f64 b (+.f64 (+.f64 y t) -2))) (if (<=.f64 y 496831562535535/39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6774078405002313/748288838313422294120286634350736906063837462003712) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 224999999999999995285880664624792438543942872028197863494401019395555777967980248972656640000) (-.f64 x (*.f64 a (+.f64 t -1))) (-.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (*.f64 y z)))))))))))))))) |
(if (<=.f64 y -479999999999999966457568652462611069664319912066708887645563049359067031975883867380574252170924214443706945634304) (-.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (*.f64 y z)) (if (<=.f64 y -22500000000000000479471228422922679880584790016) (+.f64 x (*.f64 a (-.f64 1 t))) (if (<=.f64 y -23999999999999998119878066176) (-.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (*.f64 y z)) (if (<=.f64 y -1519907428090843/2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776) (+.f64 x (*.f64 a (-.f64 1 t))) (if (<=.f64 y -1716164870705585/598008216632976371697735644702348584536405246902083247220875921706093794716375762404103004004990504111786204800430166155026589905240121409306972824498630058082565445957748647537262486126146850127872) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y -7692117313974365/10463951242053391806136963369726580181263718864311851635192874886429209483641954321222640418122029864527291727710479949464718215680589004332016189037791576956967351342601788071700268169006221818240189631008834448226154239518944108944497601509840881752510934060240763835605888507473266002770708660224) (+.f64 x (+.f64 z a)) (if (<=.f64 y -3763268250268281/49414612623855131433714684257548170666395666446323759364477870612165610246092613987295015552108672972457782681717971658054152523775828485563235693344906862773807964911271084317496803647971976645810490155877135026504396358257981615873560389562783094809768080203212590222737650052546509407272052614415528872877858335227904) (+.f64 a (*.f64 b (+.f64 -2 (+.f64 y t)))) (if (<=.f64 y 5241880777387863/1339385758982834151185531311325002263201756014631917009304687985462938813906170153116497973519619822659493341146941433531483931607115392554498072196837321850491820971853028873177634325632796392734744272769130809372947742658424845944895692993259632864321399559710817770957553728956578048354650708508672) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6804949188233517/45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 5839578825036281/285152538601387201165073225356268207805826781703034995661199532368704697950542336656619550707335712486165144348349650456918044045085964874890791332482638386765749667147516559380179637015412736) (+.f64 x (+.f64 z a)) (if (<=.f64 y 7066224174360883/3773962424821541352241554580988268890916921220416440428376206300245624162392148852086126725177658767541468375030763844899770584629924792632561434251432696043649395326976) (+.f64 a (*.f64 b (+.f64 -2 (+.f64 y t)))) (if (<=.f64 y 496831562535535/39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6774078405002313/748288838313422294120286634350736906063837462003712) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 224999999999999995285880664624792438543942872028197863494401019395555777967980248972656640000) (+.f64 x (*.f64 a (-.f64 1 t))) (-.f64 (*.f64 (+.f64 y (-.f64 t 2)) b) (*.f64 y z)))))))))))))))) |
(if (<=.f64 y -479999999999999966457568652462611069664319912066708887645563049359067031975883867380574252170924214443706945634304) (*.f64 (-.f64 b z) y) (if (<=.f64 y -22500000000000000479471228422922679880584790016) (-.f64 x (*.f64 (-.f64 t 1) a)) (if (<=.f64 y -23999999999999998119878066176) (*.f64 (-.f64 b z) y) (if (<=.f64 y -1164601949871501/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (+.f64 x (+.f64 z a)) (if (<=.f64 y -8344930702996151/56236422431789954785131731346074773235871213978773957913759444657647969758393598378988008576298635714374011382919011189040103325693678746112606439760814548189184) (+.f64 (*.f64 -2 b) z) (if (<=.f64 y -2800042215924345/313528531882069915964662425689704934689422834087799421518938595239444503444259215719322355763768461419760165742407930953086580768238532773442734168210737755891992072530296122920016274326105279759841755136) (+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y -723234560207349/21545516652742137885659094560277007014094191832363720128504958578969526904000843047377578132593002296225722240434905979752527594496752860623371529300590103961416596156942109074193054752294185849943217159109760516096) (+.f64 x (+.f64 z a)) (if (<=.f64 y -7706625769615347/311850048364799970571308236412006025948039259443040240859773006630814358104525635278899682108224328295209757319405077381870693435686499009490495593482004909425000886398607136955865268975681716747289586991334988123957939133612635998263883635695006899610487641699336881506618514879741251551232) (+.f64 x (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y -7692117313974365/10463951242053391806136963369726580181263718864311851635192874886429209483641954321222640418122029864527291727710479949464718215680589004332016189037791576956967351342601788071700268169006221818240189631008834448226154239518944108944497601509840881752510934060240763835605888507473266002770708660224) (+.f64 x (+.f64 z a)) (if (<=.f64 y -3763268250268281/49414612623855131433714684257548170666395666446323759364477870612165610246092613987295015552108672972457782681717971658054152523775828485563235693344906862773807964911271084317496803647971976645810490155877135026504396358257981615873560389562783094809768080203212590222737650052546509407272052614415528872877858335227904) (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y 5241880777387863/1339385758982834151185531311325002263201756014631917009304687985462938813906170153116497973519619822659493341146941433531483931607115392554498072196837321850491820971853028873177634325632796392734744272769130809372947742658424845944895692993259632864321399559710817770957553728956578048354650708508672) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6804949188233517/45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 5839578825036281/285152538601387201165073225356268207805826781703034995661199532368704697950542336656619550707335712486165144348349650456918044045085964874890791332482638386765749667147516559380179637015412736) (+.f64 x (+.f64 z a)) (if (<=.f64 y 7066224174360883/3773962424821541352241554580988268890916921220416440428376206300245624162392148852086126725177658767541468375030763844899770584629924792632561434251432696043649395326976) (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y 496831562535535/39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6774078405002313/748288838313422294120286634350736906063837462003712) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 224999999999999995285880664624792438543942872028197863494401019395555777967980248972656640000) (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 b z) y)))))))))))))))))) |
(if (<=.f64 y -479999999999999966457568652462611069664319912066708887645563049359067031975883867380574252170924214443706945634304) (*.f64 y (-.f64 b z)) (if (<=.f64 y -22500000000000000479471228422922679880584790016) (-.f64 x (*.f64 a (+.f64 t -1))) (if (<=.f64 y -23999999999999998119878066176) (*.f64 y (-.f64 b z)) (if (<=.f64 y -1164601949871501/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (+.f64 x (+.f64 z a)) (if (<=.f64 y -8344930702996151/56236422431789954785131731346074773235871213978773957913759444657647969758393598378988008576298635714374011382919011189040103325693678746112606439760814548189184) (+.f64 z (*.f64 -2 b)) (if (<=.f64 y -2800042215924345/313528531882069915964662425689704934689422834087799421518938595239444503444259215719322355763768461419760165742407930953086580768238532773442734168210737755891992072530296122920016274326105279759841755136) (+.f64 x (*.f64 b (+.f64 (+.f64 y t) -2))) (if (<=.f64 y -723234560207349/21545516652742137885659094560277007014094191832363720128504958578969526904000843047377578132593002296225722240434905979752527594496752860623371529300590103961416596156942109074193054752294185849943217159109760516096) (+.f64 x (+.f64 z a)) (if (<=.f64 y -7706625769615347/311850048364799970571308236412006025948039259443040240859773006630814358104525635278899682108224328295209757319405077381870693435686499009490495593482004909425000886398607136955865268975681716747289586991334988123957939133612635998263883635695006899610487641699336881506618514879741251551232) (+.f64 x (*.f64 b (+.f64 (+.f64 y t) -2))) (if (<=.f64 y -7692117313974365/10463951242053391806136963369726580181263718864311851635192874886429209483641954321222640418122029864527291727710479949464718215680589004332016189037791576956967351342601788071700268169006221818240189631008834448226154239518944108944497601509840881752510934060240763835605888507473266002770708660224) (+.f64 x (+.f64 z a)) (if (<=.f64 y -3763268250268281/49414612623855131433714684257548170666395666446323759364477870612165610246092613987295015552108672972457782681717971658054152523775828485563235693344906862773807964911271084317496803647971976645810490155877135026504396358257981615873560389562783094809768080203212590222737650052546509407272052614415528872877858335227904) (+.f64 a (*.f64 b (+.f64 (+.f64 y t) -2))) (if (<=.f64 y 5241880777387863/1339385758982834151185531311325002263201756014631917009304687985462938813906170153116497973519619822659493341146941433531483931607115392554498072196837321850491820971853028873177634325632796392734744272769130809372947742658424845944895692993259632864321399559710817770957553728956578048354650708508672) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6804949188233517/45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 5839578825036281/285152538601387201165073225356268207805826781703034995661199532368704697950542336656619550707335712486165144348349650456918044045085964874890791332482638386765749667147516559380179637015412736) (+.f64 x (+.f64 z a)) (if (<=.f64 y 7066224174360883/3773962424821541352241554580988268890916921220416440428376206300245624162392148852086126725177658767541468375030763844899770584629924792632561434251432696043649395326976) (+.f64 a (*.f64 b (+.f64 (+.f64 y t) -2))) (if (<=.f64 y 496831562535535/39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6774078405002313/748288838313422294120286634350736906063837462003712) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 224999999999999995285880664624792438543942872028197863494401019395555777967980248972656640000) (-.f64 x (*.f64 a (+.f64 t -1))) (*.f64 y (-.f64 b z))))))))))))))))))) |
(if (<=.f64 y -479999999999999966457568652462611069664319912066708887645563049359067031975883867380574252170924214443706945634304) (*.f64 y (-.f64 b z)) (if (<=.f64 y -22500000000000000479471228422922679880584790016) (+.f64 x (*.f64 a (-.f64 1 t))) (if (<=.f64 y -23999999999999998119878066176) (*.f64 y (-.f64 b z)) (if (<=.f64 y -1164601949871501/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (+.f64 x (+.f64 z a)) (if (<=.f64 y -8344930702996151/56236422431789954785131731346074773235871213978773957913759444657647969758393598378988008576298635714374011382919011189040103325693678746112606439760814548189184) (+.f64 z (*.f64 -2 b)) (if (<=.f64 y -2800042215924345/313528531882069915964662425689704934689422834087799421518938595239444503444259215719322355763768461419760165742407930953086580768238532773442734168210737755891992072530296122920016274326105279759841755136) (+.f64 x (*.f64 b (+.f64 -2 (+.f64 y t)))) (if (<=.f64 y -723234560207349/21545516652742137885659094560277007014094191832363720128504958578969526904000843047377578132593002296225722240434905979752527594496752860623371529300590103961416596156942109074193054752294185849943217159109760516096) (+.f64 x (+.f64 z a)) (if (<=.f64 y -7706625769615347/311850048364799970571308236412006025948039259443040240859773006630814358104525635278899682108224328295209757319405077381870693435686499009490495593482004909425000886398607136955865268975681716747289586991334988123957939133612635998263883635695006899610487641699336881506618514879741251551232) (+.f64 x (*.f64 b (+.f64 -2 (+.f64 y t)))) (if (<=.f64 y -7692117313974365/10463951242053391806136963369726580181263718864311851635192874886429209483641954321222640418122029864527291727710479949464718215680589004332016189037791576956967351342601788071700268169006221818240189631008834448226154239518944108944497601509840881752510934060240763835605888507473266002770708660224) (+.f64 x (+.f64 z a)) (if (<=.f64 y -3763268250268281/49414612623855131433714684257548170666395666446323759364477870612165610246092613987295015552108672972457782681717971658054152523775828485563235693344906862773807964911271084317496803647971976645810490155877135026504396358257981615873560389562783094809768080203212590222737650052546509407272052614415528872877858335227904) (+.f64 a (*.f64 b (+.f64 -2 (+.f64 y t)))) (if (<=.f64 y 5241880777387863/1339385758982834151185531311325002263201756014631917009304687985462938813906170153116497973519619822659493341146941433531483931607115392554498072196837321850491820971853028873177634325632796392734744272769130809372947742658424845944895692993259632864321399559710817770957553728956578048354650708508672) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6804949188233517/45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 5839578825036281/285152538601387201165073225356268207805826781703034995661199532368704697950542336656619550707335712486165144348349650456918044045085964874890791332482638386765749667147516559380179637015412736) (+.f64 x (+.f64 z a)) (if (<=.f64 y 7066224174360883/3773962424821541352241554580988268890916921220416440428376206300245624162392148852086126725177658767541468375030763844899770584629924792632561434251432696043649395326976) (+.f64 a (*.f64 b (+.f64 -2 (+.f64 y t)))) (if (<=.f64 y 496831562535535/39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6774078405002313/748288838313422294120286634350736906063837462003712) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 224999999999999995285880664624792438543942872028197863494401019395555777967980248972656640000) (+.f64 x (*.f64 a (-.f64 1 t))) (*.f64 y (-.f64 b z))))))))))))))))))) |
(if (<=.f64 y -479999999999999966457568652462611069664319912066708887645563049359067031975883867380574252170924214443706945634304) (*.f64 y (-.f64 b z)) (if (<=.f64 y -22500000000000000479471228422922679880584790016) (+.f64 x (*.f64 a (-.f64 1 t))) (if (<=.f64 y -23999999999999998119878066176) (*.f64 y (-.f64 b z)) (if (<=.f64 y -1164601949871501/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (+.f64 x (+.f64 z a)) (if (<=.f64 y -8344930702996151/56236422431789954785131731346074773235871213978773957913759444657647969758393598378988008576298635714374011382919011189040103325693678746112606439760814548189184) (-.f64 z (*.f64 b 2)) (if (<=.f64 y -2800042215924345/313528531882069915964662425689704934689422834087799421518938595239444503444259215719322355763768461419760165742407930953086580768238532773442734168210737755891992072530296122920016274326105279759841755136) (+.f64 x (*.f64 b (+.f64 -2 (+.f64 y t)))) (if (<=.f64 y -723234560207349/21545516652742137885659094560277007014094191832363720128504958578969526904000843047377578132593002296225722240434905979752527594496752860623371529300590103961416596156942109074193054752294185849943217159109760516096) (+.f64 x (+.f64 z a)) (if (<=.f64 y -7706625769615347/311850048364799970571308236412006025948039259443040240859773006630814358104525635278899682108224328295209757319405077381870693435686499009490495593482004909425000886398607136955865268975681716747289586991334988123957939133612635998263883635695006899610487641699336881506618514879741251551232) (+.f64 x (*.f64 b (+.f64 -2 (+.f64 y t)))) (if (<=.f64 y -7692117313974365/10463951242053391806136963369726580181263718864311851635192874886429209483641954321222640418122029864527291727710479949464718215680589004332016189037791576956967351342601788071700268169006221818240189631008834448226154239518944108944497601509840881752510934060240763835605888507473266002770708660224) (+.f64 x (+.f64 z a)) (if (<=.f64 y -3763268250268281/49414612623855131433714684257548170666395666446323759364477870612165610246092613987295015552108672972457782681717971658054152523775828485563235693344906862773807964911271084317496803647971976645810490155877135026504396358257981615873560389562783094809768080203212590222737650052546509407272052614415528872877858335227904) (+.f64 a (*.f64 b (+.f64 -2 (+.f64 y t)))) (if (<=.f64 y 5241880777387863/1339385758982834151185531311325002263201756014631917009304687985462938813906170153116497973519619822659493341146941433531483931607115392554498072196837321850491820971853028873177634325632796392734744272769130809372947742658424845944895692993259632864321399559710817770957553728956578048354650708508672) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6804949188233517/45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 5839578825036281/285152538601387201165073225356268207805826781703034995661199532368704697950542336656619550707335712486165144348349650456918044045085964874890791332482638386765749667147516559380179637015412736) (+.f64 x (+.f64 z a)) (if (<=.f64 y 7066224174360883/3773962424821541352241554580988268890916921220416440428376206300245624162392148852086126725177658767541468375030763844899770584629924792632561434251432696043649395326976) (+.f64 a (*.f64 b (+.f64 -2 (+.f64 y t)))) (if (<=.f64 y 496831562535535/39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6774078405002313/748288838313422294120286634350736906063837462003712) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 224999999999999995285880664624792438543942872028197863494401019395555777967980248972656640000) (+.f64 x (*.f64 a (-.f64 1 t))) (*.f64 y (-.f64 b z))))))))))))))))))) |
(if (<=.f64 y -479999999999999966457568652462611069664319912066708887645563049359067031975883867380574252170924214443706945634304) (*.f64 (-.f64 b z) y) (if (<=.f64 y -1519907428090843/2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776) (-.f64 x (*.f64 (-.f64 t 1) a)) (if (<=.f64 y -1716164870705585/598008216632976371697735644702348584536405246902083247220875921706093794716375762404103004004990504111786204800430166155026589905240121409306972824498630058082565445957748647537262486126146850127872) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y -7692117313974365/10463951242053391806136963369726580181263718864311851635192874886429209483641954321222640418122029864527291727710479949464718215680589004332016189037791576956967351342601788071700268169006221818240189631008834448226154239518944108944497601509840881752510934060240763835605888507473266002770708660224) (+.f64 x (+.f64 z a)) (if (<=.f64 y -3763268250268281/49414612623855131433714684257548170666395666446323759364477870612165610246092613987295015552108672972457782681717971658054152523775828485563235693344906862773807964911271084317496803647971976645810490155877135026504396358257981615873560389562783094809768080203212590222737650052546509407272052614415528872877858335227904) (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y 5241880777387863/1339385758982834151185531311325002263201756014631917009304687985462938813906170153116497973519619822659493341146941433531483931607115392554498072196837321850491820971853028873177634325632796392734744272769130809372947742658424845944895692993259632864321399559710817770957553728956578048354650708508672) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6804949188233517/45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 5839578825036281/285152538601387201165073225356268207805826781703034995661199532368704697950542336656619550707335712486165144348349650456918044045085964874890791332482638386765749667147516559380179637015412736) (+.f64 x (+.f64 z a)) (if (<=.f64 y 7066224174360883/3773962424821541352241554580988268890916921220416440428376206300245624162392148852086126725177658767541468375030763844899770584629924792632561434251432696043649395326976) (+.f64 a (*.f64 (-.f64 (+.f64 y t) 2) b)) (if (<=.f64 y 496831562535535/39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6774078405002313/748288838313422294120286634350736906063837462003712) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 224999999999999995285880664624792438543942872028197863494401019395555777967980248972656640000) (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 b z) y))))))))))))) |
(if (<=.f64 y -479999999999999966457568652462611069664319912066708887645563049359067031975883867380574252170924214443706945634304) (*.f64 y (-.f64 b z)) (if (<=.f64 y -1519907428090843/2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776) (-.f64 x (*.f64 a (+.f64 t -1))) (if (<=.f64 y -1716164870705585/598008216632976371697735644702348584536405246902083247220875921706093794716375762404103004004990504111786204800430166155026589905240121409306972824498630058082565445957748647537262486126146850127872) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y -7692117313974365/10463951242053391806136963369726580181263718864311851635192874886429209483641954321222640418122029864527291727710479949464718215680589004332016189037791576956967351342601788071700268169006221818240189631008834448226154239518944108944497601509840881752510934060240763835605888507473266002770708660224) (+.f64 x (+.f64 z a)) (if (<=.f64 y -3763268250268281/49414612623855131433714684257548170666395666446323759364477870612165610246092613987295015552108672972457782681717971658054152523775828485563235693344906862773807964911271084317496803647971976645810490155877135026504396358257981615873560389562783094809768080203212590222737650052546509407272052614415528872877858335227904) (+.f64 a (*.f64 b (+.f64 (+.f64 y t) -2))) (if (<=.f64 y 5241880777387863/1339385758982834151185531311325002263201756014631917009304687985462938813906170153116497973519619822659493341146941433531483931607115392554498072196837321850491820971853028873177634325632796392734744272769130809372947742658424845944895692993259632864321399559710817770957553728956578048354650708508672) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6804949188233517/45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 5839578825036281/285152538601387201165073225356268207805826781703034995661199532368704697950542336656619550707335712486165144348349650456918044045085964874890791332482638386765749667147516559380179637015412736) (+.f64 x (+.f64 z a)) (if (<=.f64 y 7066224174360883/3773962424821541352241554580988268890916921220416440428376206300245624162392148852086126725177658767541468375030763844899770584629924792632561434251432696043649395326976) (+.f64 a (*.f64 b (+.f64 (+.f64 y t) -2))) (if (<=.f64 y 496831562535535/39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6774078405002313/748288838313422294120286634350736906063837462003712) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 224999999999999995285880664624792438543942872028197863494401019395555777967980248972656640000) (-.f64 x (*.f64 a (+.f64 t -1))) (*.f64 y (-.f64 b z)))))))))))))) |
(if (<=.f64 y -479999999999999966457568652462611069664319912066708887645563049359067031975883867380574252170924214443706945634304) (*.f64 y (-.f64 b z)) (if (<=.f64 y -1519907428090843/2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776) (+.f64 x (*.f64 a (-.f64 1 t))) (if (<=.f64 y -1716164870705585/598008216632976371697735644702348584536405246902083247220875921706093794716375762404103004004990504111786204800430166155026589905240121409306972824498630058082565445957748647537262486126146850127872) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y -7692117313974365/10463951242053391806136963369726580181263718864311851635192874886429209483641954321222640418122029864527291727710479949464718215680589004332016189037791576956967351342601788071700268169006221818240189631008834448226154239518944108944497601509840881752510934060240763835605888507473266002770708660224) (+.f64 x (+.f64 z a)) (if (<=.f64 y -3763268250268281/49414612623855131433714684257548170666395666446323759364477870612165610246092613987295015552108672972457782681717971658054152523775828485563235693344906862773807964911271084317496803647971976645810490155877135026504396358257981615873560389562783094809768080203212590222737650052546509407272052614415528872877858335227904) (+.f64 a (*.f64 b (+.f64 -2 (+.f64 y t)))) (if (<=.f64 y 5241880777387863/1339385758982834151185531311325002263201756014631917009304687985462938813906170153116497973519619822659493341146941433531483931607115392554498072196837321850491820971853028873177634325632796392734744272769130809372947742658424845944895692993259632864321399559710817770957553728956578048354650708508672) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6804949188233517/45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 5839578825036281/285152538601387201165073225356268207805826781703034995661199532368704697950542336656619550707335712486165144348349650456918044045085964874890791332482638386765749667147516559380179637015412736) (+.f64 x (+.f64 z a)) (if (<=.f64 y 7066224174360883/3773962424821541352241554580988268890916921220416440428376206300245624162392148852086126725177658767541468375030763844899770584629924792632561434251432696043649395326976) (+.f64 a (*.f64 b (+.f64 -2 (+.f64 y t)))) (if (<=.f64 y 496831562535535/39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6774078405002313/748288838313422294120286634350736906063837462003712) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 224999999999999995285880664624792438543942872028197863494401019395555777967980248972656640000) (+.f64 x (*.f64 a (-.f64 1 t))) (*.f64 y (-.f64 b z)))))))))))))) |
(if (<=.f64 y -479999999999999966457568652462611069664319912066708887645563049359067031975883867380574252170924214443706945634304) (*.f64 (-.f64 b z) y) (if (<=.f64 y -1519907428090843/2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776) (-.f64 x (*.f64 (-.f64 t 1) a)) (if (<=.f64 y -1716164870705585/598008216632976371697735644702348584536405246902083247220875921706093794716375762404103004004990504111786204800430166155026589905240121409306972824498630058082565445957748647537262486126146850127872) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y -4457361379391041/609082125712499942522086399242199269429764178599687970429244153575809293172901631404100941617625641201581557264463041761466198116575193377911124206019540838720704856247279564366924353468128353022049974592451148679605349870337179684109147725966810350801733675194017346692614286874494631936) (+.f64 x (+.f64 z a)) (if (<=.f64 y -3689965678618963/11781361728633673532894774498354952494238773929196300355071513798753168641589311119865182769801300280680127783231251635087526446289021607771691249214388576215221396663491984443067742263787264024212477244347842938066577043117995647400274369612403653814737339068225047641453182709824206687753689912418253153056587776) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 5241880777387863/1339385758982834151185531311325002263201756014631917009304687985462938813906170153116497973519619822659493341146941433531483931607115392554498072196837321850491820971853028873177634325632796392734744272769130809372947742658424845944895692993259632864321399559710817770957553728956578048354650708508672) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6804949188233517/45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 496831562535535/39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6774078405002313/748288838313422294120286634350736906063837462003712) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 224999999999999995285880664624792438543942872028197863494401019395555777967980248972656640000) (-.f64 x (*.f64 (-.f64 t 1) a)) (*.f64 (-.f64 b z) y))))))))))) |
(if (<=.f64 y -479999999999999966457568652462611069664319912066708887645563049359067031975883867380574252170924214443706945634304) (*.f64 y (-.f64 b z)) (if (<=.f64 y -1519907428090843/2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776) (-.f64 x (*.f64 a (+.f64 t -1))) (if (<=.f64 y -1716164870705585/598008216632976371697735644702348584536405246902083247220875921706093794716375762404103004004990504111786204800430166155026589905240121409306972824498630058082565445957748647537262486126146850127872) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y -4457361379391041/609082125712499942522086399242199269429764178599687970429244153575809293172901631404100941617625641201581557264463041761466198116575193377911124206019540838720704856247279564366924353468128353022049974592451148679605349870337179684109147725966810350801733675194017346692614286874494631936) (+.f64 x (+.f64 z a)) (if (<=.f64 y -3689965678618963/11781361728633673532894774498354952494238773929196300355071513798753168641589311119865182769801300280680127783231251635087526446289021607771691249214388576215221396663491984443067742263787264024212477244347842938066577043117995647400274369612403653814737339068225047641453182709824206687753689912418253153056587776) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 5241880777387863/1339385758982834151185531311325002263201756014631917009304687985462938813906170153116497973519619822659493341146941433531483931607115392554498072196837321850491820971853028873177634325632796392734744272769130809372947742658424845944895692993259632864321399559710817770957553728956578048354650708508672) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6804949188233517/45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 496831562535535/39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6774078405002313/748288838313422294120286634350736906063837462003712) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 224999999999999995285880664624792438543942872028197863494401019395555777967980248972656640000) (-.f64 x (*.f64 a (+.f64 t -1))) (*.f64 y (-.f64 b z)))))))))))) |
(if (<=.f64 y -479999999999999966457568652462611069664319912066708887645563049359067031975883867380574252170924214443706945634304) (*.f64 y (-.f64 b z)) (if (<=.f64 y -1519907428090843/2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776) (+.f64 x (*.f64 a (-.f64 1 t))) (if (<=.f64 y -1716164870705585/598008216632976371697735644702348584536405246902083247220875921706093794716375762404103004004990504111786204800430166155026589905240121409306972824498630058082565445957748647537262486126146850127872) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y -4457361379391041/609082125712499942522086399242199269429764178599687970429244153575809293172901631404100941617625641201581557264463041761466198116575193377911124206019540838720704856247279564366924353468128353022049974592451148679605349870337179684109147725966810350801733675194017346692614286874494631936) (+.f64 x (+.f64 z a)) (if (<=.f64 y -3689965678618963/11781361728633673532894774498354952494238773929196300355071513798753168641589311119865182769801300280680127783231251635087526446289021607771691249214388576215221396663491984443067742263787264024212477244347842938066577043117995647400274369612403653814737339068225047641453182709824206687753689912418253153056587776) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 5241880777387863/1339385758982834151185531311325002263201756014631917009304687985462938813906170153116497973519619822659493341146941433531483931607115392554498072196837321850491820971853028873177634325632796392734744272769130809372947742658424845944895692993259632864321399559710817770957553728956578048354650708508672) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6804949188233517/45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 496831562535535/39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816) (+.f64 x (+.f64 z a)) (if (<=.f64 y 6774078405002313/748288838313422294120286634350736906063837462003712) (+.f64 z (*.f64 b (-.f64 t 2))) (if (<=.f64 y 224999999999999995285880664624792438543942872028197863494401019395555777967980248972656640000) (+.f64 x (*.f64 a (-.f64 1 t))) (*.f64 y (-.f64 b z)))))))))))) |
(if (<=.f64 t -699999999999999950101616715634326136645856484990872995589878724968019184258102048432237526771950152648043086661294392166902214029095290845156638753308677673584689152) (*.f64 t (-.f64 b a)) (if (<=.f64 t -16733060379087468544) (+.f64 x (+.f64 z a)) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 (neg.f64 z) y) (if (<=.f64 t -5918714465278787/354901720847464302026037015570314714039863945648104521621821386318671527399120079749116723981329865996466075003059657194108692201472) (+.f64 a (*.f64 (-.f64 y 2) b)) (if (<=.f64 t -877942596245179/102293456496754433437912178025862473506770063938845774671352855253004181137646079840102190385184504910965208878986252219038039267058918532916516487168) (*.f64 (-.f64 b z) y) (if (<=.f64 t -7146892810450697/960962154087001629436308185025184878247905227974336452694771122017616840015261658617268505418282416748614914455642299215255384405286687137505466996049907860485085046091635529899088428785810612776957410293491536147754283397719630991265870577566668501257551872) (+.f64 x (+.f64 z a)) (if (<=.f64 t -5169504229893195/175555970201398037864189960037990696642380564349834626243584063630598316216309534309285622385163609395625111210811907575838661883607828732903171318983861449587663958422720200465138886329341888788528401320395513446131006525725061407689368272012526598792334483090416306874948482361796597953940777665648656384) (+.f64 a (*.f64 (-.f64 y 2) b)) (if (<=.f64 t 754946470932223/2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776) (+.f64 x (+.f64 z a)) (if (<=.f64 t 104508297299237/324518553658426726783156020576256) (+.f64 (*.f64 (-.f64 y 2) b) x) (if (<=.f64 t 7722071661308247/8192) (+.f64 x (+.f64 z a)) (*.f64 t (-.f64 b a)))))))))))) |
(if (<=.f64 t -699999999999999950101616715634326136645856484990872995589878724968019184258102048432237526771950152648043086661294392166902214029095290845156638753308677673584689152) (*.f64 t (-.f64 b a)) (if (<=.f64 t -16733060379087468544) (+.f64 x (+.f64 z a)) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 y (neg.f64 z)) (if (<=.f64 t -5918714465278787/354901720847464302026037015570314714039863945648104521621821386318671527399120079749116723981329865996466075003059657194108692201472) (+.f64 a (*.f64 b (-.f64 y 2))) (if (<=.f64 t -877942596245179/102293456496754433437912178025862473506770063938845774671352855253004181137646079840102190385184504910965208878986252219038039267058918532916516487168) (*.f64 y (-.f64 b z)) (if (<=.f64 t -7146892810450697/960962154087001629436308185025184878247905227974336452694771122017616840015261658617268505418282416748614914455642299215255384405286687137505466996049907860485085046091635529899088428785810612776957410293491536147754283397719630991265870577566668501257551872) (+.f64 x (+.f64 z a)) (if (<=.f64 t -5169504229893195/175555970201398037864189960037990696642380564349834626243584063630598316216309534309285622385163609395625111210811907575838661883607828732903171318983861449587663958422720200465138886329341888788528401320395513446131006525725061407689368272012526598792334483090416306874948482361796597953940777665648656384) (+.f64 a (*.f64 b (-.f64 y 2))) (if (<=.f64 t 754946470932223/2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776) (+.f64 x (+.f64 z a)) (if (<=.f64 t 104508297299237/324518553658426726783156020576256) (+.f64 x (*.f64 b (-.f64 y 2))) (if (<=.f64 t 7722071661308247/8192) (+.f64 x (+.f64 z a)) (*.f64 t (-.f64 b a)))))))))))) |
(if (<=.f64 t -699999999999999950101616715634326136645856484990872995589878724968019184258102048432237526771950152648043086661294392166902214029095290845156638753308677673584689152) (*.f64 t (-.f64 b a)) (if (<=.f64 t -16733060379087468544) (+.f64 x (+.f64 z a)) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 (neg.f64 z) y) (if (<=.f64 t -5918714465278787/354901720847464302026037015570314714039863945648104521621821386318671527399120079749116723981329865996466075003059657194108692201472) (+.f64 a (*.f64 (-.f64 y 2) b)) (if (<=.f64 t -877942596245179/102293456496754433437912178025862473506770063938845774671352855253004181137646079840102190385184504910965208878986252219038039267058918532916516487168) (*.f64 (-.f64 b z) y) (if (<=.f64 t -7146892810450697/960962154087001629436308185025184878247905227974336452694771122017616840015261658617268505418282416748614914455642299215255384405286687137505466996049907860485085046091635529899088428785810612776957410293491536147754283397719630991265870577566668501257551872) (+.f64 x (+.f64 z a)) (if (<=.f64 t -5169504229893195/175555970201398037864189960037990696642380564349834626243584063630598316216309534309285622385163609395625111210811907575838661883607828732903171318983861449587663958422720200465138886329341888788528401320395513446131006525725061407689368272012526598792334483090416306874948482361796597953940777665648656384) (+.f64 a (*.f64 (-.f64 y 2) b)) (if (<=.f64 t 7722071661308247/8192) (+.f64 x (+.f64 z a)) (*.f64 t (-.f64 b a)))))))))) |
(if (<=.f64 t -699999999999999950101616715634326136645856484990872995589878724968019184258102048432237526771950152648043086661294392166902214029095290845156638753308677673584689152) (*.f64 t (-.f64 b a)) (if (<=.f64 t -16733060379087468544) (+.f64 x (+.f64 z a)) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 y (neg.f64 z)) (if (<=.f64 t -5918714465278787/354901720847464302026037015570314714039863945648104521621821386318671527399120079749116723981329865996466075003059657194108692201472) (+.f64 a (*.f64 b (-.f64 y 2))) (if (<=.f64 t -877942596245179/102293456496754433437912178025862473506770063938845774671352855253004181137646079840102190385184504910965208878986252219038039267058918532916516487168) (*.f64 y (-.f64 b z)) (if (<=.f64 t -7146892810450697/960962154087001629436308185025184878247905227974336452694771122017616840015261658617268505418282416748614914455642299215255384405286687137505466996049907860485085046091635529899088428785810612776957410293491536147754283397719630991265870577566668501257551872) (+.f64 x (+.f64 z a)) (if (<=.f64 t -5169504229893195/175555970201398037864189960037990696642380564349834626243584063630598316216309534309285622385163609395625111210811907575838661883607828732903171318983861449587663958422720200465138886329341888788528401320395513446131006525725061407689368272012526598792334483090416306874948482361796597953940777665648656384) (+.f64 a (*.f64 b (-.f64 y 2))) (if (<=.f64 t 7722071661308247/8192) (+.f64 x (+.f64 z a)) (*.f64 t (-.f64 b a)))))))))) |
(if (<=.f64 t -699999999999999950101616715634326136645856484990872995589878724968019184258102048432237526771950152648043086661294392166902214029095290845156638753308677673584689152) (*.f64 t (-.f64 b a)) (if (<=.f64 t -16733060379087468544) (+.f64 x (+.f64 z a)) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 (neg.f64 z) y) (if (<=.f64 t -5918714465278787/354901720847464302026037015570314714039863945648104521621821386318671527399120079749116723981329865996466075003059657194108692201472) (+.f64 x (+.f64 z a)) (if (<=.f64 t -877942596245179/102293456496754433437912178025862473506770063938845774671352855253004181137646079840102190385184504910965208878986252219038039267058918532916516487168) (*.f64 (-.f64 b z) y) (if (<=.f64 t -4279693574259875/33018408195979077897021236557282287907427957877257595132997544314167118909795303717151078492978574243417149687078570542430146722468917846078158686153933723556774167749937817760545719854776652565814014556763199275259251768296972608677399806172939779780596161306108624896) (+.f64 x (+.f64 z a)) (if (<=.f64 t -5169504229893195/175555970201398037864189960037990696642380564349834626243584063630598316216309534309285622385163609395625111210811907575838661883607828732903171318983861449587663958422720200465138886329341888788528401320395513446131006525725061407689368272012526598792334483090416306874948482361796597953940777665648656384) (+.f64 (*.f64 -2 b) z) (if (<=.f64 t 7722071661308247/8192) (+.f64 x (+.f64 z a)) (*.f64 t (-.f64 b a)))))))))) |
(if (<=.f64 t -699999999999999950101616715634326136645856484990872995589878724968019184258102048432237526771950152648043086661294392166902214029095290845156638753308677673584689152) (*.f64 t (-.f64 b a)) (if (<=.f64 t -16733060379087468544) (+.f64 x (+.f64 z a)) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 y (neg.f64 z)) (if (<=.f64 t -5918714465278787/354901720847464302026037015570314714039863945648104521621821386318671527399120079749116723981329865996466075003059657194108692201472) (+.f64 x (+.f64 z a)) (if (<=.f64 t -877942596245179/102293456496754433437912178025862473506770063938845774671352855253004181137646079840102190385184504910965208878986252219038039267058918532916516487168) (*.f64 y (-.f64 b z)) (if (<=.f64 t -4279693574259875/33018408195979077897021236557282287907427957877257595132997544314167118909795303717151078492978574243417149687078570542430146722468917846078158686153933723556774167749937817760545719854776652565814014556763199275259251768296972608677399806172939779780596161306108624896) (+.f64 x (+.f64 z a)) (if (<=.f64 t -5169504229893195/175555970201398037864189960037990696642380564349834626243584063630598316216309534309285622385163609395625111210811907575838661883607828732903171318983861449587663958422720200465138886329341888788528401320395513446131006525725061407689368272012526598792334483090416306874948482361796597953940777665648656384) (+.f64 z (*.f64 -2 b)) (if (<=.f64 t 7722071661308247/8192) (+.f64 x (+.f64 z a)) (*.f64 t (-.f64 b a)))))))))) |
(if (<=.f64 t -699999999999999950101616715634326136645856484990872995589878724968019184258102048432237526771950152648043086661294392166902214029095290845156638753308677673584689152) (*.f64 t (-.f64 b a)) (if (<=.f64 t -16733060379087468544) (+.f64 x (+.f64 z a)) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 y (neg.f64 z)) (if (<=.f64 t -5918714465278787/354901720847464302026037015570314714039863945648104521621821386318671527399120079749116723981329865996466075003059657194108692201472) (+.f64 x (+.f64 z a)) (if (<=.f64 t -877942596245179/102293456496754433437912178025862473506770063938845774671352855253004181137646079840102190385184504910965208878986252219038039267058918532916516487168) (*.f64 y (-.f64 b z)) (if (<=.f64 t -4279693574259875/33018408195979077897021236557282287907427957877257595132997544314167118909795303717151078492978574243417149687078570542430146722468917846078158686153933723556774167749937817760545719854776652565814014556763199275259251768296972608677399806172939779780596161306108624896) (+.f64 x (+.f64 z a)) (if (<=.f64 t -5169504229893195/175555970201398037864189960037990696642380564349834626243584063630598316216309534309285622385163609395625111210811907575838661883607828732903171318983861449587663958422720200465138886329341888788528401320395513446131006525725061407689368272012526598792334483090416306874948482361796597953940777665648656384) (-.f64 z (*.f64 b 2)) (if (<=.f64 t 7722071661308247/8192) (+.f64 x (+.f64 z a)) (*.f64 t (-.f64 b a)))))))))) |
(if (<=.f64 t -11199999999999999693140077370276212031478492650132747982139565947482915913620681765447888315365194943710996915637507140040049300257696830215614673572332010350502902625676965264204327023849066666682328188992876579126632568212946944) (*.f64 t (neg.f64 a)) (if (<=.f64 t -16733060379087468544) (+.f64 x (+.f64 z a)) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 (neg.f64 z) y) (if (<=.f64 t -5918714465278787/354901720847464302026037015570314714039863945648104521621821386318671527399120079749116723981329865996466075003059657194108692201472) (+.f64 x (+.f64 z a)) (if (<=.f64 t -877942596245179/102293456496754433437912178025862473506770063938845774671352855253004181137646079840102190385184504910965208878986252219038039267058918532916516487168) (*.f64 (-.f64 b z) y) (if (<=.f64 t -4279693574259875/33018408195979077897021236557282287907427957877257595132997544314167118909795303717151078492978574243417149687078570542430146722468917846078158686153933723556774167749937817760545719854776652565814014556763199275259251768296972608677399806172939779780596161306108624896) (+.f64 x (+.f64 z a)) (if (<=.f64 t -5169504229893195/175555970201398037864189960037990696642380564349834626243584063630598316216309534309285622385163609395625111210811907575838661883607828732903171318983861449587663958422720200465138886329341888788528401320395513446131006525725061407689368272012526598792334483090416306874948482361796597953940777665648656384) (+.f64 (*.f64 -2 b) z) (if (<=.f64 t 7722071661308247/8192) (+.f64 x (+.f64 z a)) (if (<=.f64 t 274999999999999995001760286107604445029289687088032372490240) (*.f64 (-.f64 b z) y) (if (<=.f64 t 49999999999999996681683364986231121055509847158923091289463001947809936825071710129649256226662527266508888537465191395528952846213699856588865536) (-.f64 x (*.f64 a t)) (if (<=.f64 t 200000000000000012906239745447679119308421504820578339539671915665471618650040573112543019986749031403290765577790368360384389590184578101271409790645582658247315902435527641605865472) (*.f64 t b) (-.f64 x (*.f64 a t))))))))))))) |
(if (<=.f64 t -11199999999999999693140077370276212031478492650132747982139565947482915913620681765447888315365194943710996915637507140040049300257696830215614673572332010350502902625676965264204327023849066666682328188992876579126632568212946944) (*.f64 t (neg.f64 a)) (if (<=.f64 t -16733060379087468544) (+.f64 x (+.f64 z a)) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 y (neg.f64 z)) (if (<=.f64 t -5918714465278787/354901720847464302026037015570314714039863945648104521621821386318671527399120079749116723981329865996466075003059657194108692201472) (+.f64 x (+.f64 z a)) (if (<=.f64 t -877942596245179/102293456496754433437912178025862473506770063938845774671352855253004181137646079840102190385184504910965208878986252219038039267058918532916516487168) (*.f64 y (-.f64 b z)) (if (<=.f64 t -4279693574259875/33018408195979077897021236557282287907427957877257595132997544314167118909795303717151078492978574243417149687078570542430146722468917846078158686153933723556774167749937817760545719854776652565814014556763199275259251768296972608677399806172939779780596161306108624896) (+.f64 x (+.f64 z a)) (if (<=.f64 t -5169504229893195/175555970201398037864189960037990696642380564349834626243584063630598316216309534309285622385163609395625111210811907575838661883607828732903171318983861449587663958422720200465138886329341888788528401320395513446131006525725061407689368272012526598792334483090416306874948482361796597953940777665648656384) (+.f64 z (*.f64 -2 b)) (if (<=.f64 t 7722071661308247/8192) (+.f64 x (+.f64 z a)) (if (<=.f64 t 274999999999999995001760286107604445029289687088032372490240) (*.f64 y (-.f64 b z)) (if (<=.f64 t 49999999999999996681683364986231121055509847158923091289463001947809936825071710129649256226662527266508888537465191395528952846213699856588865536) (-.f64 x (*.f64 t a)) (if (<=.f64 t 200000000000000012906239745447679119308421504820578339539671915665471618650040573112543019986749031403290765577790368360384389590184578101271409790645582658247315902435527641605865472) (*.f64 t b) (-.f64 x (*.f64 t a))))))))))))) |
(if (<=.f64 t -11199999999999999693140077370276212031478492650132747982139565947482915913620681765447888315365194943710996915637507140040049300257696830215614673572332010350502902625676965264204327023849066666682328188992876579126632568212946944) (*.f64 t (neg.f64 a)) (if (<=.f64 t -16733060379087468544) (+.f64 x (+.f64 z a)) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 y (neg.f64 z)) (if (<=.f64 t -5918714465278787/354901720847464302026037015570314714039863945648104521621821386318671527399120079749116723981329865996466075003059657194108692201472) (+.f64 x (+.f64 z a)) (if (<=.f64 t -877942596245179/102293456496754433437912178025862473506770063938845774671352855253004181137646079840102190385184504910965208878986252219038039267058918532916516487168) (*.f64 y (-.f64 b z)) (if (<=.f64 t -4279693574259875/33018408195979077897021236557282287907427957877257595132997544314167118909795303717151078492978574243417149687078570542430146722468917846078158686153933723556774167749937817760545719854776652565814014556763199275259251768296972608677399806172939779780596161306108624896) (+.f64 x (+.f64 z a)) (if (<=.f64 t -5169504229893195/175555970201398037864189960037990696642380564349834626243584063630598316216309534309285622385163609395625111210811907575838661883607828732903171318983861449587663958422720200465138886329341888788528401320395513446131006525725061407689368272012526598792334483090416306874948482361796597953940777665648656384) (-.f64 z (*.f64 b 2)) (if (<=.f64 t 7722071661308247/8192) (+.f64 x (+.f64 z a)) (if (<=.f64 t 274999999999999995001760286107604445029289687088032372490240) (*.f64 y (-.f64 b z)) (if (<=.f64 t 49999999999999996681683364986231121055509847158923091289463001947809936825071710129649256226662527266508888537465191395528952846213699856588865536) (-.f64 x (*.f64 t a)) (if (<=.f64 t 200000000000000012906239745447679119308421504820578339539671915665471618650040573112543019986749031403290765577790368360384389590184578101271409790645582658247315902435527641605865472) (*.f64 t b) (-.f64 x (*.f64 t a))))))))))))) |
(if (<=.f64 t -11199999999999999693140077370276212031478492650132747982139565947482915913620681765447888315365194943710996915637507140040049300257696830215614673572332010350502902625676965264204327023849066666682328188992876579126632568212946944) (*.f64 t (neg.f64 a)) (if (<=.f64 t -16733060379087468544) (+.f64 x (+.f64 z a)) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 (neg.f64 z) y) (if (<=.f64 t -4279693574259875/33018408195979077897021236557282287907427957877257595132997544314167118909795303717151078492978574243417149687078570542430146722468917846078158686153933723556774167749937817760545719854776652565814014556763199275259251768296972608677399806172939779780596161306108624896) (+.f64 x (+.f64 z a)) (if (<=.f64 t -5169504229893195/175555970201398037864189960037990696642380564349834626243584063630598316216309534309285622385163609395625111210811907575838661883607828732903171318983861449587663958422720200465138886329341888788528401320395513446131006525725061407689368272012526598792334483090416306874948482361796597953940777665648656384) (+.f64 (*.f64 -2 b) z) (if (<=.f64 t 4000000000000000313166161618384975369221441199544467456) (+.f64 x (+.f64 z a)) (-.f64 x (*.f64 a t)))))))) |
(if (<=.f64 t -11199999999999999693140077370276212031478492650132747982139565947482915913620681765447888315365194943710996915637507140040049300257696830215614673572332010350502902625676965264204327023849066666682328188992876579126632568212946944) (*.f64 t (neg.f64 a)) (if (<=.f64 t -16733060379087468544) (+.f64 x (+.f64 z a)) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 y (neg.f64 z)) (if (<=.f64 t -4279693574259875/33018408195979077897021236557282287907427957877257595132997544314167118909795303717151078492978574243417149687078570542430146722468917846078158686153933723556774167749937817760545719854776652565814014556763199275259251768296972608677399806172939779780596161306108624896) (+.f64 x (+.f64 z a)) (if (<=.f64 t -5169504229893195/175555970201398037864189960037990696642380564349834626243584063630598316216309534309285622385163609395625111210811907575838661883607828732903171318983861449587663958422720200465138886329341888788528401320395513446131006525725061407689368272012526598792334483090416306874948482361796597953940777665648656384) (+.f64 z (*.f64 -2 b)) (if (<=.f64 t 4000000000000000313166161618384975369221441199544467456) (+.f64 x (+.f64 z a)) (-.f64 x (*.f64 t a)))))))) |
(if (<=.f64 t -11199999999999999693140077370276212031478492650132747982139565947482915913620681765447888315365194943710996915637507140040049300257696830215614673572332010350502902625676965264204327023849066666682328188992876579126632568212946944) (*.f64 t (neg.f64 a)) (if (<=.f64 t -16733060379087468544) (+.f64 x (+.f64 z a)) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 y (neg.f64 z)) (if (<=.f64 t -4279693574259875/33018408195979077897021236557282287907427957877257595132997544314167118909795303717151078492978574243417149687078570542430146722468917846078158686153933723556774167749937817760545719854776652565814014556763199275259251768296972608677399806172939779780596161306108624896) (+.f64 x (+.f64 z a)) (if (<=.f64 t -5169504229893195/175555970201398037864189960037990696642380564349834626243584063630598316216309534309285622385163609395625111210811907575838661883607828732903171318983861449587663958422720200465138886329341888788528401320395513446131006525725061407689368272012526598792334483090416306874948482361796597953940777665648656384) (-.f64 z (*.f64 b 2)) (if (<=.f64 t 4000000000000000313166161618384975369221441199544467456) (+.f64 x (+.f64 z a)) (-.f64 x (*.f64 t a)))))))) |
(if (<=.f64 t -11199999999999999693140077370276212031478492650132747982139565947482915913620681765447888315365194943710996915637507140040049300257696830215614673572332010350502902625676965264204327023849066666682328188992876579126632568212946944) (*.f64 t (neg.f64 a)) (if (<=.f64 t -16733060379087468544) (+.f64 x (+.f64 z a)) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 (neg.f64 z) y) (if (<=.f64 t 8000000000000000626332323236769950738442882399088934912) (+.f64 x (+.f64 z a)) (-.f64 x (*.f64 a t)))))) |
(if (<=.f64 t -11199999999999999693140077370276212031478492650132747982139565947482915913620681765447888315365194943710996915637507140040049300257696830215614673572332010350502902625676965264204327023849066666682328188992876579126632568212946944) (*.f64 t (neg.f64 a)) (if (<=.f64 t -16733060379087468544) (+.f64 x (+.f64 z a)) (if (<=.f64 t -3260727957404401/649037107316853453566312041152512) (*.f64 y (neg.f64 z)) (if (<=.f64 t 8000000000000000626332323236769950738442882399088934912) (+.f64 x (+.f64 z a)) (-.f64 x (*.f64 t a)))))) |
(if (<=.f64 z -3000000000000000249127682040262028139759962019944992370386847873810836300710870714284168463086622909104826822225959300334634943228809004360992327329149829558223494142619604698387467733836674045952655360) z (if (<=.f64 z 1753277356563207/10715086071862673209484250490600018105614048117055336074437503883703510511249361224931983788156958581275946729175531468251871452856923140435984577574698574803934567774824230985421074605062371141877954182153046474983581941267398767559165543946077062914571196477686542167660429831652624386837205668069376) (+.f64 a x) (if (<=.f64 z 6596868769220165/11844773043065711480323635013294239465766037117894719018089691452225120183459296312949206610325977157215024800850914559983608856537741198665193842125253152001987113769690322155382272992184436377145866387891513586051123404341248) (*.f64 a (-.f64 1 t)) (if (<=.f64 z 85999999999999994742991238467746865325014162966848307984113657967757579252175879301758976) (+.f64 a x) z)))) |
(if (<=.f64 z -3000000000000000249127682040262028139759962019944992370386847873810836300710870714284168463086622909104826822225959300334634943228809004360992327329149829558223494142619604698387467733836674045952655360) z (if (<=.f64 z 3435899857567513/1472670216079209191611846812294369061779846741149537544383939224844146080198663889983147846225162535085015972903906454385940805786127700971461406151798572026902674582936498055383467782973408003026559655543480367258322130389749455925034296201550456726842167383528130955181647838728025835969211239052281644132073472) (+.f64 a x) (if (<=.f64 z 7653345642070929/567251933470833993071770667324028228809837418235547813055332893110634100784456014078204465673887768016738404766156377048665842149942362101665813667717893457711399398974403333260607303556174368618102720559063506014277553065062667880308951927318061097340410272771508755807405604864) (-.f64 x (*.f64 a t)) (if (<=.f64 z 85999999999999994742991238467746865325014162966848307984113657967757579252175879301758976) (+.f64 a x) z)))) |
(if (<=.f64 z -3000000000000000249127682040262028139759962019944992370386847873810836300710870714284168463086622909104826822225959300334634943228809004360992327329149829558223494142619604698387467733836674045952655360) z (if (<=.f64 z 3435899857567513/1472670216079209191611846812294369061779846741149537544383939224844146080198663889983147846225162535085015972903906454385940805786127700971461406151798572026902674582936498055383467782973408003026559655543480367258322130389749455925034296201550456726842167383528130955181647838728025835969211239052281644132073472) (+.f64 a x) (if (<=.f64 z 7653345642070929/567251933470833993071770667324028228809837418235547813055332893110634100784456014078204465673887768016738404766156377048665842149942362101665813667717893457711399398974403333260607303556174368618102720559063506014277553065062667880308951927318061097340410272771508755807405604864) (-.f64 x (*.f64 t a)) (if (<=.f64 z 85999999999999994742991238467746865325014162966848307984113657967757579252175879301758976) (+.f64 a x) z)))) |
(if (<=.f64 z -3000000000000000249127682040262028139759962019944992370386847873810836300710870714284168463086622909104826822225959300334634943228809004360992327329149829558223494142619604698387467733836674045952655360) z (if (<=.f64 z 1753277356563207/10715086071862673209484250490600018105614048117055336074437503883703510511249361224931983788156958581275946729175531468251871452856923140435984577574698574803934567774824230985421074605062371141877954182153046474983581941267398767559165543946077062914571196477686542167660429831652624386837205668069376) (+.f64 a x) (if (<=.f64 z 7653345642070929/567251933470833993071770667324028228809837418235547813055332893110634100784456014078204465673887768016738404766156377048665842149942362101665813667717893457711399398974403333260607303556174368618102720559063506014277553065062667880308951927318061097340410272771508755807405604864) (*.f64 t (neg.f64 a)) (if (<=.f64 z 85999999999999994742991238467746865325014162966848307984113657967757579252175879301758976) (+.f64 a x) z)))) |
(if (<=.f64 z -3000000000000000249127682040262028139759962019944992370386847873810836300710870714284168463086622909104826822225959300334634943228809004360992327329149829558223494142619604698387467733836674045952655360) z (if (<=.f64 z 85999999999999994742991238467746865325014162966848307984113657967757579252175879301758976) (+.f64 a x) z)) |
(if (<=.f64 z -3299999999999999809560690617312130302759629665899258505313605753227869821011354467209908866588893219393482923969756844820429925596406594660614847594496) z (if (<=.f64 z 420625549218283154951205684381344308663928790865412096) x z)) |
z |
Compiled 2130 to 1212 computations (43.1% saved)
| 1× | egg-herbie |
| 494× | fma-neg_binary64 |
| 471× | distribute-neg-in_binary64 |
| 457× | associate--l-_binary64 |
| 369× | associate--r-_binary64 |
| 344× | +-commutative_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 19 | 31 |
| 1 | 49 | 27 |
| 2 | 145 | 25 |
| 3 | 616 | 25 |
| 4 | 2231 | 25 |
| 5 | 5563 | 25 |
| 6 | 7040 | 25 |
| 1× | node limit |
Compiled 657 to 457 computations (30.4% saved)
Compiled 1968 to 949 computations (51.8% saved)
Loading profile data...