
Time bar (total: 1.9s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0.0% | 0.0% | 99.9% | 0.1% | 0.0% | 0.0% | 0.0% | 0 |
| 100.0% | 99.9% | 0.0% | 0.1% | 0.0% | 0.0% | 0.0% | 1 |
Compiled 11 to 9 computations (18.2% saved)
| 221.0ms | 8 256× | 0 | valid |
Mul: 5.0ms (55.6% of total, 0.0 MiB)Sub: 2.0ms (22.2% of total, 0.0 MiB)Add: 2.0ms (22.2% of total, 0.0 MiB)Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 33 | 95 |
| 1 | 143 | 90 |
| 2 | 370 | 90 |
| 3 | 1030 | 75 |
| 1× | node-limit |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 96.5% | (+.f64 (*.f64 (-.f64 #s(literal 1 binary64) x) y) (*.f64 x z)) |
Compiled 2 to 16 computations (-700.0% saved)
| Inputs |
|---|
| Outputs |
|---|
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 85 | 335 |
| 1× | iter-limit |
| Inputs |
|---|
%2 = (-.f64 #s(literal 1 binary64) x) %4 = (*.f64 %2 y) %6 = (*.f64 x z) #s(literal 1 binary64) x %2 y %4 z %6 (+.f64 %4 %6) |
| Outputs |
|---|
%5 = (- 1 x) %9 = (*.f64 #s(literal -1 binary64) x) %13 = (* %5 y) %16 = (*.f64 #s(literal -1 binary64) (*.f64 x y)) %20 = (* x z) %21 = (*.f64 x z) %23 = (+ %13 %20) %26 = (*.f64 x (+.f64 z (*.f64 #s(literal -1 binary64) y))) %30 = (/.f64 #s(literal 1 binary64) x) %35 = (/.f64 y x) %36 = (fma.f64 #s(literal -1 binary64) y %35) %47 = (*.f64 #s(literal -1 binary64) %35) %62 = (-.f64 #s(literal 1 binary64) x) %63 = (*.f64 y %62) %67 = (/.f64 %21 y) %78 = (/.f64 %63 z) (approx 1 #s(literal 0 binary64)) (approx x x) (approx %5 #s(literal 1 binary64)) (approx %5 (+.f64 #s(literal 1 binary64) %9)) (approx %13 y) (approx %13 (+.f64 y %16)) (approx %20 %21) (approx %23 (+.f64 y %26)) (approx %5 %9) (approx %5 (*.f64 x (-.f64 %30 #s(literal 1 binary64)))) (approx %13 %16) (approx %13 (*.f64 x %36)) (approx %23 %26) (approx %23 (*.f64 x (+.f64 z %36))) (approx %5 (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 #s(literal 1 binary64) %30)))) (approx %13 (*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 y %47)))) (approx %23 (*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 y (*.f64 #s(literal -1 binary64) z))))) (approx %23 (*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 y (fma.f64 #s(literal -1 binary64) z %47))))) (approx %13 %63) (approx %23 (fma.f64 x z %63)) (approx %23 (*.f64 y (-.f64 (+.f64 #s(literal 1 binary64) %67) x))) (approx %23 (*.f64 #s(literal -1 binary64) (*.f64 y (fma.f64 #s(literal -1 binary64) %62 (*.f64 #s(literal -1 binary64) %67))))) (approx z z) (approx %23 (*.f64 z (+.f64 x %78))) (approx %23 (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) x (*.f64 #s(literal -1 binary64) %78))))) |
9 calls:
| Time | Variable | Point |
|---|---|---|
| 2.0ms | x | inf |
| 2.0ms | y | inf |
| 1.0ms | x | -inf |
| 1.0ms | z | inf |
| 1.0ms | y | -inf |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 24 |
| 0 | 12 | 24 |
| 1 | 37 | 24 |
| 2 | 94 | 24 |
| 3 | 315 | 23 |
| 4 | 1728 | 23 |
| 0 | 4328 | 23 |
| 0 | 4454 | 22 |
| 1× | iter-limit |
| 1× | iter-limit |
| 1× | node-limit |
| 1× | iter-limit |
| Inputs |
|---|
%2 = (-.f64 #s(literal 1 binary64) x) %4 = (*.f64 %2 y) %6 = (*.f64 x z) #s(literal 1 binary64) x %2 y %4 z %6 (+.f64 %4 %6) |
| Outputs |
|---|
%3 = (-.f64 #s(literal 1 binary64) x) %4 = (*.f64 #s(literal 2 binary64) %3) %6 = (/.f64 %4 #s(literal 8 binary64)) %9 = (/.f64 %4 #s(literal 4 binary64)) %15 = (neg.f64 x) %20 = (/.f64 %4 #s(literal 1/2 binary64)) %23 = (/.f64 %4 #s(literal 1 binary64)) %26 = (-.f64 #s(literal 1/2 binary64) x) %27 = (fma.f64 %26 #s(literal 2 binary64) #s(literal 1 binary64)) %31 = (fma.f64 %15 #s(literal -2 binary64) #s(literal -2 binary64)) %34 = (fma.f64 %15 #s(literal 1 binary64) #s(literal 1 binary64)) %38 = (-.f64 (*.f64 %15 #s(literal -2 binary64)) #s(literal 2 binary64)) %41 = (fma.f64 %4 #s(literal 2 binary64) #s(literal 0 binary64)) %44 = (fma.f64 #s(literal 2 binary64) x #s(literal -2 binary64)) %45 = (neg.f64 %44) %48 = (neg.f64 %4) %69 = (-.f64 x #s(literal 1 binary64)) %72 = (+.f64 x x) %73 = (-.f64 %72 #s(literal 1 binary64)) %85 = (-.f64 x #s(literal 1/2 binary64)) %201 = (*.f64 %15 #s(literal 1 binary64)) %218 = (/.f64 %72 #s(literal -2 binary64)) %221 = (/.f64 %26 #s(literal 1 binary64)) %223 = (/.f64 %15 #s(literal 1 binary64)) %227 = (+.f64 #s(literal 0 binary64) %26) %240 = (*.f64 %3 #s(literal 1/2 binary64)) %241 = (+.f64 y y) %243 = (*.f64 %3 #s(literal 1 binary64)) %245 = (*.f64 %3 %241) %247 = (*.f64 #s(literal 1/2 binary64) y) %248 = (*.f64 %3 %247) %250 = (*.f64 #s(literal 1/2 binary64) %3) %254 = (neg.f64 y) %256 = (*.f64 %241 %3) %258 = (*.f64 %247 %3) %261 = (*.f64 y %3) %286 = (*.f64 %254 x) %287 = (fma.f64 %286 #s(literal 2 binary64) %241) %290 = (*.f64 %15 %241) %293 = (*.f64 %241 %15) %296 = (*.f64 %254 #s(literal 2 binary64)) %301 = (*.f64 #s(literal -1 binary64) %241) %306 = (*.f64 %241 #s(literal -1 binary64)) %311 = (*.f64 #s(literal 2 binary64) %254) %316 = (*.f64 #s(literal -2 binary64) y) %321 = (*.f64 y #s(literal -2 binary64)) %326 = (neg.f64 %241) %331 = (*.f64 x %241) %334 = (*.f64 %241 x) %337 = (*.f64 %254 %44) %342 = (*.f64 y %4) %345 = (*.f64 %44 %254) %350 = (*.f64 %4 y) %355 = (*.f64 %241 %4) %358 = (*.f64 %4 %241) %372 = (*.f64 %69 y) %374 = (*.f64 %3 #s(literal 0 binary64)) %376 = (*.f64 #s(literal 0 binary64) %3) %382 = (*.f64 #s(literal -1 binary64) %254) %384 = (*.f64 %254 #s(literal -1 binary64)) %390 = (*.f64 %15 %247) %397 = (*.f64 %15 #s(literal 1/2 binary64)) %401 = (*.f64 #s(literal 1/2 binary64) %247) %402 = (fma.f64 #s(literal 1/2 binary64) y %286) %404 = (*.f64 y x) %405 = (-.f64 %247 %404) %407 = (*.f64 y %26) %409 = (*.f64 %26 y) %422 = (*.f64 #s(literal 1/2 binary64) %15) %433 = (neg.f64 %72) %469 = (*.f64 %247 #s(literal 1/2 binary64)) %474 = (*.f64 %247 %15) %547 = (neg.f64 z) %550 = (*.f64 z x) %556 = (*.f64 %15 z) %558 = (-.f64 y z) %559 = (fma.f64 %15 %558 y) %562 = (fma.f64 %550 #s(literal 2 binary64) %241) %576 = (-.f64 (*.f64 %556 #s(literal 2 binary64)) %241) %587 = (-.f64 y %556) %589 = (fma.f64 z x y) %597 = (*.f64 %15 %558) %598 = (fma.f64 #s(literal 1/2 binary64) y %597) #s(literal 1 binary64) x (*.f64 %6 #s(literal 4 binary64)) (*.f64 %9 #s(literal 2 binary64)) (*.f64 %4 #s(literal 1/2 binary64)) (*.f64 #s(literal 1 binary64) %3) (pow.f64 %3 #s(literal 1 binary64)) (/.f64 (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal 2 binary64) %15 #s(literal 1 binary64))) #s(literal 2 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %20) #s(literal 4 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %23) #s(literal 2 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %27) #s(literal 2 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %31) #s(literal -2 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %34) #s(literal 1 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %38) #s(literal -2 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %41) #s(literal 4 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %45) #s(literal 2 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %48) #s(literal -2 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %4) #s(literal 2 binary64)) (/.f64 (+.f64 #s(literal 0 binary64) %44) #s(literal -2 binary64)) (/.f64 (+.f64 %41 #s(literal 0 binary64)) #s(literal 4 binary64)) (/.f64 (+.f64 %31 #s(literal 0 binary64)) #s(literal -2 binary64)) (/.f64 (+.f64 %38 #s(literal 0 binary64)) #s(literal -2 binary64)) (/.f64 (+.f64 %27 #s(literal 0 binary64)) #s(literal 2 binary64)) (/.f64 (+.f64 %34 #s(literal 0 binary64)) #s(literal 1 binary64)) (/.f64 (+.f64 %45 #s(literal 0 binary64)) #s(literal 2 binary64)) (/.f64 (+.f64 %48 #s(literal 0 binary64)) #s(literal -2 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) %69 #s(literal 0 binary64)) #s(literal -2 binary64)) (/.f64 (-.f64 #s(literal 1 binary64) %73) #s(literal 2 binary64)) (/.f64 (-.f64 #s(literal 0 binary64) (/.f64 %44 #s(literal 1/2 binary64))) #s(literal 4 binary64)) (/.f64 (-.f64 #s(literal 0 binary64) (/.f64 %44 #s(literal 1 binary64))) #s(literal 2 binary64)) (/.f64 (-.f64 #s(literal 0 binary64) (fma.f64 x #s(literal -2 binary64) #s(literal 2 binary64))) #s(literal -2 binary64)) (/.f64 (-.f64 #s(literal 0 binary64) (-.f64 (*.f64 %85 #s(literal 2 binary64)) #s(literal 1 binary64))) #s(literal 2 binary64)) (/.f64 (-.f64 #s(literal 0 binary64) (-.f64 (*.f64 %69 #s(literal 2 binary64)) #s(literal 0 binary64))) #s(literal 2 binary64)) (/.f64 (-.f64 #s(literal 0 binary64) (-.f64 (*.f64 x #s(literal -2 binary64)) #s(literal -2 binary64))) #s(literal -2 binary64)) (/.f64 (-.f64 #s(literal 0 binary64) (-.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 1 binary64))) #s(literal 1 binary64)) (/.f64 (-.f64 #s(literal 0 binary64) (-.f64 (*.f64 %44 #s(literal 2 binary64)) #s(literal 0 binary64))) #s(literal 4 binary64)) (/.f64 (-.f64 #s(literal 0 binary64) %45) #s(literal -2 binary64)) (/.f64 (-.f64 #s(literal 0 binary64) %48) #s(literal 2 binary64)) (/.f64 (-.f64 #s(literal 0 binary64) %4) #s(literal -2 binary64)) (/.f64 (-.f64 #s(literal 0 binary64) %44) #s(literal 2 binary64)) (/.f64 (-.f64 %20 #s(literal 0 binary64)) #s(literal 4 binary64)) (/.f64 (-.f64 %41 #s(literal 0 binary64)) #s(literal 4 binary64)) (/.f64 (-.f64 %31 #s(literal 0 binary64)) #s(literal -2 binary64)) (/.f64 (-.f64 %38 #s(literal 0 binary64)) #s(literal -2 binary64)) (/.f64 (-.f64 %23 #s(literal 0 binary64)) #s(literal 2 binary64)) (/.f64 (-.f64 %27 #s(literal 0 binary64)) #s(literal 2 binary64)) (/.f64 (-.f64 %34 #s(literal 0 binary64)) #s(literal 1 binary64)) (/.f64 (-.f64 %45 #s(literal 0 binary64)) #s(literal 2 binary64)) (/.f64 (-.f64 %4 #s(literal 0 binary64)) #s(literal 2 binary64)) (/.f64 (-.f64 %48 #s(literal 0 binary64)) #s(literal -2 binary64)) (/.f64 (neg.f64 %20) #s(literal -4 binary64)) (/.f64 (neg.f64 %23) #s(literal -2 binary64)) (/.f64 (neg.f64 %27) #s(literal -2 binary64)) (/.f64 (neg.f64 %31) #s(literal 2 binary64)) (/.f64 (neg.f64 %34) #s(literal -1 binary64)) (/.f64 (neg.f64 %38) #s(literal 2 binary64)) (/.f64 (neg.f64 %41) #s(literal -4 binary64)) (/.f64 (neg.f64 %45) #s(literal -2 binary64)) (/.f64 (neg.f64 %48) #s(literal 2 binary64)) (/.f64 %20 #s(literal 4 binary64)) (/.f64 %23 #s(literal 2 binary64)) (/.f64 (-.f64 #s(literal 2 binary64) %72) #s(literal 2 binary64)) (/.f64 %27 #s(literal 2 binary64)) (/.f64 %31 #s(literal -2 binary64)) (/.f64 %34 #s(literal 1 binary64)) (/.f64 %38 #s(literal -2 binary64)) (/.f64 %41 #s(literal 4 binary64)) (/.f64 %45 #s(literal 2 binary64)) (/.f64 %48 #s(literal -2 binary64)) (/.f64 %4 #s(literal 2 binary64)) (/.f64 %44 #s(literal -2 binary64)) (/.f64 %69 #s(literal -1 binary64)) (/.f64 %3 #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) %4)) (/.f64 #s(literal 1 binary64) (pow.f64 %3 #s(literal -1 binary64))) (neg.f64 %69) (fma.f64 %6 #s(literal 4 binary64) #s(literal 0 binary64)) (fma.f64 %9 #s(literal 2 binary64) #s(literal 0 binary64)) (fma.f64 %4 #s(literal 1/2 binary64) #s(literal 0 binary64)) (fma.f64 #s(literal 1 binary64) %26 #s(literal 1/2 binary64)) (fma.f64 #s(literal 1 binary64) %15 #s(literal 1 binary64)) (fma.f64 #s(literal 1 binary64) %3 #s(literal 0 binary64)) (-.f64 (+.f64 %3 #s(literal 1 binary64)) #s(literal 1 binary64)) (-.f64 %26 #s(literal -1/2 binary64)) (-.f64 #s(literal 1/2 binary64) (-.f64 #s(literal -1/2 binary64) %15)) (-.f64 #s(literal 1/2 binary64) (+.f64 #s(literal -1/2 binary64) x)) (-.f64 #s(literal 1/2 binary64) %85) (-.f64 %15 #s(literal -1 binary64)) (-.f64 #s(literal 0 binary64) %69) (-.f64 %3 #s(literal 0 binary64)) (-.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) %15)) (-.f64 #s(literal 1 binary64) (+.f64 #s(literal 0 binary64) x)) (-.f64 #s(literal 1 binary64) (-.f64 x #s(literal 0 binary64))) %3 (+.f64 (/.f64 (*.f64 %26 #s(literal 2 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64)) (+.f64 (/.f64 %201 #s(literal 1 binary64)) #s(literal 1 binary64)) (+.f64 (/.f64 (*.f64 %4 #s(literal 2 binary64)) #s(literal 4 binary64)) #s(literal 0 binary64)) (+.f64 (/.f64 (fma.f64 #s(literal 2 binary64) %15 #s(literal 3/2 binary64)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (+.f64 (/.f64 (fma.f64 #s(literal 2 binary64) %15 #s(literal 1/2 binary64)) #s(literal 2 binary64)) #s(literal 3/4 binary64)) (+.f64 (/.f64 %73 #s(literal -2 binary64)) #s(literal 1/2 binary64)) (+.f64 (/.f64 %218 #s(literal 1 binary64)) #s(literal 1 binary64)) (+.f64 %221 #s(literal 1/2 binary64)) (+.f64 %223 #s(literal 1 binary64)) (+.f64 %218 #s(literal 1 binary64)) (+.f64 %26 #s(literal 1/2 binary64)) (+.f64 #s(literal 1/2 binary64) (/.f64 %227 #s(literal 1 binary64))) (+.f64 #s(literal 1/2 binary64) %221) (+.f64 #s(literal 1/2 binary64) %227) (+.f64 #s(literal 1/2 binary64) %26) (+.f64 %15 #s(literal 1 binary64)) (+.f64 #s(literal 0 binary64) %3) (+.f64 %3 #s(literal 0 binary64)) (+.f64 #s(literal 1 binary64) %223) (+.f64 #s(literal 1 binary64) %218) (+.f64 #s(literal 1 binary64) %15) y (*.f64 %240 %241) (*.f64 %243 y) (*.f64 %245 #s(literal 1/2 binary64)) (*.f64 %248 #s(literal 2 binary64)) (*.f64 %241 %250) (*.f64 %247 %4) (*.f64 %4 %247) (*.f64 %254 %69) (*.f64 #s(literal 1/2 binary64) %256) (*.f64 #s(literal 2 binary64) %258) (*.f64 %69 %254) (*.f64 %261 #s(literal 1 binary64)) %261 (*.f64 %3 y) (*.f64 #s(literal 1 binary64) %261) (pow.f64 %261 #s(literal 1 binary64)) (/.f64 (fma.f64 %15 %241 %241) #s(literal 2 binary64)) (/.f64 (fma.f64 %241 %15 %241) #s(literal 2 binary64)) (/.f64 (fma.f64 %241 %4 #s(literal 0 binary64)) #s(literal 4 binary64)) (/.f64 (fma.f64 %4 %241 #s(literal 0 binary64)) #s(literal 4 binary64)) (/.f64 (fma.f64 %254 %44 #s(literal 0 binary64)) #s(literal 2 binary64)) (/.f64 (fma.f64 %3 %241 #s(literal 0 binary64)) #s(literal 2 binary64)) (/.f64 (fma.f64 y %4 #s(literal 0 binary64)) #s(literal 2 binary64)) (/.f64 (fma.f64 %44 %254 #s(literal 0 binary64)) #s(literal 2 binary64)) (/.f64 (fma.f64 %241 %3 #s(literal 0 binary64)) #s(literal 2 binary64)) (/.f64 (fma.f64 %4 y #s(literal 0 binary64)) #s(literal 2 binary64)) (/.f64 (+.f64 %287 #s(literal 0 binary64)) #s(literal 2 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) y %290) #s(literal 2 binary64)) (/.f64 (fma.f64 #s(literal 2 binary64) y %293) #s(literal 2 binary64)) (/.f64 (-.f64 %290 %296) #s(literal 2 binary64)) (/.f64 (-.f64 %293 %296) #s(literal 2 binary64)) (/.f64 (-.f64 %290 %301) #s(literal 2 binary64)) (/.f64 (-.f64 %293 %301) #s(literal 2 binary64)) (/.f64 (-.f64 %290 %306) #s(literal 2 binary64)) (/.f64 (-.f64 %293 %306) #s(literal 2 binary64)) (/.f64 (-.f64 %290 %311) #s(literal 2 binary64)) (/.f64 (-.f64 %293 %311) #s(literal 2 binary64)) (/.f64 (-.f64 %290 %316) #s(literal 2 binary64)) (/.f64 (-.f64 %293 %316) #s(literal 2 binary64)) (/.f64 (-.f64 %290 %321) #s(literal 2 binary64)) (/.f64 (-.f64 %293 %321) #s(literal 2 binary64)) (/.f64 (-.f64 %290 %326) #s(literal 2 binary64)) (/.f64 (-.f64 %293 %326) #s(literal 2 binary64)) (/.f64 (-.f64 %241 %331) #s(literal 2 binary64)) (/.f64 (-.f64 %241 %334) #s(literal 2 binary64)) (/.f64 (neg.f64 %337) #s(literal -2 binary64)) (/.f64 (neg.f64 %245) #s(literal -2 binary64)) (/.f64 (neg.f64 %342) #s(literal -2 binary64)) (/.f64 (neg.f64 %345) #s(literal -2 binary64)) (/.f64 (neg.f64 %256) #s(literal -2 binary64)) (/.f64 (neg.f64 %350) #s(literal -2 binary64)) (/.f64 (neg.f64 %287) #s(literal -2 binary64)) (/.f64 (neg.f64 %355) #s(literal -4 binary64)) (/.f64 (neg.f64 %358) #s(literal -4 binary64)) (/.f64 %337 #s(literal 2 binary64)) (/.f64 %245 #s(literal 2 binary64)) (/.f64 %342 #s(literal 2 binary64)) (/.f64 %345 #s(literal 2 binary64)) (/.f64 %256 #s(literal 2 binary64)) (/.f64 %350 #s(literal 2 binary64)) (/.f64 %287 #s(literal 2 binary64)) (/.f64 %355 #s(literal 4 binary64)) (/.f64 %358 #s(literal 4 binary64)) (/.f64 #s(literal 1 binary64) (pow.f64 %261 #s(literal -1 binary64))) (neg.f64 %372) (fma.f64 %240 %241 %374) (fma.f64 %240 %241 %376) (fma.f64 %240 %241 #s(literal 0 binary64)) (fma.f64 %243 y %374) (fma.f64 %243 y %376) (fma.f64 %243 y #s(literal 0 binary64)) (fma.f64 %290 #s(literal 1/2 binary64) %382) (fma.f64 %290 #s(literal 1/2 binary64) %384) (fma.f64 %290 #s(literal 1/2 binary64) y) (fma.f64 %245 #s(literal 1/2 binary64) %374) (fma.f64 %245 #s(literal 1/2 binary64) %376) (fma.f64 %245 #s(literal 1/2 binary64) #s(literal 0 binary64)) (fma.f64 %390 #s(literal 2 binary64) %382) (fma.f64 %390 #s(literal 2 binary64) %384) (fma.f64 %390 #s(literal 2 binary64) y) (fma.f64 %248 #s(literal 2 binary64) %374) (fma.f64 %248 #s(literal 2 binary64) %376) (fma.f64 %248 #s(literal 2 binary64) #s(literal 0 binary64)) (fma.f64 %397 %241 %382) (fma.f64 %397 %241 %384) (fma.f64 %397 %241 y) (fma.f64 %401 #s(literal 2 binary64) %402) (fma.f64 %401 #s(literal 2 binary64) %405) (fma.f64 %401 #s(literal 2 binary64) %407) (fma.f64 %401 #s(literal 2 binary64) %409) (fma.f64 %201 y %382) (fma.f64 %201 y %384) (fma.f64 %201 y y) (fma.f64 #s(literal 1/4 binary64) %241 %402) (fma.f64 #s(literal 1/4 binary64) %241 %405) (fma.f64 #s(literal 1/4 binary64) %241 %407) (fma.f64 #s(literal 1/4 binary64) %241 %409) (fma.f64 %26 y %247) (fma.f64 %241 %250 %374) (fma.f64 %241 %250 %376) (fma.f64 %241 %250 #s(literal 0 binary64)) (fma.f64 %241 %422 %382) (fma.f64 %241 %422 %384) (fma.f64 %241 %422 y) (fma.f64 %241 #s(literal 1/4 binary64) %402) (fma.f64 %241 #s(literal 1/4 binary64) %405) (fma.f64 %241 #s(literal 1/4 binary64) %407) (fma.f64 %241 #s(literal 1/4 binary64) %409) (fma.f64 %247 %4 %374) (fma.f64 %247 %4 %376) (fma.f64 %247 %4 #s(literal 0 binary64)) (fma.f64 %247 %433 %382) (fma.f64 %247 %433 %384) (fma.f64 %247 %433 y) (fma.f64 %247 %3 %258) (fma.f64 %247 #s(literal 1 binary64) %402) (fma.f64 %247 #s(literal 1 binary64) %405) (fma.f64 %247 #s(literal 1 binary64) %407) (fma.f64 %247 #s(literal 1 binary64) %409) (fma.f64 %4 %247 %374) (fma.f64 %4 %247 %376) (fma.f64 %4 %247 #s(literal 0 binary64)) (fma.f64 %433 %247 %382) (fma.f64 %433 %247 %384) (fma.f64 %433 %247 y) (fma.f64 %286 #s(literal 1 binary64) %382) (fma.f64 %286 #s(literal 1 binary64) %384) (fma.f64 %286 #s(literal 1 binary64) y) (fma.f64 %254 #s(literal -1 binary64) %286) (fma.f64 %254 %69 %374) (fma.f64 %254 %69 %376) (fma.f64 %254 %69 #s(literal 0 binary64)) (fma.f64 %254 x %382) (fma.f64 %254 x %384) (fma.f64 %254 x y) (fma.f64 #s(literal -1 binary64) %254 %286) (fma.f64 #s(literal 1/2 binary64) %293 %382) (fma.f64 #s(literal 1/2 binary64) %293 %384) (fma.f64 #s(literal 1/2 binary64) %293 y) (fma.f64 #s(literal 1/2 binary64) %256 %374) (fma.f64 #s(literal 1/2 binary64) %256 %376) (fma.f64 #s(literal 1/2 binary64) %256 #s(literal 0 binary64)) (fma.f64 #s(literal 1/2 binary64) y %402) (fma.f64 #s(literal 1/2 binary64) y %405) (fma.f64 #s(literal 1/2 binary64) y %407) (fma.f64 #s(literal 1/2 binary64) y %409) (fma.f64 #s(literal 2 binary64) %469 %402) (fma.f64 #s(literal 2 binary64) %469 %405) (fma.f64 #s(literal 2 binary64) %469 %407) (fma.f64 #s(literal 2 binary64) %469 %409) (fma.f64 #s(literal 2 binary64) %474 %382) (fma.f64 #s(literal 2 binary64) %474 %384) (fma.f64 #s(literal 2 binary64) %474 y) (fma.f64 #s(literal 2 binary64) %258 %374) (fma.f64 #s(literal 2 binary64) %258 %376) (fma.f64 #s(literal 2 binary64) %258 #s(literal 0 binary64)) (fma.f64 %15 y %382) (fma.f64 %15 y %384) (fma.f64 %15 y y) (fma.f64 %69 %254 %374) (fma.f64 %69 %254 %376) (fma.f64 %69 %254 #s(literal 0 binary64)) (fma.f64 %261 #s(literal 1 binary64) %374) (fma.f64 %261 #s(literal 1 binary64) %376) (fma.f64 %261 #s(literal 1 binary64) #s(literal 0 binary64)) (fma.f64 y %26 %247) (fma.f64 y #s(literal 1/2 binary64) %402) (fma.f64 y #s(literal 1/2 binary64) %405) (fma.f64 y #s(literal 1/2 binary64) %407) (fma.f64 y #s(literal 1/2 binary64) %409) (fma.f64 y %15 %382) (fma.f64 y %15 %384) (fma.f64 y %15 y) (fma.f64 y %3 %374) (fma.f64 y %3 %376) (fma.f64 y %3 #s(literal 0 binary64)) (fma.f64 %3 %247 %248) (fma.f64 %3 y %374) (fma.f64 %3 y %376) (fma.f64 %3 y #s(literal 0 binary64)) (fma.f64 x %254 %382) (fma.f64 x %254 %384) (fma.f64 x %254 y) (fma.f64 #s(literal 1 binary64) %247 %402) (fma.f64 #s(literal 1 binary64) %247 %405) (fma.f64 #s(literal 1 binary64) %247 %407) (fma.f64 #s(literal 1 binary64) %247 %409) (fma.f64 #s(literal 1 binary64) %286 %382) (fma.f64 #s(literal 1 binary64) %286 %384) (fma.f64 #s(literal 1 binary64) %286 y) (fma.f64 #s(literal 1 binary64) %261 %374) (fma.f64 #s(literal 1 binary64) %261 %376) (fma.f64 #s(literal 1 binary64) %261 #s(literal 0 binary64)) (-.f64 %286 %254) (-.f64 y %404) (+.f64 (/.f64 (*.f64 %286 #s(literal 2 binary64)) #s(literal 2 binary64)) y) (+.f64 (fma.f64 %254 x %247) %247) (+.f64 %248 %248) (+.f64 %407 %247) (+.f64 %258 %258) (+.f64 %409 %247) (+.f64 %382 %286) (+.f64 %384 %286) (+.f64 %247 %402) (+.f64 %247 %405) (+.f64 %247 %407) (+.f64 %247 %409) (+.f64 %286 %382) (+.f64 %286 %384) (+.f64 %286 y) (+.f64 %261 %374) (+.f64 %261 %376) (+.f64 %261 #s(literal 0 binary64)) (+.f64 y (+.f64 #s(literal 0 binary64) %286)) (+.f64 y (-.f64 #s(literal 0 binary64) %404)) (+.f64 y %286) z (*.f64 %547 %15) (*.f64 %15 %547) %550 (*.f64 x z) (*.f64 #s(literal 1 binary64) %550) (pow.f64 %550 #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (pow.f64 %550 #s(literal -1 binary64))) (neg.f64 %556) (*.f64 #s(literal 1 binary64) %559) (pow.f64 %559 #s(literal 1 binary64)) (/.f64 (+.f64 %562 %290) #s(literal 2 binary64)) (/.f64 (+.f64 %562 %293) #s(literal 2 binary64)) (/.f64 (fma.f64 %15 %241 %562) #s(literal 2 binary64)) (/.f64 (fma.f64 %241 %15 %562) #s(literal 2 binary64)) (/.f64 (-.f64 %562 %331) #s(literal 2 binary64)) (/.f64 (-.f64 %562 %334) #s(literal 2 binary64)) (/.f64 (-.f64 %290 %576) #s(literal 2 binary64)) (/.f64 (-.f64 %293 %576) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (pow.f64 %559 #s(literal -1 binary64))) (neg.f64 (neg.f64 %559)) (fma.f64 %240 %241 %550) (fma.f64 %243 y %550) (fma.f64 %290 #s(literal 1/2 binary64) %587) (fma.f64 %290 #s(literal 1/2 binary64) %589) (fma.f64 %245 #s(literal 1/2 binary64) %550) (fma.f64 %390 #s(literal 2 binary64) %587) (fma.f64 %390 #s(literal 2 binary64) %589) (fma.f64 %248 #s(literal 2 binary64) %550) (fma.f64 %397 %241 %587) (fma.f64 %397 %241 %589) (fma.f64 %401 #s(literal 2 binary64) %598) (fma.f64 %201 y %587) (fma.f64 %201 y %589) (fma.f64 #s(literal 1/4 binary64) %241 %598) (fma.f64 %241 %250 %550) (fma.f64 %241 %422 %587) (fma.f64 %241 %422 %589) (fma.f64 %241 #s(literal 1/4 binary64) %598) (fma.f64 %247 %4 %550) (fma.f64 %247 %433 %587) (fma.f64 %247 %433 %589) (fma.f64 %247 #s(literal 1 binary64) %598) (fma.f64 %4 %247 %550) (fma.f64 %433 %247 %587) (fma.f64 %433 %247 %589) (fma.f64 %286 #s(literal 1 binary64) %587) (fma.f64 %286 #s(literal 1 binary64) %589) (fma.f64 %254 %69 %550) (fma.f64 %254 x %587) (fma.f64 %254 x %589) (fma.f64 %547 %15 %261) (fma.f64 #s(literal 1/2 binary64) %293 %587) (fma.f64 #s(literal 1/2 binary64) %293 %589) (fma.f64 #s(literal 1/2 binary64) %256 %550) (fma.f64 #s(literal 1/2 binary64) y %598) (fma.f64 #s(literal 2 binary64) %469 %598) (fma.f64 #s(literal 2 binary64) %474 %587) (fma.f64 #s(literal 2 binary64) %474 %589) (fma.f64 #s(literal 2 binary64) %258 %550) (fma.f64 %15 (+.f64 y %547) y) %559 (fma.f64 %15 %547 %261) (fma.f64 %15 y %587) (fma.f64 %15 y %589) (fma.f64 %69 %254 %550) (fma.f64 z x %261) (fma.f64 %261 #s(literal 1 binary64) %550) (fma.f64 y #s(literal 1/2 binary64) %598) (fma.f64 y %15 %587) (fma.f64 y %15 %589) (fma.f64 y %3 %550) (fma.f64 %3 y %550) (fma.f64 x %254 %587) (fma.f64 x %254 %589) (fma.f64 x z %261) (fma.f64 #s(literal 1 binary64) %589 %286) (fma.f64 #s(literal 1 binary64) %597 y) (fma.f64 #s(literal 1 binary64) %247 %598) (fma.f64 #s(literal 1 binary64) %286 %587) (fma.f64 #s(literal 1 binary64) %286 %589) (fma.f64 #s(literal 1 binary64) %550 %261) (fma.f64 #s(literal 1 binary64) %261 %550) (-.f64 (-.f64 %550 %404) %254) (-.f64 %589 %404) (-.f64 %286 (-.f64 %556 y)) (-.f64 %550 %372) (-.f64 %261 %556) (-.f64 y (-.f64 %404 %550)) (-.f64 y (fma.f64 y x %556)) (-.f64 y (neg.f64 %597)) (+.f64 %589 %286) (+.f64 %597 y) (+.f64 %247 %598) (+.f64 %286 %587) (+.f64 %286 %589) (+.f64 %550 %261) (+.f64 %261 %550) (+.f64 y (+.f64 #s(literal 0 binary64) %597)) (+.f64 y %597) |
Compiled 457 to 721 computations (-57.8% saved)
Compiled 39 to 122 computations (-212.8% saved)
3 alts after pruning (3 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 36 | 3 | 39 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 37 | 3 | 40 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 100.0% | (fma.f64 (neg.f64 x) (-.f64 y z) y) |
| ▶ | 71.4% | (+.f64 (approx (* (- 1 x) y) y) (*.f64 x z)) |
| ▶ | 98.8% | (approx (+ (* (- 1 x) y) (* x z)) (fma.f64 x z (*.f64 y (-.f64 #s(literal 1 binary64) x)))) |
Compiled 3 to 12 computations (-300.0% saved)
| Inputs |
|---|
| Outputs |
|---|
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 154 | 637 |
| 1× | iter-limit |
| Inputs |
|---|
%2 = (-.f64 #s(literal 1 binary64) x) %5 = (*.f64 x z) %8 = (* (- 1 x) y) %9 = (approx %8 y) %10 = (*.f64 y %2) %11 = (fma.f64 x z %10) %15 = (neg.f64 x) %16 = (-.f64 y z) #s(literal 1 binary64) x %2 y z %5 %9 %10 %11 (approx (+ %8 (* x z)) %11) %15 %16 (fma.f64 %15 %16 y) (+.f64 %9 %5) |
| Outputs |
|---|
%5 = (- 1 x) %9 = (*.f64 #s(literal -1 binary64) x) %10 = (+.f64 #s(literal 1 binary64) %9) %13 = (* x z) %14 = (*.f64 x z) %17 = (* %5 y) %19 = (*.f64 x y) %20 = (*.f64 #s(literal -1 binary64) %19) %21 = (+.f64 y %20) %24 = (+ %13 (* y %5)) %27 = (*.f64 x (+.f64 z (*.f64 #s(literal -1 binary64) y))) %30 = (neg x) %32 = (- y z) %34 = (+ (* %30 %32) y) %35 = (-.f64 y z) %37 = (*.f64 #s(literal -1 binary64) (*.f64 x %35)) %40 = (/.f64 #s(literal 1 binary64) x) %45 = (/.f64 y x) %46 = (fma.f64 #s(literal -1 binary64) y %45) %61 = (*.f64 #s(literal -1 binary64) %45) %62 = (+.f64 y %61) %66 = (*.f64 #s(literal -1 binary64) z) %67 = (+.f64 y %66) %80 = (-.f64 #s(literal 1 binary64) x) %81 = (*.f64 y %80) %87 = (*.f64 y %10) %90 = (/.f64 %14 y) %95 = (/.f64 z y) %105 = (*.f64 #s(literal -1 binary64) %90) %128 = (/.f64 %81 z) %132 = (/.f64 y z) (approx 1 #s(literal 0 binary64)) (approx x x) (approx %5 #s(literal 1 binary64)) (approx %5 %10) (approx %13 %14) (approx %17 y) (approx %17 %21) (approx %24 (+.f64 y %27)) (approx %30 %9) (approx %34 (+.f64 y %37)) (approx %5 (*.f64 x (-.f64 %40 #s(literal 1 binary64)))) (approx %17 %20) (approx %17 (*.f64 x %46)) (approx %24 %27) (approx %24 (*.f64 x (+.f64 z %46))) (approx %34 %37) (approx %34 (*.f64 x (fma.f64 #s(literal -1 binary64) %35 %45))) (approx %5 (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 #s(literal 1 binary64) %40)))) (approx %17 (*.f64 #s(literal -1 binary64) (*.f64 x %62))) (approx %24 (*.f64 #s(literal -1 binary64) (*.f64 x %67))) (approx %24 (*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 y (fma.f64 #s(literal -1 binary64) z %61))))) (approx %34 (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 %62 z)))) (approx %17 %81) (approx %24 (fma.f64 x z %81)) (approx %32 %66) (approx %32 %35) (approx %34 (fma.f64 x z %87)) (approx %24 (*.f64 y (-.f64 (+.f64 #s(literal 1 binary64) %90) x))) (approx %32 (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) %95)))) (approx %34 %87) (approx %34 (*.f64 y (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) x %90)))) (approx %24 (*.f64 #s(literal -1 binary64) (*.f64 y (fma.f64 #s(literal -1 binary64) %80 %105)))) (approx %32 (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 %95 #s(literal 1 binary64))))) (approx %34 (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 x #s(literal 1 binary64))))) (approx %34 (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 (+.f64 x %105) #s(literal 1 binary64))))) (approx z z) (approx %32 %67) (approx %34 (+.f64 y (fma.f64 #s(literal -1 binary64) %19 %14))) (approx %24 (*.f64 z (+.f64 x %128))) (approx %32 (*.f64 z (-.f64 %132 #s(literal 1 binary64)))) (approx %34 (*.f64 z (+.f64 x (fma.f64 #s(literal -1 binary64) (/.f64 %19 z) %132)))) (approx %24 (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) x (*.f64 #s(literal -1 binary64) %128))))) (approx %32 (*.f64 #s(literal -1 binary64) (*.f64 z (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) %132))))) (approx %34 (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) x (*.f64 #s(literal -1 binary64) (/.f64 %21 z)))))) |
9 calls:
| Time | Variable | Point |
|---|---|---|
| 400.0ms | y | inf |
| 2.0ms | z | inf |
| 2.0ms | z | -inf |
| 2.0ms | y | -inf |
| 2.0ms | x | inf |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 18 | 71 |
| 0 | 28 | 71 |
| 1 | 80 | 71 |
| 2 | 196 | 67 |
| 3 | 590 | 67 |
| 4 | 2521 | 67 |
| 0 | 4079 | 67 |
| 0 | 4243 | 62 |
| 1× | iter-limit |
| 1× | iter-limit |
| 1× | node-limit |
| 1× | iter-limit |
| Inputs |
|---|
%2 = (-.f64 #s(literal 1 binary64) x) %5 = (*.f64 x z) %8 = (* (- 1 x) y) %9 = (approx %8 y) %10 = (*.f64 y %2) %11 = (fma.f64 x z %10) %15 = (neg.f64 x) %16 = (-.f64 y z) #s(literal 1 binary64) x %2 y z %5 %9 %10 %11 (approx (+ %8 (* x z)) %11) %15 %16 (fma.f64 %15 %16 y) (+.f64 %9 %5) |
| Outputs |
|---|
%3 = (-.f64 #s(literal 1 binary64) x) %4 = (*.f64 #s(literal 2 binary64) %3) %6 = (/.f64 %4 #s(literal 8 binary64)) %9 = (/.f64 %4 #s(literal 4 binary64)) %15 = (/.f64 %4 #s(literal 1/2 binary64)) %19 = (/.f64 %4 #s(literal 1 binary64)) %23 = (-.f64 #s(literal 1/2 binary64) x) %24 = (fma.f64 %23 #s(literal 2 binary64) #s(literal 1 binary64)) %27 = (neg.f64 x) %28 = (fma.f64 %27 #s(literal -2 binary64) #s(literal -2 binary64)) %31 = (fma.f64 %27 #s(literal 1 binary64) #s(literal 1 binary64)) %36 = (-.f64 (*.f64 %27 #s(literal -2 binary64)) #s(literal 2 binary64)) %40 = (fma.f64 %4 #s(literal 2 binary64) #s(literal 0 binary64)) %43 = (fma.f64 #s(literal 2 binary64) x #s(literal -2 binary64)) %44 = (neg.f64 %43) %47 = (neg.f64 %4) %52 = (+.f64 x x) %64 = (-.f64 x #s(literal 1 binary64)) %91 = (-.f64 #s(literal 0 binary64) %27) %93 = (+.f64 #s(literal 0 binary64) x) %95 = (-.f64 x #s(literal 0 binary64)) %109 = (neg.f64 z) %112 = (*.f64 z x) %118 = (*.f64 %109 x) %123 = (approx (* y (- 1 x)) y) %128 = (neg.f64 %123) %130 = (*.f64 %64 #s(literal 1/2 binary64)) %131 = (+.f64 y y) %132 = (neg.f64 %131) %134 = (*.f64 %64 #s(literal 1 binary64)) %135 = (neg.f64 y) %137 = (*.f64 %3 #s(literal 1/2 binary64)) %139 = (*.f64 %3 #s(literal 1 binary64)) %141 = (*.f64 %64 %132) %143 = (*.f64 %3 %131) %145 = (/.f64 y #s(literal -2 binary64)) %146 = (*.f64 %64 %145) %148 = (*.f64 #s(literal 1/2 binary64) y) %149 = (*.f64 %3 %148) %151 = (*.f64 %64 #s(literal 2 binary64)) %153 = (*.f64 #s(literal 1/2 binary64) %3) %155 = (*.f64 #s(literal 1/2 binary64) %64) %160 = (*.f64 %132 %64) %162 = (*.f64 %131 %3) %164 = (*.f64 %145 %64) %166 = (*.f64 %148 %3) %170 = (*.f64 y %3) %177 = (*.f64 %135 %43) %180 = (*.f64 y %4) %185 = (*.f64 %43 %135) %192 = (*.f64 %4 y) %195 = (*.f64 %135 x) %196 = (fma.f64 %195 #s(literal 2 binary64) %131) %199 = (*.f64 %43 %132) %202 = (*.f64 %132 %43) %205 = (*.f64 %131 %4) %208 = (*.f64 %4 %131) %226 = (*.f64 %64 y) %228 = (*.f64 %64 #s(literal 0 binary64)) %230 = (*.f64 %3 #s(literal 0 binary64)) %232 = (*.f64 #s(literal 0 binary64) %64) %234 = (*.f64 #s(literal 0 binary64) %3) %252 = (*.f64 %27 %131) %254 = (*.f64 x %132) %266 = (*.f64 %27 #s(literal 1/2 binary64)) %268 = (*.f64 %27 %148) %270 = (*.f64 x %145) %282 = (*.f64 x #s(literal 1/2 binary64)) %284 = (*.f64 #s(literal 1/2 binary64) %148) %285 = (fma.f64 #s(literal 1/2 binary64) y %195) %287 = (*.f64 y x) %288 = (-.f64 %148 %287) %290 = (*.f64 y %23) %292 = (*.f64 %23 y) %294 = (*.f64 %27 #s(literal 1 binary64)) %301 = (*.f64 x #s(literal 1 binary64)) %314 = (*.f64 #s(literal 1/2 binary64) %27) %325 = (*.f64 #s(literal 1/2 binary64) x) %332 = (neg.f64 %52) %354 = (*.f64 %132 x) %356 = (*.f64 %131 %27) %372 = (*.f64 %148 #s(literal 1/2 binary64)) %377 = (*.f64 %148 %27) %379 = (*.f64 %145 x) %462 = (-.f64 z y) %463 = (fma.f64 %462 x y) %464 = (*.f64 #s(literal 1 binary64) %463) %465 = (pow.f64 %463 #s(literal 1 binary64)) %466 = (*.f64 %462 x) %467 = (fma.f64 %466 #s(literal 2 binary64) %131) %469 = (/.f64 (neg.f64 %467) #s(literal -2 binary64)) %471 = (-.f64 (*.f64 %466 #s(literal 2 binary64)) %132) %473 = (/.f64 (neg.f64 %471) #s(literal -2 binary64)) %474 = (/.f64 %467 #s(literal 2 binary64)) %475 = (/.f64 %471 #s(literal 2 binary64)) %477 = (/.f64 #s(literal 1 binary64) (pow.f64 %463 #s(literal -1 binary64))) %478 = (-.f64 y z) %479 = (*.f64 %478 x) %481 = (neg.f64 (-.f64 %479 y)) %482 = (fma.f64 %130 %132 %112) %483 = (fma.f64 %134 %135 %112) %484 = (fma.f64 %137 %131 %112) %485 = (fma.f64 %139 y %112) %486 = (-.f64 y %118) %487 = (fma.f64 %252 #s(literal 1/2 binary64) %486) %488 = (fma.f64 z x y) %489 = (fma.f64 %252 #s(literal 1/2 binary64) %488) %490 = (fma.f64 %254 #s(literal 1/2 binary64) %486) %491 = (fma.f64 %254 #s(literal 1/2 binary64) %488) %492 = (fma.f64 %141 #s(literal 1/2 binary64) %112) %493 = (fma.f64 %143 #s(literal 1/2 binary64) %112) %494 = (fma.f64 %266 %131 %486) %495 = (fma.f64 %266 %131 %488) %496 = (fma.f64 %268 #s(literal 2 binary64) %486) %497 = (fma.f64 %268 #s(literal 2 binary64) %488) %498 = (fma.f64 %270 #s(literal 2 binary64) %486) %499 = (fma.f64 %270 #s(literal 2 binary64) %488) %500 = (fma.f64 %146 #s(literal 2 binary64) %112) %501 = (fma.f64 %149 #s(literal 2 binary64) %112) %502 = (fma.f64 %282 %132 %486) %503 = (fma.f64 %282 %132 %488) %504 = (fma.f64 #s(literal 1/2 binary64) y %466) %505 = (fma.f64 %284 #s(literal 2 binary64) %504) %506 = (-.f64 %148 %479) %507 = (fma.f64 %284 #s(literal 2 binary64) %506) %508 = (fma.f64 %294 y %486) %509 = (fma.f64 %294 y %488) %510 = (fma.f64 %151 %145 %112) %511 = (fma.f64 %301 %135 %486) %512 = (fma.f64 %301 %135 %488) %513 = (fma.f64 #s(literal 1/4 binary64) %131 %504) %514 = (fma.f64 #s(literal 1/4 binary64) %131 %506) %515 = (fma.f64 %131 %153 %112) %516 = (fma.f64 %131 %314 %486) %517 = (fma.f64 %131 %314 %488) %518 = (fma.f64 %131 #s(literal 1/4 binary64) %504) %519 = (fma.f64 %131 #s(literal 1/4 binary64) %506) %520 = (fma.f64 %132 %155 %112) %521 = (fma.f64 %132 %325 %486) %522 = (fma.f64 %132 %325 %488) %523 = (fma.f64 %148 %4 %112) %524 = (fma.f64 %148 %332 %486) %525 = (fma.f64 %148 %332 %488) %526 = (fma.f64 %148 #s(literal 1 binary64) %504) %527 = (fma.f64 %148 #s(literal 1 binary64) %506) %528 = (fma.f64 %145 %43 %112) %529 = (fma.f64 %145 %52 %486) %530 = (fma.f64 %145 %52 %488) %531 = (fma.f64 %4 %148 %112) %532 = (fma.f64 %332 %148 %486) %533 = (fma.f64 %332 %148 %488) %534 = (fma.f64 %52 %145 %486) %535 = (fma.f64 %52 %145 %488) %536 = (fma.f64 %195 #s(literal 1 binary64) %486) %537 = (fma.f64 %195 #s(literal 1 binary64) %488) %538 = (fma.f64 #s(literal 1/2 binary64) %354 %486) %539 = (fma.f64 #s(literal 1/2 binary64) %354 %488) %540 = (fma.f64 #s(literal 1/2 binary64) %356 %486) %541 = (fma.f64 #s(literal 1/2 binary64) %356 %488) %542 = (fma.f64 #s(literal 1/2 binary64) %160 %112) %543 = (fma.f64 #s(literal 1/2 binary64) %162 %112) %544 = (fma.f64 #s(literal 1/2 binary64) y %504) %545 = (fma.f64 #s(literal 1/2 binary64) y %506) %546 = (fma.f64 #s(literal 2 binary64) %372 %504) %547 = (fma.f64 #s(literal 2 binary64) %372 %506) %548 = (fma.f64 #s(literal 2 binary64) %377 %486) %549 = (fma.f64 #s(literal 2 binary64) %377 %488) %550 = (fma.f64 #s(literal 2 binary64) %379 %486) %551 = (fma.f64 #s(literal 2 binary64) %379 %488) %552 = (fma.f64 #s(literal 2 binary64) %164 %112) %553 = (fma.f64 #s(literal 2 binary64) %166 %112) %554 = (fma.f64 %109 %27 %170) %555 = (fma.f64 %64 %135 %112) %556 = (fma.f64 %135 %64 %112) %557 = (fma.f64 %135 x %486) %558 = (fma.f64 %135 x %488) %559 = (fma.f64 %478 %27 y) %560 = (fma.f64 %27 %109 %170) %561 = (fma.f64 %27 %478 y) %562 = (fma.f64 %27 y %486) %563 = (fma.f64 %27 y %488) %564 = (fma.f64 %170 #s(literal 1 binary64) %112) %565 = (fma.f64 z x %170) %566 = (fma.f64 y #s(literal 1/2 binary64) %504) %567 = (fma.f64 y #s(literal 1/2 binary64) %506) %568 = (fma.f64 y %27 %486) %569 = (fma.f64 y %27 %488) %570 = (fma.f64 y %3 %112) %571 = (fma.f64 %3 y %112) %572 = (fma.f64 x %462 y) %573 = (fma.f64 x %135 %486) %574 = (fma.f64 x %135 %488) %575 = (fma.f64 x z %170) %576 = (fma.f64 #s(literal 1 binary64) %488 %195) %577 = (fma.f64 #s(literal 1 binary64) %148 %504) %578 = (fma.f64 #s(literal 1 binary64) %148 %506) %579 = (fma.f64 #s(literal 1 binary64) %195 %486) %580 = (fma.f64 #s(literal 1 binary64) %195 %488) %581 = (fma.f64 #s(literal 1 binary64) %112 %170) %582 = (fma.f64 #s(literal 1 binary64) %466 y) %583 = (fma.f64 #s(literal 1 binary64) %463 #s(literal 0 binary64)) %584 = (fma.f64 #s(literal 1 binary64) %170 %112) %586 = (-.f64 (-.f64 %466 %145) %145) %587 = (-.f64 %486 %287) %588 = (-.f64 %488 %287) %590 = (-.f64 %195 (neg.f64 %488)) %592 = (-.f64 %195 (-.f64 %118 y)) %593 = (-.f64 %112 %226) %594 = (-.f64 %466 %135) %595 = (-.f64 %463 #s(literal 0 binary64)) %596 = (-.f64 %170 %118) %597 = (-.f64 y %479) %599 = (+.f64 (fma.f64 %462 x %148) %148) %600 = (+.f64 %488 %195) %601 = (+.f64 %148 %504) %602 = (+.f64 %148 %506) %603 = (+.f64 %195 %486) %604 = (+.f64 %195 %488) %605 = (+.f64 %112 %170) %606 = (+.f64 %466 y) %607 = (+.f64 %463 #s(literal 0 binary64)) %608 = (+.f64 %170 %112) %610 = (+.f64 y (+.f64 #s(literal 0 binary64) %466)) %612 = (+.f64 y (-.f64 #s(literal 0 binary64) %479)) %613 = (+.f64 y %466) %617 = (approx (- y (* (- y z) x)) %463) %640 = (fma.f64 %109 #s(literal 2 binary64) %131) %644 = (-.f64 (*.f64 %109 #s(literal 2 binary64)) %132) %652 = (fma.f64 #s(literal 1/2 binary64) y %109) %654 = (-.f64 %148 z) %687 = (fma.f64 z x %123) #s(literal 1 binary64) x (*.f64 %6 #s(literal 4 binary64)) (*.f64 %9 #s(literal 2 binary64)) (*.f64 %4 #s(literal 1/2 binary64)) (*.f64 #s(literal 1 binary64) %3) (pow.f64 %3 #s(literal 1 binary64)) (/.f64 (neg.f64 %15) #s(literal -4 binary64)) (/.f64 (neg.f64 %19) #s(literal -2 binary64)) (/.f64 (neg.f64 %24) #s(literal -2 binary64)) (/.f64 (neg.f64 %28) #s(literal 2 binary64)) (/.f64 (neg.f64 %31) #s(literal -1 binary64)) (/.f64 (neg.f64 %36) #s(literal 2 binary64)) (/.f64 (neg.f64 %40) #s(literal -4 binary64)) (/.f64 (neg.f64 %44) #s(literal -2 binary64)) (/.f64 (neg.f64 %47) #s(literal 2 binary64)) (/.f64 %15 #s(literal 4 binary64)) (/.f64 %19 #s(literal 2 binary64)) (/.f64 (-.f64 #s(literal 2 binary64) %52) #s(literal 2 binary64)) (/.f64 %24 #s(literal 2 binary64)) (/.f64 %28 #s(literal -2 binary64)) (/.f64 %31 #s(literal 1 binary64)) (/.f64 %36 #s(literal -2 binary64)) (/.f64 %40 #s(literal 4 binary64)) (/.f64 %44 #s(literal 2 binary64)) (/.f64 %47 #s(literal -2 binary64)) (/.f64 %4 #s(literal 2 binary64)) (/.f64 %43 #s(literal -2 binary64)) (/.f64 %64 #s(literal -1 binary64)) (/.f64 %3 #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) %4)) (/.f64 #s(literal 1 binary64) (pow.f64 %3 #s(literal -1 binary64))) (neg.f64 %64) (fma.f64 %6 #s(literal 4 binary64) #s(literal 0 binary64)) (fma.f64 %9 #s(literal 2 binary64) #s(literal 0 binary64)) (fma.f64 %4 #s(literal 1/2 binary64) #s(literal 0 binary64)) (fma.f64 #s(literal 1 binary64) %23 #s(literal 1/2 binary64)) (fma.f64 #s(literal 1 binary64) %27 #s(literal 1 binary64)) (fma.f64 #s(literal 1 binary64) %3 #s(literal 0 binary64)) (-.f64 (+.f64 %3 #s(literal 1 binary64)) #s(literal 1 binary64)) (-.f64 %23 #s(literal -1/2 binary64)) (-.f64 #s(literal 1/2 binary64) (-.f64 #s(literal -1/2 binary64) %27)) (-.f64 #s(literal 1/2 binary64) (+.f64 #s(literal -1/2 binary64) x)) (-.f64 #s(literal 1/2 binary64) (-.f64 x #s(literal 1/2 binary64))) (-.f64 #s(literal 0 binary64) %64) (-.f64 %27 #s(literal -1 binary64)) (-.f64 %3 #s(literal 0 binary64)) (-.f64 #s(literal 1 binary64) %91) (-.f64 #s(literal 1 binary64) %93) (-.f64 #s(literal 1 binary64) %95) %3 (+.f64 (/.f64 %52 #s(literal -2 binary64)) #s(literal 1 binary64)) (+.f64 %23 #s(literal 1/2 binary64)) (+.f64 #s(literal 1/2 binary64) (+.f64 #s(literal 0 binary64) %23)) (+.f64 #s(literal 1/2 binary64) %23) (+.f64 #s(literal 0 binary64) %3) (+.f64 %27 #s(literal 1 binary64)) (+.f64 %3 #s(literal 0 binary64)) (+.f64 #s(literal 1 binary64) %27) y z (*.f64 %109 %27) (*.f64 %27 %109) %112 (*.f64 x z) (*.f64 #s(literal 1 binary64) %112) (pow.f64 %112 #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (pow.f64 %112 #s(literal -1 binary64))) (neg.f64 %118) (*.f64 #s(literal 1 binary64) %123) (pow.f64 %123 #s(literal 1 binary64)) %123 (/.f64 #s(literal 1 binary64) (pow.f64 %123 #s(literal -1 binary64))) (neg.f64 %128) (*.f64 %130 %132) (*.f64 %134 %135) (*.f64 %137 %131) (*.f64 %139 y) (*.f64 %141 #s(literal 1/2 binary64)) (*.f64 %143 #s(literal 1/2 binary64)) (*.f64 %146 #s(literal 2 binary64)) (*.f64 %149 #s(literal 2 binary64)) (*.f64 %151 %145) (*.f64 %131 %153) (*.f64 %132 %155) (*.f64 %148 %4) (*.f64 %145 %43) (*.f64 %4 %148) (*.f64 #s(literal 1/2 binary64) %160) (*.f64 #s(literal 1/2 binary64) %162) (*.f64 #s(literal 2 binary64) %164) (*.f64 #s(literal 2 binary64) %166) (*.f64 %64 %135) (*.f64 %135 %64) (*.f64 %170 #s(literal 1 binary64)) %170 (*.f64 %3 y) (*.f64 #s(literal 1 binary64) %170) (pow.f64 %170 #s(literal 1 binary64)) (/.f64 (neg.f64 %141) #s(literal -2 binary64)) (/.f64 (neg.f64 %177) #s(literal -2 binary64)) (/.f64 (neg.f64 %180) #s(literal -2 binary64)) (/.f64 (neg.f64 %143) #s(literal -2 binary64)) (/.f64 (neg.f64 %185) #s(literal -2 binary64)) (/.f64 (neg.f64 %160) #s(literal -2 binary64)) (/.f64 (neg.f64 %162) #s(literal -2 binary64)) (/.f64 (neg.f64 %192) #s(literal -2 binary64)) (/.f64 (neg.f64 %196) #s(literal -2 binary64)) (/.f64 (neg.f64 %199) #s(literal -4 binary64)) (/.f64 (neg.f64 %202) #s(literal -4 binary64)) (/.f64 (neg.f64 %205) #s(literal -4 binary64)) (/.f64 (neg.f64 %208) #s(literal -4 binary64)) (/.f64 %141 #s(literal 2 binary64)) (/.f64 %177 #s(literal 2 binary64)) (/.f64 %180 #s(literal 2 binary64)) (/.f64 %143 #s(literal 2 binary64)) (/.f64 %185 #s(literal 2 binary64)) (/.f64 %160 #s(literal 2 binary64)) (/.f64 %162 #s(literal 2 binary64)) (/.f64 %192 #s(literal 2 binary64)) (/.f64 %196 #s(literal 2 binary64)) (/.f64 %199 #s(literal 4 binary64)) (/.f64 %202 #s(literal 4 binary64)) (/.f64 %205 #s(literal 4 binary64)) (/.f64 %208 #s(literal 4 binary64)) (/.f64 #s(literal 1 binary64) (pow.f64 %170 #s(literal -1 binary64))) (neg.f64 %226) (fma.f64 %130 %132 %228) (fma.f64 %130 %132 %230) (fma.f64 %130 %132 %232) (fma.f64 %130 %132 %234) (fma.f64 %130 %132 #s(literal 0 binary64)) (fma.f64 %134 %135 %228) (fma.f64 %134 %135 %230) (fma.f64 %134 %135 %232) (fma.f64 %134 %135 %234) (fma.f64 %134 %135 #s(literal 0 binary64)) (fma.f64 %137 %131 %228) (fma.f64 %137 %131 %230) (fma.f64 %137 %131 %232) (fma.f64 %137 %131 %234) (fma.f64 %137 %131 #s(literal 0 binary64)) (fma.f64 %139 y %228) (fma.f64 %139 y %230) (fma.f64 %139 y %232) (fma.f64 %139 y %234) (fma.f64 %139 y #s(literal 0 binary64)) (fma.f64 %252 #s(literal 1/2 binary64) y) (fma.f64 %254 #s(literal 1/2 binary64) y) (fma.f64 %141 #s(literal 1/2 binary64) %228) (fma.f64 %141 #s(literal 1/2 binary64) %230) (fma.f64 %141 #s(literal 1/2 binary64) %232) (fma.f64 %141 #s(literal 1/2 binary64) %234) (fma.f64 %141 #s(literal 1/2 binary64) #s(literal 0 binary64)) (fma.f64 %143 #s(literal 1/2 binary64) %228) (fma.f64 %143 #s(literal 1/2 binary64) %230) (fma.f64 %143 #s(literal 1/2 binary64) %232) (fma.f64 %143 #s(literal 1/2 binary64) %234) (fma.f64 %143 #s(literal 1/2 binary64) #s(literal 0 binary64)) (fma.f64 %266 %131 y) (fma.f64 %268 #s(literal 2 binary64) y) (fma.f64 %270 #s(literal 2 binary64) y) (fma.f64 %146 #s(literal 2 binary64) %228) (fma.f64 %146 #s(literal 2 binary64) %230) (fma.f64 %146 #s(literal 2 binary64) %232) (fma.f64 %146 #s(literal 2 binary64) %234) (fma.f64 %146 #s(literal 2 binary64) #s(literal 0 binary64)) (fma.f64 %149 #s(literal 2 binary64) %228) (fma.f64 %149 #s(literal 2 binary64) %230) (fma.f64 %149 #s(literal 2 binary64) %232) (fma.f64 %149 #s(literal 2 binary64) %234) (fma.f64 %149 #s(literal 2 binary64) #s(literal 0 binary64)) (fma.f64 %282 %132 y) (fma.f64 %284 #s(literal 2 binary64) %285) (fma.f64 %284 #s(literal 2 binary64) %288) (fma.f64 %284 #s(literal 2 binary64) %290) (fma.f64 %284 #s(literal 2 binary64) %292) (fma.f64 %294 y y) (fma.f64 %151 %145 %228) (fma.f64 %151 %145 %230) (fma.f64 %151 %145 %232) (fma.f64 %151 %145 %234) (fma.f64 %151 %145 #s(literal 0 binary64)) (fma.f64 %301 %135 y) (fma.f64 #s(literal 1/4 binary64) %131 %285) (fma.f64 #s(literal 1/4 binary64) %131 %288) (fma.f64 #s(literal 1/4 binary64) %131 %290) (fma.f64 #s(literal 1/4 binary64) %131 %292) (fma.f64 %23 y %148) (fma.f64 %131 %153 %228) (fma.f64 %131 %153 %230) (fma.f64 %131 %153 %232) (fma.f64 %131 %153 %234) (fma.f64 %131 %153 #s(literal 0 binary64)) (fma.f64 %131 %314 y) (fma.f64 %131 #s(literal 1/4 binary64) %285) (fma.f64 %131 #s(literal 1/4 binary64) %288) (fma.f64 %131 #s(literal 1/4 binary64) %290) (fma.f64 %131 #s(literal 1/4 binary64) %292) (fma.f64 %132 %155 %228) (fma.f64 %132 %155 %230) (fma.f64 %132 %155 %232) (fma.f64 %132 %155 %234) (fma.f64 %132 %155 #s(literal 0 binary64)) (fma.f64 %132 %325 y) (fma.f64 %148 %4 %228) (fma.f64 %148 %4 %230) (fma.f64 %148 %4 %232) (fma.f64 %148 %4 %234) (fma.f64 %148 %4 #s(literal 0 binary64)) (fma.f64 %148 %332 y) (fma.f64 %148 %3 %166) (fma.f64 %148 #s(literal 1 binary64) %285) (fma.f64 %148 #s(literal 1 binary64) %288) (fma.f64 %148 #s(literal 1 binary64) %290) (fma.f64 %148 #s(literal 1 binary64) %292) (fma.f64 %145 %43 %228) (fma.f64 %145 %43 %230) (fma.f64 %145 %43 %232) (fma.f64 %145 %43 %234) (fma.f64 %145 %43 #s(literal 0 binary64)) (fma.f64 %145 %52 y) (fma.f64 %145 %64 %164) (fma.f64 %4 %148 %228) (fma.f64 %4 %148 %230) (fma.f64 %4 %148 %232) (fma.f64 %4 %148 %234) (fma.f64 %4 %148 #s(literal 0 binary64)) (fma.f64 %332 %148 y) (fma.f64 %52 %145 y) (fma.f64 %195 #s(literal 1 binary64) y) (fma.f64 #s(literal 1/2 binary64) %354 y) (fma.f64 #s(literal 1/2 binary64) %356 y) (fma.f64 #s(literal 1/2 binary64) %160 %228) (fma.f64 #s(literal 1/2 binary64) %160 %230) (fma.f64 #s(literal 1/2 binary64) %160 %232) (fma.f64 #s(literal 1/2 binary64) %160 %234) (fma.f64 #s(literal 1/2 binary64) %160 #s(literal 0 binary64)) (fma.f64 #s(literal 1/2 binary64) %162 %228) (fma.f64 #s(literal 1/2 binary64) %162 %230) (fma.f64 #s(literal 1/2 binary64) %162 %232) (fma.f64 #s(literal 1/2 binary64) %162 %234) (fma.f64 #s(literal 1/2 binary64) %162 #s(literal 0 binary64)) (fma.f64 #s(literal 1/2 binary64) y %285) (fma.f64 #s(literal 1/2 binary64) y %288) (fma.f64 #s(literal 1/2 binary64) y %290) (fma.f64 #s(literal 1/2 binary64) y %292) (fma.f64 #s(literal 2 binary64) %372 %285) (fma.f64 #s(literal 2 binary64) %372 %288) (fma.f64 #s(literal 2 binary64) %372 %290) (fma.f64 #s(literal 2 binary64) %372 %292) (fma.f64 #s(literal 2 binary64) %377 y) (fma.f64 #s(literal 2 binary64) %379 y) (fma.f64 #s(literal 2 binary64) %164 %228) (fma.f64 #s(literal 2 binary64) %164 %230) (fma.f64 #s(literal 2 binary64) %164 %232) (fma.f64 #s(literal 2 binary64) %164 %234) (fma.f64 #s(literal 2 binary64) %164 #s(literal 0 binary64)) (fma.f64 #s(literal 2 binary64) %166 %228) (fma.f64 #s(literal 2 binary64) %166 %230) (fma.f64 #s(literal 2 binary64) %166 %232) (fma.f64 #s(literal 2 binary64) %166 %234) (fma.f64 #s(literal 2 binary64) %166 #s(literal 0 binary64)) (fma.f64 %64 %145 %146) (fma.f64 %64 %135 %228) (fma.f64 %64 %135 %230) (fma.f64 %64 %135 %232) (fma.f64 %64 %135 %234) (fma.f64 %64 %135 #s(literal 0 binary64)) (fma.f64 %135 %64 %228) (fma.f64 %135 %64 %230) (fma.f64 %135 %64 %232) (fma.f64 %135 %64 %234) (fma.f64 %135 %64 #s(literal 0 binary64)) (fma.f64 %135 x y) (fma.f64 %27 y y) (fma.f64 %170 #s(literal 1 binary64) %228) (fma.f64 %170 #s(literal 1 binary64) %230) (fma.f64 %170 #s(literal 1 binary64) %232) (fma.f64 %170 #s(literal 1 binary64) %234) (fma.f64 %170 #s(literal 1 binary64) #s(literal 0 binary64)) (fma.f64 y %23 %148) (fma.f64 y #s(literal 1/2 binary64) %285) (fma.f64 y #s(literal 1/2 binary64) %288) (fma.f64 y #s(literal 1/2 binary64) %290) (fma.f64 y #s(literal 1/2 binary64) %292) (fma.f64 y %27 y) (fma.f64 y %3 %228) (fma.f64 y %3 %230) (fma.f64 y %3 %232) (fma.f64 y %3 %234) (fma.f64 y %3 #s(literal 0 binary64)) (fma.f64 %3 %148 %149) (fma.f64 %3 y %228) (fma.f64 %3 y %230) (fma.f64 %3 y %232) (fma.f64 %3 y %234) (fma.f64 %3 y #s(literal 0 binary64)) (fma.f64 x %135 y) (fma.f64 #s(literal 1 binary64) %148 %285) (fma.f64 #s(literal 1 binary64) %148 %288) (fma.f64 #s(literal 1 binary64) %148 %290) (fma.f64 #s(literal 1 binary64) %148 %292) (fma.f64 #s(literal 1 binary64) %195 y) (fma.f64 #s(literal 1 binary64) %170 %228) (fma.f64 #s(literal 1 binary64) %170 %230) (fma.f64 #s(literal 1 binary64) %170 %232) (fma.f64 #s(literal 1 binary64) %170 %234) (fma.f64 #s(literal 1 binary64) %170 #s(literal 0 binary64)) (-.f64 %195 %135) (-.f64 y %287) (+.f64 (fma.f64 %135 x %148) %148) (+.f64 %146 %146) (+.f64 %290 %148) (+.f64 %149 %149) (+.f64 %164 %164) (+.f64 %292 %148) (+.f64 %166 %166) (+.f64 %148 %285) (+.f64 %148 %288) (+.f64 %148 %290) (+.f64 %148 %292) (+.f64 %195 y) (+.f64 %170 %228) (+.f64 %170 %230) (+.f64 %170 %232) (+.f64 %170 %234) (+.f64 %170 #s(literal 0 binary64)) (+.f64 y (+.f64 #s(literal 0 binary64) %195)) (+.f64 y (-.f64 #s(literal 0 binary64) %287)) (+.f64 y %195) %464 %465 %469 %473 %474 %475 %477 %481 %482 %483 %484 %485 %487 %489 %490 %491 %492 %493 %494 %495 %496 %497 %498 %499 %500 %501 %502 %503 %505 %507 %508 %509 %510 %511 %512 %513 %514 %515 %516 %517 %518 %519 %520 %521 %522 %523 %524 %525 %526 %527 %528 %529 %530 %531 %532 %533 %534 %535 %536 %537 %538 %539 %540 %541 %542 %543 %544 %545 %546 %547 %548 %549 %550 %551 %552 %553 %554 %463 %555 %556 %557 %558 %559 %560 %561 %562 %563 %564 %565 %566 %567 %568 %569 %570 %571 %572 %573 %574 %575 %576 %577 %578 %579 %580 %581 %582 %583 %584 %586 %587 %588 %590 %592 %593 %594 %595 %596 %597 %599 %600 %601 %602 %603 %604 %605 %606 %607 %608 %610 %612 %613 (*.f64 #s(literal 1 binary64) %617) (pow.f64 %617 #s(literal 1 binary64)) %617 (/.f64 #s(literal 1 binary64) (pow.f64 %617 #s(literal -1 binary64))) (*.f64 #s(literal 1 binary64) %27) (pow.f64 %27 #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (pow.f64 %27 #s(literal -1 binary64))) (neg.f64 %93) (neg.f64 %95) %27 (fma.f64 #s(literal 1 binary64) %27 #s(literal 0 binary64)) (-.f64 #s(literal 0 binary64) %91) (-.f64 #s(literal 0 binary64) %93) (-.f64 #s(literal 0 binary64) x) (-.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) %27)) (-.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) x)) (+.f64 #s(literal 0 binary64) %27) (+.f64 %27 #s(literal 0 binary64)) (*.f64 #s(literal 1 binary64) %478) (pow.f64 %478 #s(literal 1 binary64)) (/.f64 (neg.f64 %640) #s(literal -2 binary64)) (/.f64 (neg.f64 %644) #s(literal -2 binary64)) (/.f64 %640 #s(literal 2 binary64)) (/.f64 %644 #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (pow.f64 %478 #s(literal -1 binary64))) (neg.f64 %462) (fma.f64 %284 #s(literal 2 binary64) %652) (fma.f64 %284 #s(literal 2 binary64) %654) (fma.f64 #s(literal 1/4 binary64) %131 %652) (fma.f64 #s(literal 1/4 binary64) %131 %654) (fma.f64 %131 #s(literal 1/4 binary64) %652) (fma.f64 %131 #s(literal 1/4 binary64) %654) (fma.f64 %148 #s(literal 1 binary64) %652) (fma.f64 %148 #s(literal 1 binary64) %654) (fma.f64 #s(literal 1/2 binary64) y %652) (fma.f64 #s(literal 1/2 binary64) y %654) (fma.f64 #s(literal 2 binary64) %372 %652) (fma.f64 #s(literal 2 binary64) %372 %654) (fma.f64 y #s(literal 1/2 binary64) %652) (fma.f64 y #s(literal 1/2 binary64) %654) (fma.f64 #s(literal 1 binary64) %148 %652) (fma.f64 #s(literal 1 binary64) %148 %654) (fma.f64 #s(literal 1 binary64) %109 y) (fma.f64 #s(literal 1 binary64) %478 #s(literal 0 binary64)) (-.f64 (-.f64 %109 %145) %145) (-.f64 %109 %135) (-.f64 %478 #s(literal 0 binary64)) %478 (+.f64 (+.f64 %109 %148) %148) (+.f64 %148 %652) (+.f64 %148 %654) (+.f64 %109 y) (+.f64 %478 #s(literal 0 binary64)) (+.f64 y (+.f64 #s(literal 0 binary64) %109)) (+.f64 y (-.f64 #s(literal 0 binary64) z)) (+.f64 y %109) %464 %465 %469 %473 %474 %475 %477 %481 %482 %483 %484 %485 %487 %489 %490 %491 %492 %493 %494 %495 %496 %497 %498 %499 %500 %501 %502 %503 %505 %507 %508 %509 %510 %511 %512 %513 %514 %515 %516 %517 %518 %519 %520 %521 %522 %523 %524 %525 %526 %527 %528 %529 %530 %531 %532 %533 %534 %535 %536 %537 %538 %539 %540 %541 %542 %543 %544 %545 %546 %547 %548 %549 %550 %551 %552 %553 %554 %463 %555 %556 %557 %558 %559 %560 %561 %562 %563 %564 %565 %566 %567 %568 %569 %570 %571 %572 %573 %574 %575 %576 %577 %578 %579 %580 %581 %582 %583 %584 %586 %587 %588 %590 %592 %593 %594 %595 %596 %597 %599 %600 %601 %602 %603 %604 %605 %606 %607 %608 %610 %612 %613 (*.f64 #s(literal 1 binary64) %687) (pow.f64 %687 #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (pow.f64 %687 #s(literal -1 binary64))) (neg.f64 (neg.f64 %687)) (fma.f64 %109 %27 %123) (fma.f64 %27 %109 %123) %687 (fma.f64 x z %123) (fma.f64 #s(literal 1 binary64) %112 %123) (fma.f64 #s(literal 1 binary64) %123 %112) (-.f64 %112 %128) (-.f64 %123 %118) (+.f64 %112 %123) (+.f64 %123 %112) |
Compiled 707 to 786 computations (-11.2% saved)
Compiled 67 to 159 computations (-137.3% saved)
3 alts after pruning (2 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 65 | 2 | 67 |
| Fresh | 0 | 0 | 0 |
| Picked | 2 | 1 | 3 |
| Done | 0 | 0 | 0 |
| Total | 67 | 3 | 70 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 100.0% | (fma.f64 x (-.f64 z y) y) |
| ▶ | 71.4% | (fma.f64 x z (approx (* y (- 1 x)) y)) |
| ✓ | 98.8% | (approx (+ (* (- 1 x) y) (* x z)) (fma.f64 x z (*.f64 y (-.f64 #s(literal 1 binary64) x)))) |
Compiled 3 to 10 computations (-233.3% saved)
| Inputs |
|---|
| Outputs |
|---|
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 140 | 582 |
| 1× | iter-limit |
| Inputs |
|---|
%6 = (approx (* y (- 1 x)) y) %7 = (-.f64 z y) x y z %6 %7 (fma.f64 x %7 y) (fma.f64 x z %6) |
| Outputs |
|---|
%7 = (* y (- 1 x)) %10 = (*.f64 x y) %11 = (*.f64 #s(literal -1 binary64) %10) %12 = (+.f64 y %11) %15 = (- z y) %17 = (+ (* x %15) y) %18 = (-.f64 z y) %19 = (*.f64 x %18) %23 = (+ (* x z) %7) %24 = (*.f64 #s(literal -1 binary64) y) %25 = (+.f64 z %24) %26 = (*.f64 x %25) %30 = (/.f64 y x) %31 = (fma.f64 #s(literal -1 binary64) y %30) %43 = (*.f64 #s(literal -1 binary64) %30) %63 = (-.f64 #s(literal 1 binary64) x) %64 = (*.f64 y %63) %68 = (*.f64 x z) %72 = (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) x))) %78 = (/.f64 z y) %83 = (/.f64 %68 y) %101 = (*.f64 #s(literal -1 binary64) %83) %115 = (/.f64 y z) %125 = (/.f64 %64 z) (approx x #s(literal 0 binary64)) (approx x x) (approx %7 y) (approx %7 %12) (approx %17 (+.f64 y %19)) (approx %23 (+.f64 y %26)) (approx %7 %11) (approx %7 (*.f64 x %31)) (approx %17 %19) (approx %17 (*.f64 x (-.f64 (+.f64 z %30) y))) (approx %23 %26) (approx %23 (*.f64 x (+.f64 z %31))) (approx %7 (*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 y %43)))) (approx %17 (*.f64 #s(literal -1 binary64) (*.f64 x (fma.f64 #s(literal -1 binary64) %18 %43)))) (approx %23 (*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 y (*.f64 #s(literal -1 binary64) z))))) (approx %23 (*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 y (fma.f64 #s(literal -1 binary64) z %43))))) (approx %7 %64) (approx %15 z) (approx %15 %25) (approx %17 %68) (approx %17 (fma.f64 x z %72)) (approx %23 (fma.f64 x z %64)) (approx %15 %24) (approx %15 (*.f64 y (-.f64 %78 #s(literal 1 binary64)))) (approx %17 %72) (approx %17 (*.f64 y (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) x %83)))) (approx %23 (*.f64 y (-.f64 (+.f64 #s(literal 1 binary64) %83) x))) (approx %15 (*.f64 #s(literal -1 binary64) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) %78))))) (approx %17 (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 x #s(literal 1 binary64))))) (approx %17 (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 (+.f64 x %101) #s(literal 1 binary64))))) (approx %23 (*.f64 #s(literal -1 binary64) (*.f64 y (fma.f64 #s(literal -1 binary64) %63 %101)))) (approx %15 %18) (approx %17 (+.f64 y (fma.f64 #s(literal -1 binary64) %10 %68))) (approx %15 (*.f64 z (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) %115)))) (approx %17 (*.f64 z (+.f64 x (fma.f64 #s(literal -1 binary64) (/.f64 %10 z) %115)))) (approx %23 (*.f64 z (+.f64 x %125))) (approx %15 (*.f64 #s(literal -1 binary64) (*.f64 z (-.f64 %115 #s(literal 1 binary64))))) (approx %17 (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) x (*.f64 #s(literal -1 binary64) (/.f64 %12 z)))))) (approx %23 (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) x (*.f64 #s(literal -1 binary64) %125))))) |
9 calls:
| Time | Variable | Point |
|---|---|---|
| 14.0ms | x | inf |
| 3.0ms | y | inf |
| 2.0ms | x | -inf |
| 2.0ms | z | inf |
| 1.0ms | z | -inf |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 29 |
| 0 | 15 | 29 |
| 1 | 49 | 29 |
| 2 | 118 | 29 |
| 3 | 369 | 29 |
| 4 | 1856 | 29 |
| 0 | 4019 | 29 |
| 0 | 4177 | 29 |
| 1× | iter-limit |
| 1× | iter-limit |
| 1× | node-limit |
| 1× | iter-limit |
| Inputs |
|---|
%6 = (approx (* y (- 1 x)) y) %7 = (-.f64 z y) x y z %6 %7 (fma.f64 x %7 y) (fma.f64 x z %6) |
| Outputs |
|---|
%7 = (approx (* (- 1 x) y) y) %13 = (neg.f64 %7) %15 = (-.f64 z y) %20 = (+.f64 y y) %21 = (-.f64 (*.f64 z #s(literal 2 binary64)) %20) %31 = (-.f64 y z) %36 = (*.f64 #s(literal 1/2 binary64) y) %44 = (neg.f64 %36) %46 = (neg.f64 %20) %63 = (neg.f64 y) %69 = (neg.f64 z) %74 = (fma.f64 %15 x y) %77 = (*.f64 %15 x) %78 = (fma.f64 %77 #s(literal 2 binary64) %20) %86 = (*.f64 %31 x) %89 = (-.f64 #s(literal 1 binary64) x) %91 = (*.f64 z x) %97 = (neg.f64 x) %98 = (*.f64 %97 %20) %99 = (-.f64 %91 %63) %101 = (fma.f64 z x y) %105 = (*.f64 %97 %36) %108 = (*.f64 %97 #s(literal 1/2 binary64)) %111 = (*.f64 #s(literal 1/2 binary64) %36) %112 = (fma.f64 #s(literal 1/2 binary64) y %77) %114 = (-.f64 %36 %86) %116 = (*.f64 %97 #s(literal 1 binary64)) %124 = (*.f64 #s(literal 1/2 binary64) %97) %129 = (*.f64 #s(literal 2 binary64) %89) %132 = (neg.f64 (+.f64 x x)) %140 = (*.f64 %97 y) %143 = (*.f64 %89 y) %147 = (*.f64 %20 %97) %154 = (*.f64 %36 %97) %157 = (*.f64 %36 #s(literal 1/2 binary64)) %165 = (-.f64 x #s(literal 1 binary64)) %198 = (*.f64 %97 z) %217 = (fma.f64 z x %7) x y z (*.f64 #s(literal 1 binary64) %7) (pow.f64 %7 #s(literal 1 binary64)) %7 (/.f64 #s(literal 1 binary64) (pow.f64 %7 #s(literal -1 binary64))) (neg.f64 %13) (*.f64 #s(literal 1 binary64) %15) (pow.f64 %15 #s(literal 1 binary64)) (/.f64 (-.f64 %21 #s(literal 0 binary64)) #s(literal 2 binary64)) (/.f64 (neg.f64 %21) #s(literal -2 binary64)) (/.f64 %21 #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (pow.f64 %15 #s(literal -1 binary64))) (neg.f64 %31) (fma.f64 (*.f64 #s(literal -1 binary64) %20) #s(literal 1/2 binary64) z) (fma.f64 (*.f64 #s(literal -1 binary64) %36) #s(literal 2 binary64) z) (fma.f64 (*.f64 y #s(literal -1/2 binary64)) #s(literal 2 binary64) z) (fma.f64 (*.f64 y #s(literal -2 binary64)) #s(literal 1/2 binary64) z) (fma.f64 %44 #s(literal 2 binary64) z) (fma.f64 %46 #s(literal 1/2 binary64) z) (fma.f64 %20 #s(literal -1/2 binary64) z) (fma.f64 %36 #s(literal -2 binary64) z) (fma.f64 #s(literal -1/2 binary64) %20 z) (fma.f64 #s(literal -2 binary64) %36 z) (fma.f64 #s(literal -1 binary64) y z) (fma.f64 #s(literal 1/2 binary64) (*.f64 %20 #s(literal -1 binary64)) z) (fma.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -2 binary64) y) z) (fma.f64 #s(literal 1/2 binary64) %46 z) (fma.f64 #s(literal 2 binary64) (*.f64 %36 #s(literal -1 binary64)) z) (fma.f64 #s(literal 2 binary64) (*.f64 #s(literal -1/2 binary64) y) z) (fma.f64 #s(literal 2 binary64) %44 z) (fma.f64 %63 #s(literal 1 binary64) z) (fma.f64 #s(literal 1 binary64) %63 z) (fma.f64 y #s(literal -1 binary64) z) (-.f64 (-.f64 z %36) %36) (-.f64 %63 %69) (-.f64 %15 #s(literal 0 binary64)) %15 (+.f64 %63 z) (+.f64 z %63) (*.f64 #s(literal 1 binary64) %74) (pow.f64 %74 #s(literal 1 binary64)) (/.f64 (+.f64 %78 #s(literal 0 binary64)) #s(literal 2 binary64)) (/.f64 (neg.f64 %78) #s(literal -2 binary64)) (/.f64 %78 #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (pow.f64 %74 #s(literal -1 binary64))) (neg.f64 (-.f64 %86 y)) (fma.f64 (*.f64 %89 #s(literal 1/2 binary64)) %20 %91) (fma.f64 (*.f64 %89 #s(literal 1 binary64)) y %91) (fma.f64 (*.f64 %89 %20) #s(literal 1/2 binary64) %91) (fma.f64 %98 #s(literal 1/2 binary64) %99) (fma.f64 %98 #s(literal 1/2 binary64) %101) (fma.f64 (*.f64 %89 %36) #s(literal 2 binary64) %91) (fma.f64 %105 #s(literal 2 binary64) %99) (fma.f64 %105 #s(literal 2 binary64) %101) (fma.f64 %108 %20 %99) (fma.f64 %108 %20 %101) (fma.f64 %111 #s(literal 2 binary64) %112) (fma.f64 %111 #s(literal 2 binary64) %114) (fma.f64 %116 y %99) (fma.f64 %116 y %101) (fma.f64 #s(literal 1/4 binary64) %20 %112) (fma.f64 #s(literal 1/4 binary64) %20 %114) (fma.f64 %20 (*.f64 #s(literal 1/2 binary64) %89) %91) (fma.f64 %20 %124 %99) (fma.f64 %20 %124 %101) (fma.f64 %20 #s(literal 1/4 binary64) %112) (fma.f64 %20 #s(literal 1/4 binary64) %114) (fma.f64 %36 %129 %91) (fma.f64 %36 %132 %99) (fma.f64 %36 %132 %101) (fma.f64 %36 #s(literal 1 binary64) %112) (fma.f64 %36 #s(literal 1 binary64) %114) (fma.f64 %129 %36 %91) (fma.f64 %132 %36 %99) (fma.f64 %132 %36 %101) (fma.f64 %140 #s(literal 1 binary64) %99) (fma.f64 %140 #s(literal 1 binary64) %101) (fma.f64 %69 %97 %143) (fma.f64 #s(literal 1/2 binary64) (*.f64 %20 %89) %91) (fma.f64 #s(literal 1/2 binary64) %147 %99) (fma.f64 #s(literal 1/2 binary64) %147 %101) (fma.f64 #s(literal 1/2 binary64) y %112) (fma.f64 #s(literal 1/2 binary64) y %114) (fma.f64 #s(literal 2 binary64) (*.f64 %36 %89) %91) (fma.f64 #s(literal 2 binary64) %154 %99) (fma.f64 #s(literal 2 binary64) %154 %101) (fma.f64 #s(literal 2 binary64) %157 %112) (fma.f64 #s(literal 2 binary64) %157 %114) (fma.f64 %97 %69 %143) (fma.f64 %97 %31 y) (fma.f64 %97 y %99) (fma.f64 %97 y %101) (fma.f64 %31 %97 y) (fma.f64 %165 %63 %91) (fma.f64 %63 %165 %91) (fma.f64 %63 x %99) (fma.f64 %63 x %101) %74 (fma.f64 %143 #s(literal 1 binary64) %91) (fma.f64 %89 y %91) (fma.f64 #s(literal 1 binary64) %101 %140) (fma.f64 #s(literal 1 binary64) %36 %112) (fma.f64 #s(literal 1 binary64) %36 %114) (fma.f64 #s(literal 1 binary64) %140 %99) (fma.f64 #s(literal 1 binary64) %140 %101) (fma.f64 #s(literal 1 binary64) %91 %143) (fma.f64 #s(literal 1 binary64) %77 y) (fma.f64 #s(literal 1 binary64) %74 #s(literal 0 binary64)) (fma.f64 #s(literal 1 binary64) %143 %91) (fma.f64 z x %143) (fma.f64 y #s(literal 1/2 binary64) %112) (fma.f64 y #s(literal 1/2 binary64) %114) (fma.f64 y %97 %99) (fma.f64 y %97 %101) (fma.f64 y %89 %91) (fma.f64 x %63 %99) (fma.f64 x %63 %101) (fma.f64 x %15 y) (fma.f64 x z %143) (-.f64 %101 (*.f64 y x)) (-.f64 %140 (-.f64 %63 %91)) (-.f64 %91 (*.f64 %165 y)) (-.f64 %77 %63) (-.f64 %143 %198) (-.f64 y %86) (+.f64 (fma.f64 %15 x %36) %36) (+.f64 %101 %140) (+.f64 %36 %112) (+.f64 %36 %114) (+.f64 %140 %99) (+.f64 %140 %101) (+.f64 %91 %143) (+.f64 %77 y) (+.f64 %74 #s(literal 0 binary64)) (+.f64 %143 %91) (+.f64 y (+.f64 #s(literal 0 binary64) %77)) (+.f64 y (-.f64 #s(literal 0 binary64) %86)) (+.f64 y %77) (*.f64 #s(literal 1 binary64) %217) (pow.f64 %217 #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (pow.f64 %217 #s(literal -1 binary64))) (neg.f64 (neg.f64 %217)) (fma.f64 %69 %97 %7) (fma.f64 %97 %69 %7) (fma.f64 #s(literal 1 binary64) %91 %7) (fma.f64 #s(literal 1 binary64) %7 %91) %217 (fma.f64 x z %7) (-.f64 %91 %13) (-.f64 %7 %198) (+.f64 %91 %7) (+.f64 %7 %91) |
Compiled 193 to 317 computations (-64.2% saved)
Compiled 40 to 104 computations (-160.0% saved)
6 alts after pruning (3 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 37 | 3 | 40 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 2 | 2 |
| Done | 0 | 1 | 1 |
| Total | 37 | 6 | 43 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 37.6% | (fma.f64 (approx x #s(literal 0 binary64)) z (approx (* y (- 1 x)) y)) |
| ✓ | 100.0% | (fma.f64 x (-.f64 z y) y) |
| ✓ | 71.4% | (fma.f64 x z (approx (* y (- 1 x)) y)) |
| ✓ | 98.8% | (approx (+ (* (- 1 x) y) (* x z)) (fma.f64 x z (*.f64 y (-.f64 #s(literal 1 binary64) x)))) |
| ▶ | 64.2% | (approx (+ (* x (- z y)) y) (*.f64 x (-.f64 z y))) |
| ▶ | 36.4% | (approx (+ (* x (- z y)) y) (*.f64 x z)) |
Compiled 6 to 14 computations (-133.3% saved)
| Inputs |
|---|
| Outputs |
|---|
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 153 | 662 |
| 1× | iter-limit |
| Inputs |
|---|
%3 = (*.f64 x z) %8 = (approx (* y (- 1 x)) y) %9 = (-.f64 z y) %10 = (approx x #s(literal 0 binary64)) %11 = (*.f64 x %9) %14 = (+ (* x (- z y)) y) x y z %3 #s(literal 0 binary64) %8 %9 %10 %11 (approx %14 %11) (approx %14 %3) (fma.f64 %10 z %8) |
| Outputs |
|---|
%5 = (* x z) %6 = (*.f64 x z) %11 = (* y (- 1 x)) %14 = (*.f64 x y) %15 = (*.f64 #s(literal -1 binary64) %14) %16 = (+.f64 y %15) %18 = (- z y) %19 = (* x %18) %20 = (-.f64 z y) %21 = (*.f64 x %20) %23 = (+ %19 y) %26 = (+ %5 %11) %27 = (*.f64 #s(literal -1 binary64) y) %28 = (+.f64 z %27) %29 = (*.f64 x %28) %33 = (/.f64 y x) %34 = (fma.f64 #s(literal -1 binary64) y %33) %45 = (*.f64 #s(literal -1 binary64) %33) %65 = (-.f64 #s(literal 1 binary64) x) %66 = (*.f64 y %65) %70 = (fma.f64 #s(literal -1 binary64) %14 %6) %74 = (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) x))) %80 = (/.f64 z y) %84 = (/.f64 %6 y) %85 = (fma.f64 #s(literal -1 binary64) x %84) %101 = (*.f64 #s(literal -1 binary64) %84) %102 = (+.f64 x %101) %121 = (/.f64 y z) %126 = (/.f64 %14 z) %135 = (/.f64 %66 z) (approx x #s(literal 0 binary64)) (approx x x) (approx %5 %6) (approx %11 y) (approx %11 %16) (approx %19 %21) (approx %23 (+.f64 y %21)) (approx %26 (+.f64 y %29)) (approx %11 %15) (approx %11 (*.f64 x %34)) (approx %23 (*.f64 x (-.f64 (+.f64 z %33) y))) (approx %26 %29) (approx %26 (*.f64 x (+.f64 z %34))) (approx %11 (*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 y %45)))) (approx %23 (*.f64 #s(literal -1 binary64) (*.f64 x (fma.f64 #s(literal -1 binary64) %20 %45)))) (approx %26 (*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 y (*.f64 #s(literal -1 binary64) z))))) (approx %26 (*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 y (fma.f64 #s(literal -1 binary64) z %45))))) (approx %11 %66) (approx %18 z) (approx %18 %28) (approx %19 %70) (approx %23 (fma.f64 x z %74)) (approx %26 (fma.f64 x z %66)) (approx %18 %27) (approx %18 (*.f64 y (-.f64 %80 #s(literal 1 binary64)))) (approx %19 (*.f64 y %85)) (approx %23 %74) (approx %23 (*.f64 y (+.f64 #s(literal 1 binary64) %85))) (approx %26 (*.f64 y (-.f64 (+.f64 #s(literal 1 binary64) %84) x))) (approx %18 (*.f64 #s(literal -1 binary64) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) %80))))) (approx %19 (*.f64 #s(literal -1 binary64) (*.f64 y %102))) (approx %23 (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 x #s(literal 1 binary64))))) (approx %23 (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 %102 #s(literal 1 binary64))))) (approx %26 (*.f64 #s(literal -1 binary64) (*.f64 y (fma.f64 #s(literal -1 binary64) %65 %101)))) (approx %18 %20) (approx %23 (+.f64 y %70)) (approx %18 (*.f64 z (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) %121)))) (approx %19 (*.f64 z (+.f64 x (*.f64 #s(literal -1 binary64) %126)))) (approx %23 (*.f64 z (+.f64 x (fma.f64 #s(literal -1 binary64) %126 %121)))) (approx %26 (*.f64 z (+.f64 x %135))) (approx %18 (*.f64 #s(literal -1 binary64) (*.f64 z (-.f64 %121 #s(literal 1 binary64))))) (approx %19 (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) x %126)))) (approx %23 (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) x (*.f64 #s(literal -1 binary64) (/.f64 %16 z)))))) (approx %26 (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) x (*.f64 #s(literal -1 binary64) %135))))) |
9 calls:
| Time | Variable | Point |
|---|---|---|
| 3.0ms | z | inf |
| 2.0ms | x | inf |
| 1.0ms | y | inf |
| 1.0ms | z | -inf |
| 1.0ms | x | -inf |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 18 | 61 |
| 0 | 23 | 61 |
| 1 | 63 | 61 |
| 2 | 133 | 61 |
| 3 | 417 | 61 |
| 4 | 2626 | 61 |
| 0 | 4017 | 61 |
| 0 | 4142 | 59 |
| 1× | iter-limit |
| 1× | iter-limit |
| 1× | node-limit |
| 1× | iter-limit |
| Inputs |
|---|
%3 = (*.f64 x z) %8 = (approx (* y (- 1 x)) y) %9 = (-.f64 z y) %10 = (approx x #s(literal 0 binary64)) %11 = (*.f64 x %9) %14 = (+ (* x (- z y)) y) x y z %3 #s(literal 0 binary64) %8 %9 %10 %11 (approx %14 %11) (approx %14 %3) (fma.f64 %10 z %8) |
| Outputs |
|---|
%4 = (*.f64 z x) %11 = (neg.f64 z) %12 = (*.f64 %11 x) %18 = (approx (* (- 1 x) y) y) %23 = (neg.f64 %18) %25 = (-.f64 z y) %30 = (+.f64 y y) %35 = (-.f64 y z) %40 = (*.f64 #s(literal 1/2 binary64) y) %49 = (neg.f64 %40) %51 = (neg.f64 %30) %68 = (neg.f64 y) %78 = (approx x #s(literal 0 binary64)) %83 = (neg.f64 %78) %85 = (neg.f64 x) %88 = (*.f64 %25 x) %96 = (*.f64 %85 %30) %97 = (*.f64 %85 %11) %99 = (*.f64 %11 %85) %102 = (*.f64 %85 #s(literal 1/2 binary64)) %106 = (*.f64 %85 %40) %110 = (*.f64 %85 #s(literal 1 binary64)) %114 = (*.f64 #s(literal 1/2 binary64) %85) %119 = (neg.f64 (+.f64 x x)) %126 = (*.f64 %85 y) %131 = (*.f64 %30 %85) %135 = (*.f64 %40 %85) %169 = (+ (* (- z y) x) y) %170 = (approx %169 %88) %175 = (approx %169 %4) %180 = (fma.f64 %78 z %18) %189 = (*.f64 %78 z) x y z (*.f64 #s(literal 1 binary64) %4) %4 (*.f64 x z) (pow.f64 %4 #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (pow.f64 %4 #s(literal -1 binary64))) (neg.f64 %12) #s(literal 0 binary64) (*.f64 #s(literal 1 binary64) %18) (pow.f64 %18 #s(literal 1 binary64)) %18 (/.f64 #s(literal 1 binary64) (pow.f64 %18 #s(literal -1 binary64))) (neg.f64 %23) (*.f64 #s(literal 1 binary64) %25) (pow.f64 %25 #s(literal 1 binary64)) (/.f64 (-.f64 (*.f64 z #s(literal 2 binary64)) %30) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (pow.f64 %25 #s(literal -1 binary64))) (neg.f64 %35) (fma.f64 (*.f64 #s(literal -1 binary64) %30) #s(literal 1/2 binary64) z) (fma.f64 (*.f64 #s(literal -1 binary64) %40) #s(literal 2 binary64) z) (fma.f64 (*.f64 y #s(literal -1/2 binary64)) #s(literal 2 binary64) z) (fma.f64 (*.f64 y #s(literal -2 binary64)) #s(literal 1/2 binary64) z) (fma.f64 %49 #s(literal 2 binary64) z) (fma.f64 %51 #s(literal 1/2 binary64) z) (fma.f64 %30 #s(literal -1/2 binary64) z) (fma.f64 %40 #s(literal -2 binary64) z) (fma.f64 #s(literal -1/2 binary64) %30 z) (fma.f64 #s(literal -2 binary64) %40 z) (fma.f64 #s(literal -1 binary64) y z) (fma.f64 #s(literal 1/2 binary64) (*.f64 %30 #s(literal -1 binary64)) z) (fma.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -2 binary64) y) z) (fma.f64 #s(literal 1/2 binary64) %51 z) (fma.f64 #s(literal 2 binary64) (*.f64 %40 #s(literal -1 binary64)) z) (fma.f64 #s(literal 2 binary64) (*.f64 #s(literal -1/2 binary64) y) z) (fma.f64 #s(literal 2 binary64) %49 z) (fma.f64 %68 #s(literal 1 binary64) z) (fma.f64 #s(literal 1 binary64) %68 z) (fma.f64 y #s(literal -1 binary64) z) (-.f64 (-.f64 z %40) %40) (-.f64 %68 %11) (-.f64 %25 #s(literal 0 binary64)) %25 (+.f64 %68 z) (+.f64 z %68) (*.f64 #s(literal 1 binary64) %78) (pow.f64 %78 #s(literal 1 binary64)) %78 (/.f64 #s(literal 1 binary64) (pow.f64 %78 #s(literal -1 binary64))) (neg.f64 %83) (*.f64 %85 %35) (*.f64 %35 %85) %88 (*.f64 #s(literal 1 binary64) %88) (*.f64 x %25) (pow.f64 %88 #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (pow.f64 %88 #s(literal -1 binary64))) (neg.f64 (*.f64 %35 x)) (fma.f64 %96 #s(literal 1/2 binary64) %97) (fma.f64 %96 #s(literal 1/2 binary64) %99) (fma.f64 %96 #s(literal 1/2 binary64) %4) (fma.f64 %102 %30 %97) (fma.f64 %102 %30 %99) (fma.f64 %102 %30 %4) (fma.f64 %106 #s(literal 2 binary64) %97) (fma.f64 %106 #s(literal 2 binary64) %99) (fma.f64 %106 #s(literal 2 binary64) %4) (fma.f64 %110 y %97) (fma.f64 %110 y %99) (fma.f64 %110 y %4) (fma.f64 %30 %114 %97) (fma.f64 %30 %114 %99) (fma.f64 %30 %114 %4) (fma.f64 %40 %119 %97) (fma.f64 %40 %119 %99) (fma.f64 %40 %119 %4) (fma.f64 %119 %40 %97) (fma.f64 %119 %40 %99) (fma.f64 %119 %40 %4) (fma.f64 %126 #s(literal 1 binary64) %97) (fma.f64 %126 #s(literal 1 binary64) %99) (fma.f64 %126 #s(literal 1 binary64) %4) (fma.f64 %11 %85 %126) (fma.f64 #s(literal 1/2 binary64) %131 %97) (fma.f64 #s(literal 1/2 binary64) %131 %99) (fma.f64 #s(literal 1/2 binary64) %131 %4) (fma.f64 #s(literal 2 binary64) %135 %97) (fma.f64 #s(literal 2 binary64) %135 %99) (fma.f64 #s(literal 2 binary64) %135 %4) (fma.f64 %85 %11 %126) (fma.f64 %85 y %97) (fma.f64 %85 y %99) (fma.f64 %85 y %4) (fma.f64 %68 x %97) (fma.f64 %68 x %99) (fma.f64 %68 x %4) (fma.f64 #s(literal 1 binary64) %126 %97) (fma.f64 #s(literal 1 binary64) %126 %99) (fma.f64 #s(literal 1 binary64) %126 %4) (fma.f64 #s(literal 1 binary64) %4 %126) (fma.f64 z x %126) (fma.f64 y %85 %97) (fma.f64 y %85 %99) (fma.f64 y %85 %4) (fma.f64 x %68 %97) (fma.f64 x %68 %99) (fma.f64 x %68 %4) (fma.f64 x z %126) (-.f64 %126 %12) (-.f64 %4 (*.f64 y x)) (+.f64 %97 %126) (+.f64 %99 %126) (+.f64 %126 %97) (+.f64 %126 %99) (+.f64 %126 %4) (+.f64 %4 %126) (*.f64 #s(literal 1 binary64) %170) (pow.f64 %170 #s(literal 1 binary64)) %170 (/.f64 #s(literal 1 binary64) (pow.f64 %170 #s(literal -1 binary64))) (*.f64 #s(literal 1 binary64) %175) (pow.f64 %175 #s(literal 1 binary64)) %175 (/.f64 #s(literal 1 binary64) (pow.f64 %175 #s(literal -1 binary64))) (*.f64 #s(literal 1 binary64) %180) (pow.f64 %180 #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (pow.f64 %180 #s(literal -1 binary64))) (neg.f64 (neg.f64 %180)) (fma.f64 %83 %11 %18) (fma.f64 %11 %83 %18) %180 (fma.f64 #s(literal 1 binary64) %189 %18) (fma.f64 #s(literal 1 binary64) %18 %189) (fma.f64 z %78 %18) (-.f64 %189 %23) (-.f64 %18 (*.f64 %83 z)) (+.f64 %189 %18) (+.f64 %18 %189) |
Compiled 183 to 285 computations (-55.7% saved)
Compiled 47 to 114 computations (-142.6% saved)
8 alts after pruning (3 fresh and 5 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 44 | 3 | 47 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 3 | 3 |
| Done | 1 | 2 | 3 |
| Total | 45 | 8 | 53 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 37.6% | (fma.f64 (approx x #s(literal 0 binary64)) z (approx (* y (- 1 x)) y)) |
| ✓ | 100.0% | (fma.f64 x (-.f64 z y) y) |
| ✓ | 71.4% | (fma.f64 x z (approx (* y (- 1 x)) y)) |
| 63.1% | (approx (+ (* x (- z y)) y) (fma.f64 x z (*.f64 (neg.f64 x) y))) | |
| 60.7% | (approx (+ (* x (- z y)) y) (-.f64 (*.f64 z x) (*.f64 y x))) | |
| 2.7% | (approx (+ (* x (- z y)) y) (*.f64 (approx x #s(literal 0 binary64)) z)) | |
| ✓ | 64.2% | (approx (+ (* x (- z y)) y) (*.f64 x (-.f64 z y))) |
| ✓ | 36.4% | (approx (+ (* x (- z y)) y) (*.f64 x z)) |
Compiled 8 to 17 computations (-112.5% saved)
Total 0.2b remaining (0.3%)
Threshold costs 0.2b (0.3%)
| 0.2b | 0.0% |
| 0.0b | 0.0% |
| 0.0b | 100.0% |
| 0.0b | 0% |
| Inputs |
|---|
(approx (+ (* x (- z y)) y) (*.f64 x z)) |
| Outputs |
|---|
(approx (+ (* x (- z y)) y) (*.f64 x z)) |
| Inputs |
|---|
%5 = (+ (* x (- z y)) y) (approx %5 (*.f64 x z)) (approx %5 (*.f64 (approx x #s(literal 0 binary64)) z)) (fma.f64 x z (approx (* y (- 1 x)) y)) |
| Outputs |
|---|
(fma.f64 x z (approx (* y (- 1 x)) y)) |
| Inputs |
|---|
%5 = (+ (* x (- z y)) y) %9 = (approx x #s(literal 0 binary64)) %15 = (approx (* y (- 1 x)) y) (approx %5 (*.f64 x z)) (approx %5 (*.f64 %9 z)) (fma.f64 x z %15) (fma.f64 %9 z %15) (approx %5 (*.f64 x (-.f64 z y))) |
| Outputs |
|---|
%8 = (approx (+ (* x (- z y)) y) (*.f64 x (-.f64 z y))) %8 (fma.f64 x z (approx (* y (- 1 x)) y)) %8 |
| Inputs |
|---|
%5 = (+ (* x (- z y)) y) %6 = (*.f64 x z) %9 = (approx x #s(literal 0 binary64)) %13 = (- 1 x) %15 = (approx (* y %13) y) %18 = (-.f64 z y) (approx %5 %6) (approx %5 (*.f64 %9 z)) (fma.f64 x z %15) (fma.f64 %9 z %15) (approx %5 (*.f64 x %18)) (+.f64 (approx (* %13 y) y) %6) (fma.f64 x %18 y) |
| Outputs |
|---|
(fma.f64 x (-.f64 z y) y) |
4 calls:
| 24.0ms | y |
| 22.0ms | x |
| 13.0ms | z |
| 12.0ms | (+.f64 (*.f64 (-.f64 #s(literal 1 binary64) x) y) (*.f64 x z)) |
| Accuracy | Segments | Branch |
|---|---|---|
| 36.4% | 1 | z |
| 36.4% | 1 | y |
| 36.4% | 1 | x |
| 36.4% | 1 | (+.f64 (*.f64 (-.f64 #s(literal 1 binary64) x) y) (*.f64 x z)) |
Compiled 16 to 34 computations (-112.5% saved)
| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 11.0ms | 0.33288560671638684 | 880.6273106075364 |
| 11.0ms | -771.6157302664199 | -0.07451076232585971 |
| 9.0ms | 256× | 0 | valid |
Compiled 16 to 23 computations (-43.8% saved)
Sub: 0.0ms (0.0% of total, 0.0 MiB)Mul: 0.0ms (0.0% of total, 0.0 MiB)Add: 0.0ms (0.0% of total, 0.0 MiB)| 1× | fuel |
Compiled 4 to 14 computations (-250.0% saved)
Compiled 5 to 22 computations (-340.0% saved)
| Allocated | Percent | Phase |
|---|---|---|
| 552.9 MiB | 34.3% | rewrite |
| 343.2 MiB | 21.3% | sample |
| 268.3 MiB | 16.7% | reconstruct |
| 156.6 MiB | 9.7% | series |
| 90.1 MiB | 5.6% | regimes |
| 62.5 MiB | 3.9% | preprocess |
| 47.5 MiB | 3.0% | derivations |
| 41.3 MiB | 2.6% | eval |
| 28.5 MiB | 1.8% | bsearch |
| 19.1 MiB | 1.2% | prune |
| 0.8 MiB | 0.0% | analyze |
| 0.0 MiB | 0.0% | end |
| 0.0 MiB | 0.0% | start |
| 1 611.0 MiB | 100.0% | total |
Loading profile data...