Time bar (total: 20.8s)
| 1× | search |
| True | Other | False | Iter |
|---|---|---|---|
| 0% | 99.9% | 0.1% | 0 |
| 0% | 99.9% | 0.1% | 1 |
| 0% | 99.9% | 0.1% | 2 |
| 0% | 99.9% | 0.1% | 3 |
| 0% | 99.9% | 0.1% | 4 |
| 0% | 99.9% | 0.1% | 5 |
| 6.2% | 74.9% | 18.9% | 6 |
| 9.4% | 71.8% | 18.9% | 7 |
| 14% | 64% | 22% | 8 |
| 20.3% | 46.8% | 32.9% | 9 |
| 22.6% | 44.5% | 32.9% | 10 |
| 27.7% | 37.1% | 35.3% | 11 |
| 32% | 26.9% | 41.1% | 12 |
| 34% | 24.9% | 41.1% | 13 |
| 37.5% | 20% | 42.5% | 14 |
Compiled 41 to 24 computations (41.5% saved)
| 4.6s | 7795× | body | 256 | valid |
| 363.0ms | 1274× | body | 128 | invalid |
| 152.0ms | 461× | body | 128 | valid |
Compiled 82 to 48 computations (41.5% saved)
| 2× | egg-herbie |
| 371× | fma-def_binary64 |
| 300× | associate-/l*_binary64 |
| 260× | distribute-rgt-in_binary64 |
| 256× | times-frac_binary64 |
| 255× | div-sub_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 54 | 208 |
| 1 | 165 | 200 |
| 2 | 545 | 200 |
| 3 | 1762 | 192 |
| 0 | 3 | 3 |
| 1× | saturated |
| 1× | node limit |
| Inputs |
|---|
0 |
1 |
2 |
| Outputs |
|---|
0 |
1 |
2 |
| Inputs |
|---|
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) |
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 h) (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 h) (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g))))))) |
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 g)) (+.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 g)) (-.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h))))))) |
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 h)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 h)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a))))))) |
| Outputs |
|---|
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) |
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) |
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) |
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))) |
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 h) (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 h) (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g))))))) |
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (+.f64 (neg.f64 h) (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g)))))) (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (neg.f64 h) (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g))))))) |
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g))) h))) (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (neg.f64 h) (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g))))))) |
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g))) h))) (cbrt.f64 (*.f64 (+.f64 h (sqrt.f64 (-.f64 (*.f64 h h) (*.f64 g g)))) (/.f64 -1/2 a)))) |
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 g)) (+.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 g)) (-.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h))))))) |
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 g) (+.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1/2 g) (-.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h))))))) |
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 g) (-.f64 (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h))) a))) (cbrt.f64 (*.f64 (/.f64 1/2 g) (-.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h))))))) |
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 g) (-.f64 (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h))) a))) (cbrt.f64 (neg.f64 (*.f64 (+.f64 a (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h)))) (/.f64 1/2 g))))) |
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 g) (-.f64 (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h))) a))) (cbrt.f64 (*.f64 (+.f64 a (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 h h)))) (/.f64 -1/2 g)))) |
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 h)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 h)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a))))))) |
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 h) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a)))))) (cbrt.f64 (*.f64 (/.f64 1/2 h) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a))))))) |
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 h) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a))) g))) (cbrt.f64 (*.f64 (/.f64 1/2 h) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 a a))))))) |
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 h) (-.f64 (sqrt.f64 (fma.f64 a (neg.f64 a) (*.f64 g g))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (fma.f64 a (neg.f64 a) (*.f64 g g)))) (/.f64 -1/2 h)))) |
Compiled 40 to 23 computations (42.5% saved)
| 1× | egg-herbie |
| 725× | fma-neg_binary64 |
| 355× | fma-def_binary64 |
| 203× | distribute-rgt-in_binary64 |
| 194× | associate-/l*_binary64 |
| 192× | div-sub_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 20 | 52 |
| 1 | 54 | 50 |
| 2 | 154 | 50 |
| 3 | 478 | 48 |
| 4 | 1279 | 48 |
| 5 | 2581 | 48 |
| 6 | 3823 | 48 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) |
| Outputs |
|---|
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) |
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (+.f64 (neg.f64 g) (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h))))))) (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (neg.f64 g) (sqrt.f64 (fma.f64 g g (neg.f64 (*.f64 h h)))))))) |
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) |
(+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))) |
1 alts after pruning (1 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 1 | 1 | 2 |
| Fresh | 1 | 0 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 2 | 1 | 3 |
| Status | Error | Program |
|---|---|---|
| ▶ | 36.3b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))) |
Compiled 139 to 70 computations (49.6% saved)
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 3.6b | (-.f64 (*.f64 g g) (*.f64 h h)) |
| ✓ | 8.1b | (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) |
| ✓ | 8.8b | (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))) |
| ✓ | 28.9b | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
30 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 80.0ms | h | @ | 0 | (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))) |
| 39.0ms | g | @ | 0 | (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))) |
| 34.0ms | h | @ | -inf | (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))) |
| 33.0ms | h | @ | inf | (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))) |
| 31.0ms | g | @ | inf | (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))) |
| 1× | batch-egg-rewrite |
| 205× | add-sqr-sqrt_binary64 |
| 198× | *-un-lft-identity_binary64 |
| 198× | pow1_binary64 |
| 190× | add-cube-cbrt_binary64 |
| 190× | add-cbrt-cube_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 18 | 68 |
| 1 | 408 | 68 |
| 1× | node limit |
| Inputs |
|---|
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
(cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))) |
(cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) |
(-.f64 (*.f64 g g) (*.f64 h h)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2)) (sqrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2) 1/2) (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 g h) 1/2) (pow.f64 (-.f64 g h) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (pow.f64 g 4) (pow.f64 h 4))) (sqrt.f64 (fma.f64 g g (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (pow.f64 g 6) (pow.f64 h 6))) (sqrt.f64 (+.f64 (pow.f64 g 4) (+.f64 (pow.f64 h 4) (pow.f64 (*.f64 g h) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (cbrt.f64 (/.f64 -1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)) 2))) (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)) 1/6) (pow.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)) 2)) 1/3) (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))) 1/3) (pow.f64 (sqrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) -1/2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))))))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) 2)) (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) (cbrt.f64 (/.f64 -1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) 1/6) (pow.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) 2) 1/3) (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) 1/3) (pow.f64 (sqrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (/.f64 -1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 g g) (neg.f64 (*.f64 h h)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 g g) (*.f64 (neg.f64 h) h))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 g g) (*.f64 (neg.f64 (cbrt.f64 (pow.f64 h 4))) (pow.f64 (cbrt.f64 h) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 g g) (*.f64 h h)) (fma.f64 (neg.f64 h) h (*.f64 h h)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 g g (neg.f64 (*.f64 (*.f64 h h) 1))) (fma.f64 (neg.f64 (*.f64 h h)) 1 (*.f64 (*.f64 h h) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 g g) (neg.f64 (*.f64 (*.f64 h h) 1))) (fma.f64 (neg.f64 (*.f64 h h)) 1 (*.f64 (*.f64 h h) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (pow.f64 g 4)) (pow.f64 (cbrt.f64 g) 2) (neg.f64 (*.f64 (*.f64 h h) 1))) (fma.f64 (neg.f64 (*.f64 h h)) 1 (*.f64 (*.f64 h h) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 g g (neg.f64 (*.f64 (pow.f64 (cbrt.f64 h) 2) (cbrt.f64 (pow.f64 h 4))))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 h) 2)) (cbrt.f64 (pow.f64 h 4)) (*.f64 (pow.f64 (cbrt.f64 h) 2) (cbrt.f64 (pow.f64 h 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 g g) (neg.f64 (*.f64 (pow.f64 (cbrt.f64 h) 2) (cbrt.f64 (pow.f64 h 4))))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 h) 2)) (cbrt.f64 (pow.f64 h 4)) (*.f64 (pow.f64 (cbrt.f64 h) 2) (cbrt.f64 (pow.f64 h 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (pow.f64 g 4)) (pow.f64 (cbrt.f64 g) 2) (neg.f64 (*.f64 (pow.f64 (cbrt.f64 h) 2) (cbrt.f64 (pow.f64 h 4))))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 h) 2)) (cbrt.f64 (pow.f64 h 4)) (*.f64 (pow.f64 (cbrt.f64 h) 2) (cbrt.f64 (pow.f64 h 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 g g) (*.f64 h h)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 g 6) (pow.f64 h 6)) (/.f64 1 (+.f64 (pow.f64 g 4) (+.f64 (pow.f64 h 4) (pow.f64 (*.f64 g h) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 g 4) (pow.f64 h 4)) (/.f64 1 (fma.f64 g g (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 g h) (-.f64 g h))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 g 4) (+.f64 (pow.f64 h 4) (pow.f64 (*.f64 g h) 2))) (-.f64 (pow.f64 g 6) (pow.f64 h 6))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 g g (*.f64 h h)) (-.f64 (pow.f64 g 4) (pow.f64 h 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 g 6) (pow.f64 h 6)) (+.f64 (pow.f64 g 4) (+.f64 (pow.f64 h 4) (pow.f64 (*.f64 g h) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 g 4) (pow.f64 h 4)) (fma.f64 g g (*.f64 h h)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 g 6) (pow.f64 h 6))) (neg.f64 (+.f64 (pow.f64 g 4) (+.f64 (pow.f64 h 4) (pow.f64 (*.f64 g h) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 g 4) (pow.f64 h 4))) (neg.f64 (fma.f64 g g (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 g 6) (pow.f64 (neg.f64 (*.f64 h h)) 3)) (+.f64 (pow.f64 g 4) (-.f64 (*.f64 (neg.f64 (*.f64 h h)) (neg.f64 (*.f64 h h))) (*.f64 (*.f64 g g) (neg.f64 (*.f64 h h))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 g 6) (pow.f64 (*.f64 (neg.f64 h) h) 3)) (+.f64 (pow.f64 g 4) (-.f64 (*.f64 (*.f64 (neg.f64 h) h) (*.f64 (neg.f64 h) h)) (*.f64 (*.f64 g g) (*.f64 (neg.f64 h) h)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3) (pow.f64 (fma.f64 (neg.f64 h) h (*.f64 h h)) 3)) (+.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 2) (-.f64 (*.f64 (fma.f64 (neg.f64 h) h (*.f64 h h)) (fma.f64 (neg.f64 h) h (*.f64 h h))) (*.f64 (-.f64 (*.f64 g g) (*.f64 h h)) (fma.f64 (neg.f64 h) h (*.f64 h h))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 g 4) (*.f64 (neg.f64 (*.f64 h h)) (neg.f64 (*.f64 h h)))) (-.f64 (*.f64 g g) (neg.f64 (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 g 4) (*.f64 (*.f64 (neg.f64 h) h) (*.f64 (neg.f64 h) h))) (-.f64 (*.f64 g g) (*.f64 (neg.f64 h) h)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 2) (*.f64 (fma.f64 (neg.f64 h) h (*.f64 h h)) (fma.f64 (neg.f64 h) h (*.f64 h h)))) (-.f64 (-.f64 (*.f64 g g) (*.f64 h h)) (fma.f64 (neg.f64 h) h (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (+.f64 g h)) (-.f64 g h)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 g g (neg.f64 (*.f64 h h)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 g g (*.f64 (neg.f64 h) h))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (fma.f64 (neg.f64 h) h (*.f64 h h)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 g g) (neg.f64 (*.f64 h h)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 g g) (*.f64 (neg.f64 h) h))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 g g) (*.f64 h h)) (fma.f64 (neg.f64 h) h (*.f64 h h)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (fma.f64 (neg.f64 h) h (*.f64 h h)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 g 4)) (pow.f64 (cbrt.f64 g) 2) (neg.f64 (*.f64 h h)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 g 4)) (pow.f64 (cbrt.f64 g) 2) (*.f64 (neg.f64 h) h))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 g h) (-.f64 g h) (fma.f64 (neg.f64 h) h (*.f64 h h)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) |
| 1× | egg-herbie |
| 854× | times-frac_binary64 |
| 533× | cancel-sign-sub-inv_binary64 |
| 274× | fma-neg_binary64 |
| 184× | associate-*r*_binary64 |
| 138× | associate-*l*_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 200 | 2269 |
| 1 | 639 | 2190 |
| 2 | 2329 | 2168 |
| 1× | node limit |
| Inputs |
|---|
(sqrt.f64 (neg.f64 (pow.f64 h 2))) |
(+.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) (*.f64 1/2 (/.f64 (pow.f64 g 2) (sqrt.f64 (neg.f64 (pow.f64 h 2)))))) |
(-.f64 (+.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) (*.f64 1/2 (/.f64 (pow.f64 g 2) (sqrt.f64 (neg.f64 (pow.f64 h 2)))))) (*.f64 1/8 (/.f64 (pow.f64 g 4) (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 3)))) |
(-.f64 (+.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 g 6) (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 5))) (*.f64 1/2 (/.f64 (pow.f64 g 2) (sqrt.f64 (neg.f64 (pow.f64 h 2))))))) (*.f64 1/8 (/.f64 (pow.f64 g 4) (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 3)))) |
g |
(-.f64 g (*.f64 1/2 (/.f64 (pow.f64 h 2) g))) |
(-.f64 g (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) |
(-.f64 g (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))) |
(*.f64 -1 g) |
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) g) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) g) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) g) |
g |
(-.f64 g (*.f64 1/2 (/.f64 (pow.f64 h 2) g))) |
(-.f64 g (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) |
(-.f64 g (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))) |
(*.f64 (sqrt.f64 -1) h) |
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h)) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h)) (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))))) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))))) (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))))) |
(*.f64 -1 (*.f64 (sqrt.f64 -1) h)) |
(neg.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h))) |
(-.f64 (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h))) |
(-.f64 (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))))))) |
(*.f64 (pow.f64 (/.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) a) 1/3) (cbrt.f64 -1/2)) |
(+.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 (/.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) a) 1/3)) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 2) (pow.f64 a 7))) 1/9)))) |
(-.f64 (+.f64 (*.f64 1/6 (*.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 g 2)) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 5) a)) 1/3))) (+.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 (/.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) a) 1/3)) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 2) (pow.f64 a 7))) 1/9))))) (*.f64 1/9 (*.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 g 2)) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 7) (pow.f64 a 11))) 1/9)))) |
(-.f64 (+.f64 (*.f64 5/81 (*.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 g 3)) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 4) (pow.f64 a 5))) 1/3))) (+.f64 (*.f64 1/6 (*.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 g 2)) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 5) a)) 1/3))) (+.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 (/.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) a) 1/3)) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 2) (pow.f64 a 7))) 1/9)))))) (+.f64 (*.f64 1/9 (*.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 g 3)) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 20) (pow.f64 a 7))) 1/9))) (*.f64 1/9 (*.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 g 2)) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 7) (pow.f64 a 11))) 1/9))))) |
(*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (pow.f64 (/.f64 g a) 1/3)) |
(-.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (pow.f64 (/.f64 g a) 1/3)) (*.f64 1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3)))) |
(-.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (pow.f64 (/.f64 g a) 1/3)) (+.f64 (*.f64 1/18 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))) 1/3))) (*.f64 1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))))) |
(-.f64 (+.f64 (*.f64 1/648 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 6)) (pow.f64 (cbrt.f64 2) 8)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 17))) 1/3))) (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (pow.f64 (/.f64 g a) 1/3))) (+.f64 (*.f64 1/18 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))) 1/3))) (+.f64 (*.f64 13/432 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 6)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 17))) 1/3))) (*.f64 1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3)))))) |
(*.f64 (pow.f64 (/.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) a) 1/3) (cbrt.f64 1/2)) |
(-.f64 (*.f64 (pow.f64 (/.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) a) 1/3) (cbrt.f64 1/2)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 2) (pow.f64 a 7))) 1/9) (*.f64 (cbrt.f64 1/2) g)))) |
(-.f64 (+.f64 (*.f64 (pow.f64 (/.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) a) 1/3) (cbrt.f64 1/2)) (*.f64 1/6 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 5) a)) 1/3) (*.f64 (cbrt.f64 1/2) (pow.f64 g 2))))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 2) (pow.f64 a 7))) 1/9) (*.f64 (cbrt.f64 1/2) g))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 7) (pow.f64 a 11))) 1/9) (*.f64 (cbrt.f64 1/2) (pow.f64 g 2)))))) |
(-.f64 (+.f64 (*.f64 (pow.f64 (/.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) a) 1/3) (cbrt.f64 1/2)) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 5) a)) 1/3) (*.f64 (cbrt.f64 1/2) (pow.f64 g 2)))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 20) (pow.f64 a 7))) 1/9) (*.f64 (cbrt.f64 1/2) (pow.f64 g 3)))))) (+.f64 (*.f64 5/81 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 4) (pow.f64 a 5))) 1/3) (*.f64 (cbrt.f64 1/2) (pow.f64 g 3)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 2) (pow.f64 a 7))) 1/9) (*.f64 (cbrt.f64 1/2) g))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 7) (pow.f64 a 11))) 1/9) (*.f64 (cbrt.f64 1/2) (pow.f64 g 2))))))) |
(*.f64 -1 (pow.f64 h 2)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(pow.f64 g 2) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(pow.f64 g 2) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(pow.f64 g 2) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(*.f64 -1 (pow.f64 h 2)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(*.f64 -1 (pow.f64 h 2)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
| Outputs |
|---|
(sqrt.f64 (neg.f64 (pow.f64 h 2))) |
(sqrt.f64 (neg.f64 (*.f64 h h))) |
(sqrt.f64 (*.f64 h (neg.f64 h))) |
(+.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) (*.f64 1/2 (/.f64 (pow.f64 g 2) (sqrt.f64 (neg.f64 (pow.f64 h 2)))))) |
(+.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) (*.f64 1/2 (/.f64 (*.f64 g g) (sqrt.f64 (neg.f64 (*.f64 h h)))))) |
(fma.f64 1/2 (/.f64 (*.f64 g g) (sqrt.f64 (*.f64 h (neg.f64 h)))) (sqrt.f64 (*.f64 h (neg.f64 h)))) |
(fma.f64 1/2 (/.f64 g (/.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) g)) (sqrt.f64 (*.f64 h (neg.f64 h)))) |
(-.f64 (+.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) (*.f64 1/2 (/.f64 (pow.f64 g 2) (sqrt.f64 (neg.f64 (pow.f64 h 2)))))) (*.f64 1/8 (/.f64 (pow.f64 g 4) (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 3)))) |
(+.f64 (+.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) (*.f64 1/2 (/.f64 (*.f64 g g) (sqrt.f64 (neg.f64 (*.f64 h h)))))) (*.f64 -1/8 (/.f64 (pow.f64 g 4) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 3)))) |
(+.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) (fma.f64 1/2 (/.f64 (*.f64 g g) (sqrt.f64 (*.f64 h (neg.f64 h)))) (/.f64 (*.f64 -1/8 (pow.f64 g 4)) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 3)))) |
(+.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) (fma.f64 1/2 (/.f64 g (/.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) g)) (/.f64 (*.f64 -1/8 (pow.f64 g 4)) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 3)))) |
(-.f64 (+.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 g 6) (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 5))) (*.f64 1/2 (/.f64 (pow.f64 g 2) (sqrt.f64 (neg.f64 (pow.f64 h 2))))))) (*.f64 1/8 (/.f64 (pow.f64 g 4) (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 3)))) |
(+.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) (-.f64 (fma.f64 1/16 (/.f64 (pow.f64 g 6) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 5)) (*.f64 1/2 (/.f64 (*.f64 g g) (sqrt.f64 (neg.f64 (*.f64 h h)))))) (*.f64 1/8 (/.f64 (pow.f64 g 4) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 3))))) |
(+.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 g 6) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 5))) (fma.f64 1/2 (/.f64 (*.f64 g g) (sqrt.f64 (*.f64 h (neg.f64 h)))) (/.f64 (*.f64 -1/8 (pow.f64 g 4)) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 3))))) |
(+.f64 (+.f64 (fma.f64 1/2 (/.f64 g (/.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) g)) (sqrt.f64 (*.f64 h (neg.f64 h)))) (/.f64 (*.f64 1/16 (pow.f64 g 6)) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 5))) (/.f64 (*.f64 -1/8 (pow.f64 g 4)) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 3))) |
g |
(-.f64 g (*.f64 1/2 (/.f64 (pow.f64 h 2) g))) |
(-.f64 g (/.f64 (*.f64 1/2 (*.f64 h h)) g)) |
(+.f64 g (/.f64 (*.f64 -1/2 (*.f64 h h)) g)) |
(-.f64 g (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) |
(-.f64 g (fma.f64 1/2 (/.f64 (*.f64 h h) g) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) |
(-.f64 g (fma.f64 1/2 (/.f64 h (/.f64 g h)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) |
(-.f64 g (fma.f64 1/2 (/.f64 h (/.f64 g h)) (/.f64 (*.f64 1/8 (pow.f64 h 4)) (pow.f64 g 3)))) |
(-.f64 g (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))) |
(-.f64 g (fma.f64 1/2 (/.f64 (*.f64 h h) g) (fma.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))) |
(-.f64 g (fma.f64 1/2 (/.f64 h (/.f64 g h)) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)))))) |
(-.f64 g (fma.f64 1/2 (/.f64 h (/.f64 g h)) (fma.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (/.f64 (*.f64 1/8 (pow.f64 h 4)) (pow.f64 g 3))))) |
(*.f64 -1 g) |
(neg.f64 g) |
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) g) |
(-.f64 (/.f64 (*.f64 1/2 (*.f64 h h)) g) g) |
(-.f64 (*.f64 1/2 (/.f64 h (/.f64 g h))) g) |
(-.f64 (/.f64 (*.f64 (*.f64 h h) 1/2) g) g) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) g) |
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 h h) g) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) g) |
(-.f64 (fma.f64 1/2 (/.f64 h (/.f64 g h)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) g) |
(-.f64 (fma.f64 1/2 (/.f64 h (/.f64 g h)) (/.f64 (*.f64 1/8 (pow.f64 h 4)) (pow.f64 g 3))) g) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) g) |
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 h h) g) (fma.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) g) |
(-.f64 (fma.f64 1/2 (/.f64 h (/.f64 g h)) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))))) g) |
(-.f64 (fma.f64 1/2 (/.f64 h (/.f64 g h)) (fma.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (/.f64 (*.f64 1/8 (pow.f64 h 4)) (pow.f64 g 3)))) g) |
g |
(-.f64 g (*.f64 1/2 (/.f64 (pow.f64 h 2) g))) |
(-.f64 g (/.f64 (*.f64 1/2 (*.f64 h h)) g)) |
(+.f64 g (/.f64 (*.f64 -1/2 (*.f64 h h)) g)) |
(-.f64 g (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) |
(-.f64 g (fma.f64 1/2 (/.f64 (*.f64 h h) g) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) |
(-.f64 g (fma.f64 1/2 (/.f64 h (/.f64 g h)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) |
(-.f64 g (fma.f64 1/2 (/.f64 h (/.f64 g h)) (/.f64 (*.f64 1/8 (pow.f64 h 4)) (pow.f64 g 3)))) |
(-.f64 g (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))) |
(-.f64 g (fma.f64 1/2 (/.f64 (*.f64 h h) g) (fma.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))) |
(-.f64 g (fma.f64 1/2 (/.f64 h (/.f64 g h)) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)))))) |
(-.f64 g (fma.f64 1/2 (/.f64 h (/.f64 g h)) (fma.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (/.f64 (*.f64 1/8 (pow.f64 h 4)) (pow.f64 g 3))))) |
(*.f64 (sqrt.f64 -1) h) |
(*.f64 h (sqrt.f64 -1)) |
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h)) |
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (*.f64 h (sqrt.f64 -1))) |
(fma.f64 h (sqrt.f64 -1) (*.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))))) |
(fma.f64 h (sqrt.f64 -1) (*.f64 (/.f64 g (/.f64 (sqrt.f64 -1) g)) (/.f64 1/2 h))) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h)) (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))))) |
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (*.f64 h (sqrt.f64 -1))) (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))))) |
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (fma.f64 h (sqrt.f64 -1) (*.f64 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3))) -1/8))) |
(fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (fma.f64 h (sqrt.f64 -1) (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (sqrt.f64 -1) (pow.f64 h 3)))))) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))))) (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))))) |
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (fma.f64 (sqrt.f64 -1) h (*.f64 1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5)))))) (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))))) |
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (fma.f64 h (sqrt.f64 -1) (*.f64 (/.f64 1/16 (pow.f64 (sqrt.f64 -1) 5)) (/.f64 (pow.f64 g 6) (pow.f64 h 5))))) (*.f64 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3))) -1/8)) |
(+.f64 (fma.f64 h (sqrt.f64 -1) (*.f64 (/.f64 g (/.f64 (sqrt.f64 -1) g)) (/.f64 1/2 h))) (fma.f64 1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))) (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (sqrt.f64 -1) (pow.f64 h 3)))))) |
(*.f64 -1 (*.f64 (sqrt.f64 -1) h)) |
(neg.f64 (*.f64 h (sqrt.f64 -1))) |
(*.f64 (sqrt.f64 -1) (neg.f64 h)) |
(*.f64 h (neg.f64 (sqrt.f64 -1))) |
(neg.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h))) |
(neg.f64 (fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (*.f64 h (sqrt.f64 -1)))) |
(-.f64 (*.f64 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) -1/2) (*.f64 h (sqrt.f64 -1))) |
(-.f64 (*.f64 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) -1/2) (*.f64 h (sqrt.f64 -1))) |
(-.f64 (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h))) |
(-.f64 (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (*.f64 h (sqrt.f64 -1)))) |
(-.f64 (/.f64 (/.f64 (*.f64 1/8 (pow.f64 g 4)) (neg.f64 (sqrt.f64 -1))) (pow.f64 h 3)) (fma.f64 h (sqrt.f64 -1) (*.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1)))))) |
(-.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (sqrt.f64 -1) (pow.f64 h 3)))) (fma.f64 h (sqrt.f64 -1) (*.f64 (/.f64 g (/.f64 (sqrt.f64 -1) g)) (/.f64 1/2 h)))) |
(-.f64 (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 (*.f64 (sqrt.f64 -1) h) (*.f64 1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))))))) |
(-.f64 (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (fma.f64 (sqrt.f64 -1) h (*.f64 1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))))))) |
(-.f64 (/.f64 (/.f64 (*.f64 1/8 (pow.f64 g 4)) (neg.f64 (sqrt.f64 -1))) (pow.f64 h 3)) (fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (fma.f64 h (sqrt.f64 -1) (*.f64 (/.f64 1/16 (pow.f64 (sqrt.f64 -1) 5)) (/.f64 (pow.f64 g 6) (pow.f64 h 5)))))) |
(-.f64 (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (sqrt.f64 -1) (pow.f64 h 3)))) (fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (fma.f64 1/16 (/.f64 (pow.f64 g 6) (*.f64 (pow.f64 (sqrt.f64 -1) 5) (pow.f64 h 5))) (*.f64 h (sqrt.f64 -1))))) |
(*.f64 (pow.f64 (/.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) a) 1/3) (cbrt.f64 -1/2)) |
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) a)) (cbrt.f64 -1/2)) |
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) a)) (cbrt.f64 -1/2)) |
(+.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 (/.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) a) 1/3)) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 2) (pow.f64 a 7))) 1/9)))) |
(fma.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) a)) (*.f64 1/3 (*.f64 (*.f64 g (cbrt.f64 -1/2)) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 2))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 2))) 1/18))))) |
(fma.f64 1/3 (*.f64 (*.f64 (*.f64 g (cbrt.f64 -1/2)) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (*.f64 h (neg.f64 h)))) 1/18)) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (*.f64 h (neg.f64 h)))) 1/18)) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) a)) (cbrt.f64 -1/2))) |
(fma.f64 1/3 (*.f64 (pow.f64 (/.f64 (/.f64 1 (*.f64 h (neg.f64 h))) (pow.f64 a 7)) 1/18) (*.f64 (pow.f64 (/.f64 (/.f64 1 (*.f64 h (neg.f64 h))) (pow.f64 a 7)) 1/18) (*.f64 g (cbrt.f64 -1/2)))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) a)) (cbrt.f64 -1/2))) |
(-.f64 (+.f64 (*.f64 1/6 (*.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 g 2)) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 5) a)) 1/3))) (+.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 (/.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) a) 1/3)) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 2) (pow.f64 a 7))) 1/9))))) (*.f64 1/9 (*.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 g 2)) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 7) (pow.f64 a 11))) 1/9)))) |
(+.f64 (fma.f64 1/6 (*.f64 (*.f64 (*.f64 g g) (cbrt.f64 -1/2)) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 5) a)))) (fma.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) a)) (*.f64 1/3 (*.f64 (*.f64 g (cbrt.f64 -1/2)) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 2))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 2))) 1/18)))))) (*.f64 -1/9 (*.f64 (*.f64 (*.f64 g g) (cbrt.f64 -1/2)) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 7) (pow.f64 a 11))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 7) (pow.f64 a 11))) 1/18))))) |
(fma.f64 1/6 (*.f64 (*.f64 g g) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 5) a))))) (-.f64 (fma.f64 1/3 (*.f64 (*.f64 (*.f64 g (cbrt.f64 -1/2)) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (*.f64 h (neg.f64 h)))) 1/18)) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (*.f64 h (neg.f64 h)))) 1/18)) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) a)) (cbrt.f64 -1/2))) (*.f64 (*.f64 (*.f64 1/9 (*.f64 (*.f64 g g) (cbrt.f64 -1/2))) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 11)) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 7)) 1/18)) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 11)) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 7)) 1/18)))) |
(+.f64 (fma.f64 1/3 (*.f64 (pow.f64 (/.f64 (/.f64 1 (*.f64 h (neg.f64 h))) (pow.f64 a 7)) 1/18) (*.f64 (pow.f64 (/.f64 (/.f64 1 (*.f64 h (neg.f64 h))) (pow.f64 a 7)) 1/18) (*.f64 g (cbrt.f64 -1/2)))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) a)) (cbrt.f64 -1/2))) (fma.f64 (*.f64 (*.f64 g g) (cbrt.f64 -1/2)) (*.f64 1/6 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 5)))) (*.f64 (*.f64 -1/9 (*.f64 (*.f64 g g) (cbrt.f64 -1/2))) (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 11)) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 7)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 11)) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 7)) 1/18))))) |
(-.f64 (+.f64 (*.f64 5/81 (*.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 g 3)) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 4) (pow.f64 a 5))) 1/3))) (+.f64 (*.f64 1/6 (*.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 g 2)) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 5) a)) 1/3))) (+.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 (/.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) a) 1/3)) (*.f64 1/3 (*.f64 (*.f64 (cbrt.f64 -1/2) g) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 2) (pow.f64 a 7))) 1/9)))))) (+.f64 (*.f64 1/9 (*.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 g 3)) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 20) (pow.f64 a 7))) 1/9))) (*.f64 1/9 (*.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 g 2)) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 7) (pow.f64 a 11))) 1/9))))) |
(-.f64 (fma.f64 5/81 (*.f64 (*.f64 (pow.f64 g 3) (cbrt.f64 -1/2)) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 4) (pow.f64 a 5))))) (fma.f64 1/6 (*.f64 (*.f64 (*.f64 g g) (cbrt.f64 -1/2)) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 5) a)))) (fma.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) a)) (*.f64 1/3 (*.f64 (*.f64 g (cbrt.f64 -1/2)) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 2))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 2))) 1/18))))))) (*.f64 1/9 (+.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 g 3) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 20))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 20))) 1/18)))) (*.f64 (*.f64 (*.f64 g g) (cbrt.f64 -1/2)) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 7) (pow.f64 a 11))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 7) (pow.f64 a 11))) 1/18)))))) |
(+.f64 (fma.f64 5/81 (*.f64 (*.f64 (pow.f64 g 3) (cbrt.f64 -1/2)) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 4) (pow.f64 a 5))))) (fma.f64 1/6 (*.f64 (*.f64 g g) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 5) a))))) (fma.f64 1/3 (*.f64 (*.f64 (*.f64 g (cbrt.f64 -1/2)) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (*.f64 h (neg.f64 h)))) 1/18)) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (*.f64 h (neg.f64 h)))) 1/18)) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) a)) (cbrt.f64 -1/2))))) (*.f64 -1/9 (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 (pow.f64 g 3) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 20))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 20))) 1/18))) (*.f64 (*.f64 g (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 11)) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 7)) 1/18)) (*.f64 g (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 11)) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 7)) 1/18))))))) |
(+.f64 (fma.f64 1/6 (*.f64 (*.f64 g g) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 5))))) (fma.f64 1/3 (*.f64 (pow.f64 (/.f64 (/.f64 1 (*.f64 h (neg.f64 h))) (pow.f64 a 7)) 1/18) (*.f64 (pow.f64 (/.f64 (/.f64 1 (*.f64 h (neg.f64 h))) (pow.f64 a 7)) 1/18) (*.f64 g (cbrt.f64 -1/2)))) (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) a)) (cbrt.f64 -1/2)))) (fma.f64 (cbrt.f64 -1/2) (*.f64 (*.f64 (pow.f64 g 3) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 h 4) (pow.f64 a 5))))) 5/81) (*.f64 -1/9 (*.f64 (cbrt.f64 -1/2) (+.f64 (*.f64 (pow.f64 g 3) (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 20)) (pow.f64 a 7)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 20)) (pow.f64 a 7)) 1/18))) (*.f64 (*.f64 g g) (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 11)) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 7)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 11)) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 7)) 1/18)))))))) |
(*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (pow.f64 (/.f64 g a) 1/3)) |
(*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (cbrt.f64 (/.f64 g a))) |
(*.f64 (cbrt.f64 2) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 g a)))) |
(-.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (pow.f64 (/.f64 g a) 1/3)) (*.f64 1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3)))) |
(+.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (cbrt.f64 (/.f64 g a))) (*.f64 -1/6 (*.f64 (/.f64 (cbrt.f64 -1/2) (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 h h))) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a)))))) |
(fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))) (*.f64 (*.f64 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (*.f64 h h)) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a)))) -1/6)) |
(fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))) (*.f64 (*.f64 -1/6 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)))) (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (*.f64 h h)))) |
(-.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (pow.f64 (/.f64 g a) 1/3)) (+.f64 (*.f64 1/18 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))) 1/3))) (*.f64 1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3))))) |
(-.f64 (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (cbrt.f64 (/.f64 g a))) (fma.f64 1/18 (*.f64 (/.f64 (cbrt.f64 -1/2) (/.f64 (pow.f64 (cbrt.f64 2) 2) (pow.f64 h 4))) (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))))) (*.f64 1/6 (*.f64 (/.f64 (cbrt.f64 -1/2) (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 h h))) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a))))))) |
(-.f64 (*.f64 (cbrt.f64 2) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 g a)))) (fma.f64 1/6 (*.f64 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (*.f64 h h)) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a)))) (*.f64 1/18 (*.f64 (/.f64 (pow.f64 h 4) (/.f64 (pow.f64 (cbrt.f64 2) 2) (cbrt.f64 -1/2))) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11))))))) |
(-.f64 (*.f64 (cbrt.f64 2) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 g a)))) (fma.f64 1/18 (*.f64 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 h 4)) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11)))) (*.f64 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5))) (/.f64 (*.f64 1/6 (*.f64 (*.f64 h h) (cbrt.f64 -1/2))) (pow.f64 (cbrt.f64 2) 2))))) |
(-.f64 (+.f64 (*.f64 1/648 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 6)) (pow.f64 (cbrt.f64 2) 8)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 17))) 1/3))) (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (pow.f64 (/.f64 g a) 1/3))) (+.f64 (*.f64 1/18 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 4)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))) 1/3))) (+.f64 (*.f64 13/432 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 6)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 17))) 1/3))) (*.f64 1/6 (*.f64 (/.f64 (*.f64 (cbrt.f64 -1/2) (pow.f64 h 2)) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 (/.f64 1 (*.f64 a (pow.f64 g 5))) 1/3)))))) |
(-.f64 (fma.f64 1/648 (/.f64 (*.f64 (*.f64 (pow.f64 h 6) (cbrt.f64 -1/2)) (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 17))))) (pow.f64 (cbrt.f64 2) 8)) (*.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 2)) (cbrt.f64 (/.f64 g a)))) (fma.f64 1/18 (*.f64 (/.f64 (cbrt.f64 -1/2) (/.f64 (pow.f64 (cbrt.f64 2) 2) (pow.f64 h 4))) (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 11))))) (fma.f64 13/432 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 17)))) (/.f64 (*.f64 (pow.f64 h 6) (cbrt.f64 -1/2)) (pow.f64 (cbrt.f64 2) 2))) (*.f64 1/6 (*.f64 (/.f64 (cbrt.f64 -1/2) (/.f64 (pow.f64 (cbrt.f64 2) 2) (*.f64 h h))) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a)))))))) |
(-.f64 (fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))) (*.f64 1/648 (/.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 17))))) (/.f64 (pow.f64 (cbrt.f64 2) 8) (pow.f64 h 6))))) (fma.f64 1/18 (*.f64 (/.f64 (pow.f64 h 4) (/.f64 (pow.f64 (cbrt.f64 2) 2) (cbrt.f64 -1/2))) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11)))) (fma.f64 1/6 (*.f64 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (*.f64 h h)) (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 g 5) a)))) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 a (pow.f64 g 17)))) (*.f64 13/432 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 h 6))))))) |
(-.f64 (fma.f64 1/648 (*.f64 (/.f64 (pow.f64 h 6) (/.f64 (pow.f64 (cbrt.f64 2) 8) (cbrt.f64 -1/2))) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 17)))) (*.f64 (cbrt.f64 2) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 g a))))) (fma.f64 1/18 (*.f64 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (pow.f64 h 4)) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 11)))) (fma.f64 1/6 (*.f64 (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (*.f64 h h)) (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)))) (*.f64 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 17))) (/.f64 (*.f64 13/432 (cbrt.f64 -1/2)) (/.f64 (pow.f64 (cbrt.f64 2) 2) (pow.f64 h 6))))))) |
(*.f64 (pow.f64 (/.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) a) 1/3) (cbrt.f64 1/2)) |
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) a)) (cbrt.f64 1/2)) |
(*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) a)) (cbrt.f64 1/2)) |
(-.f64 (*.f64 (pow.f64 (/.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) a) 1/3) (cbrt.f64 1/2)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 2) (pow.f64 a 7))) 1/9) (*.f64 (cbrt.f64 1/2) g)))) |
(+.f64 (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) a)) (cbrt.f64 1/2)) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 2))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 2))) 1/18)) (*.f64 g (cbrt.f64 1/2))))) |
(fma.f64 (cbrt.f64 (/.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) a)) (cbrt.f64 1/2) (*.f64 (*.f64 -1/3 (*.f64 g (cbrt.f64 1/2))) (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (*.f64 h (neg.f64 h)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (*.f64 h (neg.f64 h)))) 1/18)))) |
(fma.f64 (cbrt.f64 (/.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) a)) (cbrt.f64 1/2) (*.f64 (*.f64 -1/3 (*.f64 g (cbrt.f64 1/2))) (*.f64 (pow.f64 (/.f64 (/.f64 1 (*.f64 h (neg.f64 h))) (pow.f64 a 7)) 1/18) (pow.f64 (/.f64 (/.f64 1 (*.f64 h (neg.f64 h))) (pow.f64 a 7)) 1/18)))) |
(-.f64 (+.f64 (*.f64 (pow.f64 (/.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) a) 1/3) (cbrt.f64 1/2)) (*.f64 1/6 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 5) a)) 1/3) (*.f64 (cbrt.f64 1/2) (pow.f64 g 2))))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 2) (pow.f64 a 7))) 1/9) (*.f64 (cbrt.f64 1/2) g))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 7) (pow.f64 a 11))) 1/9) (*.f64 (cbrt.f64 1/2) (pow.f64 g 2)))))) |
(-.f64 (fma.f64 (cbrt.f64 (/.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) a)) (cbrt.f64 1/2) (*.f64 1/6 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 5) a))) (*.f64 (*.f64 g g) (cbrt.f64 1/2))))) (fma.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 2))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 2))) 1/18)) (*.f64 g (cbrt.f64 1/2))) (*.f64 1/9 (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 7) (pow.f64 a 11))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 7) (pow.f64 a 11))) 1/18)) (*.f64 (*.f64 g g) (cbrt.f64 1/2)))))) |
(-.f64 (fma.f64 (cbrt.f64 (/.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) a)) (cbrt.f64 1/2) (*.f64 1/6 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 5) a))) (*.f64 g (*.f64 g (cbrt.f64 1/2)))))) (fma.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (*.f64 h (neg.f64 h)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (*.f64 h (neg.f64 h)))) 1/18))) (*.f64 g (cbrt.f64 1/2)) (*.f64 1/9 (*.f64 (*.f64 g g) (*.f64 (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 11)) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 7)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 11)) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 7)) 1/18)) (cbrt.f64 1/2)))))) |
(-.f64 (fma.f64 (cbrt.f64 (/.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) a)) (cbrt.f64 1/2) (*.f64 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 5))) (*.f64 (*.f64 g (*.f64 g (cbrt.f64 1/2))) 1/6))) (fma.f64 1/3 (*.f64 g (*.f64 (*.f64 (pow.f64 (/.f64 (/.f64 1 (*.f64 h (neg.f64 h))) (pow.f64 a 7)) 1/18) (pow.f64 (/.f64 (/.f64 1 (*.f64 h (neg.f64 h))) (pow.f64 a 7)) 1/18)) (cbrt.f64 1/2))) (*.f64 (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 11)) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 7)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 11)) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 7)) 1/18)) (*.f64 (*.f64 g (*.f64 g (cbrt.f64 1/2))) 1/9)))) |
(-.f64 (+.f64 (*.f64 (pow.f64 (/.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) a) 1/3) (cbrt.f64 1/2)) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 5) a)) 1/3) (*.f64 (cbrt.f64 1/2) (pow.f64 g 2)))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 20) (pow.f64 a 7))) 1/9) (*.f64 (cbrt.f64 1/2) (pow.f64 g 3)))))) (+.f64 (*.f64 5/81 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 4) (pow.f64 a 5))) 1/3) (*.f64 (cbrt.f64 1/2) (pow.f64 g 3)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 2) (pow.f64 a 7))) 1/9) (*.f64 (cbrt.f64 1/2) g))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 7) (pow.f64 a 11))) 1/9) (*.f64 (cbrt.f64 1/2) (pow.f64 g 2))))))) |
(-.f64 (fma.f64 (cbrt.f64 (/.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) a)) (cbrt.f64 1/2) (fma.f64 1/6 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 5) a))) (*.f64 (*.f64 g g) (cbrt.f64 1/2))) (*.f64 1/9 (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 20))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 20))) 1/18)) (*.f64 (pow.f64 g 3) (cbrt.f64 1/2)))))) (fma.f64 5/81 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 4) (pow.f64 a 5)))) (*.f64 (pow.f64 g 3) (cbrt.f64 1/2))) (fma.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 2))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 2))) 1/18)) (*.f64 g (cbrt.f64 1/2))) (*.f64 1/9 (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 7) (pow.f64 a 11))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 7) (pow.f64 a 11))) 1/18)) (*.f64 (*.f64 g g) (cbrt.f64 1/2))))))) |
(-.f64 (fma.f64 (cbrt.f64 (/.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) a)) (cbrt.f64 1/2) (fma.f64 1/6 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 5) a))) (*.f64 g (*.f64 g (cbrt.f64 1/2)))) (*.f64 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 20))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 20))) 1/18)) (*.f64 (*.f64 (pow.f64 g 3) (cbrt.f64 1/2)) 1/9)))) (fma.f64 5/81 (*.f64 (pow.f64 g 3) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 4) (pow.f64 a 5)))) (cbrt.f64 1/2))) (fma.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (*.f64 h (neg.f64 h)))) 1/18) (pow.f64 (/.f64 1 (*.f64 (pow.f64 a 7) (*.f64 h (neg.f64 h)))) 1/18))) (*.f64 g (cbrt.f64 1/2)) (*.f64 1/9 (*.f64 (*.f64 g g) (*.f64 (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 11)) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 7)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 11)) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 7)) 1/18)) (cbrt.f64 1/2))))))) |
(-.f64 (fma.f64 (cbrt.f64 (/.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) a)) (cbrt.f64 1/2) (fma.f64 1/9 (*.f64 (*.f64 (*.f64 (pow.f64 g 3) (cbrt.f64 1/2)) (pow.f64 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 20)) (pow.f64 a 7)) 1/18)) (pow.f64 (/.f64 (/.f64 1 (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 20)) (pow.f64 a 7)) 1/18)) (*.f64 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 5))) (*.f64 (*.f64 g (*.f64 g (cbrt.f64 1/2))) 1/6)))) (fma.f64 5/81 (*.f64 (pow.f64 g 3) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 h 4) (pow.f64 a 5)))) (cbrt.f64 1/2))) (fma.f64 1/3 (*.f64 g (*.f64 (*.f64 (pow.f64 (/.f64 (/.f64 1 (*.f64 h (neg.f64 h))) (pow.f64 a 7)) 1/18) (pow.f64 (/.f64 (/.f64 1 (*.f64 h (neg.f64 h))) (pow.f64 a 7)) 1/18)) (cbrt.f64 1/2))) (*.f64 (*.f64 (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 11)) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 7)) 1/18) (pow.f64 (/.f64 (/.f64 1 (pow.f64 a 11)) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 7)) 1/18)) (*.f64 (*.f64 g (*.f64 g (cbrt.f64 1/2))) 1/9))))) |
(*.f64 -1 (pow.f64 h 2)) |
(neg.f64 (*.f64 h h)) |
(*.f64 h (neg.f64 h)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (*.f64 g g) (*.f64 h h)) |
(*.f64 (+.f64 g h) (-.f64 g h)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (*.f64 g g) (*.f64 h h)) |
(*.f64 (+.f64 g h) (-.f64 g h)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (*.f64 g g) (*.f64 h h)) |
(*.f64 (+.f64 g h) (-.f64 g h)) |
(pow.f64 g 2) |
(*.f64 g g) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (*.f64 g g) (*.f64 h h)) |
(*.f64 (+.f64 g h) (-.f64 g h)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (*.f64 g g) (*.f64 h h)) |
(*.f64 (+.f64 g h) (-.f64 g h)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (*.f64 g g) (*.f64 h h)) |
(*.f64 (+.f64 g h) (-.f64 g h)) |
(pow.f64 g 2) |
(*.f64 g g) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (*.f64 g g) (*.f64 h h)) |
(*.f64 (+.f64 g h) (-.f64 g h)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (*.f64 g g) (*.f64 h h)) |
(*.f64 (+.f64 g h) (-.f64 g h)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (*.f64 g g) (*.f64 h h)) |
(*.f64 (+.f64 g h) (-.f64 g h)) |
(pow.f64 g 2) |
(*.f64 g g) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (*.f64 g g) (*.f64 h h)) |
(*.f64 (+.f64 g h) (-.f64 g h)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (*.f64 g g) (*.f64 h h)) |
(*.f64 (+.f64 g h) (-.f64 g h)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (*.f64 g g) (*.f64 h h)) |
(*.f64 (+.f64 g h) (-.f64 g h)) |
(*.f64 -1 (pow.f64 h 2)) |
(neg.f64 (*.f64 h h)) |
(*.f64 h (neg.f64 h)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (*.f64 g g) (*.f64 h h)) |
(*.f64 (+.f64 g h) (-.f64 g h)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (*.f64 g g) (*.f64 h h)) |
(*.f64 (+.f64 g h) (-.f64 g h)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (*.f64 g g) (*.f64 h h)) |
(*.f64 (+.f64 g h) (-.f64 g h)) |
(*.f64 -1 (pow.f64 h 2)) |
(neg.f64 (*.f64 h h)) |
(*.f64 h (neg.f64 h)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (*.f64 g g) (*.f64 h h)) |
(*.f64 (+.f64 g h) (-.f64 g h)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (*.f64 g g) (*.f64 h h)) |
(*.f64 (+.f64 g h) (-.f64 g h)) |
(-.f64 (pow.f64 g 2) (pow.f64 h 2)) |
(-.f64 (*.f64 g g) (*.f64 h h)) |
(*.f64 (+.f64 g h) (-.f64 g h)) |
17 alts after pruning (17 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 291 | 17 | 308 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 292 | 17 | 309 |
| Status | Error | Program |
|---|---|---|
| 36.5b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))) 3)) | |
| 44.6b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (exp.f64 (log.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))) | |
| 40.5b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))) (/.f64 -1/2 a)))) | |
| 45.1b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (pow.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)) 1/3)) | |
| ▶ | 33.9b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) -1/2)) (cbrt.f64 a))) |
| 49.7b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))) (*.f64 (*.f64 -1/6 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)))) (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (*.f64 h h))))) | |
| 50.0b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) 1/3) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))) | |
| 51.1b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (neg.f64 g)) (/.f64 -1/2 a)))) | |
| 40.6b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)) 2))) (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))))) | |
| 48.7b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) 1/3)) (/.f64 -1/2 a)))) | |
| 52.1b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (*.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))) | |
| 46.2b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)) 2)))) | |
| 46.5b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))) (/.f64 -1/2 a)))) | |
| 33.9b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) | |
| 34.3b | (+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 a)) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))) | |
| 43.5b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))) | |
| 45.1b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))) 1/3))) |
Compiled 14549 to 7038 computations (51.6% saved)
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 3.0b | (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) |
| 3.6b | (-.f64 (*.f64 g g) (*.f64 h h)) | |
| 8.1b | (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) | |
| 28.9b | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 5.0ms | g | @ | -inf | (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) |
| 4.0ms | g | @ | inf | (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) |
| 3.0ms | g | @ | 0 | (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) |
| 3.0ms | h | @ | 0 | (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) |
| 3.0ms | h | @ | -inf | (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) |
| 1× | batch-egg-rewrite |
| 693× | fma-def_binary64 |
| 336× | fma-neg_binary64 |
| 164× | expm1-udef_binary64 |
| 164× | log1p-udef_binary64 |
| 141× | log-pow_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 15 |
| 1 | 189 | 15 |
| 2 | 2879 | 14 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 g g) (-.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (/.f64 (-.f64 (*.f64 g g) (*.f64 h h)) (-.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (pow.f64 (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2) (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (sqrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 g 3) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2)) (/.f64 1 (fma.f64 g g (-.f64 (*.f64 g g) (fma.f64 h h (*.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (-.f64 (*.f64 g g) (*.f64 g g)) (*.f64 h h)) (/.f64 1 (-.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 g g (-.f64 (*.f64 g g) (fma.f64 h h (*.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (+.f64 (pow.f64 g 3) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (+.f64 (-.f64 (*.f64 g g) (*.f64 g g)) (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 g 3) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2)) (fma.f64 g g (-.f64 (*.f64 g g) (fma.f64 h h (*.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 g 3) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2)) (fma.f64 (+.f64 g h) (-.f64 g h) (-.f64 (*.f64 g g) (*.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (-.f64 (*.f64 g g) (*.f64 g g)) (*.f64 h h)) (-.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 g 3) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))) (neg.f64 (fma.f64 g g (-.f64 (*.f64 g g) (fma.f64 h h (*.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (-.f64 (*.f64 g g) (*.f64 g g)) (*.f64 h h))) (neg.f64 (-.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 (*.f64 g g) (*.f64 h h)) (*.f64 g g)) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 g)) (exp.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 g) (+.f64 1 (expm1.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 g)) (+.f64 1 (expm1.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (exp.f64 g)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (+.f64 1 (expm1.f64 g))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (+.f64 1 (expm1.f64 g))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 g 1 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) 1 g)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 g g)) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (cbrt.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) g)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 g g)) (cbrt.f64 g) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 g) (sqrt.f64 g) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) g)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2)) (sqrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cbrt.f64 (pow.f64 g 4))) (sqrt.f64 (cbrt.f64 (*.f64 g g))) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)) g)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 1 1/2) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2) 1/2) (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2) g)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (+.f64 g h) 1/2) (pow.f64 (-.f64 g h) 1/2) g)))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))) |
| 1× | egg-herbie |
| 521× | fma-neg_binary64 |
| 463× | times-frac_binary64 |
| 439× | distribute-neg-frac_binary64 |
| 231× | associate-/r*_binary64 |
| 229× | associate-/l*_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 73 | 575 |
| 1 | 228 | 557 |
| 2 | 705 | 547 |
| 3 | 3695 | 543 |
| 1× | node limit |
| Inputs |
|---|
(sqrt.f64 (neg.f64 (pow.f64 h 2))) |
(+.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) g) |
(+.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) (+.f64 g (*.f64 1/2 (/.f64 (pow.f64 g 2) (sqrt.f64 (neg.f64 (pow.f64 h 2))))))) |
(-.f64 (+.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) (+.f64 g (*.f64 1/2 (/.f64 (pow.f64 g 2) (sqrt.f64 (neg.f64 (pow.f64 h 2))))))) (*.f64 1/8 (/.f64 (pow.f64 g 4) (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 3)))) |
(*.f64 2 g) |
(-.f64 (*.f64 2 g) (*.f64 1/2 (/.f64 (pow.f64 h 2) g))) |
(-.f64 (*.f64 2 g) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) |
(-.f64 (*.f64 2 g) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))) |
(*.f64 1/2 (/.f64 (pow.f64 h 2) g)) |
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) |
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))))) |
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))) (+.f64 (*.f64 5/128 (/.f64 (pow.f64 h 8) (pow.f64 g 7))) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)))))) |
(*.f64 2 g) |
(-.f64 (*.f64 2 g) (*.f64 1/2 (/.f64 (pow.f64 h 2) g))) |
(-.f64 (*.f64 2 g) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) |
(-.f64 (*.f64 2 g) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))) |
(*.f64 (sqrt.f64 -1) h) |
(+.f64 g (*.f64 (sqrt.f64 -1) h)) |
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 g (*.f64 (sqrt.f64 -1) h))) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 g (*.f64 (sqrt.f64 -1) h))) (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))))) |
(*.f64 -1 (*.f64 (sqrt.f64 -1) h)) |
(-.f64 g (*.f64 (sqrt.f64 -1) h)) |
(-.f64 g (+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h))) |
(-.f64 (+.f64 g (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h))) |
| Outputs |
|---|
(sqrt.f64 (neg.f64 (pow.f64 h 2))) |
(sqrt.f64 (neg.f64 (*.f64 h h))) |
(sqrt.f64 (*.f64 h (neg.f64 h))) |
(+.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) g) |
(+.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) g) |
(+.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) g) |
(+.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) (+.f64 g (*.f64 1/2 (/.f64 (pow.f64 g 2) (sqrt.f64 (neg.f64 (pow.f64 h 2))))))) |
(+.f64 (+.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) g) (/.f64 (*.f64 1/2 (*.f64 g g)) (sqrt.f64 (neg.f64 (*.f64 h h))))) |
(+.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) (fma.f64 1/2 (/.f64 g (/.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) g)) g)) |
(+.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) (fma.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) g)) |
(-.f64 (+.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) (+.f64 g (*.f64 1/2 (/.f64 (pow.f64 g 2) (sqrt.f64 (neg.f64 (pow.f64 h 2))))))) (*.f64 1/8 (/.f64 (pow.f64 g 4) (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 3)))) |
(+.f64 (+.f64 (+.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) g) (/.f64 (*.f64 1/2 (*.f64 g g)) (sqrt.f64 (neg.f64 (*.f64 h h))))) (*.f64 -1/8 (/.f64 (pow.f64 g 4) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 3)))) |
(+.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) (-.f64 (fma.f64 1/2 (/.f64 g (/.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) g)) g) (*.f64 1/8 (/.f64 (pow.f64 g 4) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 3))))) |
(fma.f64 (/.f64 (pow.f64 g 4) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 3)) -1/8 (+.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) (fma.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) g))) |
(*.f64 2 g) |
(-.f64 (*.f64 2 g) (*.f64 1/2 (/.f64 (pow.f64 h 2) g))) |
(+.f64 (*.f64 2 g) (*.f64 -1/2 (/.f64 (*.f64 h h) g))) |
(fma.f64 2 g (*.f64 (/.f64 h (/.f64 g h)) -1/2)) |
(fma.f64 2 g (/.f64 (*.f64 (*.f64 -1/2 h) h) g)) |
(-.f64 (*.f64 2 g) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) |
(-.f64 (*.f64 2 g) (fma.f64 1/2 (/.f64 (*.f64 h h) g) (/.f64 (*.f64 1/8 (pow.f64 h 4)) (pow.f64 g 3)))) |
(-.f64 (fma.f64 2 g (*.f64 (/.f64 h (/.f64 g h)) -1/2)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) |
(fma.f64 2 g (fma.f64 (*.f64 (/.f64 h g) h) -1/2 (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) -1/8))) |
(fma.f64 2 g (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) -1/8 (/.f64 (*.f64 (*.f64 -1/2 h) h) g))) |
(-.f64 (*.f64 2 g) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))) |
(-.f64 (*.f64 2 g) (fma.f64 1/2 (/.f64 (*.f64 h h) g) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)))))) |
(-.f64 (*.f64 2 g) (fma.f64 1/2 (/.f64 h (/.f64 g h)) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)))))) |
(-.f64 (*.f64 2 g) (fma.f64 1/2 (*.f64 (/.f64 h g) h) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)))))) |
(fma.f64 2 g (fma.f64 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) -1/16 (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) -1/8 (/.f64 (*.f64 (*.f64 -1/2 h) h) g)))) |
(*.f64 1/2 (/.f64 (pow.f64 h 2) g)) |
(*.f64 1/2 (/.f64 (*.f64 h h) g)) |
(*.f64 1/2 (/.f64 h (/.f64 g h))) |
(*.f64 1/2 (*.f64 (/.f64 h g) h)) |
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) |
(fma.f64 1/2 (/.f64 (*.f64 h h) g) (/.f64 (*.f64 1/8 (pow.f64 h 4)) (pow.f64 g 3))) |
(fma.f64 1/2 (/.f64 h (/.f64 g h)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) |
(fma.f64 1/2 (*.f64 (/.f64 h g) h) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) |
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))))) |
(fma.f64 1/2 (/.f64 (*.f64 h h) g) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))))) |
(fma.f64 1/2 (/.f64 h (/.f64 g h)) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))))) |
(fma.f64 1/2 (*.f64 (/.f64 h g) h) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))))) |
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))) (+.f64 (*.f64 5/128 (/.f64 (pow.f64 h 8) (pow.f64 g 7))) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)))))) |
(fma.f64 1/2 (/.f64 (*.f64 h h) g) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (fma.f64 5/128 (/.f64 (pow.f64 h 8) (pow.f64 g 7)) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)))))) |
(fma.f64 1/2 (/.f64 h (/.f64 g h)) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (fma.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (*.f64 5/128 (/.f64 (pow.f64 h 8) (pow.f64 g 7)))))) |
(fma.f64 1/2 (*.f64 (/.f64 h g) h) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (fma.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (*.f64 5/128 (/.f64 (pow.f64 h 8) (pow.f64 g 7)))))) |
(*.f64 2 g) |
(-.f64 (*.f64 2 g) (*.f64 1/2 (/.f64 (pow.f64 h 2) g))) |
(+.f64 (*.f64 2 g) (*.f64 -1/2 (/.f64 (*.f64 h h) g))) |
(fma.f64 2 g (*.f64 (/.f64 h (/.f64 g h)) -1/2)) |
(fma.f64 2 g (/.f64 (*.f64 (*.f64 -1/2 h) h) g)) |
(-.f64 (*.f64 2 g) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) |
(-.f64 (*.f64 2 g) (fma.f64 1/2 (/.f64 (*.f64 h h) g) (/.f64 (*.f64 1/8 (pow.f64 h 4)) (pow.f64 g 3)))) |
(-.f64 (fma.f64 2 g (*.f64 (/.f64 h (/.f64 g h)) -1/2)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) |
(fma.f64 2 g (fma.f64 (*.f64 (/.f64 h g) h) -1/2 (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) -1/8))) |
(fma.f64 2 g (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) -1/8 (/.f64 (*.f64 (*.f64 -1/2 h) h) g))) |
(-.f64 (*.f64 2 g) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))))) |
(-.f64 (*.f64 2 g) (fma.f64 1/2 (/.f64 (*.f64 h h) g) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)))))) |
(-.f64 (*.f64 2 g) (fma.f64 1/2 (/.f64 h (/.f64 g h)) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)))))) |
(-.f64 (*.f64 2 g) (fma.f64 1/2 (*.f64 (/.f64 h g) h) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)))))) |
(fma.f64 2 g (fma.f64 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) -1/16 (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) -1/8 (/.f64 (*.f64 (*.f64 -1/2 h) h) g)))) |
(*.f64 (sqrt.f64 -1) h) |
(*.f64 h (sqrt.f64 -1)) |
(+.f64 g (*.f64 (sqrt.f64 -1) h)) |
(+.f64 g (*.f64 h (sqrt.f64 -1))) |
(fma.f64 h (sqrt.f64 -1) g) |
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 g (*.f64 (sqrt.f64 -1) h))) |
(fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (+.f64 g (*.f64 h (sqrt.f64 -1)))) |
(fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (fma.f64 h (sqrt.f64 -1) g)) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 g (*.f64 (sqrt.f64 -1) h))) (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))))) |
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (+.f64 g (*.f64 h (sqrt.f64 -1)))) (*.f64 -1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))))) |
(+.f64 (fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (fma.f64 h (sqrt.f64 -1) g)) (*.f64 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3))) -1/8)) |
(+.f64 (fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (fma.f64 h (sqrt.f64 -1) g)) (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (sqrt.f64 -1) (pow.f64 h 3))))) |
(*.f64 -1 (*.f64 (sqrt.f64 -1) h)) |
(neg.f64 (*.f64 h (sqrt.f64 -1))) |
(*.f64 (sqrt.f64 -1) (neg.f64 h)) |
(-.f64 g (*.f64 (sqrt.f64 -1) h)) |
(-.f64 g (*.f64 h (sqrt.f64 -1))) |
(-.f64 g (+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h))) |
(-.f64 g (fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (*.f64 h (sqrt.f64 -1)))) |
(-.f64 g (fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (*.f64 h (sqrt.f64 -1)))) |
(-.f64 g (fma.f64 h (sqrt.f64 -1) (*.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1)))))) |
(-.f64 (+.f64 g (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h))) |
(+.f64 g (-.f64 (/.f64 (*.f64 1/8 (pow.f64 g 4)) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (*.f64 h (sqrt.f64 -1))))) |
(-.f64 (fma.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3))) g) (fma.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1))) (*.f64 h (sqrt.f64 -1)))) |
(-.f64 (fma.f64 (/.f64 -1/8 (sqrt.f64 -1)) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) g) (fma.f64 h (sqrt.f64 -1) (*.f64 1/2 (*.f64 (/.f64 g h) (/.f64 g (sqrt.f64 -1)))))) |
23 alts after pruning (23 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 351 | 9 | 360 |
| Fresh | 2 | 14 | 16 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 354 | 23 | 377 |
| Status | Error | Program |
|---|---|---|
| 50.0b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (cbrt.f64 (*.f64 (*.f64 1/2 (*.f64 (/.f64 h g) h)) -1/2)) (cbrt.f64 a))) | |
| 52.1b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (*.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))) | |
| 40.3b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (exp.f64 (log.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) -1/2)) (cbrt.f64 a))) | |
| 46.2b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)) 2)))) | |
| 36.5b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))) 3)) | |
| 50.9b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (*.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h))) g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) -1/2)) (cbrt.f64 a))) | |
| 45.2b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 g g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) -1/2)) (cbrt.f64 a))) | |
| 41.9b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (cbrt.f64 (*.f64 (*.f64 2 g) -1/2)) (cbrt.f64 a))) | |
| 40.5b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))) (/.f64 -1/2 a)))) | |
| 45.1b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (pow.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)) 1/3)) | |
| 40.6b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)) 2))) (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))))) | |
| 48.7b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) 1/3)) (/.f64 -1/2 a)))) | |
| 34.3b | (+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 a)) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))) | |
| ▶ | 31.9b | (+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) -1/2)) (cbrt.f64 a))) |
| 45.1b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a))) 1/3))) | |
| 37.9b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (*.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) -1/2)) (cbrt.f64 a))) | |
| 52.7b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (cbrt.f64 (*.f64 (fma.f64 1/2 (*.f64 (/.f64 h g) h) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) -1/2)) (cbrt.f64 a))) | |
| 49.7b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))) (*.f64 (*.f64 -1/6 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)))) (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (*.f64 h h))))) | |
| 46.5b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))) (/.f64 -1/2 a)))) | |
| 50.0b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) 1/3) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))) | |
| 50.7b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (cbrt.f64 (*.f64 (pow.f64 (sqrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2) -1/2)) (cbrt.f64 a))) | |
| 33.9b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) | |
| 43.5b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))) |
Compiled 16715 to 7660 computations (54.2% saved)
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 1.2b | (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) |
| 3.0b | (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) | |
| 3.6b | (-.f64 (*.f64 g g) (*.f64 h h)) | |
| 28.9b | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 5.0ms | g | @ | inf | (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) |
| 4.0ms | h | @ | 0 | (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) |
| 3.0ms | g | @ | 0 | (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) |
| 3.0ms | g | @ | -inf | (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) |
| 3.0ms | h | @ | -inf | (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) |
| 1× | batch-egg-rewrite |
| 747× | fma-def_binary64 |
| 325× | fma-neg_binary64 |
| 166× | expm1-udef_binary64 |
| 166× | log1p-udef_binary64 |
| 142× | log-pow_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 15 |
| 1 | 190 | 15 |
| 2 | 2875 | 14 |
| 1× | node limit |
| Inputs |
|---|
(-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (*.f64 (neg.f64 g) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) (fma.f64 (neg.f64 g) 1 g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) (fma.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (*.f64 g g)) g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) (+.f64 (neg.f64 g) g))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 g) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 2) (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (sqrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) (pow.f64 g 3)) (/.f64 1 (fma.f64 g (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 g g) (fma.f64 g g (*.f64 h h))) (/.f64 1 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (sqrt.f64 g)) (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (sqrt.f64 g)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 g (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (-.f64 (*.f64 g g) (*.f64 h h))) (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) (pow.f64 g 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (-.f64 (*.f64 g g) (fma.f64 g g (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) (pow.f64 g 3)) (fma.f64 g (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (-.f64 (*.f64 g g) (*.f64 h h))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 g g) (fma.f64 g g (*.f64 h h))) (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) (pow.f64 g 3))) (neg.f64 (fma.f64 g (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (-.f64 (*.f64 g g) (*.f64 h h)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 g g) (fma.f64 g g (*.f64 h h)))) (neg.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) (pow.f64 (neg.f64 g) 3)) (fma.f64 (+.f64 g h) (-.f64 g h) (-.f64 (*.f64 (neg.f64 g) (neg.f64 g)) (*.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (neg.f64 g)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 (*.f64 g g) (*.f64 h h)) (*.f64 (neg.f64 g) (neg.f64 g))) (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (neg.f64 g)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (exp.f64 g)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (+.f64 1 (expm1.f64 g))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (+.f64 1 (expm1.f64 g))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (exp.f64 (neg.f64 g))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (/.f64 1 (exp.f64 g))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (/.f64 1 (exp.f64 g))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 g)) (exp.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 g)) (exp.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 g)) (+.f64 1 (expm1.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 g)) (+.f64 1 (expm1.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) 1 (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) 1 (*.f64 (neg.f64 g) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) 1 (fma.f64 (neg.f64 g) 1 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) 1 (fma.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (*.f64 g g)) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) 1 (+.f64 (neg.f64 g) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (*.f64 (neg.f64 g) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) (fma.f64 (neg.f64 g) 1 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) (fma.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (*.f64 g g)) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) (+.f64 (neg.f64 g) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 g) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 2) (fma.f64 (neg.f64 g) 1 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 2) (fma.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (*.f64 g g)) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 2) (+.f64 (neg.f64 g) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 2) (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (fma.f64 (neg.f64 g) 1 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 2) (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (fma.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (*.f64 g g)) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 2) (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (+.f64 (neg.f64 g) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (cbrt.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (cbrt.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (*.f64 (neg.f64 g) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 g g)) (neg.f64 (cbrt.f64 g)) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (*.f64 (neg.f64 g) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (sqrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (fma.f64 (neg.f64 g) 1 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (sqrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (fma.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (*.f64 g g)) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (sqrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) (+.f64 (neg.f64 g) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 g) (neg.f64 (sqrt.f64 g)) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (*.f64 (neg.f64 g) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) (pow.f64 g 3)) (/.f64 1 (fma.f64 g (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (-.f64 (*.f64 g g) (*.f64 h h)))) (fma.f64 (neg.f64 g) 1 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) (pow.f64 g 3)) (/.f64 1 (fma.f64 g (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (-.f64 (*.f64 g g) (*.f64 h h)))) (fma.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (*.f64 g g)) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) (pow.f64 g 3)) (/.f64 1 (fma.f64 g (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (-.f64 (*.f64 g g) (*.f64 h h)))) (+.f64 (neg.f64 g) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 g g) (fma.f64 g g (*.f64 h h))) (/.f64 1 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (fma.f64 (neg.f64 g) 1 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 g g) (fma.f64 g g (*.f64 h h))) (/.f64 1 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (fma.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (*.f64 g g)) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 g g) (fma.f64 g g (*.f64 h h))) (/.f64 1 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) (+.f64 (neg.f64 g) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (neg.f64 g)) (cbrt.f64 (neg.f64 g))) (cbrt.f64 (neg.f64 g)) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2)) (sqrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2)) (sqrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (*.f64 (neg.f64 g) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h)) (*.f64 (neg.f64 g) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 g)) (sqrt.f64 (neg.f64 g)) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 g)) (sqrt.f64 g) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (*.f64 g g))) (cbrt.f64 g) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 1 1/2) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 1 1/2) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) (*.f64 (neg.f64 g) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2) 1/2) (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 2) 1/2) (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 1/2) (*.f64 (neg.f64 g) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (+.f64 g h) 1/2) (pow.f64 (-.f64 g h) 1/2) (neg.f64 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (+.f64 g h) 1/2) (pow.f64 (-.f64 g h) 1/2) (*.f64 (neg.f64 g) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (sqrt.f64 g)) (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (sqrt.f64 g)) (fma.f64 (neg.f64 g) 1 g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (sqrt.f64 g)) (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (sqrt.f64 g)) (fma.f64 (neg.f64 (cbrt.f64 g)) (cbrt.f64 (*.f64 g g)) g))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (sqrt.f64 g)) (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) (sqrt.f64 g)) (+.f64 (neg.f64 g) g))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g))))))) |
| 1× | egg-herbie |
| 447× | distribute-neg-frac_binary64 |
| 443× | times-frac_binary64 |
| 231× | associate-/l*_binary64 |
| 229× | fma-def_binary64 |
| 215× | associate-/r*_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 83 | 618 |
| 1 | 257 | 598 |
| 2 | 841 | 584 |
| 3 | 4127 | 584 |
| 1× | node limit |
| Inputs |
|---|
(sqrt.f64 (neg.f64 (pow.f64 h 2))) |
(-.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) g) |
(-.f64 (+.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) (*.f64 1/2 (/.f64 (pow.f64 g 2) (sqrt.f64 (neg.f64 (pow.f64 h 2)))))) g) |
(-.f64 (+.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) (*.f64 1/2 (/.f64 (pow.f64 g 2) (sqrt.f64 (neg.f64 (pow.f64 h 2)))))) (+.f64 g (*.f64 1/8 (/.f64 (pow.f64 g 4) (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 3))))) |
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) |
(neg.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) |
(neg.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)))))) |
(neg.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))) (+.f64 (*.f64 5/128 (/.f64 (pow.f64 h 8) (pow.f64 g 7))) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))))))) |
(*.f64 -2 g) |
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g)) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) (*.f64 2 g)) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) (*.f64 2 g)) |
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) |
(neg.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) |
(neg.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)))))) |
(neg.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))) (+.f64 (*.f64 5/128 (/.f64 (pow.f64 h 8) (pow.f64 g 7))) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))))))) |
(*.f64 (sqrt.f64 -1) h) |
(-.f64 (*.f64 (sqrt.f64 -1) h) g) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h)) g) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h)) (+.f64 g (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))))) |
(*.f64 -1 (*.f64 (sqrt.f64 -1) h)) |
(neg.f64 (+.f64 g (*.f64 (sqrt.f64 -1) h))) |
(neg.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 g (*.f64 (sqrt.f64 -1) h)))) |
(-.f64 (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 g (*.f64 (sqrt.f64 -1) h)))) |
| Outputs |
|---|
(sqrt.f64 (neg.f64 (pow.f64 h 2))) |
(sqrt.f64 (neg.f64 (*.f64 h h))) |
(sqrt.f64 (*.f64 h (neg.f64 h))) |
(-.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) g) |
(-.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) g) |
(-.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) g) |
(-.f64 (+.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) (*.f64 1/2 (/.f64 (pow.f64 g 2) (sqrt.f64 (neg.f64 (pow.f64 h 2)))))) g) |
(+.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) (-.f64 (/.f64 (*.f64 1/2 (*.f64 g g)) (sqrt.f64 (neg.f64 (*.f64 h h)))) g)) |
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 g g) (sqrt.f64 (*.f64 h (neg.f64 h)))) (sqrt.f64 (*.f64 h (neg.f64 h)))) g) |
(fma.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) (-.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) g)) |
(-.f64 (+.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) (*.f64 1/2 (/.f64 (pow.f64 g 2) (sqrt.f64 (neg.f64 (pow.f64 h 2)))))) (+.f64 g (*.f64 1/8 (/.f64 (pow.f64 g 4) (pow.f64 (sqrt.f64 (neg.f64 (pow.f64 h 2))) 3))))) |
(-.f64 (+.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) (/.f64 (*.f64 1/2 (*.f64 g g)) (sqrt.f64 (neg.f64 (*.f64 h h))))) (+.f64 g (/.f64 (*.f64 1/8 (pow.f64 g 4)) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 h h))) 3)))) |
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 g g) (sqrt.f64 (*.f64 h (neg.f64 h)))) (sqrt.f64 (*.f64 h (neg.f64 h)))) (fma.f64 1/8 (/.f64 (pow.f64 g 4) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 3)) g)) |
(-.f64 (fma.f64 1/2 (*.f64 (/.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g) (sqrt.f64 (*.f64 h (neg.f64 h)))) (fma.f64 1/8 (/.f64 (pow.f64 g 4) (pow.f64 (sqrt.f64 (*.f64 h (neg.f64 h))) 3)) g)) |
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) |
(*.f64 -1/2 (/.f64 (*.f64 h h) g)) |
(*.f64 (/.f64 -1/2 g) (*.f64 h h)) |
(neg.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) |
(neg.f64 (fma.f64 1/2 (/.f64 (*.f64 h h) g) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 h h) g)) (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) -1/8)) |
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) -1/8)) |
(neg.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)))))) |
(neg.f64 (fma.f64 1/2 (/.f64 (*.f64 h h) g) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)))))) |
(-.f64 (*.f64 -1/2 (/.f64 (*.f64 h h) g)) (fma.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) |
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) -1/8 (*.f64 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) -1/16))) |
(neg.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))) (+.f64 (*.f64 5/128 (/.f64 (pow.f64 h 8) (pow.f64 g 7))) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))))))) |
(neg.f64 (fma.f64 1/2 (/.f64 (*.f64 h h) g) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (fma.f64 5/128 (/.f64 (pow.f64 h 8) (pow.f64 g 7)) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))))))) |
(-.f64 (*.f64 -1/2 (/.f64 (*.f64 h h) g)) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (fma.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (*.f64 5/128 (/.f64 (pow.f64 h 8) (pow.f64 g 7)))))) |
(-.f64 (*.f64 (/.f64 -1/2 g) (*.f64 h h)) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (fma.f64 5/128 (/.f64 (pow.f64 h 8) (pow.f64 g 7)) (/.f64 (pow.f64 h 6) (/.f64 (pow.f64 g 5) 1/16))))) |
(*.f64 -2 g) |
(*.f64 g -2) |
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 2 g)) |
(+.f64 (*.f64 1/2 (/.f64 (*.f64 h h) g)) (*.f64 g -2)) |
(fma.f64 1/2 (/.f64 (*.f64 h h) g) (*.f64 g -2)) |
(fma.f64 g -2 (/.f64 (*.f64 h h) (/.f64 g 1/2))) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) (*.f64 2 g)) |
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 h h) g) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) (*.f64 g -2)) |
(fma.f64 1/2 (/.f64 (*.f64 h h) g) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 g -2))) |
(fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (fma.f64 g -2 (/.f64 (*.f64 h h) (/.f64 g 1/2)))) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) (*.f64 2 g)) |
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 h h) g) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))))) (*.f64 g -2)) |
(+.f64 (fma.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) (fma.f64 1/2 (/.f64 (*.f64 h h) g) (*.f64 g -2))) |
(fma.f64 g -2 (fma.f64 1/2 (/.f64 h (/.f64 g h)) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (/.f64 (pow.f64 h 6) (/.f64 (pow.f64 g 5) 1/16))))) |
(*.f64 -1/2 (/.f64 (pow.f64 h 2) g)) |
(*.f64 -1/2 (/.f64 (*.f64 h h) g)) |
(*.f64 (/.f64 -1/2 g) (*.f64 h h)) |
(neg.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) |
(neg.f64 (fma.f64 1/2 (/.f64 (*.f64 h h) g) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 h h) g)) (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) -1/8)) |
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (*.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) -1/8)) |
(neg.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)))))) |
(neg.f64 (fma.f64 1/2 (/.f64 (*.f64 h h) g) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)))))) |
(-.f64 (*.f64 -1/2 (/.f64 (*.f64 h h) g)) (fma.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))))) |
(fma.f64 -1/2 (/.f64 h (/.f64 g h)) (fma.f64 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) -1/8 (*.f64 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) -1/16))) |
(neg.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 h 2) g)) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3))) (+.f64 (*.f64 5/128 (/.f64 (pow.f64 h 8) (pow.f64 g 7))) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))))))) |
(neg.f64 (fma.f64 1/2 (/.f64 (*.f64 h h) g) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (fma.f64 5/128 (/.f64 (pow.f64 h 8) (pow.f64 g 7)) (*.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5))))))) |
(-.f64 (*.f64 -1/2 (/.f64 (*.f64 h h) g)) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (fma.f64 1/16 (/.f64 (pow.f64 h 6) (pow.f64 g 5)) (*.f64 5/128 (/.f64 (pow.f64 h 8) (pow.f64 g 7)))))) |
(-.f64 (*.f64 (/.f64 -1/2 g) (*.f64 h h)) (fma.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)) (fma.f64 5/128 (/.f64 (pow.f64 h 8) (pow.f64 g 7)) (/.f64 (pow.f64 h 6) (/.f64 (pow.f64 g 5) 1/16))))) |
(*.f64 (sqrt.f64 -1) h) |
(*.f64 h (sqrt.f64 -1)) |
(-.f64 (*.f64 (sqrt.f64 -1) h) g) |
(-.f64 (*.f64 h (sqrt.f64 -1)) g) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h)) g) |
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (*.f64 h (sqrt.f64 -1))) g) |
(-.f64 (fma.f64 h (sqrt.f64 -1) (*.f64 1/2 (/.f64 g (/.f64 (*.f64 h (sqrt.f64 -1)) g)))) g) |
(fma.f64 1/2 (*.f64 (/.f64 g (*.f64 h (sqrt.f64 -1))) g) (-.f64 (*.f64 h (sqrt.f64 -1)) g)) |
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (*.f64 (sqrt.f64 -1) h)) (+.f64 g (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))))) |
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (*.f64 h (sqrt.f64 -1))) (+.f64 g (/.f64 (*.f64 1/8 (pow.f64 g 4)) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))))) |
(-.f64 (fma.f64 h (sqrt.f64 -1) (*.f64 1/2 (/.f64 g (/.f64 (*.f64 h (sqrt.f64 -1)) g)))) (fma.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3))) g)) |
(-.f64 (fma.f64 h (sqrt.f64 -1) (*.f64 1/2 (*.f64 (/.f64 g (*.f64 h (sqrt.f64 -1))) g))) (fma.f64 (/.f64 -1/8 (sqrt.f64 -1)) (/.f64 (pow.f64 g 4) (pow.f64 h 3)) g)) |
(*.f64 -1 (*.f64 (sqrt.f64 -1) h)) |
(neg.f64 (*.f64 h (sqrt.f64 -1))) |
(*.f64 h (neg.f64 (sqrt.f64 -1))) |
(neg.f64 (+.f64 g (*.f64 (sqrt.f64 -1) h))) |
(neg.f64 (+.f64 g (*.f64 h (sqrt.f64 -1)))) |
(neg.f64 (fma.f64 h (sqrt.f64 -1) g)) |
(neg.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 g (*.f64 (sqrt.f64 -1) h)))) |
(neg.f64 (fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (+.f64 g (*.f64 h (sqrt.f64 -1))))) |
(-.f64 (*.f64 -1/2 (/.f64 g (/.f64 (*.f64 h (sqrt.f64 -1)) g))) (fma.f64 h (sqrt.f64 -1) g)) |
(-.f64 (*.f64 -1/2 (*.f64 (/.f64 g (*.f64 h (sqrt.f64 -1))) g)) (fma.f64 h (sqrt.f64 -1) g)) |
(-.f64 (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 g 2) (*.f64 (sqrt.f64 -1) h))) (+.f64 g (*.f64 (sqrt.f64 -1) h)))) |
(-.f64 (/.f64 (*.f64 1/8 (pow.f64 g 4)) (*.f64 (pow.f64 (sqrt.f64 -1) 3) (pow.f64 h 3))) (fma.f64 1/2 (/.f64 (*.f64 g g) (*.f64 h (sqrt.f64 -1))) (+.f64 g (*.f64 h (sqrt.f64 -1))))) |
(-.f64 (*.f64 1/8 (/.f64 (pow.f64 g 4) (*.f64 (neg.f64 (sqrt.f64 -1)) (pow.f64 h 3)))) (fma.f64 1/2 (/.f64 g (/.f64 (*.f64 h (sqrt.f64 -1)) g)) (fma.f64 h (sqrt.f64 -1) g))) |
(-.f64 (*.f64 (/.f64 -1/8 (sqrt.f64 -1)) (/.f64 (pow.f64 g 4) (pow.f64 h 3))) (fma.f64 h (sqrt.f64 -1) (fma.f64 1/2 (*.f64 (/.f64 g (*.f64 h (sqrt.f64 -1))) g) g))) |
23 alts after pruning (23 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 459 | 7 | 466 |
| Fresh | 6 | 16 | 22 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 466 | 23 | 489 |
| Status | Error | Program |
|---|---|---|
| 50.0b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (cbrt.f64 (*.f64 (*.f64 1/2 (*.f64 (/.f64 h g) h)) -1/2)) (cbrt.f64 a))) | |
| 52.1b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (*.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))) | |
| 54.5b | (+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) (pow.f64 g 3)) (/.f64 1 (fma.f64 g (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (-.f64 (*.f64 g g) (*.f64 h h))))))) (cbrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) -1/2)) (cbrt.f64 a))) | |
| 40.3b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (exp.f64 (log.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) -1/2)) (cbrt.f64 a))) | |
| 46.2b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)) 2)))) | |
| 41.9b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (cbrt.f64 (*.f64 (*.f64 2 g) -1/2)) (cbrt.f64 a))) | |
| 36.5b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))) 3)) | |
| 60.0b | (+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (fma.f64 (sqrt.f64 g) (neg.f64 (sqrt.f64 g)) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))) (cbrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) -1/2)) (cbrt.f64 a))) | |
| 40.5b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))) (/.f64 -1/2 a)))) | |
| 40.0b | (+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3) g))) (cbrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) -1/2)) (cbrt.f64 a))) | |
| 47.9b | (+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 (*.f64 1/2 (*.f64 (/.f64 h g) h)) -1/2)) (cbrt.f64 a))) | |
| 46.5b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))) (/.f64 -1/2 a)))) | |
| 54.1b | (+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (neg.f64 g)) (cbrt.f64 (neg.f64 g))) (cbrt.f64 (neg.f64 g)) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))) (cbrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) -1/2)) (cbrt.f64 a))) | |
| 50.0b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) 1/3) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))) | |
| 49.9b | (+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 3))) (cbrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) -1/2)) (cbrt.f64 a))) | |
| 52.7b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (cbrt.f64 (*.f64 (fma.f64 1/2 (*.f64 (/.f64 h g) h) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) -1/2)) (cbrt.f64 a))) | |
| 37.9b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (*.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) -1/2)) (cbrt.f64 a))) | |
| 49.7b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))) (*.f64 (*.f64 -1/6 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)))) (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (*.f64 h h))))) | |
| 44.7b | (+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)))) (cbrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) -1/2)) (cbrt.f64 a))) | |
| 40.6b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (cbrt.f64 (cbrt.f64 (pow.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)) 2))) (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))))) | |
| 50.7b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (cbrt.f64 (*.f64 (pow.f64 (sqrt.f64 (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))))) 2) -1/2)) (cbrt.f64 a))) | |
| ▶ | 33.9b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))))) |
| 43.5b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))) |
Compiled 21244 to 9021 computations (57.5% saved)
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| 3.0b | (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) | |
| 3.6b | (-.f64 (*.f64 g g) (*.f64 h h)) | |
| 8.1b | (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) | |
| 28.9b | (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) |
21 alts after pruning (21 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 359 | 1 | 360 |
| Fresh | 2 | 20 | 22 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 362 | 21 | 383 |
| Status | Error | Program |
|---|---|---|
| 50.0b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (cbrt.f64 (*.f64 (*.f64 1/2 (*.f64 (/.f64 h g) h)) -1/2)) (cbrt.f64 a))) | |
| 52.1b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (*.f64 (sqrt.f64 (+.f64 g h)) (sqrt.f64 (-.f64 g h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))) | |
| 54.5b | (+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (*.f64 (-.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) (pow.f64 g 3)) (/.f64 1 (fma.f64 g (+.f64 g (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))) (-.f64 (*.f64 g g) (*.f64 h h))))))) (cbrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) -1/2)) (cbrt.f64 a))) | |
| 40.3b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (exp.f64 (log.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) -1/2)) (cbrt.f64 a))) | |
| 46.2b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)) 2)))) | |
| 41.9b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (cbrt.f64 (*.f64 (*.f64 2 g) -1/2)) (cbrt.f64 a))) | |
| 36.5b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))) 3)) | |
| 60.0b | (+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (fma.f64 (sqrt.f64 g) (neg.f64 (sqrt.f64 g)) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))) (cbrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) -1/2)) (cbrt.f64 a))) | |
| 40.5b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))) (/.f64 -1/2 a)))) | |
| 40.0b | (+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3) g))) (cbrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) -1/2)) (cbrt.f64 a))) | |
| 47.9b | (+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 (*.f64 1/2 (*.f64 (/.f64 h g) h)) -1/2)) (cbrt.f64 a))) | |
| 46.5b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (cbrt.f64 (*.f64 (+.f64 g (cbrt.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2))) (/.f64 -1/2 a)))) | |
| 54.1b | (+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (neg.f64 g)) (cbrt.f64 (neg.f64 g))) (cbrt.f64 (neg.f64 g)) (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h))))))) (cbrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) -1/2)) (cbrt.f64 a))) | |
| 36.8b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (*.f64 (cbrt.f64 (/.f64 -1/2 a)) (cbrt.f64 (+.f64 g (pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 1/4) 2))))) | |
| 50.0b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (pow.f64 (pow.f64 (-.f64 (*.f64 g g) (*.f64 h h)) 3/2) 1/3) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))) | |
| 49.9b | (+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 g (sqrt.f64 (*.f64 h (neg.f64 h)))) g)) 3))) (cbrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) -1/2)) (cbrt.f64 a))) | |
| 52.7b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (cbrt.f64 (*.f64 (fma.f64 1/2 (*.f64 (/.f64 h g) h) (*.f64 1/8 (/.f64 (pow.f64 h 4) (pow.f64 g 3)))) -1/2)) (cbrt.f64 a))) | |
| 37.9b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (*.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) -1/2)) (cbrt.f64 a))) | |
| 49.7b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g))) (fma.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 2) (cbrt.f64 (/.f64 g a))) (*.f64 (*.f64 -1/6 (cbrt.f64 (/.f64 (/.f64 1 a) (pow.f64 g 5)))) (*.f64 (/.f64 (cbrt.f64 -1/2) (pow.f64 (cbrt.f64 2) 2)) (*.f64 h h))))) | |
| 44.7b | (+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (*.f64 -1/2 (/.f64 (pow.f64 h 2) g)))) (cbrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) -1/2)) (cbrt.f64 a))) | |
| 43.5b | (+.f64 (cbrt.f64 (*.f64 (/.f64 1/2 a) (-.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) 3) g))) (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (/.f64 -1/2 a)))) |
Compiled 15809 to 7336 computations (53.6% saved)
Total 1.9b remaining (5.7%)
Threshold costs 0b (0%)
Compiled 51909 to 32240 computations (37.9% saved)
| 1× | egg-herbie |
| 7× | +-commutative_binary64 |
| 5× | *-commutative_binary64 |
| 5× | sub-neg_binary64 |
| 3× | neg-sub0_binary64 |
| 3× | neg-mul-1_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 21 | 54 |
| 1 | 32 | 54 |
| 2 | 43 | 54 |
| 3 | 49 | 54 |
| 4 | 52 | 54 |
| 1× | saturated |
| Inputs |
|---|
(+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (fabs.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g))) (cbrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) -1/2)) (cbrt.f64 a))) |
| Outputs |
|---|
(+.f64 (/.f64 (cbrt.f64 (*.f64 1/2 (-.f64 (fabs.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) g))) (cbrt.f64 a)) (/.f64 (cbrt.f64 (*.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) -1/2)) (cbrt.f64 a))) |
| 1× | fuel |
Compiled 888 to 542 computations (39% saved)
Loading profile data...