
Time bar (total: 4.0s)
| 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 |
| 50% | 50% | 50% | 0.1% | 0% | 0% | 0% | 4 |
| 75% | 74.9% | 25% | 0.1% | 0% | 0% | 0% | 5 |
| 75% | 74.9% | 25% | 0.1% | 0% | 0% | 0% | 6 |
| 75% | 74.9% | 25% | 0.1% | 0% | 0% | 0% | 7 |
| 75% | 74.9% | 25% | 0.1% | 0% | 0% | 0% | 8 |
| 75% | 74.9% | 25% | 0.1% | 0% | 0% | 0% | 9 |
| 75% | 74.9% | 25% | 0.1% | 0% | 0% | 0% | 10 |
| 75% | 74.9% | 25% | 0.1% | 0% | 0% | 0% | 11 |
| 75% | 74.9% | 25% | 0.1% | 0% | 0% | 0% | 12 |
Compiled 52 to 34 computations (34.6% saved)
| 53.0ms | 260× | 0 | valid |
ival-sin: 10.0ms (21.6% of total)ival-cos: 9.0ms (19.5% of total)ival-mult: 8.0ms (17.3% of total)ival-div: 7.0ms (15.1% of total)ival-sub: 5.0ms (10.8% of total)ival-sqrt: 4.0ms (8.7% of total)ival-add: 3.0ms (6.5% of total)exact: 1.0ms (2.2% of total)ival-assert: 0.0ms (0% of total)ival-true: 0.0ms (0% of total)| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 49 | 20 | (4.588521318079096e-170 -1.4440291478832812e-184) | 0 | - | (-.f64 (cos.f64 x) (cos.f64 y)) |
| 0 | 0 | - | 0 | - | (+.f64 #s(literal 1 binary64) (*.f64 (/.f64 (-.f64 (sqrt.f64 #s(literal 5 binary64)) #s(literal 1 binary64)) #s(literal 2 binary64)) (cos.f64 x))) |
| 0 | 0 | - | 0 | - | (sin.f64 y) |
| 0 | 0 | - | 0 | - | #s(literal 3 binary64) |
| 0 | 0 | - | 0 | - | #s(literal 5 binary64) |
| 0 | 0 | - | 0 | - | #s(literal 1 binary64) |
| 0 | 0 | - | 0 | - | (sqrt.f64 #s(literal 5 binary64)) |
| 0 | 0 | - | 0 | - | (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) #s(literal 16 binary64))) |
| 0 | 0 | - | 0 | - | (/.f64 (sin.f64 y) #s(literal 16 binary64)) |
| 0 | 0 | - | 0 | - | (-.f64 #s(literal 3 binary64) (sqrt.f64 #s(literal 5 binary64))) |
| 0 | 2 | (4.861386860768941e-162 1.3856076102670151e-247) | 0 | - | (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) #s(literal 16 binary64)))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) #s(literal 16 binary64)))) (-.f64 (cos.f64 x) (cos.f64 y))) |
| 0 | 0 | - | 0 | - | y |
| 0 | 0 | - | 0 | - | (cos.f64 x) |
| 0 | 0 | - | 0 | - | (-.f64 (sqrt.f64 #s(literal 5 binary64)) #s(literal 1 binary64)) |
| 0 | 0 | - | 0 | - | (*.f64 (sqrt.f64 #s(literal 2 binary64)) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) #s(literal 16 binary64)))) |
| 0 | 0 | - | 0 | - | (*.f64 (/.f64 (-.f64 (sqrt.f64 #s(literal 5 binary64)) #s(literal 1 binary64)) #s(literal 2 binary64)) (cos.f64 x)) |
| 0 | 0 | - | 0 | - | (sin.f64 x) |
| 0 | 0 | - | 0 | - | (cos.f64 y) |
| 0 | 0 | - | 0 | - | (/.f64 (-.f64 #s(literal 3 binary64) (sqrt.f64 #s(literal 5 binary64))) #s(literal 2 binary64)) |
| 0 | 0 | - | 0 | - | (*.f64 #s(literal 3 binary64) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 (/.f64 (-.f64 (sqrt.f64 #s(literal 5 binary64)) #s(literal 1 binary64)) #s(literal 2 binary64)) (cos.f64 x))) (*.f64 (/.f64 (-.f64 #s(literal 3 binary64) (sqrt.f64 #s(literal 5 binary64))) #s(literal 2 binary64)) (cos.f64 y)))) |
| 0 | 0 | - | 0 | - | (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 (/.f64 (-.f64 (sqrt.f64 #s(literal 5 binary64)) #s(literal 1 binary64)) #s(literal 2 binary64)) (cos.f64 x))) (*.f64 (/.f64 (-.f64 #s(literal 3 binary64) (sqrt.f64 #s(literal 5 binary64))) #s(literal 2 binary64)) (cos.f64 y))) |
| 0 | 0 | - | 0 | - | #s(literal 16 binary64) |
| 0 | 0 | - | 0 | - | (/.f64 (-.f64 (sqrt.f64 #s(literal 5 binary64)) #s(literal 1 binary64)) #s(literal 2 binary64)) |
| 0 | 0 | - | 0 | - | (sqrt.f64 #s(literal 2 binary64)) |
| 0 | 0 | - | 0 | - | (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) #s(literal 16 binary64))) |
| 0 | 0 | - | 0 | - | (/.f64 (sin.f64 x) #s(literal 16 binary64)) |
| 0 | 0 | - | 0 | - | (+.f64 #s(literal 2 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) #s(literal 16 binary64)))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) #s(literal 16 binary64)))) (-.f64 (cos.f64 x) (cos.f64 y)))) |
| 0 | 0 | - | 0 | - | (/.f64 (+.f64 #s(literal 2 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) #s(literal 16 binary64)))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) #s(literal 16 binary64)))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 #s(literal 3 binary64) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 (/.f64 (-.f64 (sqrt.f64 #s(literal 5 binary64)) #s(literal 1 binary64)) #s(literal 2 binary64)) (cos.f64 x))) (*.f64 (/.f64 (-.f64 #s(literal 3 binary64) (sqrt.f64 #s(literal 5 binary64))) #s(literal 2 binary64)) (cos.f64 y))))) |
| 0 | 0 | - | 0 | - | (*.f64 (/.f64 (-.f64 #s(literal 3 binary64) (sqrt.f64 #s(literal 5 binary64))) #s(literal 2 binary64)) (cos.f64 y)) |
| 0 | 0 | - | 0 | - | #s(literal 2 binary64) |
| 0 | 0 | - | 0 | - | (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) #s(literal 16 binary64)))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) #s(literal 16 binary64)))) |
| 0 | 0 | - | 0 | - | x |
| Operator | Subexpression | Explanation | Count | |
|---|---|---|---|---|
-.f64 | (-.f64 (cos.f64 x) (cos.f64 y)) | cancellation | 9 | 6 |
*.f64 | (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) #s(literal 16 binary64)))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) #s(literal 16 binary64)))) (-.f64 (cos.f64 x) (cos.f64 y))) | n*u | 2 | 0 |
| Predicted + | Predicted - | |
|---|---|---|
| + | 0 | 0 |
| - | 11 | 245 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 0 | 0 | 0 |
| - | 11 | 6 | 239 |
| number | freq |
|---|---|
| 0 | 245 |
| 1 | 11 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 0 | 0 | 0 |
| - | 1 | 0 | 0 |
| 585.0ms | 2 316× | 0 | valid |
| 383.0ms | 468× | 2 | valid |
| 122.0ms | 288× | 1 | valid |
Compiled 10 236 to 1 560 computations (84.8% saved)
ival-cos: 256.0ms (29.2% of total)ival-mult: 129.0ms (14.7% of total)ival-sin: 127.0ms (14.5% of total)ival-div: 104.0ms (11.9% of total)ival-sub: 78.0ms (8.9% of total)adjust: 74.0ms (8.4% of total)ival-add: 51.0ms (5.8% of total)ival-sqrt: 46.0ms (5.2% of total)exact: 7.0ms (0.8% of total)ival-true: 3.0ms (0.3% of total)ival-assert: 1.0ms (0.1% of total)| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 68 | 260 |
| 1 | 202 | 254 |
| 2 | 550 | 250 |
| 3 | 2488 | 240 |
| 4 | 5906 | 240 |
| 0 | 32 | 50 |
| 0 | 57 | 50 |
| 1 | 104 | 50 |
| 2 | 227 | 50 |
| 3 | 787 | 48 |
| 4 | 3614 | 46 |
| 0 | 8097 | 43 |
| 1× | iter limit |
| 1× | node limit |
| 1× | iter limit |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (+.f64 #s(literal 2 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) #s(literal 16 binary64)))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) #s(literal 16 binary64)))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 #s(literal 3 binary64) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 (/.f64 (-.f64 (sqrt.f64 #s(literal 5 binary64)) #s(literal 1 binary64)) #s(literal 2 binary64)) (cos.f64 x))) (*.f64 (/.f64 (-.f64 #s(literal 3 binary64) (sqrt.f64 #s(literal 5 binary64))) #s(literal 2 binary64)) (cos.f64 y))))) |
| Outputs |
|---|
(/.f64 (+.f64 #s(literal 2 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) #s(literal 16 binary64)))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) #s(literal 16 binary64)))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 #s(literal 3 binary64) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 (/.f64 (-.f64 (sqrt.f64 #s(literal 5 binary64)) #s(literal 1 binary64)) #s(literal 2 binary64)) (cos.f64 x))) (*.f64 (/.f64 (-.f64 #s(literal 3 binary64) (sqrt.f64 #s(literal 5 binary64))) #s(literal 2 binary64)) (cos.f64 y))))) |
(/.f64 (fma.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) #s(literal 16 binary64))) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) #s(literal 16 binary64))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 2 binary64)) (fma.f64 #s(literal 3/2 binary64) (fma.f64 (-.f64 (sqrt.f64 #s(literal 5 binary64)) #s(literal 1 binary64)) (cos.f64 x) (*.f64 (-.f64 #s(literal 3 binary64) (sqrt.f64 #s(literal 5 binary64))) (cos.f64 y))) #s(literal 3 binary64))) |
Compiled 50 to 32 computations (36% saved)
Compiled 0 to 2 computations (-∞% saved)
| Status | Accuracy | Program |
|---|---|---|
| 99.4% | (/.f64 (+.f64 #s(literal 2 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) #s(literal 16 binary64)))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) #s(literal 16 binary64)))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 #s(literal 3 binary64) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 (/.f64 (-.f64 (sqrt.f64 #s(literal 5 binary64)) #s(literal 1 binary64)) #s(literal 2 binary64)) (cos.f64 x))) (*.f64 (/.f64 (-.f64 #s(literal 3 binary64) (sqrt.f64 #s(literal 5 binary64))) #s(literal 2 binary64)) (cos.f64 y))))) |
Compiled 100 to 64 computations (36% saved)
| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 32 | 50 |
| 1 | 54 | 50 |
| 2 | 77 | 50 |
| 3 | 96 | 50 |
| 4 | 131 | 50 |
| 5 | 184 | 50 |
| 6 | 189 | 50 |
| 1× | saturated |
| Inputs |
|---|
(/.f64 (+.f64 #s(literal 2 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) #s(literal 16 binary64)))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) #s(literal 16 binary64)))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 #s(literal 3 binary64) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 (/.f64 (-.f64 (sqrt.f64 #s(literal 5 binary64)) #s(literal 1 binary64)) #s(literal 2 binary64)) (cos.f64 x))) (*.f64 (/.f64 (-.f64 #s(literal 3 binary64) (sqrt.f64 #s(literal 5 binary64))) #s(literal 2 binary64)) (cos.f64 y))))) |
| Outputs |
|---|
(/.f64 (+.f64 #s(literal 2 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) #s(literal 16 binary64)))) (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) #s(literal 16 binary64)))) (-.f64 (cos.f64 x) (cos.f64 y)))) (*.f64 #s(literal 3 binary64) (+.f64 (+.f64 #s(literal 1 binary64) (*.f64 (/.f64 (-.f64 (sqrt.f64 #s(literal 5 binary64)) #s(literal 1 binary64)) #s(literal 2 binary64)) (cos.f64 x))) (*.f64 (/.f64 (-.f64 #s(literal 3 binary64) (sqrt.f64 #s(literal 5 binary64))) #s(literal 2 binary64)) (cos.f64 y))))) |
(/.f64 (+.f64 (*.f64 (-.f64 (cos.f64 x) (cos.f64 y)) (*.f64 (-.f64 (sin.f64 y) (/.f64 (sin.f64 x) #s(literal 16 binary64))) (*.f64 (-.f64 (sin.f64 x) (/.f64 (sin.f64 y) #s(literal 16 binary64))) (sqrt.f64 #s(literal 2 binary64))))) #s(literal 2 binary64)) (*.f64 (+.f64 (*.f64 (/.f64 (-.f64 #s(literal 3 binary64) (sqrt.f64 #s(literal 5 binary64))) #s(literal 2 binary64)) (cos.f64 y)) (+.f64 (*.f64 (/.f64 (-.f64 (sqrt.f64 #s(literal 5 binary64)) #s(literal 1 binary64)) #s(literal 2 binary64)) (cos.f64 x)) #s(literal 1 binary64))) #s(literal 3 binary64))) |
| 1× | fuel |
Compiled 50 to 32 computations (36% saved)
Compiled 200 to 128 computations (36% saved)
Loading profile data...