
Time bar (total: 6.3s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 0 |
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 1 |
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 2 |
| 50% | 50% | 50% | 0.1% | 0% | 0% | 0% | 3 |
| 50% | 50% | 50% | 0.1% | 0% | 0% | 0% | 4 |
| 62.5% | 62.4% | 37.5% | 0.1% | 0% | 0% | 0% | 5 |
| 66.7% | 62.4% | 31.2% | 0.1% | 0% | 6.2% | 0% | 6 |
| 75% | 65.6% | 21.9% | 0.1% | 0% | 12.5% | 0% | 7 |
| 80% | 68.7% | 17.2% | 0.1% | 0% | 14% | 0% | 8 |
| 85.7% | 70.2% | 11.7% | 0.1% | 0% | 18% | 0% | 9 |
| 88.9% | 71.8% | 9% | 0.1% | 0% | 19.1% | 0% | 10 |
| 92.3% | 72.6% | 6% | 0.1% | 0% | 21.3% | 0% | 11 |
| 94.1% | 73.4% | 4.6% | 0.1% | 0% | 22% | 0% | 12 |
Compiled 9 to 6 computations (33.3% saved)
ival-mult, time spent: 139.0ms, 86.0% of total-timeival-add, time spent: 17.0ms, 10.0% of total-timeival-sqrt, time spent: 5.0ms, 3.0% of total-timeconst, time spent: 1.0ms, 1.0% of total-time| 2.0s | 8256× | 256 | valid |
| 67.0ms | 328× | 256 | invalid |
ival-mult, time spent: 196.0ms, 37.0% of total-timeival-add, time spent: 175.0ms, 33.0% of total-timeival-sqrt, time spent: 140.0ms, 27.0% of total-timeconst, time spent: 17.0ms, 3.0% of total-time| 1× | egg-herbie |
| 110× | fma-neg |
| 78× | fma-define |
| 30× | sub-neg |
| 18× | associate--r+ |
| 17× | associate-+l- |
| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 97 | 0 | - | 0 | - | (sqrt.f64 (+.f64 (*.f64 x x) y)) |
| 0 | 0 | - | 0 | - | x |
| 0 | 0 | - | 0 | - | (*.f64 x x) |
| 0 | 0 | - | 0 | - | y |
| 0 | 0 | - | 0 | - | (+.f64 (*.f64 x x) y) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 23 | 170 |
| 1 | 46 | 170 |
| 2 | 83 | 170 |
| 3 | 162 | 170 |
| 4 | 268 | 170 |
| 5 | 361 | 170 |
| 6 | 458 | 170 |
| 7 | 512 | 170 |
| 8 | 526 | 170 |
| 9 | 529 | 170 |
| 1× | saturated |
| Inputs |
|---|
(sqrt.f64 (+.f64 (*.f64 x x) y)) |
(sqrt.f64 (+.f64 (*.f64 x x) y)) |
(sqrt.f64 (+.f64 (*.f64 (neg.f64 x) (neg.f64 x)) y)) |
(sqrt.f64 (+.f64 (*.f64 x x) (neg.f64 y))) |
(neg.f64 (sqrt.f64 (+.f64 (*.f64 (neg.f64 x) (neg.f64 x)) y))) |
(neg.f64 (sqrt.f64 (+.f64 (*.f64 x x) (neg.f64 y)))) |
(sqrt.f64 (+.f64 (*.f64 y y) x)) |
| Outputs |
|---|
(sqrt.f64 (+.f64 (*.f64 x x) y)) |
(sqrt.f64 (fma.f64 x x y)) |
(sqrt.f64 (+.f64 (*.f64 x x) y)) |
(sqrt.f64 (fma.f64 x x y)) |
(sqrt.f64 (+.f64 (*.f64 (neg.f64 x) (neg.f64 x)) y)) |
(sqrt.f64 (fma.f64 x x y)) |
(sqrt.f64 (+.f64 (*.f64 x x) (neg.f64 y))) |
(sqrt.f64 (-.f64 (*.f64 x x) y)) |
(neg.f64 (sqrt.f64 (+.f64 (*.f64 (neg.f64 x) (neg.f64 x)) y))) |
(neg.f64 (sqrt.f64 (fma.f64 x x y))) |
(neg.f64 (sqrt.f64 (+.f64 (*.f64 x x) (neg.f64 y)))) |
(neg.f64 (sqrt.f64 (-.f64 (*.f64 x x) y))) |
(sqrt.f64 (+.f64 (*.f64 y y) x)) |
(sqrt.f64 (fma.f64 y y x)) |
(abs x)
Compiled 46 to 17 computations (63% saved)
ival-sqrt, time spent: 124.0ms, 61.0% of total-timeival-add, time spent: 70.0ms, 35.0% of total-timeival-mult, time spent: 8.0ms, 4.0% of total-timeconst, time spent: 1.0ms, 0.0% of total-timeCompiled 7 to 4 computations (42.9% saved)
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 64.6% | (sqrt.f64 (+.f64 (*.f64 x x) y)) |
Compiled 8 to 5 computations (37.5% saved)
Found 1 expressions with local error:
| New | Accuracy | Program |
|---|---|---|
| ✓ | 64.6% | (sqrt.f64 (+.f64 (*.f64 x x) y)) |
Compiled 19 to 6 computations (68.4% saved)
ival-sqrt, time spent: 47.0ms, 86.0% of total-timeival-mult, time spent: 4.0ms, 7.0% of total-timeival-add, time spent: 3.0ms, 5.0% of total-timeconst, time spent: 1.0ms, 2.0% of total-time| Inputs |
|---|
#<alt (sqrt.f64 (+.f64 (*.f64 x x) y))> |
| Outputs |
|---|
#<alt (sqrt.f64 y)> |
#<alt (+.f64 (sqrt.f64 y) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))))> |
#<alt (+.f64 (sqrt.f64 y) (*.f64 (pow.f64 x #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))))) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))))> |
#<alt (+.f64 (sqrt.f64 y) (*.f64 (pow.f64 x #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) y))) (*.f64 (pow.f64 x #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))) (*.f64 #s(literal 1/16 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))))))))))> |
#<alt x> |
#<alt (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64))))))> |
#<alt (*.f64 x (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (pow.f64 x #s(literal 4 binary64)))) (*.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64)))))))> |
#<alt (*.f64 x (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (pow.f64 x #s(literal 4 binary64)))) (+.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64)))) (*.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64))))))))> |
#<alt (*.f64 #s(literal -1 binary64) x)> |
#<alt (*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64)))))))> |
#<alt (*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (pow.f64 x #s(literal 4 binary64)))) (*.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64))))))))> |
#<alt (*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (pow.f64 x #s(literal 4 binary64)))) (+.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64)))) (*.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64)))))))))> |
#<alt x> |
#<alt (+.f64 x (*.f64 #s(literal 1/2 binary64) (/.f64 y x)))> |
#<alt (+.f64 x (*.f64 y (+.f64 (*.f64 #s(literal -1/8 binary64) (/.f64 y (pow.f64 x #s(literal 3 binary64)))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) x)))))> |
#<alt (+.f64 x (*.f64 y (+.f64 (*.f64 y (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 y (pow.f64 x #s(literal 5 binary64)))) (*.f64 #s(literal 1/8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) x)))))> |
#<alt (sqrt.f64 y)> |
#<alt (*.f64 y (+.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))))))> |
#<alt (*.f64 y (+.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (+.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))))))))> |
#<alt (*.f64 y (+.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (+.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))))) (+.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (pow.f64 x #s(literal 6 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 7 binary64)))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))))))))> |
#<alt (*.f64 #s(literal -1 binary64) (*.f64 (sqrt.f64 y) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64))))> |
#<alt (*.f64 #s(literal -1 binary64) (*.f64 y (+.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64))))))> |
#<alt (*.f64 #s(literal -1 binary64) (*.f64 y (+.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))))) (+.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)))))))> |
#<alt (*.f64 #s(literal -1 binary64) (*.f64 y (+.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))))) (+.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (/.f64 (pow.f64 x #s(literal 6 binary64)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 7 binary64)))))) (+.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64))))))))> |
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 2.0ms | y | @ | -inf | (sqrt (+ (* x x) y)) |
| 2.0ms | y | @ | inf | (sqrt (+ (* x x) y)) |
| 1.0ms | x | @ | 0 | (sqrt (+ (* x x) y)) |
| 1.0ms | x | @ | inf | (sqrt (+ (* x x) y)) |
| 1.0ms | y | @ | 0 | (sqrt (+ (* x x) y)) |
| 1× | batch-egg-rewrite |
| 507× | log1p-expm1-u |
| 507× | expm1-log1p-u |
| 495× | prod-diff |
| 446× | unpow-prod-down |
| 435× | pow1 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 22 |
| 1 | 118 | 17 |
| 2 | 1457 | 17 |
| 1× | node limit |
| Inputs |
|---|
(sqrt.f64 (+.f64 (*.f64 x x) y)) |
| Outputs |
|---|
(+.f64 #s(literal 0 binary64) (hypot.f64 x (sqrt.f64 y))) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (hypot.f64 x (sqrt.f64 y)))) #s(literal 2 binary64))) (log.f64 (cbrt.f64 (exp.f64 (hypot.f64 x (sqrt.f64 y)))))) |
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 x (sqrt.f64 y))))) (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 x (sqrt.f64 y)))))) |
(-.f64 (exp.f64 (log1p.f64 (hypot.f64 x (sqrt.f64 y)))) #s(literal 1 binary64)) |
(*.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 1 binary64)) |
(*.f64 (hypot.f64 x (sqrt.f64 y)) (log.f64 (exp.f64 #s(literal 1 binary64)))) |
(*.f64 #s(literal 1 binary64) (hypot.f64 x (sqrt.f64 y))) |
(*.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y))) (cbrt.f64 (fma.f64 x x y))) |
(*.f64 (cbrt.f64 (fma.f64 x x y)) (cbrt.f64 (hypot.f64 x (sqrt.f64 y)))) |
(*.f64 (sqrt.f64 (hypot.f64 x (sqrt.f64 y))) (sqrt.f64 (hypot.f64 x (sqrt.f64 y)))) |
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y))) #s(literal 4 binary64))) (pow.f64 (pow.f64 (fma.f64 x x y) #s(literal 5/6 binary64)) #s(literal 1/3 binary64))) |
(*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 x (sqrt.f64 y)))) (pow.f64 (pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 3/2 binary64)) #s(literal 1/2 binary64))) |
(*.f64 (sqrt.f64 (-.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 2 binary64)))) (pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 (pow.f64 x #s(literal 2 binary64)) y)) #s(literal 1/2 binary64))) |
(*.f64 (hypot.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 3/2 binary64))) (pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 y (-.f64 y (pow.f64 x #s(literal 2 binary64))) (pow.f64 x #s(literal 4 binary64)))) #s(literal 1/2 binary64))) |
(*.f64 (pow.f64 #s(literal 1 binary64) #s(literal 1/3 binary64)) (hypot.f64 x (sqrt.f64 y))) |
(*.f64 (pow.f64 (pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (sqrt.f64 (hypot.f64 x (sqrt.f64 y))))) |
(*.f64 (pow.f64 (pow.f64 (fma.f64 x x y) #s(literal 5/6 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y))))) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y)))) #s(literal 2 binary64)) #s(literal 3 binary64)) (cbrt.f64 (hypot.f64 x (sqrt.f64 y)))) |
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y)))) #s(literal 3 binary64)) (pow.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y)))) #s(literal 3 binary64))) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (fma.f64 x x y)) #s(literal 4 binary64)) #s(literal 1/3 binary64)) (cbrt.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y))))) |
(*.f64 (pow.f64 (pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 5/2 binary64)) #s(literal 1/3 binary64)) (cbrt.f64 (sqrt.f64 (hypot.f64 x (sqrt.f64 y))))) |
(/.f64 (sqrt.f64 (-.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 x #s(literal 2 binary64)) y))) |
(/.f64 (hypot.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 3/2 binary64))) (sqrt.f64 (fma.f64 y (-.f64 y (pow.f64 x #s(literal 2 binary64))) (pow.f64 x #s(literal 4 binary64))))) |
(pow.f64 (fma.f64 x x y) #s(literal 1/2 binary64)) |
(pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 1 binary64)) |
(pow.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y))) #s(literal 3 binary64)) |
(pow.f64 (cbrt.f64 (fma.f64 x x y)) #s(literal 3/2 binary64)) |
(pow.f64 (pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 3 binary64)) #s(literal 1/3 binary64)) |
(pow.f64 (pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) |
(pow.f64 (pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 6 binary64)) #s(literal 1/6 binary64)) |
(pow.f64 (sqrt.f64 (hypot.f64 x (sqrt.f64 y))) #s(literal 2 binary64)) |
(fabs.f64 (hypot.f64 x (sqrt.f64 y))) |
(log.f64 (exp.f64 (hypot.f64 x (sqrt.f64 y)))) |
(cbrt.f64 (pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 3 binary64))) |
(expm1.f64 (log1p.f64 (hypot.f64 x (sqrt.f64 y)))) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(log1p.f64 (expm1.f64 (hypot.f64 x (sqrt.f64 y)))) |
(exp.f64 (log.f64 (hypot.f64 x (sqrt.f64 y)))) |
(exp.f64 (*.f64 (log.f64 (fma.f64 x x y)) #s(literal 1/2 binary64))) |
(exp.f64 (*.f64 (log.f64 (hypot.f64 x (sqrt.f64 y))) #s(literal 1 binary64))) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y)))) #s(literal 3 binary64))) |
(exp.f64 (*.f64 (*.f64 #s(literal 3 binary64) (log.f64 (hypot.f64 x (sqrt.f64 y)))) #s(literal 1/3 binary64))) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (hypot.f64 x (sqrt.f64 y)))) #s(literal 2 binary64))) |
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 x x y)) #s(literal 1 binary64)) #s(literal 1/2 binary64))) |
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 x x y)) #s(literal 1/2 binary64)) #s(literal 1 binary64))) |
(exp.f64 (*.f64 (*.f64 (log.f64 (hypot.f64 x (sqrt.f64 y))) #s(literal 1 binary64)) #s(literal 1 binary64))) |
| 1× | egg-herbie |
| 793× | fma-define |
| 622× | associate-*r* |
| 543× | associate-*l* |
| 336× | distribute-lft-neg-in |
| 297× | distribute-lft-in |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 249 | 3043 |
| 1 | 581 | 2953 |
| 2 | 1727 | 2921 |
| 3 | 6174 | 2901 |
| 1× | node limit |
| Inputs |
|---|
(sqrt.f64 y) |
(+.f64 (sqrt.f64 y) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))) |
(+.f64 (sqrt.f64 y) (*.f64 (pow.f64 x #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))))) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))))) |
(+.f64 (sqrt.f64 y) (*.f64 (pow.f64 x #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) y))) (*.f64 (pow.f64 x #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))) (*.f64 #s(literal 1/16 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64))))))))))) |
x |
(*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64)))))) |
(*.f64 x (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (pow.f64 x #s(literal 4 binary64)))) (*.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64))))))) |
(*.f64 x (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (pow.f64 x #s(literal 4 binary64)))) (+.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64)))) (*.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64)))))))) |
(*.f64 #s(literal -1 binary64) x) |
(*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64))))))) |
(*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (pow.f64 x #s(literal 4 binary64)))) (*.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64)))))))) |
(*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (pow.f64 x #s(literal 4 binary64)))) (+.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64)))) (*.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64))))))))) |
x |
(+.f64 x (*.f64 #s(literal 1/2 binary64) (/.f64 y x))) |
(+.f64 x (*.f64 y (+.f64 (*.f64 #s(literal -1/8 binary64) (/.f64 y (pow.f64 x #s(literal 3 binary64)))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) x))))) |
(+.f64 x (*.f64 y (+.f64 (*.f64 y (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 y (pow.f64 x #s(literal 5 binary64)))) (*.f64 #s(literal 1/8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) x))))) |
(sqrt.f64 y) |
(*.f64 y (+.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))))))) |
(*.f64 y (+.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (+.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))))))) |
(*.f64 y (+.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (+.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))))) (+.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (pow.f64 x #s(literal 6 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 7 binary64)))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))))))))) |
(*.f64 #s(literal -1 binary64) (*.f64 (sqrt.f64 y) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)))) |
(*.f64 #s(literal -1 binary64) (*.f64 y (+.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)))))) |
(*.f64 #s(literal -1 binary64) (*.f64 y (+.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))))) (+.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64))))))) |
(*.f64 #s(literal -1 binary64) (*.f64 y (+.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))))) (+.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (/.f64 (pow.f64 x #s(literal 6 binary64)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 7 binary64)))))) (+.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)))))))) |
(+.f64 #s(literal 0 binary64) (hypot.f64 x (sqrt.f64 y))) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (hypot.f64 x (sqrt.f64 y)))) #s(literal 2 binary64))) (log.f64 (cbrt.f64 (exp.f64 (hypot.f64 x (sqrt.f64 y)))))) |
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 x (sqrt.f64 y))))) (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 x (sqrt.f64 y)))))) |
(-.f64 (exp.f64 (log1p.f64 (hypot.f64 x (sqrt.f64 y)))) #s(literal 1 binary64)) |
(*.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 1 binary64)) |
(*.f64 (hypot.f64 x (sqrt.f64 y)) (log.f64 (exp.f64 #s(literal 1 binary64)))) |
(*.f64 #s(literal 1 binary64) (hypot.f64 x (sqrt.f64 y))) |
(*.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y))) (cbrt.f64 (fma.f64 x x y))) |
(*.f64 (cbrt.f64 (fma.f64 x x y)) (cbrt.f64 (hypot.f64 x (sqrt.f64 y)))) |
(*.f64 (sqrt.f64 (hypot.f64 x (sqrt.f64 y))) (sqrt.f64 (hypot.f64 x (sqrt.f64 y)))) |
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y))) #s(literal 4 binary64))) (pow.f64 (pow.f64 (fma.f64 x x y) #s(literal 5/6 binary64)) #s(literal 1/3 binary64))) |
(*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 x (sqrt.f64 y)))) (pow.f64 (pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 3/2 binary64)) #s(literal 1/2 binary64))) |
(*.f64 (sqrt.f64 (-.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 2 binary64)))) (pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 (pow.f64 x #s(literal 2 binary64)) y)) #s(literal 1/2 binary64))) |
(*.f64 (hypot.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 3/2 binary64))) (pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 y (-.f64 y (pow.f64 x #s(literal 2 binary64))) (pow.f64 x #s(literal 4 binary64)))) #s(literal 1/2 binary64))) |
(*.f64 (pow.f64 #s(literal 1 binary64) #s(literal 1/3 binary64)) (hypot.f64 x (sqrt.f64 y))) |
(*.f64 (pow.f64 (pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (sqrt.f64 (hypot.f64 x (sqrt.f64 y))))) |
(*.f64 (pow.f64 (pow.f64 (fma.f64 x x y) #s(literal 5/6 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y))))) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y)))) #s(literal 2 binary64)) #s(literal 3 binary64)) (cbrt.f64 (hypot.f64 x (sqrt.f64 y)))) |
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y)))) #s(literal 3 binary64)) (pow.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y)))) #s(literal 3 binary64))) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (fma.f64 x x y)) #s(literal 4 binary64)) #s(literal 1/3 binary64)) (cbrt.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y))))) |
(*.f64 (pow.f64 (pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 5/2 binary64)) #s(literal 1/3 binary64)) (cbrt.f64 (sqrt.f64 (hypot.f64 x (sqrt.f64 y))))) |
(/.f64 (sqrt.f64 (-.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 x #s(literal 2 binary64)) y))) |
(/.f64 (hypot.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 3/2 binary64))) (sqrt.f64 (fma.f64 y (-.f64 y (pow.f64 x #s(literal 2 binary64))) (pow.f64 x #s(literal 4 binary64))))) |
(pow.f64 (fma.f64 x x y) #s(literal 1/2 binary64)) |
(pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 1 binary64)) |
(pow.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y))) #s(literal 3 binary64)) |
(pow.f64 (cbrt.f64 (fma.f64 x x y)) #s(literal 3/2 binary64)) |
(pow.f64 (pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 3 binary64)) #s(literal 1/3 binary64)) |
(pow.f64 (pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) |
(pow.f64 (pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 6 binary64)) #s(literal 1/6 binary64)) |
(pow.f64 (sqrt.f64 (hypot.f64 x (sqrt.f64 y))) #s(literal 2 binary64)) |
(fabs.f64 (hypot.f64 x (sqrt.f64 y))) |
(log.f64 (exp.f64 (hypot.f64 x (sqrt.f64 y)))) |
(cbrt.f64 (pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 3 binary64))) |
(expm1.f64 (log1p.f64 (hypot.f64 x (sqrt.f64 y)))) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(log1p.f64 (expm1.f64 (hypot.f64 x (sqrt.f64 y)))) |
(exp.f64 (log.f64 (hypot.f64 x (sqrt.f64 y)))) |
(exp.f64 (*.f64 (log.f64 (fma.f64 x x y)) #s(literal 1/2 binary64))) |
(exp.f64 (*.f64 (log.f64 (hypot.f64 x (sqrt.f64 y))) #s(literal 1 binary64))) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y)))) #s(literal 3 binary64))) |
(exp.f64 (*.f64 (*.f64 #s(literal 3 binary64) (log.f64 (hypot.f64 x (sqrt.f64 y)))) #s(literal 1/3 binary64))) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (hypot.f64 x (sqrt.f64 y)))) #s(literal 2 binary64))) |
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 x x y)) #s(literal 1 binary64)) #s(literal 1/2 binary64))) |
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 x x y)) #s(literal 1/2 binary64)) #s(literal 1 binary64))) |
(exp.f64 (*.f64 (*.f64 (log.f64 (hypot.f64 x (sqrt.f64 y))) #s(literal 1 binary64)) #s(literal 1 binary64))) |
| Outputs |
|---|
(sqrt.f64 y) |
(+.f64 (sqrt.f64 y) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))) |
(fma.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) y))) (sqrt.f64 y)) |
(+.f64 (sqrt.f64 y) (*.f64 (pow.f64 x #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))))) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))))) |
(+.f64 (sqrt.f64 y) (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/8 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))))) |
(fma.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (*.f64 (pow.f64 x #s(literal 2 binary64)) #s(literal -1/8 binary64)))) (sqrt.f64 y)) |
(fma.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (*.f64 (pow.f64 x #s(literal 2 binary64)) (*.f64 #s(literal -1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))))) (sqrt.f64 y)) |
(+.f64 (sqrt.f64 y) (*.f64 (pow.f64 x #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) y))) (*.f64 (pow.f64 x #s(literal 2 binary64)) (+.f64 (*.f64 #s(literal -1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))) (*.f64 #s(literal 1/16 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64))))))))))) |
(+.f64 (sqrt.f64 y) (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (*.f64 #s(literal 1/16 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64))))))))))) |
(fma.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (*.f64 (pow.f64 x #s(literal 2 binary64)) #s(literal 1/16 binary64)))) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))) (sqrt.f64 y)) |
(fma.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) y))) (fma.f64 (fma.f64 (pow.f64 x #s(literal 2 binary64)) (*.f64 #s(literal 1/16 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64))))) (*.f64 #s(literal -1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))))) (pow.f64 x #s(literal 4 binary64)) (sqrt.f64 y))) |
x |
(*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64)))))) |
(*.f64 x (fma.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64))) #s(literal 1 binary64))) |
(+.f64 x (*.f64 #s(literal 1 binary64) (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(*.f64 x (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (pow.f64 x #s(literal 4 binary64)))) (*.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64))))))) |
(*.f64 x (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (pow.f64 x #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64))))))) |
(*.f64 x (+.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64))) #s(literal 1 binary64)) (/.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 y #s(literal 2 binary64))) (pow.f64 x #s(literal 4 binary64))))) |
(*.f64 x (fma.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64))) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (pow.f64 x #s(literal 4 binary64))) #s(literal 1 binary64)))) |
(*.f64 x (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (pow.f64 x #s(literal 4 binary64)))) (+.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64)))) (*.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64)))))))) |
(*.f64 x (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (pow.f64 x #s(literal 4 binary64))) (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64)))))))) |
(*.f64 x (+.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (pow.f64 x #s(literal 4 binary64))) (*.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64))))) (fma.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64))) #s(literal 1 binary64)))) |
(fma.f64 x (fma.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64))) (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64))) (*.f64 (pow.f64 y #s(literal 2 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 x #s(literal 4 binary64)))))) x) |
(*.f64 #s(literal -1 binary64) x) |
(neg.f64 x) |
(*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64))))))) |
(*.f64 (neg.f64 x) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64)))))) |
(*.f64 x (neg.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64))) #s(literal 1 binary64)))) |
(*.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64))) #s(literal 1 binary64)) (neg.f64 x)) |
(-.f64 (*.f64 #s(literal -1 binary64) (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) x) |
(*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (pow.f64 x #s(literal 4 binary64)))) (*.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64)))))))) |
(*.f64 (neg.f64 x) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (pow.f64 x #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64))))))) |
(*.f64 (+.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64))) #s(literal 1 binary64)) (/.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 y #s(literal 2 binary64))) (pow.f64 x #s(literal 4 binary64)))) (neg.f64 x)) |
(*.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64))) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (pow.f64 x #s(literal 4 binary64))) #s(literal 1 binary64))) (neg.f64 x)) |
(*.f64 x (-.f64 #s(literal -1 binary64) (fma.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64))) (*.f64 (pow.f64 y #s(literal 2 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 x #s(literal 4 binary64))))))) |
(*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (pow.f64 x #s(literal 4 binary64)))) (+.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64)))) (*.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64))))))))) |
(*.f64 (neg.f64 x) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (pow.f64 x #s(literal 4 binary64))) (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64)))))))) |
(*.f64 x (neg.f64 (+.f64 (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (pow.f64 x #s(literal 4 binary64))) (*.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64))))) (fma.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64))) #s(literal 1 binary64))))) |
(neg.f64 (fma.f64 x (fma.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64))) (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64))) (*.f64 (pow.f64 y #s(literal 2 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 x #s(literal 4 binary64)))))) x)) |
(*.f64 x (-.f64 #s(literal -1 binary64) (fma.f64 #s(literal 1/2 binary64) (/.f64 y (pow.f64 x #s(literal 2 binary64))) (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64))) (*.f64 (pow.f64 y #s(literal 2 binary64)) (/.f64 #s(literal -1/8 binary64) (pow.f64 x #s(literal 4 binary64)))))))) |
x |
(+.f64 x (*.f64 #s(literal 1/2 binary64) (/.f64 y x))) |
(fma.f64 #s(literal 1/2 binary64) (/.f64 y x) x) |
(+.f64 x (*.f64 y (+.f64 (*.f64 #s(literal -1/8 binary64) (/.f64 y (pow.f64 x #s(literal 3 binary64)))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) x))))) |
(+.f64 x (*.f64 y (fma.f64 #s(literal -1/8 binary64) (/.f64 y (pow.f64 x #s(literal 3 binary64))) (/.f64 #s(literal 1/2 binary64) x)))) |
(fma.f64 y (fma.f64 #s(literal -1/8 binary64) (/.f64 y (pow.f64 x #s(literal 3 binary64))) (/.f64 #s(literal 1/2 binary64) x)) x) |
(+.f64 x (*.f64 y (+.f64 (*.f64 y (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 y (pow.f64 x #s(literal 5 binary64)))) (*.f64 #s(literal 1/8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) x))))) |
(+.f64 x (*.f64 y (fma.f64 y (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 y (pow.f64 x #s(literal 5 binary64)))) (/.f64 #s(literal 1/8 binary64) (pow.f64 x #s(literal 3 binary64)))) (/.f64 #s(literal 1/2 binary64) x)))) |
(fma.f64 y (fma.f64 y (fma.f64 #s(literal 1/16 binary64) (/.f64 y (pow.f64 x #s(literal 5 binary64))) (/.f64 #s(literal -1/8 binary64) (pow.f64 x #s(literal 3 binary64)))) (/.f64 #s(literal 1/2 binary64) x)) x) |
(fma.f64 y (fma.f64 y (fma.f64 y (/.f64 #s(literal 1/16 binary64) (pow.f64 x #s(literal 5 binary64))) (/.f64 #s(literal -1/8 binary64) (pow.f64 x #s(literal 3 binary64)))) (/.f64 #s(literal 1/2 binary64) x)) x) |
(sqrt.f64 y) |
(*.f64 y (+.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))))))) |
(*.f64 y (fma.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))) |
(*.f64 y (+.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (+.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))))))) |
(*.f64 y (+.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (fma.f64 #s(literal -1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (pow.f64 x #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))))))) |
(*.f64 y (+.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (fma.f64 #s(literal -1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (pow.f64 x #s(literal 4 binary64))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (*.f64 #s(literal 1/2 binary64) (pow.f64 x #s(literal 2 binary64))))))) |
(*.f64 y (fma.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))) (fma.f64 #s(literal -1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (pow.f64 x #s(literal 4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))) |
(*.f64 y (+.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (+.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))))) (+.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (pow.f64 x #s(literal 6 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 7 binary64)))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))))))))) |
(*.f64 y (+.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (fma.f64 #s(literal -1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (pow.f64 x #s(literal 4 binary64))) (fma.f64 #s(literal 1/16 binary64) (*.f64 (pow.f64 x #s(literal 6 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 7 binary64))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))))))))) |
(*.f64 y (+.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (pow.f64 x #s(literal 4 binary64))) (*.f64 (pow.f64 x #s(literal 6 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 7 binary64)))) #s(literal 1/16 binary64)))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))) (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))) |
(*.f64 y (+.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (fma.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))) (fma.f64 #s(literal -1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (pow.f64 x #s(literal 4 binary64))) (*.f64 #s(literal 1/16 binary64) (*.f64 (pow.f64 x #s(literal 6 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 7 binary64)))))))))) |
(*.f64 #s(literal -1 binary64) (*.f64 (sqrt.f64 y) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)))) |
(sqrt.f64 y) |
(*.f64 #s(literal -1 binary64) (*.f64 y (+.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)))))) |
(neg.f64 (*.f64 y (fma.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)))))) |
(*.f64 y (neg.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) #s(literal -1 binary64))))) |
(*.f64 y (neg.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))))) |
(*.f64 y (+.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (*.f64 #s(literal -1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))))))) |
(*.f64 #s(literal -1 binary64) (*.f64 y (+.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))))) (+.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64))))))) |
(neg.f64 (*.f64 y (fma.f64 #s(literal -1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (/.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64))))))) |
(*.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (/.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -1 binary64))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) #s(literal -1 binary64)))) (neg.f64 y)) |
(*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 1/8 binary64)) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))) (neg.f64 y)) |
(*.f64 y (-.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (fma.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 1/8 binary64)))))) |
(*.f64 #s(literal -1 binary64) (*.f64 y (+.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (/.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))))) (+.f64 (*.f64 #s(literal 1/16 binary64) (*.f64 (/.f64 (pow.f64 x #s(literal 6 binary64)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 7 binary64)))))) (+.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)))))))) |
(neg.f64 (*.f64 y (fma.f64 #s(literal -1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (/.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)))) (fma.f64 #s(literal 1/16 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 7 binary64)))) (/.f64 (pow.f64 x #s(literal 6 binary64)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64)))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 2 binary64)))))))) |
(*.f64 y (neg.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (/.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -1 binary64))) (fma.f64 #s(literal 1/16 binary64) (*.f64 (pow.f64 x #s(literal 6 binary64)) (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 7 binary64)))) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64)))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) #s(literal -1 binary64))))))) |
(*.f64 y (neg.f64 (fma.f64 #s(literal 1/16 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 7 binary64)))) (/.f64 (pow.f64 x #s(literal 6 binary64)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64)))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 1/8 binary64)) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))))))) |
(*.f64 y (-.f64 (+.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (*.f64 #s(literal -1/2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))))) (fma.f64 #s(literal 1/16 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 7 binary64)))) (/.f64 (pow.f64 x #s(literal 6 binary64)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 1/8 binary64)))))) |
(+.f64 #s(literal 0 binary64) (hypot.f64 x (sqrt.f64 y))) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (hypot.f64 x (sqrt.f64 y)))) #s(literal 2 binary64))) (log.f64 (cbrt.f64 (exp.f64 (hypot.f64 x (sqrt.f64 y)))))) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (hypot.f64 (sqrt.f64 y) x))) #s(literal 2 binary64))) (log.f64 (cbrt.f64 (exp.f64 (hypot.f64 (sqrt.f64 y) x))))) |
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 x (sqrt.f64 y))))) (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 x (sqrt.f64 y)))))) |
(*.f64 #s(literal 2 binary64) (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 x (sqrt.f64 y)))))) |
(*.f64 #s(literal 2 binary64) (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 (sqrt.f64 y) x))))) |
(-.f64 (exp.f64 (log1p.f64 (hypot.f64 x (sqrt.f64 y)))) #s(literal 1 binary64)) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(*.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 1 binary64)) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(*.f64 (hypot.f64 x (sqrt.f64 y)) (log.f64 (exp.f64 #s(literal 1 binary64)))) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(*.f64 #s(literal 1 binary64) (hypot.f64 x (sqrt.f64 y))) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(*.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y))) (cbrt.f64 (fma.f64 x x y))) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(*.f64 (cbrt.f64 (fma.f64 x x y)) (cbrt.f64 (hypot.f64 x (sqrt.f64 y)))) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(*.f64 (sqrt.f64 (hypot.f64 x (sqrt.f64 y))) (sqrt.f64 (hypot.f64 x (sqrt.f64 y)))) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y))) #s(literal 4 binary64))) (pow.f64 (pow.f64 (fma.f64 x x y) #s(literal 5/6 binary64)) #s(literal 1/3 binary64))) |
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y))) #s(literal 4 binary64))) (cbrt.f64 (pow.f64 (fma.f64 x x y) #s(literal 5/6 binary64)))) |
(*.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sqrt.f64 y) x)) #s(literal 4 binary64))) (cbrt.f64 (pow.f64 (fma.f64 x x y) #s(literal 5/6 binary64)))) |
(*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 x (sqrt.f64 y)))) (pow.f64 (pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 3/2 binary64)) #s(literal 1/2 binary64))) |
(*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 x (sqrt.f64 y)))) (sqrt.f64 (pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 3/2 binary64)))) |
(*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 (sqrt.f64 y) x))) (sqrt.f64 (pow.f64 (hypot.f64 (sqrt.f64 y) x) #s(literal 3/2 binary64)))) |
(*.f64 (sqrt.f64 (-.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 2 binary64)))) (pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 (pow.f64 x #s(literal 2 binary64)) y)) #s(literal 1/2 binary64))) |
(*.f64 (sqrt.f64 (-.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 2 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (pow.f64 x #s(literal 2 binary64)) y)))) |
(*.f64 (hypot.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 3/2 binary64))) (pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 y (-.f64 y (pow.f64 x #s(literal 2 binary64))) (pow.f64 x #s(literal 4 binary64)))) #s(literal 1/2 binary64))) |
(*.f64 (hypot.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 3/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 y (-.f64 y (pow.f64 x #s(literal 2 binary64))) (pow.f64 x #s(literal 4 binary64)))))) |
(*.f64 (pow.f64 #s(literal 1 binary64) #s(literal 1/3 binary64)) (hypot.f64 x (sqrt.f64 y))) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(*.f64 (pow.f64 (pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (sqrt.f64 (hypot.f64 x (sqrt.f64 y))))) |
(*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 x (sqrt.f64 y)))) (sqrt.f64 (pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 3/2 binary64)))) |
(*.f64 (sqrt.f64 (sqrt.f64 (hypot.f64 (sqrt.f64 y) x))) (sqrt.f64 (pow.f64 (hypot.f64 (sqrt.f64 y) x) #s(literal 3/2 binary64)))) |
(*.f64 (pow.f64 (pow.f64 (fma.f64 x x y) #s(literal 5/6 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y))))) |
(*.f64 (sqrt.f64 (pow.f64 (fma.f64 x x y) #s(literal 5/6 binary64))) (sqrt.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y))))) |
(*.f64 (sqrt.f64 (pow.f64 (fma.f64 x x y) #s(literal 5/6 binary64))) (sqrt.f64 (cbrt.f64 (hypot.f64 (sqrt.f64 y) x)))) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y)))) #s(literal 2 binary64)) #s(literal 3 binary64)) (cbrt.f64 (hypot.f64 x (sqrt.f64 y)))) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y)))) #s(literal 3 binary64)) (pow.f64 (sqrt.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y)))) #s(literal 3 binary64))) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (fma.f64 x x y)) #s(literal 4 binary64)) #s(literal 1/3 binary64)) (cbrt.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y))))) |
(*.f64 (cbrt.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y)))) (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x x y)) #s(literal 4 binary64)))) |
(*.f64 (cbrt.f64 (cbrt.f64 (hypot.f64 (sqrt.f64 y) x))) (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x x y)) #s(literal 4 binary64)))) |
(*.f64 (cbrt.f64 (cbrt.f64 (hypot.f64 (sqrt.f64 y) x))) (cbrt.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sqrt.f64 y) x)) #s(literal 8 binary64)))) |
(*.f64 (pow.f64 (pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 5/2 binary64)) #s(literal 1/3 binary64)) (cbrt.f64 (sqrt.f64 (hypot.f64 x (sqrt.f64 y))))) |
(*.f64 (cbrt.f64 (pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 5/2 binary64))) (cbrt.f64 (sqrt.f64 (hypot.f64 x (sqrt.f64 y))))) |
(*.f64 (cbrt.f64 (pow.f64 (hypot.f64 (sqrt.f64 y) x) #s(literal 5/2 binary64))) (cbrt.f64 (sqrt.f64 (hypot.f64 (sqrt.f64 y) x)))) |
(/.f64 (sqrt.f64 (-.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 x #s(literal 2 binary64)) y))) |
(/.f64 (hypot.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 3/2 binary64))) (sqrt.f64 (fma.f64 y (-.f64 y (pow.f64 x #s(literal 2 binary64))) (pow.f64 x #s(literal 4 binary64))))) |
(pow.f64 (fma.f64 x x y) #s(literal 1/2 binary64)) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 1 binary64)) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(pow.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y))) #s(literal 3 binary64)) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(pow.f64 (cbrt.f64 (fma.f64 x x y)) #s(literal 3/2 binary64)) |
(pow.f64 (pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 3 binary64)) #s(literal 1/3 binary64)) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(pow.f64 (pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 4 binary64)) #s(literal 1/4 binary64)) |
(pow.f64 (pow.f64 (hypot.f64 (sqrt.f64 y) x) #s(literal 4 binary64)) #s(literal 1/4 binary64)) |
(pow.f64 (pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 6 binary64)) #s(literal 1/6 binary64)) |
(pow.f64 (pow.f64 (hypot.f64 (sqrt.f64 y) x) #s(literal 6 binary64)) #s(literal 1/6 binary64)) |
(pow.f64 (sqrt.f64 (hypot.f64 x (sqrt.f64 y))) #s(literal 2 binary64)) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(fabs.f64 (hypot.f64 x (sqrt.f64 y))) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(log.f64 (exp.f64 (hypot.f64 x (sqrt.f64 y)))) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(cbrt.f64 (pow.f64 (hypot.f64 x (sqrt.f64 y)) #s(literal 3 binary64))) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(expm1.f64 (log1p.f64 (hypot.f64 x (sqrt.f64 y)))) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(hypot.f64 (sqrt.f64 y) x) |
(hypot.f64 x (sqrt.f64 y)) |
(log1p.f64 (expm1.f64 (hypot.f64 x (sqrt.f64 y)))) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(exp.f64 (log.f64 (hypot.f64 x (sqrt.f64 y)))) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(exp.f64 (*.f64 (log.f64 (fma.f64 x x y)) #s(literal 1/2 binary64))) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(exp.f64 (*.f64 (log.f64 (hypot.f64 x (sqrt.f64 y))) #s(literal 1 binary64))) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (hypot.f64 x (sqrt.f64 y)))) #s(literal 3 binary64))) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(exp.f64 (*.f64 (*.f64 #s(literal 3 binary64) (log.f64 (hypot.f64 x (sqrt.f64 y)))) #s(literal 1/3 binary64))) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (hypot.f64 x (sqrt.f64 y)))) #s(literal 2 binary64))) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 x x y)) #s(literal 1 binary64)) #s(literal 1/2 binary64))) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 x x y)) #s(literal 1/2 binary64)) #s(literal 1 binary64))) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
(exp.f64 (*.f64 (*.f64 (log.f64 (hypot.f64 x (sqrt.f64 y))) #s(literal 1 binary64)) #s(literal 1 binary64))) |
(hypot.f64 x (sqrt.f64 y)) |
(hypot.f64 (sqrt.f64 y) x) |
Compiled 2606 to 1769 computations (32.1% saved)
5 alts after pruning (4 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 136 | 4 | 140 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 136 | 5 | 141 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 69.8% | (+.f64 x (*.f64 #s(literal 1 binary64) (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
| ▶ | 69.8% | (+.f64 x (*.f64 #s(literal 1/2 binary64) (/.f64 y x))) |
| ✓ | 64.6% | (sqrt.f64 (+.f64 (*.f64 x x) y)) |
| ▶ | 33.5% | (sqrt.f64 y) |
| ▶ | 69.2% | x |
Compiled 35 to 24 computations (31.4% saved)
Found 2 expressions with local error:
| New | Accuracy | Program |
|---|---|---|
| ✓ | 99.8% | (*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
| ✓ | 100.0% | (*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
Compiled 53 to 29 computations (45.3% saved)
ival-mult, time spent: 118.0ms, 79.0% of total-timeival-div, time spent: 19.0ms, 13.0% of total-timeival-add, time spent: 5.0ms, 3.0% of total-timeival-sqrt, time spent: 4.0ms, 3.0% of total-timeconst, time spent: 4.0ms, 3.0% of total-time| Inputs |
|---|
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 y (/.f64 #s(literal 1/2 binary64) x))> |
| Outputs |
|---|
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | y | @ | inf | (* 1/2 (/ y x)) |
| 1.0ms | y | @ | 0 | (* 1/2 (/ y x)) |
| 1.0ms | x | @ | 0 | (* 1/2 (/ y x)) |
| 1.0ms | x | @ | inf | (* 1/2 (/ y x)) |
| 0.0ms | y | @ | -inf | (* 1/2 (/ y x)) |
| 1× | batch-egg-rewrite |
| 613× | unpow-prod-down |
| 593× | log1p-expm1-u |
| 593× | expm1-log1p-u |
| 346× | log-prod |
| 308× | pow1 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 12 | 38 |
| 1 | 141 | 38 |
| 2 | 1899 | 38 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
| Outputs |
|---|
(+.f64 #s(literal 0 binary64) (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))) #s(literal 2 binary64))) (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))))) |
(+.f64 (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x))))) (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))))) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) #s(literal 1 binary64)) |
(/.f64 #s(literal 1/2 binary64) (/.f64 x y)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(/.f64 #s(literal 1 binary64) (/.f64 x (*.f64 #s(literal 1/2 binary64) y))) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(/.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) y)) (neg.f64 x)) |
(/.f64 (*.f64 y #s(literal -1/2 binary64)) (neg.f64 x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) (neg.f64 y)) (neg.f64 x)) |
(/.f64 (*.f64 #s(literal -1/2 binary64) y) (neg.f64 x)) |
(/.f64 (*.f64 (neg.f64 y) #s(literal 1/2 binary64)) (neg.f64 x)) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) #s(literal 1 binary64)) x) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) (pow.f64 (cbrt.f64 x) #s(literal 2 binary64))) (cbrt.f64 x)) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) (sqrt.f64 x)) (sqrt.f64 x)) |
(pow.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)) #s(literal 1 binary64)) |
(pow.f64 (cbrt.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) #s(literal 3 binary64)) |
(pow.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)) |
(pow.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)) #s(literal 3 binary64)) #s(literal 1/3 binary64)) |
(pow.f64 (sqrt.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) #s(literal 2 binary64)) |
(pow.f64 (/.f64 x (*.f64 #s(literal 1/2 binary64) y)) #s(literal -1 binary64)) |
(sqrt.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64))) |
(log.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))) |
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))))) |
(cbrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)) #s(literal 3 binary64))) |
(expm1.f64 (log1p.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) |
(log1p.f64 (expm1.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) |
(exp.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) |
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) #s(literal 1 binary64))) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) #s(literal 3 binary64))) |
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)) #s(literal 3 binary64))) #s(literal 1/3 binary64))) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) #s(literal 2 binary64))) |
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) #s(literal 1 binary64)) #s(literal 1 binary64))) |
(+.f64 #s(literal 0 binary64) (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))) #s(literal 2 binary64))) (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))))) |
(+.f64 (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x))))) (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))))) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) #s(literal 1 binary64)) |
(/.f64 #s(literal 1/2 binary64) (/.f64 x y)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(/.f64 #s(literal 1 binary64) (/.f64 x (*.f64 #s(literal 1/2 binary64) y))) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(/.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) y)) (neg.f64 x)) |
(/.f64 (*.f64 y #s(literal -1/2 binary64)) (neg.f64 x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) (neg.f64 y)) (neg.f64 x)) |
(/.f64 (*.f64 #s(literal -1/2 binary64) y) (neg.f64 x)) |
(/.f64 (*.f64 (neg.f64 y) #s(literal 1/2 binary64)) (neg.f64 x)) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) #s(literal 1 binary64)) x) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) (pow.f64 (cbrt.f64 x) #s(literal 2 binary64))) (cbrt.f64 x)) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) (sqrt.f64 x)) (sqrt.f64 x)) |
(pow.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)) #s(literal 1 binary64)) |
(pow.f64 (cbrt.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) #s(literal 3 binary64)) |
(pow.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)) |
(pow.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)) #s(literal 3 binary64)) #s(literal 1/3 binary64)) |
(pow.f64 (sqrt.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) #s(literal 2 binary64)) |
(pow.f64 (/.f64 x (*.f64 #s(literal 1/2 binary64) y)) #s(literal -1 binary64)) |
(sqrt.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64))) |
(log.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))) |
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))))) |
(cbrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)) #s(literal 3 binary64))) |
(expm1.f64 (log1p.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) |
(log1p.f64 (expm1.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) |
(exp.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) |
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) #s(literal 1 binary64))) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) #s(literal 3 binary64))) |
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)) #s(literal 3 binary64))) #s(literal 1/3 binary64))) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) #s(literal 2 binary64))) |
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) #s(literal 1 binary64)) #s(literal 1 binary64))) |
| 1× | egg-herbie |
| 656× | fma-define |
| 390× | fma-neg |
| 390× | *-commutative |
| 381× | distribute-lft-in |
| 327× | exp-prod |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 97 | 1920 |
| 1 | 184 | 1920 |
| 2 | 434 | 1920 |
| 3 | 2213 | 1920 |
| 4 | 7168 | 1920 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(+.f64 #s(literal 0 binary64) (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))) #s(literal 2 binary64))) (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))))) |
(+.f64 (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x))))) (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))))) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) #s(literal 1 binary64)) |
(/.f64 #s(literal 1/2 binary64) (/.f64 x y)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(/.f64 #s(literal 1 binary64) (/.f64 x (*.f64 #s(literal 1/2 binary64) y))) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(/.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) y)) (neg.f64 x)) |
(/.f64 (*.f64 y #s(literal -1/2 binary64)) (neg.f64 x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) (neg.f64 y)) (neg.f64 x)) |
(/.f64 (*.f64 #s(literal -1/2 binary64) y) (neg.f64 x)) |
(/.f64 (*.f64 (neg.f64 y) #s(literal 1/2 binary64)) (neg.f64 x)) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) #s(literal 1 binary64)) x) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) (pow.f64 (cbrt.f64 x) #s(literal 2 binary64))) (cbrt.f64 x)) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) (sqrt.f64 x)) (sqrt.f64 x)) |
(pow.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)) #s(literal 1 binary64)) |
(pow.f64 (cbrt.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) #s(literal 3 binary64)) |
(pow.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)) |
(pow.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)) #s(literal 3 binary64)) #s(literal 1/3 binary64)) |
(pow.f64 (sqrt.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) #s(literal 2 binary64)) |
(pow.f64 (/.f64 x (*.f64 #s(literal 1/2 binary64) y)) #s(literal -1 binary64)) |
(sqrt.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64))) |
(log.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))) |
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))))) |
(cbrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)) #s(literal 3 binary64))) |
(expm1.f64 (log1p.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) |
(log1p.f64 (expm1.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) |
(exp.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) |
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) #s(literal 1 binary64))) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) #s(literal 3 binary64))) |
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)) #s(literal 3 binary64))) #s(literal 1/3 binary64))) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) #s(literal 2 binary64))) |
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) #s(literal 1 binary64)) #s(literal 1 binary64))) |
(+.f64 #s(literal 0 binary64) (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))) #s(literal 2 binary64))) (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))))) |
(+.f64 (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x))))) (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))))) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) #s(literal 1 binary64)) |
(/.f64 #s(literal 1/2 binary64) (/.f64 x y)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(/.f64 #s(literal 1 binary64) (/.f64 x (*.f64 #s(literal 1/2 binary64) y))) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(/.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) y)) (neg.f64 x)) |
(/.f64 (*.f64 y #s(literal -1/2 binary64)) (neg.f64 x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) (neg.f64 y)) (neg.f64 x)) |
(/.f64 (*.f64 #s(literal -1/2 binary64) y) (neg.f64 x)) |
(/.f64 (*.f64 (neg.f64 y) #s(literal 1/2 binary64)) (neg.f64 x)) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) #s(literal 1 binary64)) x) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) (pow.f64 (cbrt.f64 x) #s(literal 2 binary64))) (cbrt.f64 x)) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) (sqrt.f64 x)) (sqrt.f64 x)) |
(pow.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)) #s(literal 1 binary64)) |
(pow.f64 (cbrt.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) #s(literal 3 binary64)) |
(pow.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)) |
(pow.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)) #s(literal 3 binary64)) #s(literal 1/3 binary64)) |
(pow.f64 (sqrt.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) #s(literal 2 binary64)) |
(pow.f64 (/.f64 x (*.f64 #s(literal 1/2 binary64) y)) #s(literal -1 binary64)) |
(sqrt.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64))) |
(log.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))) |
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))))) |
(cbrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)) #s(literal 3 binary64))) |
(expm1.f64 (log1p.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) |
(log1p.f64 (expm1.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) |
(exp.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) |
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) #s(literal 1 binary64))) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) #s(literal 3 binary64))) |
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)) #s(literal 3 binary64))) #s(literal 1/3 binary64))) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) #s(literal 2 binary64))) |
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) #s(literal 1 binary64)) #s(literal 1 binary64))) |
| Outputs |
|---|
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(+.f64 #s(literal 0 binary64) (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))) #s(literal 2 binary64))) (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))))) |
(+.f64 (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x))))) (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))))) |
(*.f64 #s(literal 2 binary64) (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))))) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) #s(literal 1 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 #s(literal 1/2 binary64) (/.f64 x y)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 #s(literal 1 binary64) (/.f64 x (*.f64 #s(literal 1/2 binary64) y))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) y)) (neg.f64 x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 (*.f64 y #s(literal -1/2 binary64)) (neg.f64 x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) (neg.f64 y)) (neg.f64 x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 (*.f64 #s(literal -1/2 binary64) y) (neg.f64 x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 (*.f64 (neg.f64 y) #s(literal 1/2 binary64)) (neg.f64 x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) #s(literal 1 binary64)) x) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) (pow.f64 (cbrt.f64 x) #s(literal 2 binary64))) (cbrt.f64 x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) (sqrt.f64 x)) (sqrt.f64 x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(pow.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)) #s(literal 1 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(pow.f64 (cbrt.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) #s(literal 3 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(pow.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)) |
(sqrt.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64))) |
(pow.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)) #s(literal 3 binary64)) #s(literal 1/3 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(pow.f64 (sqrt.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) #s(literal 2 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(pow.f64 (/.f64 x (*.f64 #s(literal 1/2 binary64) y)) #s(literal -1 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(sqrt.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64))) |
(log.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(cbrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)) #s(literal 3 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(expm1.f64 (log1p.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(log1p.f64 (expm1.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(exp.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) #s(literal 1 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) #s(literal 3 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)) #s(literal 3 binary64))) #s(literal 1/3 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) #s(literal 1 binary64)) #s(literal 1 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(+.f64 #s(literal 0 binary64) (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))) #s(literal 2 binary64))) (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))))) |
(+.f64 (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x))))) (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))))) |
(*.f64 #s(literal 2 binary64) (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))))) |
(-.f64 (exp.f64 (log1p.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) #s(literal 1 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 #s(literal 1/2 binary64) (/.f64 x y)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 #s(literal 1 binary64) (/.f64 x (*.f64 #s(literal 1/2 binary64) y))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) y)) (neg.f64 x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 (*.f64 y #s(literal -1/2 binary64)) (neg.f64 x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) (neg.f64 y)) (neg.f64 x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 (*.f64 #s(literal -1/2 binary64) y) (neg.f64 x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 (*.f64 (neg.f64 y) #s(literal 1/2 binary64)) (neg.f64 x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) #s(literal 1 binary64)) x) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) (pow.f64 (cbrt.f64 x) #s(literal 2 binary64))) (cbrt.f64 x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) (sqrt.f64 x)) (sqrt.f64 x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(pow.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)) #s(literal 1 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(pow.f64 (cbrt.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) #s(literal 3 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(pow.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)) |
(sqrt.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64))) |
(pow.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)) #s(literal 3 binary64)) #s(literal 1/3 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(pow.f64 (sqrt.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) #s(literal 2 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(pow.f64 (/.f64 x (*.f64 #s(literal 1/2 binary64) y)) #s(literal -1 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(sqrt.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64))) |
(log.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(cbrt.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)) #s(literal 3 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(expm1.f64 (log1p.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(log1p.f64 (expm1.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(exp.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) #s(literal 1 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) #s(literal 3 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)) #s(literal 3 binary64))) #s(literal 1/3 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y)))) #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) #s(literal 1 binary64)) #s(literal 1 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
Compiled 382 to 219 computations (42.7% saved)
6 alts after pruning (1 fresh and 5 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 36 | 1 | 37 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 4 | 4 |
| Done | 0 | 1 | 1 |
| Total | 36 | 6 | 42 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 69.8% | (+.f64 x (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) |
| ✓ | 69.8% | (+.f64 x (*.f64 #s(literal 1 binary64) (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
| ✓ | 69.8% | (+.f64 x (*.f64 #s(literal 1/2 binary64) (/.f64 y x))) |
| ✓ | 64.6% | (sqrt.f64 (+.f64 (*.f64 x x) y)) |
| ✓ | 33.5% | (sqrt.f64 y) |
| ✓ | 69.2% | x |
Compiled 44 to 30 computations (31.8% saved)
Found 1 expressions with local error:
| New | Accuracy | Program |
|---|---|---|
| ✓ | 99.5% | (/.f64 #s(literal 1/2 binary64) (/.f64 x y)) |
Compiled 21 to 10 computations (52.4% saved)
ival-div, time spent: 24.0ms, 84.0% of total-timeival-add, time spent: 3.0ms, 10.0% of total-timeconst, time spent: 2.0ms, 7.0% of total-time| Inputs |
|---|
#<alt (/.f64 #s(literal 1/2 binary64) (/.f64 x y))> |
| Outputs |
|---|
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | y | @ | -inf | (/ 1/2 (/ x y)) |
| 0.0ms | x | @ | 0 | (/ 1/2 (/ x y)) |
| 0.0ms | x | @ | -inf | (/ 1/2 (/ x y)) |
| 0.0ms | x | @ | inf | (/ 1/2 (/ x y)) |
| 0.0ms | y | @ | inf | (/ 1/2 (/ x y)) |
| 1× | batch-egg-rewrite |
| 496× | log1p-expm1-u |
| 496× | expm1-log1p-u |
| 486× | unpow-prod-down |
| 477× | add-exp-log |
| 439× | pow1 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 19 |
| 1 | 101 | 19 |
| 2 | 1379 | 19 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 #s(literal 1/2 binary64) (/.f64 x y)) |
| Outputs |
|---|
(+.f64 #s(literal 0 binary64) (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y)) #s(literal 2 binary64))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y)))) |
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y)))) |
(-.f64 (+.f64 #s(literal 1 binary64) (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) #s(literal 1 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)) #s(literal 1 binary64)) |
(*.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)) (log.f64 (E.f64))) |
(*.f64 #s(literal 1 binary64) (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) |
(*.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) (pow.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) #s(literal 2 binary64))) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) #s(literal 2 binary64)) (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(*.f64 (sqrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) (sqrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(*.f64 #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 x) y))) |
(*.f64 (/.f64 y x) #s(literal 1/2 binary64)) |
(*.f64 (/.f64 y x) (log.f64 (exp.f64 #s(literal 1/2 binary64)))) |
(*.f64 (/.f64 #s(literal 1/2 binary64) x) y) |
(*.f64 (/.f64 #s(literal 1 binary64) x) (pow.f64 (/.f64 (/.f64 #s(literal 1 binary64) y) #s(literal 1/2 binary64)) #s(literal -1 binary64))) |
(*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) x) #s(literal 1 binary64)) y) |
(*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) x) (pow.f64 (cbrt.f64 y) #s(literal 2 binary64))) (cbrt.f64 y)) |
(*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) x) (sqrt.f64 y)) (sqrt.f64 y)) |
(*.f64 (pow.f64 (cbrt.f64 (/.f64 x y)) #s(literal -2 binary64)) (pow.f64 (/.f64 (cbrt.f64 (/.f64 x y)) #s(literal 1/2 binary64)) #s(literal -1 binary64))) |
(*.f64 (pow.f64 (/.f64 x y) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (sqrt.f64 (/.f64 x y)) #s(literal 1/2 binary64)) #s(literal -1 binary64))) |
(*.f64 (/.f64 #s(literal 1/2 binary64) (neg.f64 x)) (neg.f64 y)) |
(*.f64 (pow.f64 #s(literal 1 binary64) #s(literal 1/3 binary64)) (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) |
(*.f64 (pow.f64 (cbrt.f64 #s(literal 1/2 binary64)) #s(literal 3 binary64)) (/.f64 y x)) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) #s(literal 2 binary64)) #s(literal 3 binary64)) (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) #s(literal 3 binary64)) (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) #s(literal 3 binary64))) |
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (pow.f64 (/.f64 y x) #s(literal 3 binary64)) #s(literal 1/8 binary64))) #s(literal 1/3 binary64)) (pow.f64 (sqrt.f64 (*.f64 (pow.f64 (/.f64 y x) #s(literal 3 binary64)) #s(literal 1/8 binary64))) #s(literal 1/3 binary64))) |
(*.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)) #s(literal 1/3 binary64)) (cbrt.f64 (/.f64 y x))) |
(*.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)) (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) #s(literal 2 binary64)) #s(literal 1/3 binary64)) (cbrt.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))))) |
(*.f64 (pow.f64 (pow.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)) #s(literal 5/2 binary64)) #s(literal 1/3 binary64)) (cbrt.f64 (sqrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))))) |
(*.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64)) (/.f64 #s(literal 1/2 binary64) x)) #s(literal 1/3 binary64)) (cbrt.f64 y)) |
(*.f64 (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64)) (/.f64 y x)) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 x y) #s(literal 2 binary64))) #s(literal 2 binary64)) #s(literal -1 binary64)) (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(*.f64 (exp.f64 (log.f64 #s(literal 1/2 binary64))) (/.f64 y x)) |
(pow.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)) #s(literal 1 binary64)) |
(pow.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) #s(literal 3 binary64)) |
(pow.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)) |
(pow.f64 (*.f64 (pow.f64 (/.f64 y x) #s(literal 3 binary64)) #s(literal 1/8 binary64)) #s(literal 1/3 binary64)) |
(pow.f64 (sqrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) #s(literal 2 binary64)) |
(pow.f64 (*.f64 (/.f64 x y) #s(literal 2 binary64)) #s(literal -1 binary64)) |
(pow.f64 (E.f64) (log.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(pow.f64 (/.f64 (*.f64 (/.f64 x y) #s(literal 2 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64)) |
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) #s(literal 2 binary64))) (cbrt.f64 (log.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))))) |
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))))) (sqrt.f64 (log.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))))) |
(neg.f64 (/.f64 #s(literal -1/2 binary64) (/.f64 x y))) |
(sqrt.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64))) |
(log.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y)) |
(cbrt.f64 (*.f64 (pow.f64 (/.f64 y x) #s(literal 3 binary64)) #s(literal 1/8 binary64))) |
(expm1.f64 (log1p.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(log1p.f64 (expm1.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(exp.f64 (log.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) #s(literal 3 binary64))) |
(exp.f64 (*.f64 (*.f64 #s(literal 3 binary64) (log.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) #s(literal 1/3 binary64))) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) #s(literal 2 binary64))) |
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 x y) #s(literal 2 binary64))) #s(literal -1 binary64))) |
| 1× | egg-herbie |
| 374× | associate-*r* |
| 350× | fma-neg |
| 332× | exp-prod |
| 331× | cube-prod |
| 322× | associate-/r* |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 169 | 2050 |
| 1 | 321 | 2032 |
| 2 | 770 | 2002 |
| 3 | 3268 | 2002 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(+.f64 #s(literal 0 binary64) (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y)) #s(literal 2 binary64))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y)))) |
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y)))) |
(-.f64 (+.f64 #s(literal 1 binary64) (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) #s(literal 1 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)) #s(literal 1 binary64)) |
(*.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)) (log.f64 (E.f64))) |
(*.f64 #s(literal 1 binary64) (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) |
(*.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) (pow.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) #s(literal 2 binary64))) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) #s(literal 2 binary64)) (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(*.f64 (sqrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) (sqrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(*.f64 #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 x) y))) |
(*.f64 (/.f64 y x) #s(literal 1/2 binary64)) |
(*.f64 (/.f64 y x) (log.f64 (exp.f64 #s(literal 1/2 binary64)))) |
(*.f64 (/.f64 #s(literal 1/2 binary64) x) y) |
(*.f64 (/.f64 #s(literal 1 binary64) x) (pow.f64 (/.f64 (/.f64 #s(literal 1 binary64) y) #s(literal 1/2 binary64)) #s(literal -1 binary64))) |
(*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) x) #s(literal 1 binary64)) y) |
(*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) x) (pow.f64 (cbrt.f64 y) #s(literal 2 binary64))) (cbrt.f64 y)) |
(*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) x) (sqrt.f64 y)) (sqrt.f64 y)) |
(*.f64 (pow.f64 (cbrt.f64 (/.f64 x y)) #s(literal -2 binary64)) (pow.f64 (/.f64 (cbrt.f64 (/.f64 x y)) #s(literal 1/2 binary64)) #s(literal -1 binary64))) |
(*.f64 (pow.f64 (/.f64 x y) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (sqrt.f64 (/.f64 x y)) #s(literal 1/2 binary64)) #s(literal -1 binary64))) |
(*.f64 (/.f64 #s(literal 1/2 binary64) (neg.f64 x)) (neg.f64 y)) |
(*.f64 (pow.f64 #s(literal 1 binary64) #s(literal 1/3 binary64)) (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) |
(*.f64 (pow.f64 (cbrt.f64 #s(literal 1/2 binary64)) #s(literal 3 binary64)) (/.f64 y x)) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) #s(literal 2 binary64)) #s(literal 3 binary64)) (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) #s(literal 3 binary64)) (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) #s(literal 3 binary64))) |
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (pow.f64 (/.f64 y x) #s(literal 3 binary64)) #s(literal 1/8 binary64))) #s(literal 1/3 binary64)) (pow.f64 (sqrt.f64 (*.f64 (pow.f64 (/.f64 y x) #s(literal 3 binary64)) #s(literal 1/8 binary64))) #s(literal 1/3 binary64))) |
(*.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)) #s(literal 1/3 binary64)) (cbrt.f64 (/.f64 y x))) |
(*.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)) (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) #s(literal 2 binary64)) #s(literal 1/3 binary64)) (cbrt.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))))) |
(*.f64 (pow.f64 (pow.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)) #s(literal 5/2 binary64)) #s(literal 1/3 binary64)) (cbrt.f64 (sqrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))))) |
(*.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64)) (/.f64 #s(literal 1/2 binary64) x)) #s(literal 1/3 binary64)) (cbrt.f64 y)) |
(*.f64 (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64)) (/.f64 y x)) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 x y) #s(literal 2 binary64))) #s(literal 2 binary64)) #s(literal -1 binary64)) (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(*.f64 (exp.f64 (log.f64 #s(literal 1/2 binary64))) (/.f64 y x)) |
(pow.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)) #s(literal 1 binary64)) |
(pow.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) #s(literal 3 binary64)) |
(pow.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)) |
(pow.f64 (*.f64 (pow.f64 (/.f64 y x) #s(literal 3 binary64)) #s(literal 1/8 binary64)) #s(literal 1/3 binary64)) |
(pow.f64 (sqrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) #s(literal 2 binary64)) |
(pow.f64 (*.f64 (/.f64 x y) #s(literal 2 binary64)) #s(literal -1 binary64)) |
(pow.f64 (E.f64) (log.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(pow.f64 (/.f64 (*.f64 (/.f64 x y) #s(literal 2 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64)) |
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) #s(literal 2 binary64))) (cbrt.f64 (log.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))))) |
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))))) (sqrt.f64 (log.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))))) |
(neg.f64 (/.f64 #s(literal -1/2 binary64) (/.f64 x y))) |
(sqrt.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64))) |
(log.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y)) |
(cbrt.f64 (*.f64 (pow.f64 (/.f64 y x) #s(literal 3 binary64)) #s(literal 1/8 binary64))) |
(expm1.f64 (log1p.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(log1p.f64 (expm1.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(exp.f64 (log.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) #s(literal 3 binary64))) |
(exp.f64 (*.f64 (*.f64 #s(literal 3 binary64) (log.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) #s(literal 1/3 binary64))) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) #s(literal 2 binary64))) |
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 x y) #s(literal 2 binary64))) #s(literal -1 binary64))) |
| Outputs |
|---|
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(+.f64 #s(literal 0 binary64) (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y)) #s(literal 2 binary64))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y)))) |
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))) #s(literal 2 binary64))) (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))))) |
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y)))) |
(*.f64 #s(literal 2 binary64) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y)))) |
(*.f64 #s(literal 2 binary64) (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))))) |
(-.f64 (+.f64 #s(literal 1 binary64) (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) #s(literal 1 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)) #s(literal 1 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)) (log.f64 (E.f64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1 binary64) (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) (pow.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) #s(literal 2 binary64)) (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 (sqrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) (sqrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 x) y))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 (/.f64 y x) #s(literal 1/2 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 (/.f64 y x) (log.f64 (exp.f64 #s(literal 1/2 binary64)))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 (/.f64 #s(literal 1/2 binary64) x) y) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 (/.f64 #s(literal 1 binary64) x) (pow.f64 (/.f64 (/.f64 #s(literal 1 binary64) y) #s(literal 1/2 binary64)) #s(literal -1 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) x) #s(literal 1 binary64)) y) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) x) (pow.f64 (cbrt.f64 y) #s(literal 2 binary64))) (cbrt.f64 y)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) x) (sqrt.f64 y)) (sqrt.f64 y)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 (pow.f64 (cbrt.f64 (/.f64 x y)) #s(literal -2 binary64)) (pow.f64 (/.f64 (cbrt.f64 (/.f64 x y)) #s(literal 1/2 binary64)) #s(literal -1 binary64))) |
(*.f64 (pow.f64 (cbrt.f64 (/.f64 x y)) #s(literal -2 binary64)) (/.f64 #s(literal 1 binary64) (/.f64 (cbrt.f64 (/.f64 x y)) #s(literal 1/2 binary64)))) |
(*.f64 (pow.f64 (cbrt.f64 (/.f64 x y)) #s(literal -2 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) (cbrt.f64 (/.f64 x y))) #s(literal 1/2 binary64))) |
(*.f64 (pow.f64 (cbrt.f64 (/.f64 x y)) #s(literal -2 binary64)) (/.f64 #s(literal 1/2 binary64) (cbrt.f64 (/.f64 x y)))) |
(*.f64 (pow.f64 (/.f64 x y) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (sqrt.f64 (/.f64 x y)) #s(literal 1/2 binary64)) #s(literal -1 binary64))) |
(*.f64 (pow.f64 (/.f64 x y) #s(literal -1/2 binary64)) (/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (/.f64 x y)) #s(literal 1/2 binary64)))) |
(*.f64 (pow.f64 (/.f64 x y) #s(literal -1/2 binary64)) (/.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 x y)))) |
(*.f64 (/.f64 #s(literal 1/2 binary64) (neg.f64 x)) (neg.f64 y)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 (pow.f64 #s(literal 1 binary64) #s(literal 1/3 binary64)) (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 (pow.f64 (cbrt.f64 #s(literal 1/2 binary64)) #s(literal 3 binary64)) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) #s(literal 2 binary64)) #s(literal 3 binary64)) (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) #s(literal 3 binary64)) (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) #s(literal 3 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (pow.f64 (/.f64 y x) #s(literal 3 binary64)) #s(literal 1/8 binary64))) #s(literal 1/3 binary64)) (pow.f64 (sqrt.f64 (*.f64 (pow.f64 (/.f64 y x) #s(literal 3 binary64)) #s(literal 1/8 binary64))) #s(literal 1/3 binary64))) |
(*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (pow.f64 (/.f64 y x) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) (cbrt.f64 (sqrt.f64 (*.f64 (pow.f64 (/.f64 y x) #s(literal 3 binary64)) #s(literal 1/8 binary64))))) |
(*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)) #s(literal 3 binary64)))) (cbrt.f64 (sqrt.f64 (pow.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)) #s(literal 3 binary64))))) |
(*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (/.f64 y (*.f64 x #s(literal 2 binary64))) #s(literal 3 binary64)))) (cbrt.f64 (sqrt.f64 (pow.f64 (/.f64 y (*.f64 x #s(literal 2 binary64))) #s(literal 3 binary64))))) |
(*.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)) #s(literal 1/3 binary64)) (cbrt.f64 (/.f64 y x))) |
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/8 binary64))) (cbrt.f64 (/.f64 y x))) |
(*.f64 (cbrt.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 (/.f64 x y) #s(literal -2 binary64)))) (cbrt.f64 (/.f64 y x))) |
(*.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)) (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) #s(literal 2 binary64)) #s(literal 1/3 binary64)) (cbrt.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))))) |
(*.f64 (cbrt.f64 (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 y x)))) (cbrt.f64 (pow.f64 (*.f64 y (*.f64 (/.f64 #s(literal 1/2 binary64) x) (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 y x))))) #s(literal 2 binary64)))) |
(*.f64 (cbrt.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) (cbrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) #s(literal 4 binary64)) #s(literal 2 binary64)))) |
(*.f64 (cbrt.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) #s(literal 8 binary64)))) |
(*.f64 (cbrt.f64 (cbrt.f64 (/.f64 y (*.f64 x #s(literal 2 binary64))))) (cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 y (*.f64 x #s(literal 2 binary64)))) #s(literal 8 binary64)))) |
(*.f64 (pow.f64 (pow.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)) #s(literal 5/2 binary64)) #s(literal 1/3 binary64)) (cbrt.f64 (sqrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))))) |
(*.f64 (cbrt.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 y x)) #s(literal 5/2 binary64))) (cbrt.f64 (sqrt.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 y x))))) |
(*.f64 (cbrt.f64 (pow.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)) #s(literal 5/2 binary64))) (cbrt.f64 (sqrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))))) |
(*.f64 (cbrt.f64 (pow.f64 (/.f64 y (*.f64 x #s(literal 2 binary64))) #s(literal 5/2 binary64))) (cbrt.f64 (sqrt.f64 (/.f64 y (*.f64 x #s(literal 2 binary64)))))) |
(*.f64 (pow.f64 (*.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64)) (/.f64 #s(literal 1/2 binary64) x)) #s(literal 1/3 binary64)) (cbrt.f64 y)) |
(*.f64 (cbrt.f64 y) (cbrt.f64 (/.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/8 binary64)) x))) |
(*.f64 (cbrt.f64 y) (cbrt.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) (/.f64 #s(literal 1/8 binary64) x)))) |
(*.f64 (pow.f64 (sqrt.f64 #s(literal 1/2 binary64)) #s(literal 2 binary64)) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 x y) #s(literal 2 binary64))) #s(literal 2 binary64)) #s(literal -1 binary64)) (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(*.f64 (cbrt.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 y x))) (/.f64 #s(literal 1 binary64) (pow.f64 (cbrt.f64 (*.f64 #s(literal 2 binary64) (/.f64 x y))) #s(literal 2 binary64)))) |
(*.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) (/.f64 #s(literal 1 binary64) (pow.f64 (cbrt.f64 (*.f64 x (/.f64 #s(literal 2 binary64) y))) #s(literal 2 binary64)))) |
(/.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) (pow.f64 (cbrt.f64 (*.f64 x (/.f64 #s(literal 2 binary64) y))) #s(literal 2 binary64))) |
(/.f64 (cbrt.f64 (/.f64 y (*.f64 x #s(literal 2 binary64)))) (pow.f64 (cbrt.f64 (*.f64 x (/.f64 #s(literal 2 binary64) y))) #s(literal 2 binary64))) |
(*.f64 (exp.f64 (log.f64 #s(literal 1/2 binary64))) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(pow.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)) #s(literal 1 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(pow.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) #s(literal 3 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(pow.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)) |
(sqrt.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64))) |
(pow.f64 (*.f64 (pow.f64 (/.f64 y x) #s(literal 3 binary64)) #s(literal 1/8 binary64)) #s(literal 1/3 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(pow.f64 (sqrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))) #s(literal 2 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(pow.f64 (*.f64 (/.f64 x y) #s(literal 2 binary64)) #s(literal -1 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(pow.f64 (E.f64) (log.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(pow.f64 (/.f64 (*.f64 (/.f64 x y) #s(literal 2 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) #s(literal 2 binary64))) (cbrt.f64 (log.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))))) |
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 y x)))) #s(literal 2 binary64))) (cbrt.f64 (log.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 y x))))) |
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 y (*.f64 x #s(literal 2 binary64))))) #s(literal 2 binary64))) (cbrt.f64 (log.f64 (/.f64 y (*.f64 x #s(literal 2 binary64)))))) |
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))))) (sqrt.f64 (log.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))))) |
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 y x))))) (sqrt.f64 (log.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 y x))))) |
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 y (*.f64 x #s(literal 2 binary64)))))) (sqrt.f64 (log.f64 (/.f64 y (*.f64 x #s(literal 2 binary64)))))) |
(neg.f64 (/.f64 #s(literal -1/2 binary64) (/.f64 x y))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(sqrt.f64 (*.f64 (pow.f64 (/.f64 x y) #s(literal -2 binary64)) #s(literal 1/4 binary64))) |
(log.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(cbrt.f64 (*.f64 (pow.f64 (/.f64 y x) #s(literal 3 binary64)) #s(literal 1/8 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(expm1.f64 (log1p.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(log1p.f64 (expm1.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(exp.f64 (log.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) #s(literal 3 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(exp.f64 (*.f64 (*.f64 #s(literal 3 binary64) (log.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) #s(literal 1/3 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 x y) #s(literal 2 binary64))) #s(literal -1 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
Compiled 1246 to 813 computations (34.8% saved)
6 alts after pruning (1 fresh and 5 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 86 | 1 | 87 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 1 | 4 | 5 |
| Total | 87 | 6 | 93 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 69.8% | (+.f64 x (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) |
| ▶ | 69.8% | (+.f64 x (*.f64 (/.f64 #s(literal 1/2 binary64) x) y)) |
| ✓ | 69.8% | (+.f64 x (*.f64 #s(literal 1/2 binary64) (/.f64 y x))) |
| ✓ | 64.6% | (sqrt.f64 (+.f64 (*.f64 x x) y)) |
| ✓ | 33.5% | (sqrt.f64 y) |
| ✓ | 69.2% | x |
Compiled 42 to 28 computations (33.3% saved)
Found 1 expressions with local error:
| New | Accuracy | Program |
|---|---|---|
| ✓ | 99.7% | (*.f64 (/.f64 #s(literal 1/2 binary64) x) y) |
Compiled 21 to 13 computations (38.1% saved)
ival-div, time spent: 11.0ms, 51.0% of total-timeival-mult, time spent: 7.0ms, 32.0% of total-timeival-add, time spent: 2.0ms, 9.0% of total-timeconst, time spent: 1.0ms, 5.0% of total-time| Inputs |
|---|
#<alt (*.f64 (/.f64 #s(literal 1/2 binary64) x) y)> |
| Outputs |
|---|
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
#<alt (*.f64 #s(literal 1/2 binary64) (/.f64 y x))> |
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | x | @ | inf | (* (/ 1/2 x) y) |
| 0.0ms | x | @ | 0 | (* (/ 1/2 x) y) |
| 0.0ms | x | @ | -inf | (* (/ 1/2 x) y) |
| 0.0ms | y | @ | inf | (* (/ 1/2 x) y) |
| 0.0ms | y | @ | -inf | (* (/ 1/2 x) y) |
| 1× | batch-egg-rewrite |
| 418× | log1p-expm1-u |
| 418× | expm1-log1p-u |
| 401× | add-exp-log |
| 389× | add-log-exp |
| 386× | unpow-prod-down |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 19 |
| 1 | 95 | 19 |
| 2 | 1161 | 19 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (/.f64 #s(literal 1/2 binary64) x) y) |
| Outputs |
|---|
(+.f64 #s(literal 0 binary64) (/.f64 (*.f64 #s(literal 1/2 binary64) y) x)) |
(+.f64 (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 y) #s(literal 2 binary64)) (/.f64 #s(literal 1/2 binary64) x)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y)))) |
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y)))) |
(-.f64 (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 1/2 binary64) y) x)) #s(literal 1 binary64)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(/.f64 #s(literal 1 binary64) (/.f64 x (*.f64 #s(literal 1/2 binary64) y))) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(/.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) y)) (neg.f64 x)) |
(/.f64 (*.f64 y #s(literal -1/2 binary64)) (neg.f64 x)) |
(/.f64 (*.f64 #s(literal -1/2 binary64) y) (neg.f64 x)) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) #s(literal 1 binary64)) x) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) (pow.f64 (cbrt.f64 x) #s(literal 2 binary64))) (cbrt.f64 x)) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) (sqrt.f64 x)) (sqrt.f64 x)) |
(/.f64 (cbrt.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 (/.f64 y x) #s(literal 2 binary64))) (*.f64 #s(literal 1/2 binary64) y))) (cbrt.f64 x)) |
(pow.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 1 binary64)) |
(pow.f64 (cbrt.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x)) #s(literal 3 binary64)) |
(pow.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 (/.f64 y x) #s(literal 2 binary64))) #s(literal 1/2 binary64)) |
(pow.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 (/.f64 y x) #s(literal 3 binary64))) #s(literal 1/3 binary64)) |
(pow.f64 (sqrt.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x)) #s(literal 2 binary64)) |
(pow.f64 (E.f64) (log.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x))) |
(pow.f64 (/.f64 x (*.f64 #s(literal 1/2 binary64) y)) #s(literal -1 binary64)) |
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x))) #s(literal 2 binary64))) (cbrt.f64 (log.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x)))) |
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x)))) (sqrt.f64 (log.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x)))) |
(sqrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 (/.f64 y x) #s(literal 2 binary64)))) |
(log.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y)) |
(cbrt.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 (/.f64 y x) #s(literal 3 binary64)))) |
(cbrt.f64 (/.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 3 binary64)))) |
(cbrt.f64 (/.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) y) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64)))) |
(expm1.f64 (log1p.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x))) |
(log1p.f64 (expm1.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x))) |
(exp.f64 (log.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x))) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x))) #s(literal 3 binary64))) |
(exp.f64 (*.f64 (*.f64 #s(literal 3 binary64) (log.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x))) #s(literal 1/3 binary64))) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x))) #s(literal 2 binary64))) |
| 1× | egg-herbie |
| 660× | fma-neg |
| 377× | div-sub |
| 373× | cube-prod |
| 323× | fma-define |
| 322× | times-frac |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 109 | 1268 |
| 1 | 214 | 1268 |
| 2 | 546 | 1264 |
| 3 | 2441 | 1264 |
| 4 | 5813 | 1264 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(+.f64 #s(literal 0 binary64) (/.f64 (*.f64 #s(literal 1/2 binary64) y) x)) |
(+.f64 (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 y) #s(literal 2 binary64)) (/.f64 #s(literal 1/2 binary64) x)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y)))) |
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y)))) |
(-.f64 (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 1/2 binary64) y) x)) #s(literal 1 binary64)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(/.f64 #s(literal 1 binary64) (/.f64 x (*.f64 #s(literal 1/2 binary64) y))) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(/.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) y)) (neg.f64 x)) |
(/.f64 (*.f64 y #s(literal -1/2 binary64)) (neg.f64 x)) |
(/.f64 (*.f64 #s(literal -1/2 binary64) y) (neg.f64 x)) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) #s(literal 1 binary64)) x) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) (pow.f64 (cbrt.f64 x) #s(literal 2 binary64))) (cbrt.f64 x)) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) (sqrt.f64 x)) (sqrt.f64 x)) |
(/.f64 (cbrt.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 (/.f64 y x) #s(literal 2 binary64))) (*.f64 #s(literal 1/2 binary64) y))) (cbrt.f64 x)) |
(pow.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 1 binary64)) |
(pow.f64 (cbrt.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x)) #s(literal 3 binary64)) |
(pow.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 (/.f64 y x) #s(literal 2 binary64))) #s(literal 1/2 binary64)) |
(pow.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 (/.f64 y x) #s(literal 3 binary64))) #s(literal 1/3 binary64)) |
(pow.f64 (sqrt.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x)) #s(literal 2 binary64)) |
(pow.f64 (E.f64) (log.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x))) |
(pow.f64 (/.f64 x (*.f64 #s(literal 1/2 binary64) y)) #s(literal -1 binary64)) |
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x))) #s(literal 2 binary64))) (cbrt.f64 (log.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x)))) |
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x)))) (sqrt.f64 (log.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x)))) |
(sqrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 (/.f64 y x) #s(literal 2 binary64)))) |
(log.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y)) |
(cbrt.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 (/.f64 y x) #s(literal 3 binary64)))) |
(cbrt.f64 (/.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 3 binary64)))) |
(cbrt.f64 (/.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) y) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64)))) |
(expm1.f64 (log1p.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x))) |
(log1p.f64 (expm1.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x))) |
(exp.f64 (log.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x))) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x))) #s(literal 3 binary64))) |
(exp.f64 (*.f64 (*.f64 #s(literal 3 binary64) (log.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x))) #s(literal 1/3 binary64))) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x))) #s(literal 2 binary64))) |
| Outputs |
|---|
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(+.f64 #s(literal 0 binary64) (/.f64 (*.f64 #s(literal 1/2 binary64) y) x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(+.f64 (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 y) #s(literal 2 binary64)) (/.f64 #s(literal 1/2 binary64) x)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y)))) |
(+.f64 (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 y) #s(literal 2 binary64)) (/.f64 #s(literal 1/2 binary64) x)))) (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))))) |
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y)))) |
(*.f64 #s(literal 2 binary64) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y)))) |
(*.f64 #s(literal 2 binary64) (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (/.f64 y x)))))) |
(-.f64 (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 1/2 binary64) y) x)) #s(literal 1 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 y (*.f64 x #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 #s(literal 1 binary64) (/.f64 x (*.f64 #s(literal 1/2 binary64) y))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 (*.f64 #s(literal 1/2 binary64) y) x) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) y)) (neg.f64 x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 (*.f64 y #s(literal -1/2 binary64)) (neg.f64 x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 (*.f64 #s(literal -1/2 binary64) y) (neg.f64 x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) #s(literal 1 binary64)) x) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) (pow.f64 (cbrt.f64 x) #s(literal 2 binary64))) (cbrt.f64 x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) (sqrt.f64 x)) (sqrt.f64 x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(/.f64 (cbrt.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 (/.f64 y x) #s(literal 2 binary64))) (*.f64 #s(literal 1/2 binary64) y))) (cbrt.f64 x)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(pow.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 1 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(pow.f64 (cbrt.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x)) #s(literal 3 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(pow.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 (/.f64 y x) #s(literal 2 binary64))) #s(literal 1/2 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(pow.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 (/.f64 y x) #s(literal 3 binary64))) #s(literal 1/3 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(pow.f64 (sqrt.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x)) #s(literal 2 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(pow.f64 (E.f64) (log.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(pow.f64 (/.f64 x (*.f64 #s(literal 1/2 binary64) y)) #s(literal -1 binary64)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x))) #s(literal 2 binary64))) (cbrt.f64 (log.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x)))) |
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 y x)))) #s(literal 2 binary64))) (cbrt.f64 (log.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 y x))))) |
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) #s(literal 2 binary64))) (cbrt.f64 (log.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))))) |
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x)))) (sqrt.f64 (log.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x)))) |
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 y x))))) (sqrt.f64 (log.f64 (*.f64 #s(literal 1/2 binary64) (/.f64 y x))))) |
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))))) (sqrt.f64 (log.f64 (*.f64 y (/.f64 #s(literal 1/2 binary64) x))))) |
(sqrt.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 (/.f64 y x) #s(literal 2 binary64)))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(log.f64 (pow.f64 (exp.f64 (/.f64 #s(literal 1/2 binary64) x)) y)) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(cbrt.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 (/.f64 y x) #s(literal 3 binary64)))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(cbrt.f64 (/.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 (*.f64 x #s(literal 2 binary64)) #s(literal 3 binary64)))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(cbrt.f64 (/.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) y) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64)))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(expm1.f64 (log1p.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(log1p.f64 (expm1.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(exp.f64 (log.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x))) #s(literal 3 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(exp.f64 (*.f64 (*.f64 #s(literal 3 binary64) (log.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x))) #s(literal 1/3 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x))) #s(literal 2 binary64))) |
(*.f64 #s(literal 1/2 binary64) (/.f64 y x)) |
(*.f64 y (/.f64 #s(literal 1/2 binary64) x)) |
Compiled 518 to 348 computations (32.8% saved)
6 alts after pruning (0 fresh and 6 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 43 | 0 | 43 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 5 | 5 |
| Total | 43 | 6 | 49 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 69.8% | (+.f64 x (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) |
| ✓ | 69.8% | (+.f64 x (*.f64 (/.f64 #s(literal 1/2 binary64) x) y)) |
| ✓ | 69.8% | (+.f64 x (*.f64 #s(literal 1/2 binary64) (/.f64 y x))) |
| ✓ | 64.6% | (sqrt.f64 (+.f64 (*.f64 x x) y)) |
| ✓ | 33.5% | (sqrt.f64 y) |
| ✓ | 69.2% | x |
Compiled 83 to 52 computations (37.3% saved)
| Inputs |
|---|
x |
(+.f64 x (*.f64 #s(literal 1/2 binary64) (/.f64 y x))) |
(+.f64 x (*.f64 (/.f64 #s(literal 1/2 binary64) x) y)) |
(+.f64 x (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) |
(+.f64 x (*.f64 #s(literal 1 binary64) (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(sqrt.f64 y) |
(sqrt.f64 (+.f64 (*.f64 x x) y)) |
| Outputs |
|---|
(sqrt.f64 (+.f64 (*.f64 x x) y)) |
x |
5 calls:
| 26.0ms | (+.f64 (*.f64 x x) y) |
| 19.0ms | x |
| 11.0ms | (sqrt.f64 (+.f64 (*.f64 x x) y)) |
| 9.0ms | y |
| 6.0ms | (*.f64 x x) |
| Accuracy | Segments | Branch |
|---|---|---|
| 100.0% | 2 | x |
| 79.7% | 2 | y |
| 100.0% | 2 | (sqrt.f64 (+.f64 (*.f64 x x) y)) |
| 100.0% | 2 | (+.f64 (*.f64 x x) y) |
| 100.0% | 2 | (*.f64 x x) |
Compiled 26 to 16 computations (38.5% saved)
| Inputs |
|---|
x |
(+.f64 x (*.f64 #s(literal 1/2 binary64) (/.f64 y x))) |
(+.f64 x (*.f64 (/.f64 #s(literal 1/2 binary64) x) y)) |
(+.f64 x (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) |
(+.f64 x (*.f64 #s(literal 1 binary64) (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
(sqrt.f64 y) |
| Outputs |
|---|
(sqrt.f64 y) |
(+.f64 x (*.f64 #s(literal 1/2 binary64) (/.f64 y x))) |
1 calls:
| 19.0ms | x |
| Accuracy | Segments | Branch |
|---|---|---|
| 87.4% | 2 | x |
Compiled 3 to 2 computations (33.3% saved)
| Inputs |
|---|
x |
(+.f64 x (*.f64 #s(literal 1/2 binary64) (/.f64 y x))) |
(+.f64 x (*.f64 (/.f64 #s(literal 1/2 binary64) x) y)) |
(+.f64 x (/.f64 #s(literal 1/2 binary64) (/.f64 x y))) |
(+.f64 x (*.f64 #s(literal 1 binary64) (*.f64 y (/.f64 #s(literal 1/2 binary64) x)))) |
| Outputs |
|---|
(+.f64 x (*.f64 #s(literal 1/2 binary64) (/.f64 y x))) |
2 calls:
| 4.0ms | y |
| 3.0ms | x |
| Accuracy | Segments | Branch |
|---|---|---|
| 69.8% | 1 | y |
| 69.8% | 1 | x |
Compiled 6 to 4 computations (33.3% saved)
Total -0.0b remaining (-0%)
Threshold costs -0b (-0%)
| Inputs |
|---|
x |
| Outputs |
|---|
x |
2 calls:
| 11.0ms | x |
| 2.0ms | y |
| Accuracy | Segments | Branch |
|---|---|---|
| 69.2% | 1 | y |
| 69.2% | 1 | x |
Compiled 6 to 4 computations (33.3% saved)
| 1× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 2.363321342620607e+288 | 3.535796768412617e+288 |
Compiled 13 to 9 computations (30.8% saved)
| 1× | binary-search |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 44.0ms | 2.5611206388128705e-38 | 6.119767287883406e-30 |
| 37.0ms | 144× | 256 | valid |
| 4.0ms | 29× | 256 | invalid |
Compiled 148 to 108 computations (27% saved)
ival-mult, time spent: 9.0ms, 45.0% of total-timeival-sqrt, time spent: 9.0ms, 45.0% of total-timeival-add, time spent: 2.0ms, 10.0% of total-timeconst, time spent: 0.0ms, 0.0% of total-time| 1× | egg-herbie |
| 2× | +-commutative |
| 1× | *-commutative |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 25 | 131 |
| 1 | 28 | 131 |
| 1× | done |
| 1× | saturated |
| Inputs |
|---|
(if (<=.f64 (*.f64 x x) #s(literal 2999999999999999752404620677264500849146365129278629714690429062825689202393601842176356538364389508640315352185705460613773345086778871411727225316409624740986241906434755062233670759029447657793342298278847806712393789330104900246397256305021749600949237804999257610852663056207009808384 binary64)) (sqrt.f64 (+.f64 (*.f64 x x) y)) x) |
(if (<=.f64 x #s(literal 6430607204255973/11692013098647223345629478661730264157247460343808 binary64)) (sqrt.f64 y) (+.f64 x (*.f64 #s(literal 1/2 binary64) (/.f64 y x)))) |
(+.f64 x (*.f64 #s(literal 1/2 binary64) (/.f64 y x))) |
x |
| Outputs |
|---|
(if (<=.f64 (*.f64 x x) #s(literal 2999999999999999752404620677264500849146365129278629714690429062825689202393601842176356538364389508640315352185705460613773345086778871411727225316409624740986241906434755062233670759029447657793342298278847806712393789330104900246397256305021749600949237804999257610852663056207009808384 binary64)) (sqrt.f64 (+.f64 (*.f64 x x) y)) x) |
(if (<=.f64 x #s(literal 6430607204255973/11692013098647223345629478661730264157247460343808 binary64)) (sqrt.f64 y) (+.f64 x (*.f64 #s(literal 1/2 binary64) (/.f64 y x)))) |
(+.f64 x (*.f64 #s(literal 1/2 binary64) (/.f64 y x))) |
x |
Compiled 42 to 26 computations (38.1% saved)
Compiled 240 to 134 computations (44.2% saved)
Loading profile data...