
Time bar (total: 2.8s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 0 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 1 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 2 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 3 |
| 12.5% | 12.5% | 87.3% | 0.2% | 0% | 0% | 0% | 4 |
| 12.5% | 12.5% | 87.3% | 0.2% | 0% | 0% | 0% | 5 |
| 12.5% | 12.5% | 87.3% | 0.2% | 0% | 0% | 0% | 6 |
| 15.4% | 12.5% | 68.6% | 0.2% | 0% | 18.7% | 0% | 7 |
| 16.7% | 12.5% | 62.3% | 0.2% | 0% | 24.9% | 0% | 8 |
| 20% | 14% | 56.1% | 0.2% | 0% | 29.6% | 0% | 9 |
| 20% | 14% | 56.1% | 0.2% | 0% | 29.6% | 0% | 10 |
| 20% | 14% | 56.1% | 0.2% | 0% | 29.6% | 0% | 11 |
| 22.9% | 14.8% | 49.9% | 0.2% | 0% | 35.1% | 0% | 12 |
Compiled 37 to 24 computations (35.1% saved)
| 45.0ms | 375× | 0 | invalid |
| 36.0ms | 260× | 0 | valid |
ival-div: 19.0ms (30.2% of total)ival-mult: 19.0ms (30.2% of total)ival-pow: 15.0ms (23.8% of total)ival-pow2: 6.0ms (9.5% of total)ival-sub: 3.0ms (4.8% of total)exact: 1.0ms (1.6% of total)ival-true: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 56 | 0 | - | 3 | (1.0716091565210797e-5 3.2772215465317166e+307 1.2236897349149466e+291 -5.649869727534004e-54 -2.883469605982204e-117) | (pow.f64 (/.f64 d h) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64))) |
| 46 | 0 | - | 1 | (6.483132079379165e-305 1.2175915974889e-270 1109098783876077600.0 -6.050924405970546e+69 -2.3657511687385438e+204) | (pow.f64 (/.f64 d l) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64))) |
| 42 | 0 | - | 2 | (5.2670577568766055e+70 1.0732902331475018e+77 2.2809433056746653e+63 -1.5813389935412303e-261 2.371405874963096e+175) | (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64))) (/.f64 h l)) |
| 24 | 0 | - | 2 | (-5.002733698135828e-165 -3.487225454419275e-82 -4.0751124653123905e+70 -3.103833180229922e-157 -3.876523093307126e-161) | (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) |
| 21 | 0 | - | 0 | - | (*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64))) (pow.f64 (/.f64 d l) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64))) (/.f64 h l)))) |
| 0 | 0 | - | 0 | - | D |
| 0 | 0 | - | 0 | - | (*.f64 #s(literal 2 binary64) d) |
| 0 | 0 | - | 0 | - | (/.f64 h l) |
| 0 | 0 | - | 0 | - | (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) |
| 0 | 0 | - | 0 | - | d |
| 0 | 0 | - | 0 | - | #s(literal 1 binary64) |
| 0 | 0 | - | 0 | - | (/.f64 d l) |
| 0 | 0 | - | 0 | - | (*.f64 M D) |
| 0 | 0 | - | 0 | - | (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) |
| 0 | 0 | - | 0 | - | (/.f64 d h) |
| 0 | 0 | - | 0 | - | (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64))) (/.f64 h l))) |
| 0 | 0 | - | 0 | - | #s(literal 2 binary64) |
| 0 | 0 | - | 0 | - | l |
| 0 | 0 | - | 0 | - | (*.f64 (pow.f64 (/.f64 d h) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64))) (pow.f64 (/.f64 d l) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)))) |
| 0 | 0 | - | 0 | - | M |
| 0 | 0 | - | 0 | - | h |
| 0 | 0 | - | 0 | - | (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64))) |
| Operator | Subexpression | Explanation | Count | |
|---|---|---|---|---|
pow.f64 | (pow.f64 (/.f64 d h) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64))) | oflow-rescue | 33 | 0 |
| ↳ | (/.f64 d h) | overflow | 33 | |
pow.f64 | (pow.f64 (/.f64 d l) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64))) | oflow-rescue | 23 | 0 |
| ↳ | (/.f64 d l) | overflow | 23 | |
pow.f64 | (pow.f64 (/.f64 d l) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64))) | uflow-rescue | 22 | 0 |
| ↳ | (/.f64 d l) | underflow | 22 | |
pow.f64 | (pow.f64 (/.f64 d h) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64))) | uflow-rescue | 20 | 0 |
| ↳ | (/.f64 d h) | underflow | 20 | |
*.f64 | (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64))) (/.f64 h l)) | n*o | 14 | 0 |
*.f64 | (*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64))) (pow.f64 (/.f64 d l) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64))) (/.f64 h l)))) | n*o | 12 | 0 |
/.f64 | (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) | o/n | 10 | 0 |
| ↳ | (*.f64 M D) | overflow | 31 | |
*.f64 | (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64))) (/.f64 h l)) | o*u | 7 | 0 |
| ↳ | (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) | overflow | 76 | |
| ↳ | (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64))) | overflow | 76 | |
| ↳ | (*.f64 M D) | overflow | 31 | |
| ↳ | (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) | overflow | 39 | |
| ↳ | (/.f64 h l) | underflow | 28 | |
*.f64 | (*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64))) (pow.f64 (/.f64 d l) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64))) (/.f64 h l)))) | u*o | 6 | 0 |
| ↳ | (/.f64 d h) | underflow | 20 | |
| ↳ | (/.f64 d l) | underflow | 22 | |
| ↳ | (*.f64 (pow.f64 (/.f64 d h) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64))) (pow.f64 (/.f64 d l) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)))) | underflow | 10 | |
| ↳ | (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) | overflow | 76 | |
| ↳ | (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64))) | overflow | 76 | |
| ↳ | (/.f64 h l) | overflow | 30 | |
| ↳ | (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64))) (/.f64 h l))) | overflow | 78 | |
| ↳ | (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64))) (/.f64 h l)) | overflow | 78 | |
| ↳ | (*.f64 M D) | overflow | 31 | |
| ↳ | (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) | overflow | 39 | |
/.f64 | (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) | u/n | 4 | 0 |
| ↳ | (*.f64 M D) | underflow | 25 | |
*.f64 | (*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64))) (pow.f64 (/.f64 d l) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64))) (/.f64 h l)))) | n*u | 3 | 0 |
*.f64 | (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64))) (/.f64 h l)) | u*o | 3 | 0 |
| ↳ | (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) | underflow | 80 | |
| ↳ | (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64))) | underflow | 80 | |
| ↳ | (*.f64 M D) | underflow | 25 | |
| ↳ | (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) | underflow | 35 | |
| ↳ | (/.f64 h l) | overflow | 30 |
| Predicted + | Predicted - | |
|---|---|---|
| + | 80 | 4 |
| - | 29 | 143 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 80 | 0 | 4 |
| - | 29 | 0 | 143 |
| number | freq |
|---|---|
| 0 | 147 |
| 1 | 72 |
| 2 | 26 |
| 3 | 11 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 1 | 0 | 0 |
| - | 0 | 0 | 0 |
| 477.0ms | 3 072× | 0 | valid |
Compiled 5 988 to 1 080 computations (82% saved)
ival-pow: 109.0ms (32.1% of total)ival-div: 96.0ms (28.3% of total)ival-mult: 88.0ms (25.9% of total)ival-pow2: 27.0ms (8% of total)ival-sub: 13.0ms (3.8% of total)exact: 3.0ms (0.9% of total)ival-true: 2.0ms (0.6% of total)ival-assert: 1.0ms (0.3% of total)| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 168 | 564 |
| 1 | 558 | 553 |
| 2 | 1960 | 548 |
| 3 | 4611 | 548 |
| 0 | 22 | 29 |
| 0 | 38 | 27 |
| 1 | 67 | 27 |
| 2 | 174 | 27 |
| 3 | 1054 | 27 |
| 4 | 3441 | 27 |
| 5 | 6724 | 27 |
| 0 | 8027 | 26 |
| 1× | iter limit |
| 1× | node limit |
| 1× | iter limit |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64))) (pow.f64 (/.f64 d l) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64))) (/.f64 h l)))) |
| Outputs |
|---|
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64))) (pow.f64 (/.f64 d l) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64))) (/.f64 h l)))) |
(*.f64 (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 h l)) (pow.f64 (*.f64 (/.f64 (/.f64 M d) #s(literal 2 binary64)) D) #s(literal 2 binary64)) #s(literal 1 binary64)) (sqrt.f64 (/.f64 d h))) (sqrt.f64 (/.f64 d l))) |
(abs D)
(abs M)
(sort M D)
Compiled 35 to 22 computations (37.1% saved)
Compiled 0 to 5 computations (-∞% saved)
| Status | Accuracy | Program |
|---|---|---|
| 68.7% | (*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64))) (pow.f64 (/.f64 d l) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64))) (/.f64 h l)))) |
Compiled 70 to 44 computations (37.1% saved)
| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 22 | 35 |
| 1 | 36 | 35 |
| 2 | 53 | 35 |
| 3 | 71 | 35 |
| 4 | 87 | 35 |
| 5 | 100 | 35 |
| 6 | 138 | 35 |
| 7 | 190 | 35 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64))) (pow.f64 (/.f64 d l) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64))) (/.f64 h l)))) |
| Outputs |
|---|
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64))) (pow.f64 (/.f64 d l) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 2 binary64)) (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64))) (/.f64 h l)))) |
(*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 h l) (*.f64 (pow.f64 (/.f64 (*.f64 D M) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64))))) (*.f64 (pow.f64 (/.f64 d l) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64))) (pow.f64 (/.f64 d h) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64))))) |
| 1× | fuel |
Compiled 35 to 22 computations (37.1% saved)
(sort M D)
(abs M)
(abs D)
Compiled 560 to 352 computations (37.1% saved)
Loading profile data...