
Time bar (total: 4.0s)
| 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)
| 51.0ms | 403× | 0 | invalid |
| 38.0ms | 260× | 0 | valid |
ival-div: 22.0ms (32.2% of total)ival-mult: 20.0ms (29.3% of total)ival-pow: 16.0ms (23.5% of total)ival-pow2: 6.0ms (8.8% of total)ival-sub: 3.0ms (4.4% of total)ival-true: 1.0ms (1.5% of total)exact: 1.0ms (1.5% of total)adjust: 0.0ms (0% of total)ival-assert: 0.0ms (0% of total)| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 69 | 0 | - | 4 | (-2.1918240959666547e-80 -8.994840827648503e+234 -1.2081691840543756e-78 -1.6814112167172908e-237 6.110613618215978e-131) | (pow.f64 (/.f64 d h) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64))) |
| 62 | 0 | - | 4 | (-7.575504767963885e-288 -2.196012819089918e-206 -1.5010371020657975e+29 -1.924867298216201e-121 4.169283442392692e-210) | (pow.f64 (/.f64 d l) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64))) |
| 44 | 0 | - | 2 | (-2.5489452881288e+18 -8.812192036824707e-26 -7.429556443598946e+285 -1.3547721047400022e-80 -9.27111898528454e+194) | (*.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)) |
| 29 | 0 | - | 2 | (2.0072917886995793e-307 9.433976373534806e+186 9.375575812659315e+246 -5.921303680863457e-117 -1.9698215941723783e-207) | (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) |
| 28 | 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))) | uflow-rescue | 37 | 0 |
| ↳ | (/.f64 d h) | underflow | 37 | |
pow.f64 | (pow.f64 (/.f64 d l) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64))) | oflow-rescue | 36 | 0 |
| ↳ | (/.f64 d l) | overflow | 36 | |
pow.f64 | (pow.f64 (/.f64 d h) (/.f64 #s(literal 1 binary64) #s(literal 2 binary64))) | oflow-rescue | 28 | 0 |
| ↳ | (/.f64 d h) | overflow | 28 | |
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 | |
*.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 | 16 | 0 |
| ↳ | (/.f64 d h) | underflow | 37 | |
| ↳ | (/.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 | 23 | |
| ↳ | (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) | overflow | 87 | |
| ↳ | (*.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 | 87 | |
| ↳ | (/.f64 h l) | overflow | 40 | |
| ↳ | (-.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 | 97 | |
| ↳ | (*.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 | 97 | |
| ↳ | (*.f64 M D) | overflow | 37 | |
| ↳ | (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) | overflow | 48 | |
/.f64 | (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) | o/n | 15 | 0 |
| ↳ | (*.f64 M D) | overflow | 37 | |
*.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 | 10 | 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)) | o*u | 3 | 0 |
| ↳ | (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) | overflow | 87 | |
| ↳ | (*.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 | 87 | |
| ↳ | (*.f64 M D) | overflow | 37 | |
| ↳ | (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) | overflow | 48 | |
| ↳ | (/.f64 h l) | underflow | 22 | |
*.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 | 2 | 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 | 1 | 0 |
| ↳ | (pow.f64 (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) #s(literal 2 binary64)) | underflow | 71 | |
| ↳ | (*.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 | 71 | |
| ↳ | (*.f64 M D) | underflow | 28 | |
| ↳ | (/.f64 (*.f64 M D) (*.f64 #s(literal 2 binary64) d)) | underflow | 37 | |
| ↳ | (/.f64 h l) | overflow | 40 |
| Predicted + | Predicted - | |
|---|---|---|
| + | 81 | 5 |
| - | 40 | 130 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 81 | 0 | 5 |
| - | 40 | 0 | 130 |
| number | freq |
|---|---|
| 0 | 135 |
| 1 | 72 |
| 2 | 36 |
| 3 | 12 |
| 4 | 1 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 1 | 0 | 0 |
| - | 0 | 0 | 0 |
| 1.0s | 6 144× | 0 | valid |
Compiled 6 012 to 1 104 computations (81.6% saved)
ival-pow: 221.0ms (30.6% of total)ival-div: 202.0ms (28% of total)ival-mult: 195.0ms (27% of total)ival-pow2: 59.0ms (8.2% of total)ival-sub: 28.0ms (3.9% of total)exact: 7.0ms (1% of total)ival-true: 6.0ms (0.8% of total)ival-assert: 3.0ms (0.4% of total)adjust: 2.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 |
|---|---|---|
| 67.8% | (*.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...