
Time bar (total: 1.4s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 100% | 0% | 0% | 0% | 0% | 0 |
| 0% | 0% | 100% | 0% | 0% | 0% | 0% | 1 |
| 0% | 0% | 100% | 0% | 0% | 0% | 0% | 2 |
| 0% | 0% | 50% | 0% | 0% | 50% | 0% | 3 |
| 50% | 25% | 25% | 0% | 0% | 50% | 0% | 4 |
| 75% | 37.5% | 12.5% | 0% | 0% | 50% | 0% | 5 |
| 87.5% | 43.7% | 6.2% | 0% | 0% | 50% | 0% | 6 |
| 93.8% | 46.9% | 3.1% | 0% | 0% | 50% | 0% | 7 |
| 96.9% | 48.4% | 1.6% | 0% | 0% | 50% | 0% | 8 |
| 98.4% | 49.2% | 0.8% | 0% | 0% | 50% | 0% | 9 |
| 99.2% | 49.6% | 0.4% | 0% | 0% | 50% | 0% | 10 |
| 99.6% | 49.8% | 0.2% | 0% | 0% | 50% | 0% | 11 |
| 99.8% | 49.9% | 0.1% | 0% | 0% | 50% | 0% | 12 |
Compiled 22 to 17 computations (22.7% saved)
ival-mult: 1.0ms (38% of total)ival-pi: 0.0ms (0% of total)ival-sub: 0.0ms (0% of total)ival-div: 0.0ms (0% of total)const: 0.0ms (0% of total)ival-sqrt: 0.0ms (0% of total)| 793.0ms | 8256× | 256 | valid |
| 1.0ms | 13× | 256 | invalid |
ival-mult: 281.0ms (49.2% of total)ival-sub: 94.0ms (16.5% of total)ival-sqrt: 72.0ms (12.6% of total)ival-div: 60.0ms (10.5% of total)ival-pi: 40.0ms (7% of total)const: 22.0ms (3.9% of total)| 1× | egg-herbie |
| 647× | fma-define |
| 594× | times-frac |
| 473× | fma-neg |
| 440× | unsub-neg |
| 428× | distribute-lft-in |
Useful iterations: 5 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 31 | 292 |
| 1 | 91 | 272 |
| 2 | 210 | 252 |
| 3 | 706 | 248 |
| 4 | 2204 | 248 |
| 5 | 5036 | 236 |
| 6 | 7676 | 236 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 #s(literal 4 binary64) (*.f64 (*.f64 (*.f64 #s(literal 3 binary64) (PI.f64)) (-.f64 #s(literal 1 binary64) (*.f64 v v))) (sqrt.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 6 binary64) (*.f64 v v)))))) |
(/.f64 #s(literal 4 binary64) (*.f64 (*.f64 (*.f64 #s(literal 3 binary64) (PI.f64)) (-.f64 #s(literal 1 binary64) (*.f64 v v))) (sqrt.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 6 binary64) (*.f64 v v)))))) |
(/.f64 #s(literal 4 binary64) (*.f64 (*.f64 (*.f64 #s(literal 3 binary64) (PI.f64)) (-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 v) (neg.f64 v)))) (sqrt.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 6 binary64) (*.f64 (neg.f64 v) (neg.f64 v))))))) |
(neg.f64 (/.f64 #s(literal 4 binary64) (*.f64 (*.f64 (*.f64 #s(literal 3 binary64) (PI.f64)) (-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 v) (neg.f64 v)))) (sqrt.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 6 binary64) (*.f64 (neg.f64 v) (neg.f64 v)))))))) |
| Outputs |
|---|
(/.f64 #s(literal 4 binary64) (*.f64 (*.f64 (*.f64 #s(literal 3 binary64) (PI.f64)) (-.f64 #s(literal 1 binary64) (*.f64 v v))) (sqrt.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 6 binary64) (*.f64 v v)))))) |
(/.f64 #s(literal 4 binary64) (*.f64 (*.f64 #s(literal 3 binary64) (PI.f64)) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 v v)) (sqrt.f64 (+.f64 #s(literal 2 binary64) (*.f64 #s(literal -6 binary64) (*.f64 v v))))))) |
(/.f64 (/.f64 #s(literal 4/3 binary64) (*.f64 (PI.f64) (-.f64 #s(literal 1 binary64) (*.f64 v v)))) (sqrt.f64 (+.f64 #s(literal 2 binary64) (*.f64 (*.f64 v v) #s(literal -6 binary64))))) |
(/.f64 (/.f64 (/.f64 #s(literal 4/3 binary64) (PI.f64)) (-.f64 #s(literal 1 binary64) (*.f64 v v))) (sqrt.f64 (fma.f64 (*.f64 v v) #s(literal -6 binary64) #s(literal 2 binary64)))) |
(/.f64 (/.f64 (/.f64 #s(literal 4/3 binary64) (PI.f64)) (-.f64 #s(literal 1 binary64) (*.f64 v v))) (sqrt.f64 (fma.f64 v (*.f64 v #s(literal -6 binary64)) #s(literal 2 binary64)))) |
(/.f64 (/.f64 (/.f64 #s(literal -4/3 binary64) (PI.f64)) (fma.f64 v v #s(literal -1 binary64))) (sqrt.f64 (fma.f64 v (*.f64 v #s(literal -6 binary64)) #s(literal 2 binary64)))) |
(/.f64 #s(literal 4 binary64) (*.f64 (*.f64 (*.f64 #s(literal 3 binary64) (PI.f64)) (-.f64 #s(literal 1 binary64) (*.f64 v v))) (sqrt.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 6 binary64) (*.f64 v v)))))) |
(/.f64 #s(literal 4 binary64) (*.f64 (*.f64 #s(literal 3 binary64) (PI.f64)) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 v v)) (sqrt.f64 (+.f64 #s(literal 2 binary64) (*.f64 #s(literal -6 binary64) (*.f64 v v))))))) |
(/.f64 (/.f64 #s(literal 4/3 binary64) (*.f64 (PI.f64) (-.f64 #s(literal 1 binary64) (*.f64 v v)))) (sqrt.f64 (+.f64 #s(literal 2 binary64) (*.f64 (*.f64 v v) #s(literal -6 binary64))))) |
(/.f64 (/.f64 (/.f64 #s(literal 4/3 binary64) (PI.f64)) (-.f64 #s(literal 1 binary64) (*.f64 v v))) (sqrt.f64 (fma.f64 (*.f64 v v) #s(literal -6 binary64) #s(literal 2 binary64)))) |
(/.f64 (/.f64 (/.f64 #s(literal 4/3 binary64) (PI.f64)) (-.f64 #s(literal 1 binary64) (*.f64 v v))) (sqrt.f64 (fma.f64 v (*.f64 v #s(literal -6 binary64)) #s(literal 2 binary64)))) |
(/.f64 (/.f64 (/.f64 #s(literal -4/3 binary64) (PI.f64)) (fma.f64 v v #s(literal -1 binary64))) (sqrt.f64 (fma.f64 v (*.f64 v #s(literal -6 binary64)) #s(literal 2 binary64)))) |
(/.f64 #s(literal 4 binary64) (*.f64 (*.f64 (*.f64 #s(literal 3 binary64) (PI.f64)) (-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 v) (neg.f64 v)))) (sqrt.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 6 binary64) (*.f64 (neg.f64 v) (neg.f64 v))))))) |
(/.f64 #s(literal 4 binary64) (*.f64 (*.f64 #s(literal 3 binary64) (PI.f64)) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 v v)) (sqrt.f64 (+.f64 #s(literal 2 binary64) (*.f64 #s(literal -6 binary64) (*.f64 v v))))))) |
(/.f64 (/.f64 #s(literal 4/3 binary64) (*.f64 (PI.f64) (-.f64 #s(literal 1 binary64) (*.f64 v v)))) (sqrt.f64 (+.f64 #s(literal 2 binary64) (*.f64 (*.f64 v v) #s(literal -6 binary64))))) |
(/.f64 (/.f64 (/.f64 #s(literal 4/3 binary64) (PI.f64)) (-.f64 #s(literal 1 binary64) (*.f64 v v))) (sqrt.f64 (fma.f64 (*.f64 v v) #s(literal -6 binary64) #s(literal 2 binary64)))) |
(/.f64 (/.f64 (/.f64 #s(literal 4/3 binary64) (PI.f64)) (-.f64 #s(literal 1 binary64) (*.f64 v v))) (sqrt.f64 (fma.f64 v (*.f64 v #s(literal -6 binary64)) #s(literal 2 binary64)))) |
(/.f64 (/.f64 (/.f64 #s(literal -4/3 binary64) (PI.f64)) (fma.f64 v v #s(literal -1 binary64))) (sqrt.f64 (fma.f64 v (*.f64 v #s(literal -6 binary64)) #s(literal 2 binary64)))) |
(neg.f64 (/.f64 #s(literal 4 binary64) (*.f64 (*.f64 (*.f64 #s(literal 3 binary64) (PI.f64)) (-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 v) (neg.f64 v)))) (sqrt.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 6 binary64) (*.f64 (neg.f64 v) (neg.f64 v)))))))) |
(/.f64 #s(literal -4 binary64) (*.f64 (*.f64 #s(literal 3 binary64) (PI.f64)) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 v v)) (sqrt.f64 (+.f64 #s(literal 2 binary64) (*.f64 #s(literal -6 binary64) (*.f64 v v))))))) |
(/.f64 (/.f64 #s(literal 4/3 binary64) (*.f64 (PI.f64) (-.f64 #s(literal 1 binary64) (*.f64 v v)))) (neg.f64 (sqrt.f64 (+.f64 #s(literal 2 binary64) (*.f64 (*.f64 v v) #s(literal -6 binary64)))))) |
(/.f64 (/.f64 (/.f64 #s(literal -4/3 binary64) (PI.f64)) (-.f64 #s(literal 1 binary64) (*.f64 v v))) (sqrt.f64 (fma.f64 (*.f64 v v) #s(literal -6 binary64) #s(literal 2 binary64)))) |
(/.f64 (/.f64 (/.f64 #s(literal 4/3 binary64) (PI.f64)) (fma.f64 v v #s(literal -1 binary64))) (sqrt.f64 (fma.f64 v (*.f64 v #s(literal -6 binary64)) #s(literal 2 binary64)))) |
(abs v)
| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 0 | 0 | - | 0 | - | (PI.f64) |
| 0 | 0 | - | 0 | - | (*.f64 (*.f64 #s(literal 3 binary64) (PI.f64)) (-.f64 #s(literal 1 binary64) (*.f64 v v))) |
| 0 | 0 | - | 0 | - | (-.f64 #s(literal 1 binary64) (*.f64 v v)) |
| 0 | 0 | - | 0 | - | (*.f64 #s(literal 6 binary64) (*.f64 v v)) |
| 0 | 0 | - | 0 | - | (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 6 binary64) (*.f64 v v))) |
| 0 | 0 | - | 0 | - | #s(literal 2 binary64) |
| 0 | 0 | - | 0 | - | v |
| 0 | 0 | - | 0 | - | #s(literal 6 binary64) |
| 0 | 0 | - | 0 | - | (*.f64 #s(literal 3 binary64) (PI.f64)) |
| 0 | 0 | - | 0 | - | (*.f64 (*.f64 (*.f64 #s(literal 3 binary64) (PI.f64)) (-.f64 #s(literal 1 binary64) (*.f64 v v))) (sqrt.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 6 binary64) (*.f64 v v))))) |
| 0 | 0 | - | 0 | - | (/.f64 #s(literal 4 binary64) (*.f64 (*.f64 (*.f64 #s(literal 3 binary64) (PI.f64)) (-.f64 #s(literal 1 binary64) (*.f64 v v))) (sqrt.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 6 binary64) (*.f64 v v)))))) |
| 0 | 0 | - | 0 | - | (sqrt.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 6 binary64) (*.f64 v v)))) |
| 0 | 0 | - | 0 | - | #s(literal 4 binary64) |
| 0 | 0 | - | 0 | - | #s(literal 1 binary64) |
| 0 | 0 | - | 0 | - | #s(literal 3 binary64) |
| 0 | 0 | - | 0 | - | (*.f64 v v) |
| 87.0ms | 512× | 256 | valid |
Compiled 195 to 50 computations (74.4% saved)
ival-mult: 24.0ms (58.3% of total)ival-sub: 5.0ms (12.1% of total)ival-div: 4.0ms (9.7% of total)ival-sqrt: 4.0ms (9.7% of total)ival-pi: 2.0ms (4.9% of total)const: 1.0ms (2.4% of total)Compiled 1 to 1 computations (0% saved)
| Status | Accuracy | Program |
|---|---|---|
| 98.5% | (/.f64 #s(literal 4 binary64) (*.f64 (*.f64 (*.f64 #s(literal 3 binary64) (PI.f64)) (-.f64 #s(literal 1 binary64) (*.f64 v v))) (sqrt.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 6 binary64) (*.f64 v v)))))) |
Compiled 42 to 32 computations (23.8% saved)
| 1× | egg-herbie |
| 8× | *-commutative |
| 6× | sub-neg |
| 6× | +-commutative |
| 4× | neg-sub0 |
| 4× | neg-mul-1 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 21 | 73 |
| 1 | 40 | 73 |
| 2 | 56 | 73 |
| 3 | 64 | 73 |
| 4 | 68 | 73 |
| 1× | saturated |
| Inputs |
|---|
(/.f64 #s(literal 4 binary64) (*.f64 (*.f64 (*.f64 #s(literal 3 binary64) (PI.f64)) (-.f64 #s(literal 1 binary64) (*.f64 v v))) (sqrt.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 6 binary64) (*.f64 v v)))))) |
| Outputs |
|---|
(/.f64 #s(literal 4 binary64) (*.f64 (*.f64 (*.f64 #s(literal 3 binary64) (PI.f64)) (-.f64 #s(literal 1 binary64) (*.f64 v v))) (sqrt.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 6 binary64) (*.f64 v v)))))) |
(/.f64 #s(literal 4 binary64) (*.f64 (*.f64 (*.f64 #s(literal 3 binary64) (PI.f64)) (-.f64 #s(literal 1 binary64) (*.f64 v v))) (sqrt.f64 (-.f64 #s(literal 2 binary64) (*.f64 (*.f64 v v) #s(literal 6 binary64)))))) |
| 1× | fuel |
Compiled 21 to 16 computations (23.8% saved)
(abs v)
Compiled 168 to 128 computations (23.8% saved)
Loading profile data...