
Time bar (total: 2.5s)
| 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 |
| 100% | 99.9% | 0% | 0.1% | 0% | 0% | 0% | 4 |
Compiled 30 to 21 computations (30% saved)
| 498.0ms | 8 256× | 0 | valid-sollya |
| 482.0ms | 8 256× | 0 | valid-baseline |
| 444.0ms | 8 256× | 0 | valid-rival |
| 1× | egg-herbie |
| 212× | fmm-def |
| 120× | fma-define |
| 31× | unsub-neg |
| 31× | neg-sub0 |
| 30× | sub-neg |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 42 | 507 |
| 1 | 91 | 507 |
| 2 | 179 | 507 |
| 3 | 398 | 507 |
| 4 | 682 | 507 |
| 5 | 832 | 507 |
| 6 | 848 | 507 |
| 1× | saturated |
| Inputs |
|---|
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 z z)))) |
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 z z)))) |
(sqrt.f64 (+.f64 (*.f64 (neg.f64 x) (neg.f64 x)) (+.f64 (*.f64 y y) (*.f64 z z)))) |
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 (neg.f64 y) (neg.f64 y)) (*.f64 z z)))) |
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 (neg.f64 z) (neg.f64 z))))) |
(neg.f64 (sqrt.f64 (+.f64 (*.f64 (neg.f64 x) (neg.f64 x)) (+.f64 (*.f64 y y) (*.f64 z z))))) |
(neg.f64 (sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 (neg.f64 y) (neg.f64 y)) (*.f64 z z))))) |
(neg.f64 (sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 (neg.f64 z) (neg.f64 z)))))) |
(sqrt.f64 (+.f64 (*.f64 y y) (+.f64 (*.f64 x x) (*.f64 z z)))) |
(sqrt.f64 (+.f64 (*.f64 z z) (+.f64 (*.f64 y y) (*.f64 x x)))) |
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 z z) (*.f64 y y)))) |
| Outputs |
|---|
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 z z)))) |
(sqrt.f64 (fma.f64 y y (fma.f64 x x (*.f64 z z)))) |
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 z z)))) |
(sqrt.f64 (fma.f64 y y (fma.f64 x x (*.f64 z z)))) |
(sqrt.f64 (+.f64 (*.f64 (neg.f64 x) (neg.f64 x)) (+.f64 (*.f64 y y) (*.f64 z z)))) |
(sqrt.f64 (fma.f64 y y (fma.f64 x x (*.f64 z z)))) |
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 (neg.f64 y) (neg.f64 y)) (*.f64 z z)))) |
(sqrt.f64 (fma.f64 y y (fma.f64 x x (*.f64 z z)))) |
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 (neg.f64 z) (neg.f64 z))))) |
(sqrt.f64 (fma.f64 y y (fma.f64 x x (*.f64 z z)))) |
(neg.f64 (sqrt.f64 (+.f64 (*.f64 (neg.f64 x) (neg.f64 x)) (+.f64 (*.f64 y y) (*.f64 z z))))) |
(neg.f64 (sqrt.f64 (fma.f64 y y (fma.f64 x x (*.f64 z z))))) |
(neg.f64 (sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 (neg.f64 y) (neg.f64 y)) (*.f64 z z))))) |
(neg.f64 (sqrt.f64 (fma.f64 y y (fma.f64 x x (*.f64 z z))))) |
(neg.f64 (sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 (neg.f64 z) (neg.f64 z)))))) |
(neg.f64 (sqrt.f64 (fma.f64 y y (fma.f64 x x (*.f64 z z))))) |
(sqrt.f64 (+.f64 (*.f64 y y) (+.f64 (*.f64 x x) (*.f64 z z)))) |
(sqrt.f64 (fma.f64 y y (fma.f64 x x (*.f64 z z)))) |
(sqrt.f64 (+.f64 (*.f64 z z) (+.f64 (*.f64 y y) (*.f64 x x)))) |
(sqrt.f64 (fma.f64 y y (fma.f64 x x (*.f64 z z)))) |
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 z z) (*.f64 y y)))) |
(sqrt.f64 (fma.f64 y y (fma.f64 x x (*.f64 z z)))) |
(abs x)
(abs y)
(abs z)
(sort x y z)
Compiled 15 to 9 computations (40% saved)
Compiled 3 to 3 computations (0% saved)
| Status | Accuracy | Program |
|---|---|---|
| 42.7% | (sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 z z)))) |
Compiled 30 to 18 computations (40% saved)
| 1× | egg-herbie |
| 2× | +-commutative |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 16 | 53 |
| 1 | 18 | 53 |
| 1× | saturated |
| Inputs |
|---|
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 z z)))) |
| Outputs |
|---|
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 z z)))) |
| 1× | fuel |
Compiled 15 to 9 computations (40% saved)
(sort x y z)
(abs z)
(abs y)
(abs x)
Compiled 316 to 190 computations (39.9% saved)
Loading profile data...