
Time bar (total: 5.4s)
| 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 |
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 3 |
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 4 |
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 5 |
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 6 |
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 7 |
| 0% | 0% | 74.9% | 0.1% | 0% | 25% | 0% | 8 |
| 4.2% | 3.1% | 71.8% | 0.1% | 0% | 25% | 0% | 9 |
| 6.3% | 4.7% | 70.2% | 0.1% | 0% | 25% | 0% | 10 |
| 11.3% | 7% | 55.4% | 0.1% | 0% | 37.4% | 0% | 11 |
| 16.9% | 10.5% | 51.9% | 0.1% | 0% | 37.4% | 0% | 12 |
Compiled 31 to 19 computations (38.7% saved)
ival-sqrt: 274.0ms (40.6% of total)ival-add: 249.0ms (36.9% of total)ival-mult: 101.0ms (15% of total)ival-sub: 24.0ms (3.6% of total)ival-div: 23.0ms (3.4% of total)const: 4.0ms (0.6% of total)backward-pass: 1.0ms (0.1% of total)| 811.0ms | 5302× | 0 | valid |
| 699.0ms | 2216× | 1 | valid |
| 480.0ms | 2678× | 0 | invalid |
| 306.0ms | 1151× | 1 | invalid |
| 265.0ms | 738× | 2 | valid |
| 189.0ms | 489× | 2 | invalid |
ival-mult: 865.0ms (44% of total)ival-sqrt: 300.0ms (15.3% of total)ival-div: 238.0ms (12.1% of total)ival-add: 213.0ms (10.8% of total)ival-sub: 200.0ms (10.2% of total)backward-pass: 123.0ms (6.3% of total)const: 28.0ms (1.4% of total)| 1× | egg-herbie |
| 502× | distribute-lft-in |
| 493× | fmm-def |
| 435× | distribute-rgt-in |
| 310× | div-sub |
| 309× | distribute-lft-neg-out |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 78 | 1172 |
| 1 | 256 | 1160 |
| 2 | 740 | 1156 |
| 3 | 2566 | 1156 |
| 4 | 7827 | 1156 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l)))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l)))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 (neg.f64 x) #s(literal 1 binary64)) (-.f64 (neg.f64 x) #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l)))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 (neg.f64 l) (neg.f64 l)) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 (neg.f64 l) (neg.f64 l))))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (neg.f64 t)) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 (neg.f64 t) (neg.f64 t))))) (*.f64 l l)))) |
(neg.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 (neg.f64 x) #s(literal 1 binary64)) (-.f64 (neg.f64 x) #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l))))) |
(neg.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 (neg.f64 l) (neg.f64 l)) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 (neg.f64 l) (neg.f64 l)))))) |
(neg.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (neg.f64 t)) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 (neg.f64 t) (neg.f64 t))))) (*.f64 l l))))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 l #s(literal 1 binary64)) (-.f64 l #s(literal 1 binary64))) (+.f64 (*.f64 x x) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 x x)))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 t #s(literal 1 binary64)) (-.f64 t #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 x x)))) (*.f64 l l)))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) l) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 t t) (*.f64 #s(literal 2 binary64) (*.f64 l l)))) (*.f64 t t)))) |
| Outputs |
|---|
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l)))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 l l (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l))))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l))))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (neg.f64 (*.f64 l l)))))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l)))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 l l (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l))))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l))))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (neg.f64 (*.f64 l l)))))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 (neg.f64 x) #s(literal 1 binary64)) (-.f64 (neg.f64 x) #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l)))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (fma.f64 (/.f64 (+.f64 #s(literal 1 binary64) (neg.f64 x)) (+.f64 (neg.f64 x) #s(literal -1 binary64))) (fma.f64 l l (*.f64 #s(literal 2 binary64) (*.f64 t t))) (neg.f64 (*.f64 l l))))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (/.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 #s(literal -1 binary64) x #s(literal -1 binary64)))) (*.f64 l l)))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (/.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal -1 binary64) x)) (neg.f64 (*.f64 l l)))))) |
(*.f64 t (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (/.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal -1 binary64) x)) (*.f64 l (neg.f64 l)))))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (/.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal -1 binary64) x)) (*.f64 l (neg.f64 l)))))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 (neg.f64 l) (neg.f64 l)) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 (neg.f64 l) (neg.f64 l))))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 l l (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l))))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l))))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (neg.f64 (*.f64 l l)))))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (neg.f64 t)) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 (neg.f64 t) (neg.f64 t))))) (*.f64 l l)))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 (neg.f64 t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 l l (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l))))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 (neg.f64 t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l))))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 (neg.f64 t) (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (neg.f64 (*.f64 l l)))))) |
(*.f64 t (/.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l))))) |
(*.f64 t (/.f64 (sqrt.f64 #s(literal 2 binary64)) (neg.f64 (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l))))))) |
(neg.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 (neg.f64 x) #s(literal 1 binary64)) (-.f64 (neg.f64 x) #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l))))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (neg.f64 (sqrt.f64 (fma.f64 (/.f64 (+.f64 #s(literal 1 binary64) (neg.f64 x)) (+.f64 (neg.f64 x) #s(literal -1 binary64))) (fma.f64 l l (*.f64 #s(literal 2 binary64) (*.f64 t t))) (neg.f64 (*.f64 l l)))))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (neg.f64 t)) (sqrt.f64 (-.f64 (*.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (/.f64 (-.f64 #s(literal 1 binary64) x) (fma.f64 #s(literal -1 binary64) x #s(literal -1 binary64)))) (*.f64 l l)))) |
(*.f64 t (/.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (/.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal -1 binary64) x)) (neg.f64 (*.f64 l l)))))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 (neg.f64 t) (sqrt.f64 (fma.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (/.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal -1 binary64) x)) (*.f64 l (neg.f64 l)))))) |
(neg.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 (neg.f64 l) (neg.f64 l)) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 (neg.f64 l) (neg.f64 l)))))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 (neg.f64 t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 l l (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l))))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 (neg.f64 t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l))))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 (neg.f64 t) (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (neg.f64 (*.f64 l l)))))) |
(*.f64 t (/.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l))))) |
(*.f64 t (/.f64 (sqrt.f64 #s(literal 2 binary64)) (neg.f64 (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l))))))) |
(neg.f64 (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (neg.f64 t)) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 (neg.f64 t) (neg.f64 t))))) (*.f64 l l))))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 l l (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l))))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l))))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (neg.f64 (*.f64 l l)))))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 l #s(literal 1 binary64)) (-.f64 l #s(literal 1 binary64))) (+.f64 (*.f64 x x) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 x x)))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 #s(literal 1 binary64) l) (+.f64 l #s(literal -1 binary64))) (fma.f64 x x (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 x x))))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (/.f64 (*.f64 (+.f64 #s(literal 1 binary64) l) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 x x))) (+.f64 l #s(literal -1 binary64))) (*.f64 x x)))) |
(*.f64 t (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (fma.f64 (+.f64 #s(literal 1 binary64) l) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 x x)) (+.f64 l #s(literal -1 binary64))) (neg.f64 (*.f64 x x)))))) |
(*.f64 t (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (fma.f64 (+.f64 #s(literal 1 binary64) l) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 x x)) (+.f64 l #s(literal -1 binary64))) (*.f64 x (neg.f64 x)))))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (+.f64 #s(literal 1 binary64) l) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 x x)) (+.f64 l #s(literal -1 binary64))) (*.f64 x (neg.f64 x)))))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 t #s(literal 1 binary64)) (-.f64 t #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 x x)))) (*.f64 l l)))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) (sqrt.f64 (fma.f64 (/.f64 (+.f64 t #s(literal 1 binary64)) (+.f64 t #s(literal -1 binary64))) (fma.f64 l l (*.f64 #s(literal 2 binary64) (*.f64 x x))) (neg.f64 (*.f64 l l))))) |
(*.f64 x (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (-.f64 (/.f64 (*.f64 (+.f64 t #s(literal 1 binary64)) (fma.f64 #s(literal 2 binary64) (*.f64 x x) (*.f64 l l))) (+.f64 t #s(literal -1 binary64))) (*.f64 l l))))) |
(*.f64 x (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (fma.f64 (/.f64 (+.f64 t #s(literal 1 binary64)) (+.f64 t #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 x x) (*.f64 l l)) (neg.f64 (*.f64 l l)))))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) x) (sqrt.f64 (fma.f64 (+.f64 t #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 x x) (*.f64 l l)) (+.f64 t #s(literal -1 binary64))) (*.f64 l (neg.f64 l))))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 x (sqrt.f64 (fma.f64 (+.f64 t #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 x x) (*.f64 l l)) (+.f64 t #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) l) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 t t) (*.f64 #s(literal 2 binary64) (*.f64 l l)))) (*.f64 t t)))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) l) (sqrt.f64 (fma.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 t t (*.f64 #s(literal 2 binary64) (*.f64 l l))) (neg.f64 (*.f64 t t))))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) l) (sqrt.f64 (-.f64 (*.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 l l) (*.f64 t t)) (+.f64 x #s(literal -1 binary64)))) (*.f64 t t)))) |
(*.f64 l (/.f64 (sqrt.f64 #s(literal 2 binary64)) (sqrt.f64 (-.f64 (*.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 l l) (*.f64 t t)) (+.f64 x #s(literal -1 binary64)))) (*.f64 t t))))) |
(abs l)
(negabs t)
| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 109 | 0 | - | 1 | (8.614495655071873e+114 5.263820820664219e-213 1.7531240514599621e-158) | (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l))) |
| 87 | 1 | (-5.407139609765837e+210 1.8390598577386036e-11 1.0749910013634695e-12) | 0 | - | (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l)) |
| 1 | 0 | - | 1 | (2.99329313766704e+296 2.4344154946018244e-29 5.7672927877359e-310) | (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l)))) |
| 0 | 0 | - | 0 | - | x |
| 0 | 0 | - | 0 | - | (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t))) |
| 0 | 0 | - | 0 | - | l |
| 0 | 0 | - | 0 | - | (-.f64 x #s(literal 1 binary64)) |
| 0 | 0 | - | 0 | - | #s(literal 2 binary64) |
| 0 | 0 | - | 0 | - | (*.f64 t t) |
| 0 | 0 | - | 0 | - | (sqrt.f64 #s(literal 2 binary64)) |
| 0 | 0 | - | 0 | - | (*.f64 l l) |
| 0 | 0 | - | 0 | - | (+.f64 x #s(literal 1 binary64)) |
| 0 | 0 | - | 0 | - | (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) |
| 0 | 0 | - | 0 | - | (*.f64 #s(literal 2 binary64) (*.f64 t t)) |
| 0 | 0 | - | 0 | - | #s(literal 1 binary64) |
| 0 | 0 | - | 0 | - | t |
| 0 | 0 | - | 0 | - | (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) |
| 0 | 0 | - | 0 | - | (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) |
| 250.0ms | 158× | 1 | valid |
| 76.0ms | 326× | 0 | valid |
| 13.0ms | 28× | 2 | valid |
Compiled 300 to 56 computations (81.3% saved)
ival-mult: 216.0ms (75.5% of total)ival-sqrt: 37.0ms (12.9% of total)ival-div: 9.0ms (3.1% of total)ival-sub: 7.0ms (2.4% of total)backward-pass: 7.0ms (2.4% of total)ival-add: 7.0ms (2.4% of total)const: 1.0ms (0.3% of total)Compiled 107 to 37 computations (65.4% saved)
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 36.2% | (/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l)))) |
| ▶ | 31.2% | (*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))))) |
| ▶ | 36.2% | (*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l))))) |
Compiled 88 to 55 computations (37.5% saved)
| 1× | egg-herbie |
Found 12 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| ✓ | cost-diff | 0 | (+.f64 x #s(literal 1 binary64)) |
| ✓ | cost-diff | 0 | (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) |
| ✓ | cost-diff | 0 | (sqrt.f64 #s(literal 2 binary64)) |
| ✓ | cost-diff | 0 | (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) |
| ✓ | cost-diff | 0 | (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))) |
| ✓ | cost-diff | 0 | (/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l))))) |
| ✓ | cost-diff | 0 | (sqrt.f64 #s(literal 2 binary64)) |
| ✓ | cost-diff | 0 | (*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))))) |
| ✓ | cost-diff | 0 | (+.f64 x #s(literal 1 binary64)) |
| ✓ | cost-diff | 0 | (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) |
| ✓ | cost-diff | 0 | (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) |
| ✓ | cost-diff | 0 | (sqrt.f64 #s(literal 2 binary64)) |
| 840× | fma-define |
| 729× | fmm-def |
| 379× | sub-neg |
| 331× | distribute-rgt-neg-in |
| 325× | distribute-lft-neg-in |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 42 | 1576 |
| 1 | 91 | 1576 |
| 2 | 156 | 1576 |
| 3 | 314 | 1576 |
| 4 | 694 | 1576 |
| 5 | 1563 | 1576 |
| 6 | 3469 | 1576 |
| 7 | 5989 | 1576 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l))))) |
(sqrt.f64 #s(literal 2 binary64)) |
#s(literal 2 binary64) |
(/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l)))) |
t |
(sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l))) |
(-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l)) |
(*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) |
(/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) |
(+.f64 x #s(literal 1 binary64)) |
x |
#s(literal 1 binary64) |
(+.f64 x #s(literal -1 binary64)) |
#s(literal -1 binary64) |
(fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) |
(*.f64 t t) |
(*.f64 l l) |
l |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))))) |
(sqrt.f64 #s(literal 2 binary64)) |
#s(literal 2 binary64) |
(/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l))))) |
t |
(sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))) |
(fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l))) |
(+.f64 x #s(literal 1 binary64)) |
x |
#s(literal 1 binary64) |
(/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) |
(fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) |
(*.f64 t t) |
(*.f64 l l) |
l |
(+.f64 x #s(literal -1 binary64)) |
#s(literal -1 binary64) |
(*.f64 l (neg.f64 l)) |
(neg.f64 l) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l)))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) t) |
(sqrt.f64 #s(literal 2 binary64)) |
#s(literal 2 binary64) |
t |
(sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l))) |
(-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l)) |
(*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) |
(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) |
(+.f64 x #s(literal 1 binary64)) |
x |
#s(literal 1 binary64) |
(-.f64 x #s(literal 1 binary64)) |
(+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t))) |
(*.f64 l l) |
l |
(*.f64 #s(literal 2 binary64) (*.f64 t t)) |
(*.f64 t t) |
| Outputs |
|---|
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l))))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l)))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l))))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (fma.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (*.f64 l (neg.f64 l))))) |
(sqrt.f64 #s(literal 2 binary64)) |
#s(literal 2 binary64) |
(/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l)))) |
(/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l))))) |
(/.f64 t (sqrt.f64 (fma.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (*.f64 l (neg.f64 l))))) |
t |
(sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l))) |
(sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))) |
(sqrt.f64 (fma.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (*.f64 l (neg.f64 l)))) |
(-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l)) |
(fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l))) |
(fma.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (*.f64 l (neg.f64 l))) |
(*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) |
(*.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64)))) |
(/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) |
(+.f64 x #s(literal 1 binary64)) |
x |
#s(literal 1 binary64) |
(+.f64 x #s(literal -1 binary64)) |
#s(literal -1 binary64) |
(fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) |
(*.f64 t t) |
(*.f64 l l) |
l |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l)))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l))))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (fma.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (*.f64 l (neg.f64 l))))) |
(sqrt.f64 #s(literal 2 binary64)) |
#s(literal 2 binary64) |
(/.f64 t (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l))))) |
(/.f64 t (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l)))) |
(/.f64 t (sqrt.f64 (fma.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (*.f64 l (neg.f64 l))))) |
t |
(sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))) |
(sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l))) |
(sqrt.f64 (fma.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (*.f64 l (neg.f64 l)))) |
(fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l))) |
(-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l)) |
(fma.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (*.f64 l (neg.f64 l))) |
(+.f64 x #s(literal 1 binary64)) |
x |
#s(literal 1 binary64) |
(/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) |
(fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) |
(*.f64 t t) |
(*.f64 l l) |
l |
(+.f64 x #s(literal -1 binary64)) |
#s(literal -1 binary64) |
(*.f64 l (neg.f64 l)) |
(neg.f64 l) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l)))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l)))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l))))) |
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) t) (sqrt.f64 (fma.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (*.f64 l (neg.f64 l))))) |
(*.f64 (sqrt.f64 #s(literal 2 binary64)) t) |
(sqrt.f64 #s(literal 2 binary64)) |
#s(literal 2 binary64) |
t |
(sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l))) |
(sqrt.f64 (-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l))) |
(sqrt.f64 (fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l)))) |
(sqrt.f64 (fma.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (*.f64 l (neg.f64 l)))) |
(-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) (*.f64 l l)) |
(-.f64 (*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) (*.f64 l l)) |
(fma.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64))) (*.f64 l (neg.f64 l))) |
(fma.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (*.f64 l (neg.f64 l))) |
(*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) (+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t)))) |
(*.f64 (/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l))) |
(*.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) (+.f64 x #s(literal -1 binary64)))) |
(/.f64 (+.f64 x #s(literal 1 binary64)) (-.f64 x #s(literal 1 binary64))) |
(/.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 x #s(literal -1 binary64))) |
(+.f64 x #s(literal 1 binary64)) |
x |
#s(literal 1 binary64) |
(-.f64 x #s(literal 1 binary64)) |
(+.f64 x #s(literal -1 binary64)) |
(+.f64 (*.f64 l l) (*.f64 #s(literal 2 binary64) (*.f64 t t))) |
(fma.f64 #s(literal 2 binary64) (*.f64 t t) (*.f64 l l)) |
(*.f64 l l) |
l |
(*.f64 #s(literal 2 binary64) (*.f64 t t)) |
(*.f64 t (*.f64 #s(literal 2 binary64) t)) |
(*.f64 t t) |
| 0.0ms | 1× | 0 | valid |
Compiled 412 to 35 computations (91.5% saved)
ival-div: 0.0ms (0% of total)ival-add: 0.0ms (0% of total)ival-mult: 0.0ms (0% of total)const: 0.0ms (0% of total)ival-sub: 0.0ms (0% of total)ival-sqrt: 0.0ms (0% of total)backward-pass: 0.0ms (0% of total)ival-neg: 0.0ms (0% of total)compiled-spec: 0.0ms (0% of total)backward-pass: 0.0ms (0% of total)compiled-spec: 0.0ms (0% of total)Loading profile data...