
Time bar (total: 728.0ms)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0.0% | 0.0% | 100.0% | 0.0% | 0.0% | 0.0% | 0.0% | 0 |
| 100.0% | 100.0% | 0.0% | 0.0% | 0.0% | 0.0% | 0.0% | 1 |
Compiled 7 to 5 computations (28.6% saved)
| 161.0ms | 8 256× | 0 | valid |
Mul: 3.0ms (58.9% of total, 0.0 MiB)Add: 2.0ms (39.3% of total, 0.0 MiB)Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 16 |
| 1 | 41 | 15 |
| 2 | 103 | 15 |
| 3 | 241 | 15 |
| 4 | 1112 | 15 |
| 1× | node-limit |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 100.0% | (+.f64 (*.f64 x x) #s(literal 1 binary64)) |
(abs x)
Compiled 2 to 8 computations (-300.0% saved)
| Inputs |
|---|
| Outputs |
|---|
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 17 | 45 |
| 1× | iter-limit |
| Inputs |
|---|
%1 = (*.f64 x x) x %1 #s(literal 1 binary64) (+.f64 %1 #s(literal 1 binary64)) |
| Outputs |
|---|
%4 = (* x x) %6 = (pow.f64 x #s(literal 2 binary64)) %9 = (+ %4 1) (approx x #s(literal 0 binary64)) (approx x x) (approx %4 %6) (approx %9 #s(literal 1 binary64)) (approx %9 (+.f64 #s(literal 1 binary64) %6)) (approx %9 (*.f64 %6 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) %6)))) |
3 calls:
| Time | Variable | Point |
|---|---|---|
| 1.0ms | x | inf |
| 1.0ms | x | -inf |
| 0.0ms | x | 0 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 4 | 10 |
| 0 | 6 | 10 |
| 1 | 25 | 10 |
| 2 | 73 | 10 |
| 3 | 260 | 10 |
| 4 | 1069 | 10 |
| 0 | 4096 | 10 |
| 0 | 4260 | 9 |
| 1× | iter-limit |
| 1× | iter-limit |
| 1× | node-limit |
| 1× | iter-limit |
| Inputs |
|---|
%1 = (*.f64 x x) x %1 #s(literal 1 binary64) (+.f64 %1 #s(literal 1 binary64)) |
| Outputs |
|---|
%1 = (*.f64 x x) %2 = (*.f64 %1 %1) %4 = (pow.f64 %2 #s(literal -1/2 binary64)) %6 = (fabs.f64 x) %7 = (sqrt.f64 %6) %8 = (*.f64 %7 %6) %11 = (neg.f64 %6) %14 = (neg.f64 x) %46 = (*.f64 %14 x) %47 = (+.f64 #s(literal 0 binary64) %46) %49 = (-.f64 %46 #s(literal 0 binary64)) %60 = (-.f64 #s(literal 0 binary64) %1) %64 = (+.f64 #s(literal 1 binary64) %46) %66 = (-.f64 #s(literal 1 binary64) %1) %77 = (*.f64 %14 %11) %80 = (*.f64 x %11) %83 = (*.f64 %14 %6) %86 = (*.f64 x %6) %89 = (*.f64 %11 %14) %92 = (*.f64 %6 %14) %95 = (*.f64 %11 x) %98 = (*.f64 %6 x) %151 = (fma.f64 x x #s(literal 1 binary64)) %152 = (*.f64 #s(literal 2 binary64) %151) %153 = (/.f64 %152 #s(literal 8 binary64)) %155 = (/.f64 %152 #s(literal 4 binary64)) %163 = (/.f64 %152 #s(literal 1/2 binary64)) %166 = (/.f64 %152 #s(literal 1 binary64)) %171 = (fma.f64 x x #s(literal 1/2 binary64)) %172 = (fma.f64 %171 #s(literal 2 binary64) #s(literal 1 binary64)) %175 = (fma.f64 %1 #s(literal -2 binary64) #s(literal -2 binary64)) %178 = (fma.f64 %1 #s(literal 1 binary64) #s(literal 1 binary64)) %182 = (-.f64 (*.f64 %1 #s(literal -2 binary64)) #s(literal 2 binary64)) %185 = (fma.f64 %152 #s(literal 2 binary64) #s(literal 0 binary64)) %188 = (neg.f64 %152) %258 = (-.f64 #s(literal -1 binary64) %1) %279 = (/.f64 %171 #s(literal 1 binary64)) %281 = (/.f64 %1 #s(literal 1 binary64)) %286 = (/.f64 (*.f64 #s(literal 2 binary64) %1) #s(literal 2 binary64)) %289 = (-.f64 #s(literal -1/2 binary64) %1) %292 = (+.f64 #s(literal -1/2 binary64) %46) %295 = (neg.f64 %171) %338 = (+.f64 #s(literal 0 binary64) %171) x (*.f64 %4 %2) (*.f64 %8 %7) (*.f64 %7 %8) (*.f64 %11 %11) (*.f64 %6 %6) (*.f64 %14 %14) (*.f64 #s(literal 1 binary64) %1) %1 (pow.f64 (pow.f64 x #s(literal 8 binary64)) #s(literal 1/4 binary64)) (pow.f64 %2 #s(literal 1/2 binary64)) (pow.f64 %7 #s(literal 4 binary64)) (pow.f64 %11 #s(literal 2 binary64)) (pow.f64 %6 #s(literal 2 binary64)) (pow.f64 %14 #s(literal 2 binary64)) (pow.f64 %1 #s(literal 1 binary64)) (pow.f64 x #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) %4) (/.f64 #s(literal 1 binary64) (pow.f64 %11 #s(literal -2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 %6 #s(literal -2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 %14 #s(literal -2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal -2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 %1 #s(literal -1 binary64))) (neg.f64 %47) (neg.f64 %49) (neg.f64 %46) (fma.f64 %4 %2 #s(literal 0 binary64)) (fma.f64 %8 %7 #s(literal 0 binary64)) (fma.f64 %7 %8 #s(literal 0 binary64)) (fma.f64 %11 %11 #s(literal 0 binary64)) (fma.f64 %6 %6 #s(literal 0 binary64)) (fma.f64 %14 %14 #s(literal 0 binary64)) (fma.f64 #s(literal 1 binary64) %1 #s(literal 0 binary64)) (fma.f64 x x #s(literal 0 binary64)) (-.f64 #s(literal 0 binary64) %60) (-.f64 #s(literal 0 binary64) %47) (-.f64 #s(literal 0 binary64) %46) (-.f64 #s(literal 1 binary64) %64) (-.f64 #s(literal 1 binary64) %66) (sqrt.f64 %2) (fabs.f64 (-.f64 %60 #s(literal 0 binary64))) (fabs.f64 (-.f64 %47 #s(literal 0 binary64))) (fabs.f64 (-.f64 %64 #s(literal 1 binary64))) (fabs.f64 (-.f64 %66 #s(literal 1 binary64))) (fabs.f64 (neg.f64 %77)) (fabs.f64 (neg.f64 %80)) (fabs.f64 (neg.f64 %83)) (fabs.f64 (neg.f64 %86)) (fabs.f64 (neg.f64 %89)) (fabs.f64 (neg.f64 %92)) (fabs.f64 (neg.f64 %95)) (fabs.f64 (neg.f64 %98)) (fabs.f64 (*.f64 #s(literal -1 binary64) %77)) (fabs.f64 (*.f64 #s(literal -1 binary64) %80)) (fabs.f64 (*.f64 #s(literal -1 binary64) %83)) (fabs.f64 (*.f64 #s(literal -1 binary64) %86)) (fabs.f64 (*.f64 #s(literal -1 binary64) %89)) (fabs.f64 (*.f64 #s(literal -1 binary64) %92)) (fabs.f64 (*.f64 #s(literal -1 binary64) %95)) (fabs.f64 (*.f64 #s(literal -1 binary64) %98)) (fabs.f64 (*.f64 #s(literal -1 binary64) %46)) (fabs.f64 (*.f64 #s(literal -1 binary64) %1)) (fabs.f64 (*.f64 #s(literal 1 binary64) %77)) (fabs.f64 (*.f64 #s(literal 1 binary64) %80)) (fabs.f64 (*.f64 #s(literal 1 binary64) %83)) (fabs.f64 (*.f64 #s(literal 1 binary64) %86)) (fabs.f64 (*.f64 #s(literal 1 binary64) %89)) (fabs.f64 (*.f64 #s(literal 1 binary64) %92)) (fabs.f64 (*.f64 #s(literal 1 binary64) %95)) (fabs.f64 (*.f64 #s(literal 1 binary64) %98)) (fabs.f64 %47) (fabs.f64 %49) (fabs.f64 %77) (fabs.f64 %80) (fabs.f64 %83) (fabs.f64 %86) (fabs.f64 %89) (fabs.f64 %92) (fabs.f64 %95) (fabs.f64 %98) (fabs.f64 %46) (fabs.f64 %1) (+.f64 #s(literal 0 binary64) %1) (+.f64 %1 #s(literal 0 binary64)) #s(literal 1 binary64) (*.f64 %153 #s(literal 4 binary64)) (*.f64 %155 #s(literal 2 binary64)) (*.f64 %152 #s(literal 1/2 binary64)) (*.f64 #s(literal 1 binary64) %151) (pow.f64 %151 #s(literal 1 binary64)) (/.f64 (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal 2 binary64) %1 #s(literal 1 binary64))) #s(literal 2 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %163) #s(literal 4 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %166) #s(literal 2 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %155) #s(literal 1/2 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %172) #s(literal 2 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %175) #s(literal -2 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %178) #s(literal 1 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %182) #s(literal -2 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %185) #s(literal 4 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %188) #s(literal -2 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %152) #s(literal 2 binary64)) (/.f64 (+.f64 %185 #s(literal 0 binary64)) #s(literal 4 binary64)) (/.f64 (+.f64 %175 #s(literal 0 binary64)) #s(literal -2 binary64)) (/.f64 (+.f64 %182 #s(literal 0 binary64)) #s(literal -2 binary64)) (/.f64 (+.f64 %188 #s(literal 0 binary64)) #s(literal -2 binary64)) (/.f64 (+.f64 %172 #s(literal 0 binary64)) #s(literal 2 binary64)) (/.f64 (+.f64 %178 #s(literal 0 binary64)) #s(literal 1 binary64)) (/.f64 (-.f64 %163 #s(literal 0 binary64)) #s(literal 4 binary64)) (/.f64 (-.f64 %185 #s(literal 0 binary64)) #s(literal 4 binary64)) (/.f64 (-.f64 %175 #s(literal 0 binary64)) #s(literal -2 binary64)) (/.f64 (-.f64 %182 #s(literal 0 binary64)) #s(literal -2 binary64)) (/.f64 (-.f64 %188 #s(literal 0 binary64)) #s(literal -2 binary64)) (/.f64 (-.f64 %155 #s(literal 0 binary64)) #s(literal 1/2 binary64)) (/.f64 (-.f64 %166 #s(literal 0 binary64)) #s(literal 2 binary64)) (/.f64 (-.f64 %172 #s(literal 0 binary64)) #s(literal 2 binary64)) (/.f64 (-.f64 %152 #s(literal 0 binary64)) #s(literal 2 binary64)) (/.f64 (-.f64 %178 #s(literal 0 binary64)) #s(literal 1 binary64)) (/.f64 (neg.f64 %163) #s(literal -4 binary64)) (/.f64 (neg.f64 %166) #s(literal -2 binary64)) (/.f64 (neg.f64 %155) #s(literal -1/2 binary64)) (/.f64 (neg.f64 %172) #s(literal -2 binary64)) (/.f64 (neg.f64 %175) #s(literal 2 binary64)) (/.f64 (neg.f64 %178) #s(literal -1 binary64)) (/.f64 (neg.f64 %182) #s(literal 2 binary64)) (/.f64 (neg.f64 %185) #s(literal -4 binary64)) (/.f64 (neg.f64 %188) #s(literal 2 binary64)) (/.f64 %163 #s(literal 4 binary64)) (/.f64 %166 #s(literal 2 binary64)) (/.f64 %155 #s(literal 1/2 binary64)) (/.f64 %172 #s(literal 2 binary64)) (/.f64 %175 #s(literal -2 binary64)) (/.f64 %178 #s(literal 1 binary64)) (/.f64 %182 #s(literal -2 binary64)) (/.f64 (-.f64 #s(literal 1 binary64) %2) %66) (/.f64 (-.f64 %2 #s(literal 1 binary64)) (-.f64 %1 #s(literal 1 binary64))) (/.f64 %185 #s(literal 4 binary64)) (/.f64 %188 #s(literal -2 binary64)) (/.f64 %258 #s(literal -1 binary64)) (/.f64 %152 #s(literal 2 binary64)) (/.f64 %151 #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) %152)) (/.f64 #s(literal 1 binary64) (pow.f64 %151 #s(literal -1 binary64))) (neg.f64 %258) (fma.f64 %4 %2 #s(literal 1 binary64)) (fma.f64 %8 %7 #s(literal 1 binary64)) (fma.f64 %153 #s(literal 4 binary64) #s(literal 0 binary64)) (fma.f64 %155 #s(literal 2 binary64) #s(literal 0 binary64)) (fma.f64 %152 #s(literal 1/2 binary64) #s(literal 0 binary64)) (fma.f64 %7 %8 #s(literal 1 binary64)) (fma.f64 %11 %11 #s(literal 1 binary64)) (fma.f64 %6 %6 #s(literal 1 binary64)) (fma.f64 %14 %14 #s(literal 1 binary64)) (fma.f64 #s(literal 1 binary64) %171 #s(literal 1/2 binary64)) (fma.f64 #s(literal 1 binary64) %151 #s(literal 0 binary64)) (fma.f64 #s(literal 1 binary64) %1 #s(literal 1 binary64)) %151 (-.f64 %279 #s(literal -1/2 binary64)) (-.f64 %281 #s(literal -1 binary64)) (-.f64 (+.f64 %151 #s(literal 1 binary64)) #s(literal 1 binary64)) (-.f64 %286 #s(literal -1 binary64)) (-.f64 %171 #s(literal -1/2 binary64)) (-.f64 #s(literal 1/2 binary64) (/.f64 %289 #s(literal 1 binary64))) (-.f64 #s(literal 1/2 binary64) (/.f64 %292 #s(literal 1 binary64))) (-.f64 #s(literal 1/2 binary64) (/.f64 %295 #s(literal 1 binary64))) (-.f64 #s(literal 1/2 binary64) %289) (-.f64 #s(literal 1/2 binary64) %292) (-.f64 #s(literal 1/2 binary64) %295) (-.f64 %151 #s(literal 0 binary64)) (-.f64 #s(literal 1 binary64) (/.f64 %60 #s(literal 1 binary64))) (-.f64 #s(literal 1 binary64) (/.f64 %47 #s(literal 1 binary64))) (-.f64 #s(literal 1 binary64) (/.f64 %49 #s(literal 1 binary64))) (-.f64 #s(literal 1 binary64) (/.f64 %46 #s(literal 1 binary64))) (-.f64 #s(literal 1 binary64) %60) (-.f64 #s(literal 1 binary64) %47) (-.f64 #s(literal 1 binary64) %49) (-.f64 #s(literal 1 binary64) %46) (-.f64 %1 #s(literal -1 binary64)) (+.f64 (/.f64 (*.f64 %171 #s(literal 2 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64)) (+.f64 (/.f64 (*.f64 %1 #s(literal 1 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64)) (+.f64 (/.f64 (*.f64 %152 #s(literal 2 binary64)) #s(literal 4 binary64)) #s(literal 0 binary64)) (+.f64 (/.f64 (fma.f64 #s(literal 2 binary64) %1 #s(literal 3/2 binary64)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (+.f64 (/.f64 (fma.f64 #s(literal 2 binary64) %1 #s(literal 1/2 binary64)) #s(literal 2 binary64)) #s(literal 3/4 binary64)) (+.f64 (/.f64 %286 #s(literal 1 binary64)) #s(literal 1 binary64)) (+.f64 %279 #s(literal 1/2 binary64)) (+.f64 %281 #s(literal 1 binary64)) (+.f64 %286 #s(literal 1 binary64)) (+.f64 %171 #s(literal 1/2 binary64)) (+.f64 #s(literal 1/2 binary64) (/.f64 %338 #s(literal 1 binary64))) (+.f64 #s(literal 1/2 binary64) %279) (+.f64 #s(literal 1/2 binary64) %338) (+.f64 #s(literal 1/2 binary64) %171) (+.f64 #s(literal 0 binary64) %151) (+.f64 %151 #s(literal 0 binary64)) (+.f64 #s(literal 1 binary64) %281) (+.f64 #s(literal 1 binary64) %286) (+.f64 #s(literal 1 binary64) %1) (+.f64 %1 #s(literal 1 binary64)) |
Compiled 203 to 354 computations (-74.4% saved)
Compiled 22 to 64 computations (-190.9% saved)
2 alts after pruning (2 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 20 | 2 | 22 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 21 | 2 | 23 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 100.0% | (fma.f64 x x #s(literal 1 binary64)) |
| ▶ | 47.1% | (approx (+ (* x x) 1) #s(literal 1 binary64)) |
Compiled 2 to 3 computations (-50.0% saved)
| Inputs |
|---|
| Outputs |
|---|
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 17 | 46 |
| 1× | iter-limit |
| Inputs |
|---|
x #s(literal 1 binary64) (approx (+ (* x x) 1) #s(literal 1 binary64)) (fma.f64 x x #s(literal 1 binary64)) |
| Outputs |
|---|
%6 = (+ (* x x) 1) %10 = (pow.f64 x #s(literal 2 binary64)) (approx x #s(literal 0 binary64)) (approx x x) (approx %6 #s(literal 1 binary64)) (approx %6 (+.f64 #s(literal 1 binary64) %10)) (approx %6 %10) (approx %6 (*.f64 %10 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) %10)))) |
3 calls:
| Time | Variable | Point |
|---|---|---|
| 1.0ms | x | inf |
| 1.0ms | x | -inf |
| 0.0ms | x | 0 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 12 |
| 0 | 6 | 12 |
| 1 | 26 | 12 |
| 2 | 74 | 12 |
| 3 | 263 | 12 |
| 4 | 1075 | 12 |
| 0 | 4107 | 12 |
| 0 | 4279 | 12 |
| 1× | iter-limit |
| 1× | iter-limit |
| 1× | node-limit |
| 1× | iter-limit |
| Inputs |
|---|
x #s(literal 1 binary64) (approx (+ (* x x) 1) #s(literal 1 binary64)) (fma.f64 x x #s(literal 1 binary64)) |
| Outputs |
|---|
%5 = (approx (+ (* x x) 1) #s(literal 1 binary64)) %12 = (fma.f64 x x #s(literal 1 binary64)) %13 = (*.f64 #s(literal 2 binary64) %12) %15 = (/.f64 %13 #s(literal 8 binary64)) %18 = (/.f64 %13 #s(literal 4 binary64)) %24 = (*.f64 x x) %29 = (/.f64 %13 #s(literal 1/2 binary64)) %32 = (/.f64 %13 #s(literal 1 binary64)) %37 = (fma.f64 x x #s(literal 1/2 binary64)) %38 = (fma.f64 %37 #s(literal 2 binary64) #s(literal 1 binary64)) %42 = (fma.f64 %24 #s(literal -2 binary64) #s(literal -2 binary64)) %45 = (fma.f64 %24 #s(literal 1 binary64) #s(literal 1 binary64)) %49 = (-.f64 (*.f64 %24 #s(literal -2 binary64)) #s(literal 2 binary64)) %52 = (fma.f64 %13 #s(literal 2 binary64) #s(literal 0 binary64)) %55 = (neg.f64 %13) %119 = (*.f64 %24 %24) %128 = (-.f64 #s(literal -1 binary64) %24) %139 = (fabs.f64 x) %140 = (sqrt.f64 %139) %141 = (*.f64 %140 %139) %147 = (neg.f64 %139) %150 = (neg.f64 x) %155 = (/.f64 %37 #s(literal 1 binary64)) %157 = (/.f64 %24 #s(literal 1 binary64)) %162 = (/.f64 (*.f64 #s(literal 2 binary64) %24) #s(literal 2 binary64)) %165 = (-.f64 #s(literal -1/2 binary64) %24) %168 = (*.f64 %150 x) %169 = (+.f64 #s(literal -1/2 binary64) %168) %172 = (neg.f64 %37) %180 = (-.f64 #s(literal 0 binary64) %24) %183 = (+.f64 #s(literal 0 binary64) %168) %186 = (-.f64 %168 #s(literal 0 binary64)) %219 = (+.f64 #s(literal 0 binary64) %37) x #s(literal 1 binary64) (*.f64 #s(literal 1 binary64) %5) (pow.f64 %5 #s(literal 1 binary64)) %5 (/.f64 #s(literal 1 binary64) (pow.f64 %5 #s(literal -1 binary64))) (*.f64 %15 #s(literal 4 binary64)) (*.f64 %18 #s(literal 2 binary64)) (*.f64 %13 #s(literal 1/2 binary64)) (*.f64 #s(literal 1 binary64) %12) (pow.f64 %12 #s(literal 1 binary64)) (/.f64 (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal 2 binary64) %24 #s(literal 1 binary64))) #s(literal 2 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %29) #s(literal 4 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %32) #s(literal 2 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %18) #s(literal 1/2 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %38) #s(literal 2 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %42) #s(literal -2 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %45) #s(literal 1 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %49) #s(literal -2 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %52) #s(literal 4 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %55) #s(literal -2 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %13) #s(literal 2 binary64)) (/.f64 (+.f64 %52 #s(literal 0 binary64)) #s(literal 4 binary64)) (/.f64 (+.f64 %42 #s(literal 0 binary64)) #s(literal -2 binary64)) (/.f64 (+.f64 %49 #s(literal 0 binary64)) #s(literal -2 binary64)) (/.f64 (+.f64 %55 #s(literal 0 binary64)) #s(literal -2 binary64)) (/.f64 (+.f64 %38 #s(literal 0 binary64)) #s(literal 2 binary64)) (/.f64 (+.f64 %45 #s(literal 0 binary64)) #s(literal 1 binary64)) (/.f64 (-.f64 %29 #s(literal 0 binary64)) #s(literal 4 binary64)) (/.f64 (-.f64 %52 #s(literal 0 binary64)) #s(literal 4 binary64)) (/.f64 (-.f64 %42 #s(literal 0 binary64)) #s(literal -2 binary64)) (/.f64 (-.f64 %49 #s(literal 0 binary64)) #s(literal -2 binary64)) (/.f64 (-.f64 %55 #s(literal 0 binary64)) #s(literal -2 binary64)) (/.f64 (-.f64 %18 #s(literal 0 binary64)) #s(literal 1/2 binary64)) (/.f64 (-.f64 %32 #s(literal 0 binary64)) #s(literal 2 binary64)) (/.f64 (-.f64 %38 #s(literal 0 binary64)) #s(literal 2 binary64)) (/.f64 (-.f64 %13 #s(literal 0 binary64)) #s(literal 2 binary64)) (/.f64 (-.f64 %45 #s(literal 0 binary64)) #s(literal 1 binary64)) (/.f64 (neg.f64 %29) #s(literal -4 binary64)) (/.f64 (neg.f64 %32) #s(literal -2 binary64)) (/.f64 (neg.f64 %18) #s(literal -1/2 binary64)) (/.f64 (neg.f64 %38) #s(literal -2 binary64)) (/.f64 (neg.f64 %42) #s(literal 2 binary64)) (/.f64 (neg.f64 %45) #s(literal -1 binary64)) (/.f64 (neg.f64 %49) #s(literal 2 binary64)) (/.f64 (neg.f64 %52) #s(literal -4 binary64)) (/.f64 (neg.f64 %55) #s(literal 2 binary64)) (/.f64 %29 #s(literal 4 binary64)) (/.f64 %32 #s(literal 2 binary64)) (/.f64 %18 #s(literal 1/2 binary64)) (/.f64 %38 #s(literal 2 binary64)) (/.f64 %42 #s(literal -2 binary64)) (/.f64 %45 #s(literal 1 binary64)) (/.f64 %49 #s(literal -2 binary64)) (/.f64 (-.f64 %119 #s(literal 1 binary64)) (-.f64 %24 #s(literal 1 binary64))) (/.f64 (-.f64 #s(literal 1 binary64) %119) (-.f64 #s(literal 1 binary64) %24)) (/.f64 %52 #s(literal 4 binary64)) (/.f64 %55 #s(literal -2 binary64)) (/.f64 %128 #s(literal -1 binary64)) (/.f64 %13 #s(literal 2 binary64)) (/.f64 %12 #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) %13)) (/.f64 #s(literal 1 binary64) (pow.f64 %12 #s(literal -1 binary64))) (neg.f64 %128) (fma.f64 (pow.f64 %119 #s(literal -1/2 binary64)) %119 #s(literal 1 binary64)) (fma.f64 %141 %140 #s(literal 1 binary64)) (fma.f64 %15 #s(literal 4 binary64) #s(literal 0 binary64)) (fma.f64 %18 #s(literal 2 binary64) #s(literal 0 binary64)) (fma.f64 %13 #s(literal 1/2 binary64) #s(literal 0 binary64)) (fma.f64 %140 %141 #s(literal 1 binary64)) (fma.f64 %147 %147 #s(literal 1 binary64)) (fma.f64 %139 %139 #s(literal 1 binary64)) (fma.f64 %150 %150 #s(literal 1 binary64)) (fma.f64 #s(literal 1 binary64) %37 #s(literal 1/2 binary64)) (fma.f64 #s(literal 1 binary64) %12 #s(literal 0 binary64)) (fma.f64 #s(literal 1 binary64) %24 #s(literal 1 binary64)) %12 (-.f64 %155 #s(literal -1/2 binary64)) (-.f64 %157 #s(literal -1 binary64)) (-.f64 (+.f64 %12 #s(literal 1 binary64)) #s(literal 1 binary64)) (-.f64 %162 #s(literal -1 binary64)) (-.f64 %37 #s(literal -1/2 binary64)) (-.f64 #s(literal 1/2 binary64) (/.f64 %165 #s(literal 1 binary64))) (-.f64 #s(literal 1/2 binary64) (/.f64 %169 #s(literal 1 binary64))) (-.f64 #s(literal 1/2 binary64) (/.f64 %172 #s(literal 1 binary64))) (-.f64 #s(literal 1/2 binary64) %165) (-.f64 #s(literal 1/2 binary64) %169) (-.f64 #s(literal 1/2 binary64) %172) (-.f64 %12 #s(literal 0 binary64)) (-.f64 %24 #s(literal -1 binary64)) (-.f64 #s(literal 1 binary64) (/.f64 %180 #s(literal 1 binary64))) (-.f64 #s(literal 1 binary64) (/.f64 %183 #s(literal 1 binary64))) (-.f64 #s(literal 1 binary64) (/.f64 %186 #s(literal 1 binary64))) (-.f64 #s(literal 1 binary64) (/.f64 %168 #s(literal 1 binary64))) (-.f64 #s(literal 1 binary64) %180) (-.f64 #s(literal 1 binary64) %183) (-.f64 #s(literal 1 binary64) %186) (-.f64 #s(literal 1 binary64) %168) (+.f64 (/.f64 (*.f64 %37 #s(literal 2 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64)) (+.f64 (/.f64 (*.f64 %24 #s(literal 1 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64)) (+.f64 (/.f64 (*.f64 %13 #s(literal 2 binary64)) #s(literal 4 binary64)) #s(literal 0 binary64)) (+.f64 (/.f64 (fma.f64 #s(literal 2 binary64) %24 #s(literal 3/2 binary64)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (+.f64 (/.f64 (fma.f64 #s(literal 2 binary64) %24 #s(literal 1/2 binary64)) #s(literal 2 binary64)) #s(literal 3/4 binary64)) (+.f64 (/.f64 %162 #s(literal 1 binary64)) #s(literal 1 binary64)) (+.f64 %155 #s(literal 1/2 binary64)) (+.f64 %157 #s(literal 1 binary64)) (+.f64 %162 #s(literal 1 binary64)) (+.f64 %37 #s(literal 1/2 binary64)) (+.f64 #s(literal 1/2 binary64) (/.f64 %219 #s(literal 1 binary64))) (+.f64 #s(literal 1/2 binary64) %155) (+.f64 #s(literal 1/2 binary64) %219) (+.f64 #s(literal 1/2 binary64) %37) (+.f64 #s(literal 0 binary64) %12) (+.f64 %12 #s(literal 0 binary64)) (+.f64 %24 #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) %157) (+.f64 #s(literal 1 binary64) %162) (+.f64 #s(literal 1 binary64) %24) |
Compiled 123 to 232 computations (-88.6% saved)
Compiled 12 to 31 computations (-158.3% saved)
2 alts after pruning (0 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 12 | 0 | 12 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 2 | 2 |
| Done | 0 | 0 | 0 |
| Total | 12 | 2 | 14 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 100.0% | (fma.f64 x x #s(literal 1 binary64)) |
| ✓ | 47.1% | (approx (+ (* x x) 1) #s(literal 1 binary64)) |
Compiled 2 to 3 computations (-50.0% saved)
Total 0.0b remaining (0.0%)
Threshold costs 0.0b (0.0%)
| 0.0b | 0% |
| 0.0b | 0% |
| Inputs |
|---|
(approx (+ (* x x) 1) #s(literal 1 binary64)) |
| Outputs |
|---|
(approx (+ (* x x) 1) #s(literal 1 binary64)) |
| Inputs |
|---|
(approx (+ (* x x) 1) #s(literal 1 binary64)) (fma.f64 x x #s(literal 1 binary64)) |
| Outputs |
|---|
(fma.f64 x x #s(literal 1 binary64)) |
3 calls:
| 4.0ms | x |
| 4.0ms | (*.f64 x x) |
| 3.0ms | (+.f64 (*.f64 x x) #s(literal 1 binary64)) |
| Accuracy | Segments | Branch |
|---|---|---|
| 47.1% | 1 | x |
| 47.1% | 1 | (+.f64 (*.f64 x x) #s(literal 1 binary64)) |
| 47.1% | 1 | (*.f64 x x) |
Compiled 6 to 9 computations (-50.0% saved)
| 1× | done |
Compiled 2 to 3 computations (-50.0% saved)
Compiled 7 to 15 computations (-114.3% saved)
| Allocated | Percent | Phase |
|---|---|---|
| 269.5 MiB | 37.8% | sample |
| 219.8 MiB | 30.8% | rewrite |
| 73.2 MiB | 10.3% | reconstruct |
| 58.3 MiB | 8.2% | preprocess |
| 33.0 MiB | 4.6% | derivations |
| 22.7 MiB | 3.2% | regimes |
| 17.7 MiB | 2.5% | series |
| 12.9 MiB | 1.8% | eval |
| 5.2 MiB | 0.7% | prune |
| 0.2 MiB | 0.0% | analyze |
| 0.1 MiB | 0.0% | bsearch |
| 0.1 MiB | 0.0% | start |
| 0.0 MiB | 0.0% | end |
| 712.6 MiB | 100.0% | total |
Loading profile data...