
Time bar (total: 5.2s)
| 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% | 100% | 0% | 0% | 0% | 0% | 3 |
| 0% | 0% | 100% | 0% | 0% | 0% | 0% | 4 |
| 0% | 0% | 100% | 0% | 0% | 0% | 0% | 5 |
| 0% | 0% | 100% | 0% | 0% | 0% | 0% | 6 |
| 0% | 0% | 100% | 0% | 0% | 0% | 0% | 7 |
| 0% | 0% | 100% | 0% | 0% | 0% | 0% | 8 |
| 0% | 0% | 100% | 0% | 0% | 0% | 0% | 9 |
| 0% | 0% | 100% | 0% | 0% | 0% | 0% | 10 |
| 0% | 0% | 100% | 0% | 0% | 0% | 0% | 11 |
| 0% | 0% | 100% | 0% | 0% | 0% | 0% | 12 |
Compiled 16 to 10 computations (37.5% saved)
ival-mult: 72.0ms (30.8% of total)ival-acos: 68.0ms (29.1% of total)ival-sub: 47.0ms (20.1% of total)ival-div: 41.0ms (17.6% of total)const: 6.0ms (2.6% of total)| 1.7s | 4108× | 2048 | valid |
| 973.0ms | 2093× | 1024 | valid |
| 621.0ms | 8463× | 256 | invalid |
| 225.0ms | 1006× | 512 | valid |
| 89.0ms | 1047× | 256 | valid |
| 6.0ms | 2× | 4096 | valid |
ival-acos: 1.2s (39.1% of total)ival-mult: 1.0s (34.5% of total)ival-sub: 393.0ms (13.4% of total)ival-div: 333.0ms (11.3% of total)const: 51.0ms (1.7% of total)| 1× | egg-herbie |
| 586× | fma-neg |
| 504× | sub-neg |
| 432× | fma-define |
| 359× | unsub-neg |
| 342× | distribute-lft-neg-in |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 22 | 200 |
| 1 | 69 | 200 |
| 2 | 188 | 184 |
| 3 | 652 | 184 |
| 4 | 2521 | 184 |
| 5 | 5095 | 184 |
| 6 | 6375 | 184 |
| 7 | 7330 | 184 |
| 1× | node limit |
| Inputs |
|---|
(acos.f64 (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 5 binary64) (*.f64 v v))) (-.f64 (*.f64 v v) #s(literal 1 binary64)))) |
(acos.f64 (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 5 binary64) (*.f64 v v))) (-.f64 (*.f64 v v) #s(literal 1 binary64)))) |
(acos.f64 (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 5 binary64) (*.f64 (neg.f64 v) (neg.f64 v)))) (-.f64 (*.f64 (neg.f64 v) (neg.f64 v)) #s(literal 1 binary64)))) |
(neg.f64 (acos.f64 (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 5 binary64) (*.f64 (neg.f64 v) (neg.f64 v)))) (-.f64 (*.f64 (neg.f64 v) (neg.f64 v)) #s(literal 1 binary64))))) |
| Outputs |
|---|
(acos.f64 (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 5 binary64) (*.f64 v v))) (-.f64 (*.f64 v v) #s(literal 1 binary64)))) |
(acos.f64 (/.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -5 binary64) (*.f64 v v))) (fma.f64 v v #s(literal -1 binary64)))) |
(acos.f64 (/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 v v) #s(literal -5 binary64))) (fma.f64 v v #s(literal -1 binary64)))) |
(acos.f64 (/.f64 (fma.f64 (*.f64 v v) #s(literal -5 binary64) #s(literal 1 binary64)) (fma.f64 v v #s(literal -1 binary64)))) |
(acos.f64 (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 5 binary64) (*.f64 v v))) (-.f64 (*.f64 v v) #s(literal 1 binary64)))) |
(acos.f64 (/.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -5 binary64) (*.f64 v v))) (fma.f64 v v #s(literal -1 binary64)))) |
(acos.f64 (/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 v v) #s(literal -5 binary64))) (fma.f64 v v #s(literal -1 binary64)))) |
(acos.f64 (/.f64 (fma.f64 (*.f64 v v) #s(literal -5 binary64) #s(literal 1 binary64)) (fma.f64 v v #s(literal -1 binary64)))) |
(acos.f64 (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 5 binary64) (*.f64 (neg.f64 v) (neg.f64 v)))) (-.f64 (*.f64 (neg.f64 v) (neg.f64 v)) #s(literal 1 binary64)))) |
(acos.f64 (/.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -5 binary64) (*.f64 v v))) (fma.f64 v v #s(literal -1 binary64)))) |
(acos.f64 (/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 v v) #s(literal -5 binary64))) (fma.f64 v v #s(literal -1 binary64)))) |
(acos.f64 (/.f64 (fma.f64 (*.f64 v v) #s(literal -5 binary64) #s(literal 1 binary64)) (fma.f64 v v #s(literal -1 binary64)))) |
(neg.f64 (acos.f64 (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 5 binary64) (*.f64 (neg.f64 v) (neg.f64 v)))) (-.f64 (*.f64 (neg.f64 v) (neg.f64 v)) #s(literal 1 binary64))))) |
(neg.f64 (acos.f64 (/.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -5 binary64) (*.f64 v v))) (fma.f64 v v #s(literal -1 binary64))))) |
(neg.f64 (acos.f64 (/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 v v) #s(literal -5 binary64))) (fma.f64 v v #s(literal -1 binary64))))) |
(neg.f64 (acos.f64 (/.f64 (fma.f64 (*.f64 v v) #s(literal -5 binary64) #s(literal 1 binary64)) (fma.f64 v v #s(literal -1 binary64))))) |
(abs v)
| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 7 | 247 | (6.208939175953316e-184) | 0 | - | (acos.f64 (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 5 binary64) (*.f64 v v))) (-.f64 (*.f64 v v) #s(literal 1 binary64)))) |
| 0 | 0 | - | 0 | - | (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 5 binary64) (*.f64 v v))) |
| 0 | 0 | - | 0 | - | (-.f64 (*.f64 v v) #s(literal 1 binary64)) |
| 0 | 0 | - | 0 | - | v |
| 0 | 0 | - | 0 | - | (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 5 binary64) (*.f64 v v))) (-.f64 (*.f64 v v) #s(literal 1 binary64))) |
| 0 | 0 | - | 0 | - | (*.f64 v v) |
| 0 | 0 | - | 0 | - | #s(literal 5 binary64) |
| 0 | 0 | - | 0 | - | #s(literal 1 binary64) |
| 0 | 0 | - | 0 | - | (*.f64 #s(literal 5 binary64) (*.f64 v v)) |
| 133.0ms | 270× | 2048 | valid |
| 39.0ms | 130× | 1024 | valid |
| 12.0ms | 66× | 512 | valid |
| 4.0ms | 46× | 256 | valid |
Compiled 119 to 29 computations (75.6% saved)
ival-acos: 45.0ms (39.8% of total)ival-mult: 29.0ms (25.7% of total)ival-sub: 22.0ms (19.5% of total)ival-div: 14.0ms (12.4% of total)const: 3.0ms (2.7% of total)Compiled 1 to 1 computations (0% saved)
| Status | Accuracy | Program |
|---|---|---|
| 99.5% | (acos.f64 (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 5 binary64) (*.f64 v v))) (-.f64 (*.f64 v v) #s(literal 1 binary64)))) |
Compiled 30 to 18 computations (40% saved)
| 1× | egg-herbie |
| 12× | neg-mul-1 |
| 10× | unsub-neg |
| 8× | *-commutative |
| 8× | +-commutative |
| 7× | distribute-lft-neg-in |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 14 | 53 |
| 1 | 27 | 53 |
| 2 | 41 | 53 |
| 3 | 55 | 53 |
| 4 | 74 | 53 |
| 5 | 101 | 53 |
| 6 | 109 | 53 |
| 7 | 111 | 53 |
| 1× | saturated |
| Inputs |
|---|
(acos.f64 (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 5 binary64) (*.f64 v v))) (-.f64 (*.f64 v v) #s(literal 1 binary64)))) |
| Outputs |
|---|
(acos.f64 (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 5 binary64) (*.f64 v v))) (-.f64 (*.f64 v v) #s(literal 1 binary64)))) |
(acos.f64 (/.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 5 binary64) (*.f64 v v))) (+.f64 (*.f64 v v) #s(literal -1 binary64)))) |
| 1× | fuel |
Compiled 15 to 10 computations (33.3% saved)
(abs v)
Compiled 120 to 78 computations (35% saved)
Loading profile data...