
Time bar (total: 2.8s)
| 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 |
| 25% | 25% | 74.9% | 0.1% | 0% | 0% | 0% | 4 |
| 37.5% | 37.4% | 62.4% | 0.1% | 0% | 0% | 0% | 5 |
| 37.5% | 37.4% | 62.4% | 0.1% | 0% | 0% | 0% | 6 |
| 40% | 37.4% | 56.2% | 0.1% | 0% | 6.2% | 0% | 7 |
| 48.3% | 45.2% | 48.4% | 0.1% | 0% | 6.2% | 0% | 8 |
| 53% | 48.4% | 42.9% | 0.1% | 0% | 8.6% | 0% | 9 |
| 58.1% | 50.3% | 36.3% | 0.1% | 0% | 13.3% | 0% | 10 |
| 66.1% | 56.8% | 29.1% | 0.1% | 0% | 14% | 0% | 11 |
| 70.4% | 58.8% | 24.7% | 0.1% | 0% | 16.4% | 0% | 12 |
Compiled 21 to 13 computations (38.1% saved)
ival-mult: 33.0ms (39.2% of total)ival-sqrt: 14.0ms (16.6% of total)ival-sub: 13.0ms (15.5% of total)ival-div: 8.0ms (9.5% of total)ival-add: 7.0ms (8.3% of total)ival-neg: 7.0ms (8.3% of total)const: 2.0ms (2.4% of total)backward-pass: 0.0ms (0% of total)| 622.0ms | 1944× | 2 | valid |
| 620.0ms | 5510× | 0 | valid |
| 270.0ms | 802× | 1 | valid |
| 171.0ms | 984× | 0 | invalid |
ival-mult: 418.0ms (35% of total)ival-div: 197.0ms (16.5% of total)ival-sqrt: 158.0ms (13.2% of total)ival-add: 136.0ms (11.4% of total)ival-neg: 104.0ms (8.7% of total)backward-pass: 86.0ms (7.2% of total)ival-sub: 81.0ms (6.8% of total)const: 14.0ms (1.2% of total)| 1× | egg-herbie |
| 841× | div-sub |
| 712× | fmm-def |
| 592× | fma-define |
| 503× | sub-neg |
| 396× | associate-/r* |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 60 | 779 |
| 1 | 176 | 671 |
| 2 | 482 | 671 |
| 3 | 1308 | 671 |
| 4 | 3663 | 671 |
| 5 | 7645 | 671 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) a) c)))) (*.f64 #s(literal 3 binary64) a)) |
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) a) c)))) (*.f64 #s(literal 3 binary64) a)) |
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) (neg.f64 a)) c)))) (*.f64 #s(literal 3 binary64) (neg.f64 a))) |
(/.f64 (+.f64 (neg.f64 (neg.f64 b)) (sqrt.f64 (-.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (*.f64 (*.f64 #s(literal 3 binary64) a) c)))) (*.f64 #s(literal 3 binary64) a)) |
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) a) (neg.f64 c))))) (*.f64 #s(literal 3 binary64) a)) |
(neg.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) (neg.f64 a)) c)))) (*.f64 #s(literal 3 binary64) (neg.f64 a)))) |
(neg.f64 (/.f64 (+.f64 (neg.f64 (neg.f64 b)) (sqrt.f64 (-.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (*.f64 (*.f64 #s(literal 3 binary64) a) c)))) (*.f64 #s(literal 3 binary64) a))) |
(neg.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) a) (neg.f64 c))))) (*.f64 #s(literal 3 binary64) a))) |
(/.f64 (+.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 (*.f64 #s(literal 3 binary64) b) c)))) (*.f64 #s(literal 3 binary64) b)) |
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) c) a)))) (*.f64 #s(literal 3 binary64) c)) |
(/.f64 (+.f64 (neg.f64 c) (sqrt.f64 (-.f64 (*.f64 c c) (*.f64 (*.f64 #s(literal 3 binary64) a) b)))) (*.f64 #s(literal 3 binary64) a)) |
| Outputs |
|---|
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) a) c)))) (*.f64 #s(literal 3 binary64) a)) |
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 3 binary64) (*.f64 a c))))) (*.f64 #s(literal 3 binary64) a)) |
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c #s(literal -3 binary64))))) b) (*.f64 #s(literal 3 binary64) a)) |
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) a) c)))) (*.f64 #s(literal 3 binary64) a)) |
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 3 binary64) (*.f64 a c))))) (*.f64 #s(literal 3 binary64) a)) |
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c #s(literal -3 binary64))))) b) (*.f64 #s(literal 3 binary64) a)) |
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) (neg.f64 a)) c)))) (*.f64 #s(literal 3 binary64) (neg.f64 a))) |
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 3 binary64) (*.f64 (neg.f64 a) c))))) (*.f64 #s(literal 3 binary64) (neg.f64 a))) |
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 #s(literal 3 binary64) (*.f64 a c)))) b) (*.f64 a #s(literal -3 binary64))) |
(*.f64 #s(literal -1/3 binary64) (/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 #s(literal 3 binary64) c)))) b) a)) |
(*.f64 (/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 #s(literal 3 binary64) c)))) b) a) #s(literal -1/3 binary64)) |
(/.f64 (+.f64 (neg.f64 (neg.f64 b)) (sqrt.f64 (-.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (*.f64 (*.f64 #s(literal 3 binary64) a) c)))) (*.f64 #s(literal 3 binary64) a)) |
(/.f64 (+.f64 b (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 3 binary64) (*.f64 a c))))) (*.f64 #s(literal 3 binary64) a)) |
(/.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c #s(literal -3 binary64)))))) (*.f64 #s(literal 3 binary64) a)) |
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) a) (neg.f64 c))))) (*.f64 #s(literal 3 binary64) a)) |
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 #s(literal 3 binary64) (*.f64 a c)))) b) (*.f64 #s(literal 3 binary64) a)) |
(*.f64 #s(literal 1/3 binary64) (/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 #s(literal 3 binary64) c)))) b) a)) |
(*.f64 (/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 #s(literal 3 binary64) c)))) b) a) #s(literal 1/3 binary64)) |
(neg.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) (neg.f64 a)) c)))) (*.f64 #s(literal 3 binary64) (neg.f64 a)))) |
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) a) (neg.f64 c))))) (*.f64 #s(literal 3 binary64) a)) |
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 #s(literal 3 binary64) (*.f64 a c)))) b) (*.f64 #s(literal 3 binary64) a)) |
(*.f64 #s(literal 1/3 binary64) (/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 #s(literal 3 binary64) c)))) b) a)) |
(*.f64 (/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 #s(literal 3 binary64) c)))) b) a) #s(literal 1/3 binary64)) |
(neg.f64 (/.f64 (+.f64 (neg.f64 (neg.f64 b)) (sqrt.f64 (-.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (*.f64 (*.f64 #s(literal 3 binary64) a) c)))) (*.f64 #s(literal 3 binary64) a))) |
(/.f64 (+.f64 b (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 3 binary64) (*.f64 a c))))) (*.f64 #s(literal 3 binary64) (neg.f64 a))) |
(/.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c #s(literal -3 binary64)))))) (*.f64 a #s(literal -3 binary64))) |
(neg.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) a) (neg.f64 c))))) (*.f64 #s(literal 3 binary64) a))) |
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 3 binary64) (*.f64 (neg.f64 a) c))))) (*.f64 #s(literal 3 binary64) (neg.f64 a))) |
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 #s(literal 3 binary64) (*.f64 a c)))) b) (*.f64 a #s(literal -3 binary64))) |
(*.f64 #s(literal -1/3 binary64) (/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 #s(literal 3 binary64) c)))) b) a)) |
(*.f64 (/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 #s(literal 3 binary64) c)))) b) a) #s(literal -1/3 binary64)) |
(/.f64 (+.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 (*.f64 #s(literal 3 binary64) b) c)))) (*.f64 #s(literal 3 binary64) b)) |
(/.f64 (+.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 #s(literal 3 binary64) (*.f64 b c))))) (*.f64 b #s(literal 3 binary64))) |
(/.f64 (-.f64 (sqrt.f64 (fma.f64 a a (*.f64 c (*.f64 b #s(literal -3 binary64))))) a) (*.f64 b #s(literal 3 binary64))) |
(/.f64 (-.f64 (sqrt.f64 (fma.f64 a a (*.f64 b (*.f64 c #s(literal -3 binary64))))) a) (*.f64 b #s(literal 3 binary64))) |
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b (*.f64 c #s(literal -3 binary64)) (*.f64 a a))) a) (*.f64 b #s(literal 3 binary64))) |
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) c) a)))) (*.f64 #s(literal 3 binary64) c)) |
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 3 binary64) (*.f64 c a))))) (*.f64 #s(literal 3 binary64) c)) |
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c #s(literal -3 binary64))))) b) (*.f64 #s(literal 3 binary64) c)) |
(/.f64 (+.f64 (neg.f64 c) (sqrt.f64 (-.f64 (*.f64 c c) (*.f64 (*.f64 #s(literal 3 binary64) a) b)))) (*.f64 #s(literal 3 binary64) a)) |
(/.f64 (+.f64 (neg.f64 c) (sqrt.f64 (-.f64 (*.f64 c c) (*.f64 b (*.f64 #s(literal 3 binary64) a))))) (*.f64 #s(literal 3 binary64) a)) |
(/.f64 (-.f64 (sqrt.f64 (fma.f64 c c (*.f64 b (*.f64 a #s(literal -3 binary64))))) c) (*.f64 #s(literal 3 binary64) a)) |
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b (*.f64 a #s(literal -3 binary64)) (*.f64 c c))) c) (*.f64 #s(literal 3 binary64) a)) |
| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 113 | 0 | - | 2 | (-2.7541493092410745e-220 9.421369111292815e-235 2.1817553166493334e-99) | (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) a) c))) |
| 49 | 0 | - | 0 | - | (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) a) c)))) |
| 15 | 0 | - | 1 | (7.680481776321125e-261 2.839126515927873e-46 -1.0485375945419545e-106) | (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) a) c)))) (*.f64 #s(literal 3 binary64) a)) |
| 0 | 0 | - | 0 | - | (*.f64 #s(literal 3 binary64) a) |
| 0 | 0 | - | 0 | - | b |
| 0 | 0 | - | 0 | - | (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) a) c)) |
| 0 | 0 | - | 0 | - | (neg.f64 b) |
| 0 | 0 | - | 0 | - | c |
| 0 | 0 | - | 0 | - | (*.f64 b b) |
| 0 | 0 | - | 0 | - | (*.f64 (*.f64 #s(literal 3 binary64) a) c) |
| 0 | 0 | - | 0 | - | #s(literal 3 binary64) |
| 0 | 0 | - | 0 | - | a |
| 56.0ms | 110× | 2 | valid |
| 40.0ms | 364× | 0 | valid |
| 11.0ms | 38× | 1 | valid |
Compiled 160 to 38 computations (76.3% saved)
ival-neg: 18.0ms (29.5% of total)ival-mult: 15.0ms (24.6% of total)ival-sqrt: 7.0ms (11.5% of total)backward-pass: 7.0ms (11.5% of total)ival-div: 6.0ms (9.8% of total)ival-sub: 4.0ms (6.6% of total)ival-add: 4.0ms (6.6% of total)const: 1.0ms (1.6% of total)Compiled 35 to 20 computations (42.9% saved)
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 52.7% | (/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c #s(literal -3 binary64))))) b) (*.f64 #s(literal 3 binary64) a)) |
| ▶ | 52.8% | (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) a) c)))) (*.f64 #s(literal 3 binary64) a)) |
| ▶ | 52.7% | (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 3 binary64) (*.f64 a c))))) (*.f64 #s(literal 3 binary64) a)) |
Compiled 58 to 37 computations (36.2% saved)
| 1× | egg-herbie |
Found 12 expressions of interest:
| New | Metric | Score | Program |
|---|---|---|---|
| ✓ | cost-diff | 0 | (fma.f64 b b (*.f64 a (*.f64 c #s(literal -3 binary64)))) |
| ✓ | cost-diff | 0 | (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c #s(literal -3 binary64))))) |
| ✓ | cost-diff | 0 | (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c #s(literal -3 binary64))))) b) |
| ✓ | cost-diff | 0 | (/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c #s(literal -3 binary64))))) b) (*.f64 #s(literal 3 binary64) a)) |
| ✓ | cost-diff | 0 | (*.f64 #s(literal 3 binary64) a) |
| ✓ | cost-diff | 0 | (*.f64 (*.f64 #s(literal 3 binary64) a) c) |
| ✓ | cost-diff | 0 | (*.f64 b b) |
| ✓ | cost-diff | 0 | (neg.f64 b) |
| ✓ | cost-diff | 0 | (*.f64 a c) |
| ✓ | cost-diff | 0 | (*.f64 #s(literal 3 binary64) (*.f64 a c)) |
| ✓ | cost-diff | 0 | (*.f64 b b) |
| ✓ | cost-diff | 0 | (neg.f64 b) |
| 968× | fma-define |
| 691× | fmm-def |
| 212× | times-frac |
| 210× | div-sub |
| 151× | cancel-sign-sub-inv |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 33 | 795 |
| 1 | 69 | 723 |
| 2 | 125 | 723 |
| 3 | 221 | 723 |
| 4 | 336 | 723 |
| 5 | 520 | 723 |
| 6 | 860 | 723 |
| 7 | 1506 | 723 |
| 8 | 3081 | 723 |
| 9 | 3803 | 723 |
| 10 | 4201 | 723 |
| 11 | 4328 | 723 |
| 12 | 4337 | 723 |
| 13 | 4337 | 723 |
| 1× | saturated |
| Inputs |
|---|
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 3 binary64) (*.f64 a c))))) (*.f64 #s(literal 3 binary64) a)) |
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 3 binary64) (*.f64 a c))))) |
(neg.f64 b) |
b |
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 3 binary64) (*.f64 a c)))) |
(-.f64 (*.f64 b b) (*.f64 #s(literal 3 binary64) (*.f64 a c))) |
(*.f64 b b) |
(*.f64 #s(literal 3 binary64) (*.f64 a c)) |
#s(literal 3 binary64) |
(*.f64 a c) |
a |
c |
(*.f64 #s(literal 3 binary64) a) |
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) a) c)))) (*.f64 #s(literal 3 binary64) a)) |
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) a) c)))) |
(neg.f64 b) |
b |
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) a) c))) |
(-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) a) c)) |
(*.f64 b b) |
(*.f64 (*.f64 #s(literal 3 binary64) a) c) |
(*.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
a |
c |
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c #s(literal -3 binary64))))) b) (*.f64 #s(literal 3 binary64) a)) |
(-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c #s(literal -3 binary64))))) b) |
(sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c #s(literal -3 binary64))))) |
(fma.f64 b b (*.f64 a (*.f64 c #s(literal -3 binary64)))) |
b |
(*.f64 a (*.f64 c #s(literal -3 binary64))) |
a |
(*.f64 c #s(literal -3 binary64)) |
c |
#s(literal -3 binary64) |
(*.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
| Outputs |
|---|
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 3 binary64) (*.f64 a c))))) (*.f64 #s(literal 3 binary64) a)) |
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a #s(literal -3 binary64))))) b) (*.f64 #s(literal 3 binary64) a)) |
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c #s(literal -3 binary64))))) b) (*.f64 #s(literal 3 binary64) a)) |
(*.f64 (-.f64 b (sqrt.f64 (fma.f64 a (*.f64 c #s(literal -3 binary64)) (*.f64 b b)))) (/.f64 #s(literal -1/3 binary64) a)) |
(*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c #s(literal -3 binary64)) (*.f64 b b))) b) (/.f64 #s(literal 1/3 binary64) a)) |
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 3 binary64) (*.f64 a c))))) |
(-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a #s(literal -3 binary64))))) b) |
(-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c #s(literal -3 binary64))))) b) |
(-.f64 (sqrt.f64 (fma.f64 a (*.f64 c #s(literal -3 binary64)) (*.f64 b b))) b) |
(neg.f64 b) |
b |
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 3 binary64) (*.f64 a c)))) |
(sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a #s(literal -3 binary64))))) |
(sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c #s(literal -3 binary64))))) |
(sqrt.f64 (fma.f64 a (*.f64 c #s(literal -3 binary64)) (*.f64 b b))) |
(-.f64 (*.f64 b b) (*.f64 #s(literal 3 binary64) (*.f64 a c))) |
(fma.f64 b b (*.f64 c (*.f64 a #s(literal -3 binary64)))) |
(fma.f64 b b (*.f64 a (*.f64 c #s(literal -3 binary64)))) |
(fma.f64 a (*.f64 c #s(literal -3 binary64)) (*.f64 b b)) |
(*.f64 b b) |
(*.f64 #s(literal 3 binary64) (*.f64 a c)) |
#s(literal 3 binary64) |
(*.f64 a c) |
a |
c |
(*.f64 #s(literal 3 binary64) a) |
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) a) c)))) (*.f64 #s(literal 3 binary64) a)) |
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 3 binary64) (*.f64 a c))))) (*.f64 #s(literal 3 binary64) a)) |
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a #s(literal -3 binary64))))) b) (*.f64 #s(literal 3 binary64) a)) |
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c #s(literal -3 binary64))))) b) (*.f64 #s(literal 3 binary64) a)) |
(*.f64 (-.f64 b (sqrt.f64 (fma.f64 a (*.f64 c #s(literal -3 binary64)) (*.f64 b b)))) (/.f64 #s(literal -1/3 binary64) a)) |
(*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c #s(literal -3 binary64)) (*.f64 b b))) b) (/.f64 #s(literal 1/3 binary64) a)) |
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) a) c)))) |
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 3 binary64) (*.f64 a c))))) |
(-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a #s(literal -3 binary64))))) b) |
(-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c #s(literal -3 binary64))))) b) |
(-.f64 (sqrt.f64 (fma.f64 a (*.f64 c #s(literal -3 binary64)) (*.f64 b b))) b) |
(neg.f64 b) |
b |
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) a) c))) |
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 3 binary64) (*.f64 a c)))) |
(sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a #s(literal -3 binary64))))) |
(sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c #s(literal -3 binary64))))) |
(sqrt.f64 (fma.f64 a (*.f64 c #s(literal -3 binary64)) (*.f64 b b))) |
(-.f64 (*.f64 b b) (*.f64 (*.f64 #s(literal 3 binary64) a) c)) |
(-.f64 (*.f64 b b) (*.f64 #s(literal 3 binary64) (*.f64 a c))) |
(fma.f64 b b (*.f64 c (*.f64 a #s(literal -3 binary64)))) |
(fma.f64 b b (*.f64 a (*.f64 c #s(literal -3 binary64)))) |
(fma.f64 a (*.f64 c #s(literal -3 binary64)) (*.f64 b b)) |
(*.f64 b b) |
(*.f64 (*.f64 #s(literal 3 binary64) a) c) |
(*.f64 #s(literal 3 binary64) (*.f64 a c)) |
(*.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
a |
c |
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c #s(literal -3 binary64))))) b) (*.f64 #s(literal 3 binary64) a)) |
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 3 binary64) (*.f64 a c))))) (*.f64 #s(literal 3 binary64) a)) |
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a #s(literal -3 binary64))))) b) (*.f64 #s(literal 3 binary64) a)) |
(*.f64 (-.f64 b (sqrt.f64 (fma.f64 a (*.f64 c #s(literal -3 binary64)) (*.f64 b b)))) (/.f64 #s(literal -1/3 binary64) a)) |
(*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c #s(literal -3 binary64)) (*.f64 b b))) b) (/.f64 #s(literal 1/3 binary64) a)) |
(-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c #s(literal -3 binary64))))) b) |
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 3 binary64) (*.f64 a c))))) |
(-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a #s(literal -3 binary64))))) b) |
(-.f64 (sqrt.f64 (fma.f64 a (*.f64 c #s(literal -3 binary64)) (*.f64 b b))) b) |
(sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c #s(literal -3 binary64))))) |
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 3 binary64) (*.f64 a c)))) |
(sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a #s(literal -3 binary64))))) |
(sqrt.f64 (fma.f64 a (*.f64 c #s(literal -3 binary64)) (*.f64 b b))) |
(fma.f64 b b (*.f64 a (*.f64 c #s(literal -3 binary64)))) |
(-.f64 (*.f64 b b) (*.f64 #s(literal 3 binary64) (*.f64 a c))) |
(fma.f64 b b (*.f64 c (*.f64 a #s(literal -3 binary64)))) |
(fma.f64 a (*.f64 c #s(literal -3 binary64)) (*.f64 b b)) |
b |
(*.f64 a (*.f64 c #s(literal -3 binary64))) |
(*.f64 c (*.f64 a #s(literal -3 binary64))) |
a |
(*.f64 c #s(literal -3 binary64)) |
c |
#s(literal -3 binary64) |
(*.f64 #s(literal 3 binary64) a) |
#s(literal 3 binary64) |
| 3.0ms | 10× | 0 | valid |
Compiled 198 to 26 computations (86.9% saved)
ival-mult: 1.0ms (54.8% of total)ival-div: 0.0ms (0% of total)ival-add: 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...