Diagrams.TwoD.Segment:bezierClip from diagrams-lib-1.3.0.3

Time bar (total: 1.4s)

start0.0ms (0.0%)

analyze0.0ms (0.0%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
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
Compiler

Compiled 11 to 9 computations (18.2% saved)

sample249.0ms (17.5%)

Samples
190.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 10.0ms
Mul: 6.0ms (62.8% of total, 0.0 MiB)
Sub: 2.0ms (20.9% of total, 0.0 MiB)
Add: 2.0ms (20.9% of total, 0.0 MiB)
Bogosity

preprocess25.0ms (1.8%)

Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03395
114390
240890
3108790
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
97.2%
(+.f64 (*.f64 x y) (*.f64 z (-.f64 #s(literal 1 binary64) y)))
Compiler

Compiled 2 to 16 computations (-700.0% saved)

sample0.0ms (0.0%)

Calls
Call 1
Inputs
Outputs

series15.0ms (1.1%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
083338
Stop Event
iter-limit
Counts
8 → 25
Calls
Call 1
Inputs
%2 = (*.f64 x y)
%5 = (-.f64 #s(literal 1 binary64) y)
%6 = (*.f64 z %5)
x
y
%2
z
#s(literal 1 binary64)
%5
%6
(+.f64 %2 %6)
Outputs
%5 = (* x y)
%6 = (*.f64 x y)
%10 = (- 1 y)
%11 = (* z %10)
%12 = (+ %5 %11)
%14 = (-.f64 #s(literal 1 binary64) y)
%15 = (*.f64 z %14)
%19 = (/.f64 %15 x)
%31 = (*.f64 #s(literal -1 binary64) y)
%36 = (*.f64 #s(literal -1 binary64) (*.f64 y z))
%41 = (*.f64 y (+.f64 x (*.f64 #s(literal -1 binary64) z)))
%45 = (/.f64 #s(literal 1 binary64) y)
%50 = (/.f64 z y)
%51 = (fma.f64 #s(literal -1 binary64) z %50)
%62 = (*.f64 #s(literal -1 binary64) %50)
%77 = (/.f64 %6 z)
(approx x #s(literal 0 binary64))
(approx x x)
(approx %5 %6)
(approx %12 %15)
(approx %12 (fma.f64 x y %15))
(approx %12 (*.f64 x (+.f64 y %19)))
(approx %12 (*.f64 #s(literal -1 binary64) (*.f64 x (fma.f64 #s(literal -1 binary64) y (*.f64 #s(literal -1 binary64) %19)))))
(approx y y)
(approx %10 #s(literal 1 binary64))
(approx %10 (+.f64 #s(literal 1 binary64) %31))
(approx %11 z)
(approx %11 (+.f64 z %36))
(approx %12 (+.f64 z %41))
(approx %10 %31)
(approx %10 (*.f64 y (-.f64 %45 #s(literal 1 binary64))))
(approx %11 %36)
(approx %11 (*.f64 y %51))
(approx %12 %41)
(approx %12 (*.f64 y (+.f64 x %51)))
(approx %10 (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 #s(literal 1 binary64) %45))))
(approx %11 (*.f64 #s(literal -1 binary64) (*.f64 y (+.f64 z %62))))
(approx %12 (*.f64 #s(literal -1 binary64) (*.f64 y (+.f64 z (*.f64 #s(literal -1 binary64) x)))))
(approx %12 (*.f64 #s(literal -1 binary64) (*.f64 y (+.f64 z (fma.f64 #s(literal -1 binary64) x %62)))))
(approx %12 (*.f64 z (-.f64 (+.f64 #s(literal 1 binary64) %77) y)))
(approx %12 (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) %14 (*.f64 #s(literal -1 binary64) %77)))))
Calls

9 calls:

TimeVariablePoint
2.0ms
x
inf
2.0ms
y
inf
1.0ms
z
inf
1.0ms
x
-inf
1.0ms
y
-inf

rewrite108.0ms (7.6%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0824
01224
13824
210324
337523
4214323
0419023
0432222
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
8 → 513
Calls
Call 1
Inputs
%2 = (*.f64 x y)
%5 = (-.f64 #s(literal 1 binary64) y)
%6 = (*.f64 z %5)
x
y
%2
z
#s(literal 1 binary64)
%5
%6
(+.f64 %2 %6)
Outputs
%2 = (neg.f64 x)
%3 = (neg.f64 y)
%7 = (*.f64 y x)
%14 = (*.f64 %2 y)
%18 = (-.f64 #s(literal 1 binary64) y)
%19 = (*.f64 #s(literal 2 binary64) %18)
%21 = (/.f64 %19 #s(literal 8 binary64))
%24 = (/.f64 %19 #s(literal 4 binary64))
%30 = (+.f64 y y)
%36 = (fma.f64 #s(literal 2 binary64) y #s(literal -2 binary64))
%46 = (-.f64 y #s(literal 1/2 binary64))
%51 = (-.f64 y #s(literal 1 binary64))
%52 = (*.f64 %51 #s(literal 2 binary64))
%60 = (*.f64 y #s(literal 1 binary64))
%68 = (neg.f64 %36)
%71 = (neg.f64 %19)
%78 = (/.f64 %19 #s(literal 1/2 binary64))
%81 = (fma.f64 %19 #s(literal 2 binary64) #s(literal 0 binary64))
%84 = (fma.f64 %3 #s(literal -2 binary64) #s(literal -2 binary64))
%88 = (-.f64 (*.f64 %3 #s(literal -2 binary64)) #s(literal 2 binary64))
%91 = (/.f64 %19 #s(literal 1 binary64))
%94 = (-.f64 #s(literal 1/2 binary64) y)
%95 = (fma.f64 %94 #s(literal 2 binary64) #s(literal 1 binary64))
%98 = (fma.f64 %3 #s(literal 1 binary64) #s(literal 1 binary64))
%180 = (*.f64 %51 #s(literal 1/2 binary64))
%181 = (+.f64 z z)
%182 = (neg.f64 %181)
%184 = (*.f64 %51 #s(literal 1 binary64))
%185 = (neg.f64 z)
%187 = (*.f64 %18 #s(literal 1/2 binary64))
%189 = (*.f64 %18 #s(literal 1 binary64))
%191 = (*.f64 %51 %182)
%193 = (*.f64 %18 %181)
%195 = (/.f64 z #s(literal -2 binary64))
%196 = (*.f64 %51 %195)
%198 = (*.f64 #s(literal 1/2 binary64) z)
%199 = (*.f64 %18 %198)
%202 = (*.f64 #s(literal 1/2 binary64) %18)
%204 = (*.f64 #s(literal 1/2 binary64) %51)
%209 = (*.f64 %182 %51)
%211 = (*.f64 %181 %18)
%213 = (*.f64 %195 %51)
%215 = (*.f64 %198 %18)
%219 = (*.f64 %18 z)
%224 = (*.f64 y %182)
%225 = (*.f64 #s(literal -1 binary64) %181)
%228 = (*.f64 %3 %181)
%231 = (*.f64 %181 %3)
%234 = (*.f64 %182 y)
%237 = (*.f64 %181 #s(literal -1 binary64))
%246 = (/.f64 %181 #s(literal -1 binary64))
%255 = (*.f64 #s(literal -2 binary64) z)
%264 = (*.f64 z #s(literal -2 binary64))
%281 = (*.f64 #s(literal -1 binary64) %182)
%282 = (*.f64 %3 %182)
%285 = (*.f64 %182 #s(literal -1 binary64))
%288 = (/.f64 %181 #s(literal 1 binary64))
%291 = (*.f64 #s(literal -2 binary64) %185)
%294 = (*.f64 %185 #s(literal -2 binary64))
%299 = (*.f64 y %181)
%312 = (*.f64 %182 %3)
%325 = (*.f64 %181 y)
%338 = (*.f64 %185 %36)
%345 = (*.f64 z %19)
%350 = (*.f64 %36 %185)
%353 = (*.f64 %19 z)
%358 = (*.f64 %185 y)
%359 = (fma.f64 %358 #s(literal 2 binary64) %181)
%362 = (*.f64 %182 %36)
%365 = (*.f64 %36 %182)
%368 = (*.f64 %19 %181)
%371 = (*.f64 %181 %19)
%389 = (*.f64 %51 z)
%391 = (*.f64 %51 #s(literal 0 binary64))
%393 = (*.f64 %18 #s(literal 0 binary64))
%395 = (*.f64 #s(literal 0 binary64) %51)
%397 = (*.f64 #s(literal 0 binary64) %18)
%437 = (*.f64 y %195)
%439 = (*.f64 y #s(literal 1/2 binary64))
%441 = (*.f64 %3 %198)
%443 = (*.f64 %3 #s(literal 1/2 binary64))
%445 = (*.f64 #s(literal 1/2 binary64) %198)
%446 = (fma.f64 #s(literal 1/2 binary64) z %358)
%448 = (*.f64 z y)
%449 = (-.f64 %198 %448)
%451 = (*.f64 z %94)
%453 = (*.f64 %94 z)
%455 = (*.f64 %3 #s(literal 1 binary64))
%474 = (*.f64 #s(literal 1/2 binary64) %3)
%485 = (*.f64 #s(literal 1/2 binary64) y)
%492 = (neg.f64 %30)
%540 = (*.f64 %195 y)
%542 = (*.f64 %198 %3)
%544 = (*.f64 %198 #s(literal 1/2 binary64))
%620 = (-.f64 z x)
%621 = (fma.f64 %3 %620 z)
%624 = (fma.f64 %7 #s(literal 2 binary64) %181)
%628 = (-.f64 (*.f64 %7 #s(literal 2 binary64)) %182)
%653 = (-.f64 z %14)
%655 = (fma.f64 y x z)
%669 = (*.f64 %3 %620)
%670 = (fma.f64 #s(literal 1/2 binary64) z %669)
%744 = (-.f64 %448 %7)
x
y
(*.f64 %2 %3)
(*.f64 %3 %2)
(*.f64 #s(literal 1 binary64) %7)
%7
(*.f64 x y)
(pow.f64 %7 #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %7 #s(literal -1 binary64)))
(neg.f64 %14)
z
#s(literal 1 binary64)
(*.f64 %21 #s(literal 4 binary64))
(*.f64 %24 #s(literal 2 binary64))
(*.f64 %19 #s(literal 1/2 binary64))
(*.f64 #s(literal 1 binary64) %18)
(pow.f64 %18 #s(literal 1 binary64))
(/.f64 (-.f64 #s(literal 1 binary64) (-.f64 %30 #s(literal 1 binary64))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (/.f64 %36 #s(literal 1/2 binary64))) #s(literal 4 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (/.f64 %36 #s(literal 1 binary64))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (fma.f64 y #s(literal -2 binary64) #s(literal 2 binary64))) #s(literal -2 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (-.f64 (*.f64 %46 #s(literal 2 binary64)) #s(literal 1 binary64))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (-.f64 %52 #s(literal 0 binary64))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (-.f64 (*.f64 y #s(literal -2 binary64)) #s(literal -2 binary64))) #s(literal -2 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (-.f64 %60 #s(literal 1 binary64))) #s(literal 1 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (-.f64 (*.f64 %36 #s(literal 2 binary64)) #s(literal 0 binary64))) #s(literal 4 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) %68) #s(literal -2 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) %71) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) %19) #s(literal -2 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) %36) #s(literal 2 binary64))
(/.f64 (-.f64 %78 #s(literal 0 binary64)) #s(literal 4 binary64))
(/.f64 (-.f64 %81 #s(literal 0 binary64)) #s(literal 4 binary64))
(/.f64 (-.f64 %84 #s(literal 0 binary64)) #s(literal -2 binary64))
(/.f64 (-.f64 %88 #s(literal 0 binary64)) #s(literal -2 binary64))
(/.f64 (-.f64 %91 #s(literal 0 binary64)) #s(literal 2 binary64))
(/.f64 (-.f64 %95 #s(literal 0 binary64)) #s(literal 2 binary64))
(/.f64 (-.f64 %98 #s(literal 0 binary64)) #s(literal 1 binary64))
(/.f64 (-.f64 %68 #s(literal 0 binary64)) #s(literal 2 binary64))
(/.f64 (-.f64 %19 #s(literal 0 binary64)) #s(literal 2 binary64))
(/.f64 (-.f64 %71 #s(literal 0 binary64)) #s(literal -2 binary64))
(/.f64 (neg.f64 %78) #s(literal -4 binary64))
(/.f64 (neg.f64 %91) #s(literal -2 binary64))
(/.f64 (neg.f64 %95) #s(literal -2 binary64))
(/.f64 (neg.f64 %84) #s(literal 2 binary64))
(/.f64 (neg.f64 %98) #s(literal -1 binary64))
(/.f64 (neg.f64 %88) #s(literal 2 binary64))
(/.f64 (neg.f64 %81) #s(literal -4 binary64))
(/.f64 (neg.f64 %68) #s(literal -2 binary64))
(/.f64 (neg.f64 %71) #s(literal 2 binary64))
(/.f64 %78 #s(literal 4 binary64))
(/.f64 %91 #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 2 binary64) %30) #s(literal 2 binary64))
(/.f64 %95 #s(literal 2 binary64))
(/.f64 %84 #s(literal -2 binary64))
(/.f64 %98 #s(literal 1 binary64))
(/.f64 %88 #s(literal -2 binary64))
(/.f64 %81 #s(literal 4 binary64))
(/.f64 %68 #s(literal 2 binary64))
(/.f64 %71 #s(literal -2 binary64))
(/.f64 %19 #s(literal 2 binary64))
(/.f64 %36 #s(literal -2 binary64))
(/.f64 %51 #s(literal -1 binary64))
(/.f64 %18 #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) %19))
(/.f64 #s(literal 1 binary64) (pow.f64 %18 #s(literal -1 binary64)))
(neg.f64 %51)
(fma.f64 %21 #s(literal 4 binary64) #s(literal 0 binary64))
(fma.f64 %24 #s(literal 2 binary64) #s(literal 0 binary64))
(fma.f64 %19 #s(literal 1/2 binary64) #s(literal 0 binary64))
(fma.f64 #s(literal 1 binary64) %94 #s(literal 1/2 binary64))
(fma.f64 #s(literal 1 binary64) %3 #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) %18 #s(literal 0 binary64))
(-.f64 (+.f64 %18 #s(literal 1 binary64)) #s(literal 1 binary64))
(-.f64 %94 #s(literal -1/2 binary64))
(-.f64 #s(literal 1/2 binary64) (-.f64 #s(literal -1/2 binary64) %3))
(-.f64 #s(literal 1/2 binary64) (+.f64 #s(literal -1/2 binary64) y))
(-.f64 #s(literal 1/2 binary64) %46)
(-.f64 %3 #s(literal -1 binary64))
(-.f64 #s(literal 0 binary64) %51)
(-.f64 %18 #s(literal 0 binary64))
(-.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) %3))
(-.f64 #s(literal 1 binary64) (+.f64 #s(literal 0 binary64) y))
(-.f64 #s(literal 1 binary64) (-.f64 y #s(literal 0 binary64)))
%18
(+.f64 (/.f64 %30 #s(literal -2 binary64)) #s(literal 1 binary64))
(+.f64 %94 #s(literal 1/2 binary64))
(+.f64 #s(literal 1/2 binary64) (+.f64 #s(literal 0 binary64) %94))
(+.f64 #s(literal 1/2 binary64) %94)
(+.f64 %3 #s(literal 1 binary64))
(+.f64 #s(literal 0 binary64) %18)
(+.f64 %18 #s(literal 0 binary64))
(+.f64 #s(literal 1 binary64) %3)
(*.f64 %180 %182)
(*.f64 %184 %185)
(*.f64 %187 %181)
(*.f64 %189 z)
(*.f64 %191 #s(literal 1/2 binary64))
(*.f64 %193 #s(literal 1/2 binary64))
(*.f64 %196 #s(literal 2 binary64))
(*.f64 %199 #s(literal 2 binary64))
(*.f64 %52 %195)
(*.f64 %181 %202)
(*.f64 %182 %204)
(*.f64 %198 %19)
(*.f64 %195 %36)
(*.f64 %19 %198)
(*.f64 #s(literal 1/2 binary64) %209)
(*.f64 #s(literal 1/2 binary64) %211)
(*.f64 #s(literal 2 binary64) %213)
(*.f64 #s(literal 2 binary64) %215)
(*.f64 %185 %51)
(*.f64 %51 %185)
(*.f64 %219 #s(literal 1 binary64))
%219
(*.f64 #s(literal 1 binary64) %219)
(*.f64 z %18)
(pow.f64 %219 #s(literal 1 binary64))
(/.f64 (-.f64 %224 %225) #s(literal 2 binary64))
(/.f64 (-.f64 %228 %225) #s(literal 2 binary64))
(/.f64 (-.f64 %231 %225) #s(literal 2 binary64))
(/.f64 (-.f64 %234 %225) #s(literal 2 binary64))
(/.f64 (-.f64 %224 %237) #s(literal 2 binary64))
(/.f64 (-.f64 %228 %237) #s(literal 2 binary64))
(/.f64 (-.f64 %231 %237) #s(literal 2 binary64))
(/.f64 (-.f64 %234 %237) #s(literal 2 binary64))
(/.f64 (-.f64 %224 %246) #s(literal 2 binary64))
(/.f64 (-.f64 %228 %246) #s(literal 2 binary64))
(/.f64 (-.f64 %231 %246) #s(literal 2 binary64))
(/.f64 (-.f64 %234 %246) #s(literal 2 binary64))
(/.f64 (-.f64 %224 %255) #s(literal 2 binary64))
(/.f64 (-.f64 %228 %255) #s(literal 2 binary64))
(/.f64 (-.f64 %231 %255) #s(literal 2 binary64))
(/.f64 (-.f64 %234 %255) #s(literal 2 binary64))
(/.f64 (-.f64 %224 %264) #s(literal 2 binary64))
(/.f64 (-.f64 %228 %264) #s(literal 2 binary64))
(/.f64 (-.f64 %231 %264) #s(literal 2 binary64))
(/.f64 (-.f64 %234 %264) #s(literal 2 binary64))
(/.f64 (-.f64 %224 %182) #s(literal 2 binary64))
(/.f64 (-.f64 %228 %182) #s(literal 2 binary64))
(/.f64 (-.f64 %231 %182) #s(literal 2 binary64))
(/.f64 (-.f64 %234 %182) #s(literal 2 binary64))
(/.f64 (-.f64 %281 %282) #s(literal 2 binary64))
(/.f64 (-.f64 %285 %282) #s(literal 2 binary64))
(/.f64 (-.f64 %288 %282) #s(literal 2 binary64))
(/.f64 (-.f64 %291 %282) #s(literal 2 binary64))
(/.f64 (-.f64 %294 %282) #s(literal 2 binary64))
(/.f64 (-.f64 %181 %282) #s(literal 2 binary64))
(/.f64 (-.f64 %281 %299) #s(literal 2 binary64))
(/.f64 (-.f64 %285 %299) #s(literal 2 binary64))
(/.f64 (-.f64 %288 %299) #s(literal 2 binary64))
(/.f64 (-.f64 %291 %299) #s(literal 2 binary64))
(/.f64 (-.f64 %294 %299) #s(literal 2 binary64))
(/.f64 (-.f64 %181 %299) #s(literal 2 binary64))
(/.f64 (-.f64 %281 %312) #s(literal 2 binary64))
(/.f64 (-.f64 %285 %312) #s(literal 2 binary64))
(/.f64 (-.f64 %288 %312) #s(literal 2 binary64))
(/.f64 (-.f64 %291 %312) #s(literal 2 binary64))
(/.f64 (-.f64 %294 %312) #s(literal 2 binary64))
(/.f64 (-.f64 %181 %312) #s(literal 2 binary64))
(/.f64 (-.f64 %281 %325) #s(literal 2 binary64))
(/.f64 (-.f64 %285 %325) #s(literal 2 binary64))
(/.f64 (-.f64 %288 %325) #s(literal 2 binary64))
(/.f64 (-.f64 %291 %325) #s(literal 2 binary64))
(/.f64 (-.f64 %294 %325) #s(literal 2 binary64))
(/.f64 (-.f64 %181 %325) #s(literal 2 binary64))
(/.f64 (neg.f64 %338) #s(literal -2 binary64))
(/.f64 (neg.f64 %191) #s(literal -2 binary64))
(/.f64 (neg.f64 %193) #s(literal -2 binary64))
(/.f64 (neg.f64 %345) #s(literal -2 binary64))
(/.f64 (neg.f64 %209) #s(literal -2 binary64))
(/.f64 (neg.f64 %350) #s(literal -2 binary64))
(/.f64 (neg.f64 %353) #s(literal -2 binary64))
(/.f64 (neg.f64 %211) #s(literal -2 binary64))
(/.f64 (neg.f64 %359) #s(literal -2 binary64))
(/.f64 (neg.f64 %362) #s(literal -4 binary64))
(/.f64 (neg.f64 %365) #s(literal -4 binary64))
(/.f64 (neg.f64 %368) #s(literal -4 binary64))
(/.f64 (neg.f64 %371) #s(literal -4 binary64))
(/.f64 %338 #s(literal 2 binary64))
(/.f64 %191 #s(literal 2 binary64))
(/.f64 %193 #s(literal 2 binary64))
(/.f64 %345 #s(literal 2 binary64))
(/.f64 %209 #s(literal 2 binary64))
(/.f64 %350 #s(literal 2 binary64))
(/.f64 %353 #s(literal 2 binary64))
(/.f64 %211 #s(literal 2 binary64))
(/.f64 %359 #s(literal 2 binary64))
(/.f64 %362 #s(literal 4 binary64))
(/.f64 %365 #s(literal 4 binary64))
(/.f64 %368 #s(literal 4 binary64))
(/.f64 %371 #s(literal 4 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %219 #s(literal -1 binary64)))
(neg.f64 %389)
(fma.f64 %180 %182 %391)
(fma.f64 %180 %182 %393)
(fma.f64 %180 %182 %395)
(fma.f64 %180 %182 %397)
(fma.f64 %180 %182 #s(literal 0 binary64))
(fma.f64 %184 %185 %391)
(fma.f64 %184 %185 %393)
(fma.f64 %184 %185 %395)
(fma.f64 %184 %185 %397)
(fma.f64 %184 %185 #s(literal 0 binary64))
(fma.f64 %187 %181 %391)
(fma.f64 %187 %181 %393)
(fma.f64 %187 %181 %395)
(fma.f64 %187 %181 %397)
(fma.f64 %187 %181 #s(literal 0 binary64))
(fma.f64 %189 z %391)
(fma.f64 %189 z %393)
(fma.f64 %189 z %395)
(fma.f64 %189 z %397)
(fma.f64 %189 z #s(literal 0 binary64))
(fma.f64 %191 #s(literal 1/2 binary64) %391)
(fma.f64 %191 #s(literal 1/2 binary64) %393)
(fma.f64 %191 #s(literal 1/2 binary64) %395)
(fma.f64 %191 #s(literal 1/2 binary64) %397)
(fma.f64 %191 #s(literal 1/2 binary64) #s(literal 0 binary64))
(fma.f64 %193 #s(literal 1/2 binary64) %391)
(fma.f64 %193 #s(literal 1/2 binary64) %393)
(fma.f64 %193 #s(literal 1/2 binary64) %395)
(fma.f64 %193 #s(literal 1/2 binary64) %397)
(fma.f64 %193 #s(literal 1/2 binary64) #s(literal 0 binary64))
(fma.f64 %224 #s(literal 1/2 binary64) z)
(fma.f64 %228 #s(literal 1/2 binary64) z)
(fma.f64 %196 #s(literal 2 binary64) %391)
(fma.f64 %196 #s(literal 2 binary64) %393)
(fma.f64 %196 #s(literal 2 binary64) %395)
(fma.f64 %196 #s(literal 2 binary64) %397)
(fma.f64 %196 #s(literal 2 binary64) #s(literal 0 binary64))
(fma.f64 %199 #s(literal 2 binary64) %391)
(fma.f64 %199 #s(literal 2 binary64) %393)
(fma.f64 %199 #s(literal 2 binary64) %395)
(fma.f64 %199 #s(literal 2 binary64) %397)
(fma.f64 %199 #s(literal 2 binary64) #s(literal 0 binary64))
(fma.f64 %437 #s(literal 2 binary64) z)
(fma.f64 %439 %182 z)
(fma.f64 %441 #s(literal 2 binary64) z)
(fma.f64 %443 %181 z)
(fma.f64 %445 #s(literal 2 binary64) %446)
(fma.f64 %445 #s(literal 2 binary64) %449)
(fma.f64 %445 #s(literal 2 binary64) %451)
(fma.f64 %445 #s(literal 2 binary64) %453)
(fma.f64 %455 z z)
(fma.f64 %52 %195 %391)
(fma.f64 %52 %195 %393)
(fma.f64 %52 %195 %395)
(fma.f64 %52 %195 %397)
(fma.f64 %52 %195 #s(literal 0 binary64))
(fma.f64 %60 %185 z)
(fma.f64 #s(literal 1/4 binary64) %181 %446)
(fma.f64 #s(literal 1/4 binary64) %181 %449)
(fma.f64 #s(literal 1/4 binary64) %181 %451)
(fma.f64 #s(literal 1/4 binary64) %181 %453)
(fma.f64 %94 z %198)
(fma.f64 %181 %202 %391)
(fma.f64 %181 %202 %393)
(fma.f64 %181 %202 %395)
(fma.f64 %181 %202 %397)
(fma.f64 %181 %202 #s(literal 0 binary64))
(fma.f64 %181 %474 z)
(fma.f64 %181 #s(literal 1/4 binary64) %446)
(fma.f64 %181 #s(literal 1/4 binary64) %449)
(fma.f64 %181 #s(literal 1/4 binary64) %451)
(fma.f64 %181 #s(literal 1/4 binary64) %453)
(fma.f64 %182 %204 %391)
(fma.f64 %182 %204 %393)
(fma.f64 %182 %204 %395)
(fma.f64 %182 %204 %397)
(fma.f64 %182 %204 #s(literal 0 binary64))
(fma.f64 %182 %485 z)
(fma.f64 %198 %19 %391)
(fma.f64 %198 %19 %393)
(fma.f64 %198 %19 %395)
(fma.f64 %198 %19 %397)
(fma.f64 %198 %19 #s(literal 0 binary64))
(fma.f64 %198 %492 z)
(fma.f64 %198 %18 %215)
(fma.f64 %198 #s(literal 1 binary64) %446)
(fma.f64 %198 #s(literal 1 binary64) %449)
(fma.f64 %198 #s(literal 1 binary64) %451)
(fma.f64 %198 #s(literal 1 binary64) %453)
(fma.f64 %195 %36 %391)
(fma.f64 %195 %36 %393)
(fma.f64 %195 %36 %395)
(fma.f64 %195 %36 %397)
(fma.f64 %195 %36 #s(literal 0 binary64))
(fma.f64 %195 %30 z)
(fma.f64 %195 %51 %213)
(fma.f64 %19 %198 %391)
(fma.f64 %19 %198 %393)
(fma.f64 %19 %198 %395)
(fma.f64 %19 %198 %397)
(fma.f64 %19 %198 #s(literal 0 binary64))
(fma.f64 %492 %198 z)
(fma.f64 %30 %195 z)
(fma.f64 %358 #s(literal 1 binary64) z)
(fma.f64 #s(literal 1/2 binary64) %209 %391)
(fma.f64 #s(literal 1/2 binary64) %209 %393)
(fma.f64 #s(literal 1/2 binary64) %209 %395)
(fma.f64 #s(literal 1/2 binary64) %209 %397)
(fma.f64 #s(literal 1/2 binary64) %209 #s(literal 0 binary64))
(fma.f64 #s(literal 1/2 binary64) %211 %391)
(fma.f64 #s(literal 1/2 binary64) %211 %393)
(fma.f64 #s(literal 1/2 binary64) %211 %395)
(fma.f64 #s(literal 1/2 binary64) %211 %397)
(fma.f64 #s(literal 1/2 binary64) %211 #s(literal 0 binary64))
(fma.f64 #s(literal 1/2 binary64) %231 z)
(fma.f64 #s(literal 1/2 binary64) %234 z)
(fma.f64 #s(literal 1/2 binary64) z %446)
(fma.f64 #s(literal 1/2 binary64) z %449)
(fma.f64 #s(literal 1/2 binary64) z %451)
(fma.f64 #s(literal 1/2 binary64) z %453)
(fma.f64 #s(literal 2 binary64) %213 %391)
(fma.f64 #s(literal 2 binary64) %213 %393)
(fma.f64 #s(literal 2 binary64) %213 %395)
(fma.f64 #s(literal 2 binary64) %213 %397)
(fma.f64 #s(literal 2 binary64) %213 #s(literal 0 binary64))
(fma.f64 #s(literal 2 binary64) %215 %391)
(fma.f64 #s(literal 2 binary64) %215 %393)
(fma.f64 #s(literal 2 binary64) %215 %395)
(fma.f64 #s(literal 2 binary64) %215 %397)
(fma.f64 #s(literal 2 binary64) %215 #s(literal 0 binary64))
(fma.f64 #s(literal 2 binary64) %540 z)
(fma.f64 #s(literal 2 binary64) %542 z)
(fma.f64 #s(literal 2 binary64) %544 %446)
(fma.f64 #s(literal 2 binary64) %544 %449)
(fma.f64 #s(literal 2 binary64) %544 %451)
(fma.f64 #s(literal 2 binary64) %544 %453)
(fma.f64 %185 %51 %391)
(fma.f64 %185 %51 %393)
(fma.f64 %185 %51 %395)
(fma.f64 %185 %51 %397)
(fma.f64 %185 %51 #s(literal 0 binary64))
(fma.f64 %185 y z)
(fma.f64 %3 z z)
(fma.f64 %51 %195 %196)
(fma.f64 %51 %185 %391)
(fma.f64 %51 %185 %393)
(fma.f64 %51 %185 %395)
(fma.f64 %51 %185 %397)
(fma.f64 %51 %185 #s(literal 0 binary64))
(fma.f64 %219 #s(literal 1 binary64) %391)
(fma.f64 %219 #s(literal 1 binary64) %393)
(fma.f64 %219 #s(literal 1 binary64) %395)
(fma.f64 %219 #s(literal 1 binary64) %397)
(fma.f64 %219 #s(literal 1 binary64) #s(literal 0 binary64))
(fma.f64 %18 %198 %199)
(fma.f64 %18 z %391)
(fma.f64 %18 z %393)
(fma.f64 %18 z %395)
(fma.f64 %18 z %397)
(fma.f64 %18 z #s(literal 0 binary64))
(fma.f64 #s(literal 1 binary64) %198 %446)
(fma.f64 #s(literal 1 binary64) %198 %449)
(fma.f64 #s(literal 1 binary64) %198 %451)
(fma.f64 #s(literal 1 binary64) %198 %453)
(fma.f64 #s(literal 1 binary64) %358 z)
(fma.f64 #s(literal 1 binary64) %219 %391)
(fma.f64 #s(literal 1 binary64) %219 %393)
(fma.f64 #s(literal 1 binary64) %219 %395)
(fma.f64 #s(literal 1 binary64) %219 %397)
(fma.f64 #s(literal 1 binary64) %219 #s(literal 0 binary64))
(fma.f64 z %94 %198)
(fma.f64 z #s(literal 1/2 binary64) %446)
(fma.f64 z #s(literal 1/2 binary64) %449)
(fma.f64 z #s(literal 1/2 binary64) %451)
(fma.f64 z #s(literal 1/2 binary64) %453)
(fma.f64 z %3 z)
(fma.f64 z %18 %391)
(fma.f64 z %18 %393)
(fma.f64 z %18 %395)
(fma.f64 z %18 %397)
(fma.f64 z %18 #s(literal 0 binary64))
(fma.f64 y %185 z)
(-.f64 %358 %185)
(-.f64 z %448)
(+.f64 (fma.f64 %185 y %198) %198)
(+.f64 %196 %196)
(+.f64 %199 %199)
(+.f64 %451 %198)
(+.f64 %213 %213)
(+.f64 %215 %215)
(+.f64 %453 %198)
(+.f64 %198 %446)
(+.f64 %198 %449)
(+.f64 %198 %451)
(+.f64 %198 %453)
(+.f64 %358 z)
(+.f64 %219 %391)
(+.f64 %219 %393)
(+.f64 %219 %395)
(+.f64 %219 %397)
(+.f64 %219 #s(literal 0 binary64))
(+.f64 z (+.f64 #s(literal 0 binary64) %358))
(+.f64 z (-.f64 #s(literal 0 binary64) %448))
(+.f64 z %358)
(*.f64 #s(literal 1 binary64) %621)
(pow.f64 %621 #s(literal 1 binary64))
(/.f64 (-.f64 %624 %282) #s(literal 2 binary64))
(/.f64 (-.f64 %628 %282) #s(literal 2 binary64))
(/.f64 (-.f64 %624 %299) #s(literal 2 binary64))
(/.f64 (-.f64 %628 %299) #s(literal 2 binary64))
(/.f64 (-.f64 %624 %312) #s(literal 2 binary64))
(/.f64 (-.f64 %628 %312) #s(literal 2 binary64))
(/.f64 (-.f64 %624 %325) #s(literal 2 binary64))
(/.f64 (-.f64 %628 %325) #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %621 #s(literal -1 binary64)))
(neg.f64 (neg.f64 %621))
(fma.f64 %180 %182 %7)
(fma.f64 %184 %185 %7)
(fma.f64 %187 %181 %7)
(fma.f64 %189 z %7)
(fma.f64 %191 #s(literal 1/2 binary64) %7)
(fma.f64 %193 #s(literal 1/2 binary64) %7)
(fma.f64 %224 #s(literal 1/2 binary64) %653)
(fma.f64 %224 #s(literal 1/2 binary64) %655)
(fma.f64 %228 #s(literal 1/2 binary64) %653)
(fma.f64 %228 #s(literal 1/2 binary64) %655)
(fma.f64 %196 #s(literal 2 binary64) %7)
(fma.f64 %199 #s(literal 2 binary64) %7)
(fma.f64 %437 #s(literal 2 binary64) %653)
(fma.f64 %437 #s(literal 2 binary64) %655)
(fma.f64 %439 %182 %653)
(fma.f64 %439 %182 %655)
(fma.f64 %441 #s(literal 2 binary64) %653)
(fma.f64 %441 #s(literal 2 binary64) %655)
(fma.f64 %443 %181 %653)
(fma.f64 %443 %181 %655)
(fma.f64 %445 #s(literal 2 binary64) %670)
(fma.f64 %455 z %653)
(fma.f64 %455 z %655)
(fma.f64 %52 %195 %7)
(fma.f64 %60 %185 %653)
(fma.f64 %60 %185 %655)
(fma.f64 #s(literal 1/4 binary64) %181 %670)
(fma.f64 %181 %202 %7)
(fma.f64 %181 %474 %653)
(fma.f64 %181 %474 %655)
(fma.f64 %181 #s(literal 1/4 binary64) %670)
(fma.f64 %182 %204 %7)
(fma.f64 %182 %485 %653)
(fma.f64 %182 %485 %655)
(fma.f64 %198 %19 %7)
(fma.f64 %198 %492 %653)
(fma.f64 %198 %492 %655)
(fma.f64 %198 #s(literal 1 binary64) %670)
(fma.f64 %195 %36 %7)
(fma.f64 %195 %30 %653)
(fma.f64 %195 %30 %655)
(fma.f64 %19 %198 %7)
(fma.f64 %492 %198 %653)
(fma.f64 %492 %198 %655)
(fma.f64 %30 %195 %653)
(fma.f64 %30 %195 %655)
(fma.f64 %358 #s(literal 1 binary64) %653)
(fma.f64 %358 #s(literal 1 binary64) %655)
(fma.f64 %2 %3 %219)
(fma.f64 #s(literal 1/2 binary64) %209 %7)
(fma.f64 #s(literal 1/2 binary64) %211 %7)
(fma.f64 #s(literal 1/2 binary64) %231 %653)
(fma.f64 #s(literal 1/2 binary64) %231 %655)
(fma.f64 #s(literal 1/2 binary64) %234 %653)
(fma.f64 #s(literal 1/2 binary64) %234 %655)
(fma.f64 #s(literal 1/2 binary64) z %670)
(fma.f64 #s(literal 2 binary64) %213 %7)
(fma.f64 #s(literal 2 binary64) %215 %7)
(fma.f64 #s(literal 2 binary64) %540 %653)
(fma.f64 #s(literal 2 binary64) %540 %655)
(fma.f64 #s(literal 2 binary64) %542 %653)
(fma.f64 #s(literal 2 binary64) %542 %655)
(fma.f64 #s(literal 2 binary64) %544 %670)
(fma.f64 %185 %51 %7)
(fma.f64 %185 y %653)
(fma.f64 %185 y %655)
%621
(fma.f64 %3 %2 %219)
(fma.f64 %3 z %653)
(fma.f64 %3 z %655)
(fma.f64 %51 %185 %7)
(fma.f64 %219 #s(literal 1 binary64) %7)
(fma.f64 %18 z %7)
(fma.f64 #s(literal 1 binary64) %655 %358)
(fma.f64 #s(literal 1 binary64) %669 z)
(fma.f64 #s(literal 1 binary64) %198 %670)
(fma.f64 #s(literal 1 binary64) %358 %653)
(fma.f64 #s(literal 1 binary64) %358 %655)
(fma.f64 #s(literal 1 binary64) %219 %7)
(fma.f64 #s(literal 1 binary64) %7 %219)
(fma.f64 z #s(literal 1/2 binary64) %670)
(fma.f64 z %3 %653)
(fma.f64 z %3 %655)
(fma.f64 z %18 %7)
(fma.f64 y %185 %653)
(fma.f64 y %185 %655)
(fma.f64 y x %219)
(fma.f64 x y %219)
(-.f64 (-.f64 %7 %448) %185)
(-.f64 %655 %448)
(-.f64 %219 %14)
(-.f64 z (neg.f64 %669))
(-.f64 z %744)
(-.f64 %7 %389)
(+.f64 %655 %358)
(+.f64 %669 z)
(+.f64 %198 %670)
(+.f64 %358 %653)
(+.f64 %358 %655)
(+.f64 %219 %7)
(+.f64 z (+.f64 #s(literal 0 binary64) %669))
(+.f64 z (neg.f64 %744))
(+.f64 z %669)
(+.f64 %7 %219)

reconstruct37.0ms (2.6%)

Counts
538 → 40
Compiler

Compiled 538 to 807 computations (-50.0% saved)

eval3.0ms (0.2%)

Compiler

Compiled 35 to 102 computations (-191.4% saved)

prune1.0ms (0.1%)

Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New31435
Fresh000
Picked101
Done000
Total32436
Accuracy
100.0%
Counts
36 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 (neg.f64 y) (-.f64 z x) z)
98.4%
(fma.f64 z (-.f64 #s(literal 1 binary64) y) (*.f64 y x))
73.6%
(+.f64 (*.f64 x y) (approx (* z (- 1 y)) z))
59.6%
(approx (+ (* x y) (* z (- 1 y))) (*.f64 z (-.f64 #s(literal 1 binary64) y)))
Compiler

Compiled 4 to 13 computations (-225.0% saved)

sample0.0ms (0.0%)

Calls
Call 1
Inputs
Outputs

series17.0ms (1.2%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0153640
Stop Event
iter-limit
Counts
15 → 44
Calls
Call 1
Inputs
%2 = (*.f64 x y)
%5 = (-.f64 #s(literal 1 binary64) y)
%6 = (*.f64 z %5)
%10 = (* z (- 1 y))
%13 = (approx %10 z)
%14 = (neg.f64 y)
%15 = (*.f64 y x)
%16 = (-.f64 z x)
x
y
%2
z
#s(literal 1 binary64)
%5
%6
(approx (+ (* x y) %10) %6)
%13
%14
%15
%16
(fma.f64 %14 %16 z)
(fma.f64 z %5 %15)
(+.f64 %2 %13)
Outputs
%5 = (* x y)
%6 = (*.f64 x y)
%10 = (- 1 y)
%11 = (* z %10)
%12 = (+ %5 %11)
%14 = (-.f64 #s(literal 1 binary64) y)
%15 = (*.f64 z %14)
%19 = (- z x)
%22 = (*.f64 #s(literal -1 binary64) x)
%23 = (+.f64 z %22)
%25 = (neg y)
%27 = (+ (* %25 %19) z)
%28 = (*.f64 y z)
%29 = (*.f64 #s(literal -1 binary64) %28)
%30 = (+.f64 z %29)
%35 = (/.f64 %15 x)
%40 = (/.f64 z x)
%67 = (*.f64 #s(literal -1 binary64) y)
%68 = (+.f64 #s(literal 1 binary64) %67)
%72 = (*.f64 y (+.f64 x (*.f64 #s(literal -1 binary64) z)))
%76 = (-.f64 z x)
%78 = (*.f64 #s(literal -1 binary64) (*.f64 y %76))
%81 = (/.f64 #s(literal 1 binary64) y)
%86 = (/.f64 z y)
%87 = (fma.f64 #s(literal -1 binary64) z %86)
%102 = (*.f64 #s(literal -1 binary64) %86)
%103 = (+.f64 z %102)
%120 = (*.f64 z %68)
%123 = (/.f64 %6 z)
%128 = (/.f64 x z)
%138 = (*.f64 #s(literal -1 binary64) %123)
(approx x #s(literal 0 binary64))
(approx x x)
(approx %5 %6)
(approx %12 %15)
(approx %12 (fma.f64 x y %15))
(approx %19 z)
(approx %19 %23)
(approx %27 %30)
(approx %27 (+.f64 z (fma.f64 #s(literal -1 binary64) %28 %6)))
(approx %12 (*.f64 x (+.f64 y %35)))
(approx %19 %22)
(approx %19 (*.f64 x (-.f64 %40 #s(literal 1 binary64))))
(approx %27 (*.f64 x (+.f64 y (fma.f64 #s(literal -1 binary64) (/.f64 %28 x) %40))))
(approx %12 (*.f64 #s(literal -1 binary64) (*.f64 x (fma.f64 #s(literal -1 binary64) y (*.f64 #s(literal -1 binary64) %35)))))
(approx %19 (*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) %40)))))
(approx %27 (*.f64 #s(literal -1 binary64) (*.f64 x (fma.f64 #s(literal -1 binary64) y (*.f64 #s(literal -1 binary64) (/.f64 %30 x))))))
(approx y y)
(approx %10 #s(literal 1 binary64))
(approx %10 %68)
(approx %12 (+.f64 z %72))
(approx %25 %67)
(approx %27 (+.f64 z %78))
(approx %10 (*.f64 y (-.f64 %81 #s(literal 1 binary64))))
(approx %11 %29)
(approx %11 (*.f64 y %87))
(approx %12 %72)
(approx %12 (*.f64 y (+.f64 x %87)))
(approx %27 %78)
(approx %27 (*.f64 y (fma.f64 #s(literal -1 binary64) %76 %86)))
(approx %10 (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 #s(literal 1 binary64) %81))))
(approx %11 (*.f64 #s(literal -1 binary64) (*.f64 y %103)))
(approx %12 (*.f64 #s(literal -1 binary64) (*.f64 y %23)))
(approx %12 (*.f64 #s(literal -1 binary64) (*.f64 y (+.f64 z (fma.f64 #s(literal -1 binary64) x %102)))))
(approx %27 (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 %103 x))))
(approx %19 %76)
(approx %27 (fma.f64 x y %120))
(approx %12 (*.f64 z (-.f64 (+.f64 #s(literal 1 binary64) %123) y)))
(approx %19 (*.f64 z (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) %128))))
(approx %27 %120)
(approx %27 (*.f64 z (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) y %123))))
(approx %12 (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) %14 %138))))
(approx %19 (*.f64 #s(literal -1 binary64) (*.f64 z (-.f64 %128 #s(literal 1 binary64)))))
(approx %27 (*.f64 #s(literal -1 binary64) (*.f64 z (-.f64 y #s(literal 1 binary64)))))
(approx %27 (*.f64 #s(literal -1 binary64) (*.f64 z (-.f64 (+.f64 y %138) #s(literal 1 binary64)))))
Calls

9 calls:

TimeVariablePoint
3.0ms
y
inf
2.0ms
z
inf
1.0ms
x
inf
1.0ms
y
-inf
1.0ms
z
-inf

rewrite104.0ms (7.4%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01971
03169
18269
219668
359168
4251968
0407768
0424164
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
15 → 671
Calls
Call 1
Inputs
%2 = (*.f64 x y)
%5 = (-.f64 #s(literal 1 binary64) y)
%6 = (*.f64 z %5)
%10 = (* z (- 1 y))
%13 = (approx %10 z)
%14 = (neg.f64 y)
%15 = (*.f64 y x)
%16 = (-.f64 z x)
x
y
%2
z
#s(literal 1 binary64)
%5
%6
(approx (+ (* x y) %10) %6)
%13
%14
%15
%16
(fma.f64 %14 %16 z)
(fma.f64 z %5 %15)
(+.f64 %2 %13)
Outputs
%2 = (neg.f64 x)
%3 = (neg.f64 y)
%4 = (*.f64 %2 %3)
%5 = (*.f64 %3 %2)
%7 = (*.f64 y x)
%8 = (*.f64 #s(literal 1 binary64) %7)
%9 = (*.f64 x y)
%10 = (pow.f64 %7 #s(literal 1 binary64))
%13 = (/.f64 #s(literal 1 binary64) (pow.f64 %7 #s(literal -1 binary64)))
%14 = (*.f64 %2 y)
%15 = (neg.f64 %14)
%18 = (-.f64 #s(literal 1 binary64) y)
%19 = (*.f64 #s(literal 2 binary64) %18)
%21 = (/.f64 %19 #s(literal 8 binary64))
%24 = (/.f64 %19 #s(literal 4 binary64))
%30 = (/.f64 %19 #s(literal 1/2 binary64))
%34 = (/.f64 %19 #s(literal 1 binary64))
%38 = (-.f64 #s(literal 1/2 binary64) y)
%39 = (fma.f64 %38 #s(literal 2 binary64) #s(literal 1 binary64))
%42 = (fma.f64 %3 #s(literal -2 binary64) #s(literal -2 binary64))
%45 = (fma.f64 %3 #s(literal 1 binary64) #s(literal 1 binary64))
%49 = (-.f64 (*.f64 %3 #s(literal -2 binary64)) #s(literal 2 binary64))
%53 = (fma.f64 %19 #s(literal 2 binary64) #s(literal 0 binary64))
%56 = (fma.f64 #s(literal 2 binary64) y #s(literal -2 binary64))
%57 = (neg.f64 %56)
%60 = (neg.f64 %19)
%65 = (+.f64 y y)
%77 = (-.f64 y #s(literal 1 binary64))
%104 = (-.f64 #s(literal 0 binary64) %3)
%106 = (+.f64 #s(literal 0 binary64) y)
%108 = (-.f64 y #s(literal 0 binary64))
%120 = (*.f64 %77 #s(literal 1/2 binary64))
%121 = (+.f64 z z)
%122 = (neg.f64 %121)
%124 = (*.f64 %77 #s(literal 1 binary64))
%125 = (neg.f64 z)
%127 = (*.f64 %18 #s(literal 1/2 binary64))
%129 = (*.f64 %18 #s(literal 1 binary64))
%131 = (*.f64 %77 %122)
%133 = (*.f64 %18 %121)
%135 = (/.f64 z #s(literal -2 binary64))
%136 = (*.f64 %77 %135)
%138 = (*.f64 #s(literal 1/2 binary64) z)
%139 = (*.f64 %18 %138)
%141 = (*.f64 %77 #s(literal 2 binary64))
%143 = (*.f64 #s(literal 1/2 binary64) %77)
%145 = (*.f64 #s(literal 1/2 binary64) %18)
%150 = (*.f64 %122 %77)
%152 = (*.f64 %121 %18)
%154 = (*.f64 %135 %77)
%156 = (*.f64 %138 %18)
%160 = (*.f64 %18 z)
%167 = (*.f64 %125 %56)
%172 = (*.f64 z %19)
%175 = (*.f64 %56 %125)
%180 = (*.f64 %19 z)
%185 = (*.f64 %125 y)
%186 = (fma.f64 %185 #s(literal 2 binary64) %121)
%189 = (*.f64 %56 %122)
%192 = (*.f64 %122 %56)
%195 = (*.f64 %19 %121)
%198 = (*.f64 %121 %19)
%216 = (*.f64 %77 z)
%218 = (*.f64 %77 #s(literal 0 binary64))
%220 = (*.f64 %18 #s(literal 0 binary64))
%222 = (*.f64 #s(literal 0 binary64) %77)
%224 = (*.f64 #s(literal 0 binary64) %18)
%252 = (*.f64 y %122)
%254 = (*.f64 %3 %121)
%266 = (*.f64 y #s(literal 1/2 binary64))
%268 = (*.f64 y %135)
%270 = (*.f64 %3 %138)
%272 = (*.f64 %3 #s(literal 1/2 binary64))
%274 = (*.f64 #s(literal 1/2 binary64) %138)
%275 = (fma.f64 #s(literal 1/2 binary64) z %185)
%277 = (*.f64 z y)
%278 = (-.f64 %138 %277)
%280 = (*.f64 z %38)
%282 = (*.f64 %38 z)
%284 = (*.f64 %3 #s(literal 1 binary64))
%291 = (*.f64 y #s(literal 1 binary64))
%304 = (*.f64 #s(literal 1/2 binary64) y)
%311 = (*.f64 #s(literal 1/2 binary64) %3)
%329 = (neg.f64 %65)
%354 = (*.f64 %122 y)
%356 = (*.f64 %121 %3)
%372 = (*.f64 %135 y)
%374 = (*.f64 %138 #s(literal 1/2 binary64))
%379 = (*.f64 %138 %3)
%455 = (approx (- z (* (- z x) y)) %160)
%463 = (approx (* (- 1 y) z) z)
%468 = (neg.f64 %463)
%486 = (-.f64 z x)
%489 = (fma.f64 %2 #s(literal 2 binary64) %121)
%493 = (-.f64 (*.f64 %2 #s(literal 2 binary64)) %122)
%500 = (-.f64 x z)
%502 = (fma.f64 #s(literal 1/2 binary64) z %2)
%504 = (-.f64 %138 x)
%537 = (fma.f64 %500 y z)
%538 = (*.f64 #s(literal 1 binary64) %537)
%539 = (pow.f64 %537 #s(literal 1 binary64))
%540 = (*.f64 %500 y)
%541 = (fma.f64 %540 #s(literal 2 binary64) %121)
%543 = (/.f64 (neg.f64 %541) #s(literal -2 binary64))
%545 = (-.f64 (*.f64 %540 #s(literal 2 binary64)) %122)
%547 = (/.f64 (neg.f64 %545) #s(literal -2 binary64))
%548 = (/.f64 %541 #s(literal 2 binary64))
%549 = (/.f64 %545 #s(literal 2 binary64))
%551 = (/.f64 #s(literal 1 binary64) (pow.f64 %537 #s(literal -1 binary64)))
%552 = (*.f64 %486 y)
%554 = (neg.f64 (-.f64 %552 z))
%555 = (fma.f64 %120 %122 %7)
%556 = (fma.f64 %124 %125 %7)
%557 = (fma.f64 %127 %121 %7)
%558 = (fma.f64 %129 z %7)
%559 = (fma.f64 %131 #s(literal 1/2 binary64) %7)
%560 = (fma.f64 %133 #s(literal 1/2 binary64) %7)
%561 = (-.f64 z %14)
%562 = (fma.f64 %252 #s(literal 1/2 binary64) %561)
%563 = (fma.f64 y x z)
%564 = (fma.f64 %252 #s(literal 1/2 binary64) %563)
%565 = (fma.f64 %254 #s(literal 1/2 binary64) %561)
%566 = (fma.f64 %254 #s(literal 1/2 binary64) %563)
%567 = (fma.f64 %136 #s(literal 2 binary64) %7)
%568 = (fma.f64 %139 #s(literal 2 binary64) %7)
%569 = (fma.f64 %266 %122 %561)
%570 = (fma.f64 %266 %122 %563)
%571 = (fma.f64 %268 #s(literal 2 binary64) %561)
%572 = (fma.f64 %268 #s(literal 2 binary64) %563)
%573 = (fma.f64 %270 #s(literal 2 binary64) %561)
%574 = (fma.f64 %270 #s(literal 2 binary64) %563)
%575 = (fma.f64 %272 %121 %561)
%576 = (fma.f64 %272 %121 %563)
%577 = (fma.f64 #s(literal 1/2 binary64) z %540)
%578 = (fma.f64 %274 #s(literal 2 binary64) %577)
%579 = (-.f64 %138 %552)
%580 = (fma.f64 %274 #s(literal 2 binary64) %579)
%581 = (fma.f64 %284 z %561)
%582 = (fma.f64 %284 z %563)
%583 = (fma.f64 %141 %135 %7)
%584 = (fma.f64 %291 %125 %561)
%585 = (fma.f64 %291 %125 %563)
%586 = (fma.f64 #s(literal 1/4 binary64) %121 %577)
%587 = (fma.f64 #s(literal 1/4 binary64) %121 %579)
%588 = (fma.f64 %122 %143 %7)
%589 = (fma.f64 %122 %304 %561)
%590 = (fma.f64 %122 %304 %563)
%591 = (fma.f64 %121 %145 %7)
%592 = (fma.f64 %121 %311 %561)
%593 = (fma.f64 %121 %311 %563)
%594 = (fma.f64 %121 #s(literal 1/4 binary64) %577)
%595 = (fma.f64 %121 #s(literal 1/4 binary64) %579)
%596 = (fma.f64 %135 %56 %7)
%597 = (fma.f64 %135 %65 %561)
%598 = (fma.f64 %135 %65 %563)
%599 = (fma.f64 %138 %19 %7)
%600 = (fma.f64 %138 %329 %561)
%601 = (fma.f64 %138 %329 %563)
%602 = (fma.f64 %138 #s(literal 1 binary64) %577)
%603 = (fma.f64 %138 #s(literal 1 binary64) %579)
%604 = (fma.f64 %19 %138 %7)
%605 = (fma.f64 %329 %138 %561)
%606 = (fma.f64 %329 %138 %563)
%607 = (fma.f64 %65 %135 %561)
%608 = (fma.f64 %65 %135 %563)
%609 = (fma.f64 %185 #s(literal 1 binary64) %561)
%610 = (fma.f64 %185 #s(literal 1 binary64) %563)
%611 = (fma.f64 #s(literal 1/2 binary64) %150 %7)
%612 = (fma.f64 #s(literal 1/2 binary64) %152 %7)
%613 = (fma.f64 #s(literal 1/2 binary64) %354 %561)
%614 = (fma.f64 #s(literal 1/2 binary64) %354 %563)
%615 = (fma.f64 #s(literal 1/2 binary64) %356 %561)
%616 = (fma.f64 #s(literal 1/2 binary64) %356 %563)
%617 = (fma.f64 #s(literal 1/2 binary64) z %577)
%618 = (fma.f64 #s(literal 1/2 binary64) z %579)
%619 = (fma.f64 #s(literal 2 binary64) %154 %7)
%620 = (fma.f64 #s(literal 2 binary64) %156 %7)
%621 = (fma.f64 #s(literal 2 binary64) %372 %561)
%622 = (fma.f64 #s(literal 2 binary64) %372 %563)
%623 = (fma.f64 #s(literal 2 binary64) %374 %577)
%624 = (fma.f64 #s(literal 2 binary64) %374 %579)
%625 = (fma.f64 #s(literal 2 binary64) %379 %561)
%626 = (fma.f64 #s(literal 2 binary64) %379 %563)
%627 = (fma.f64 %2 %3 %160)
%628 = (fma.f64 %77 %125 %7)
%629 = (fma.f64 %125 %77 %7)
%630 = (fma.f64 %125 y %561)
%631 = (fma.f64 %125 y %563)
%632 = (fma.f64 %486 %3 z)
%633 = (fma.f64 %3 %2 %160)
%634 = (fma.f64 %3 %486 z)
%635 = (fma.f64 %3 z %561)
%636 = (fma.f64 %3 z %563)
%637 = (fma.f64 %160 #s(literal 1 binary64) %7)
%638 = (fma.f64 %18 z %7)
%639 = (fma.f64 #s(literal 1 binary64) %563 %185)
%640 = (fma.f64 #s(literal 1 binary64) %138 %577)
%641 = (fma.f64 #s(literal 1 binary64) %138 %579)
%642 = (fma.f64 #s(literal 1 binary64) %185 %561)
%643 = (fma.f64 #s(literal 1 binary64) %185 %563)
%644 = (fma.f64 #s(literal 1 binary64) %7 %160)
%645 = (fma.f64 #s(literal 1 binary64) %540 z)
%646 = (fma.f64 #s(literal 1 binary64) %537 #s(literal 0 binary64))
%647 = (fma.f64 #s(literal 1 binary64) %160 %7)
%648 = (fma.f64 z #s(literal 1/2 binary64) %577)
%649 = (fma.f64 z #s(literal 1/2 binary64) %579)
%650 = (fma.f64 z %3 %561)
%651 = (fma.f64 z %3 %563)
%652 = (fma.f64 z %18 %7)
%653 = (fma.f64 y %500 z)
%654 = (fma.f64 y %125 %561)
%655 = (fma.f64 y %125 %563)
%656 = (fma.f64 y x %160)
%657 = (fma.f64 x y %160)
%659 = (-.f64 (-.f64 %540 %135) %135)
%660 = (-.f64 %561 %277)
%661 = (-.f64 %563 %277)
%663 = (-.f64 %185 (neg.f64 %563))
%665 = (-.f64 %185 (-.f64 %14 z))
%666 = (-.f64 %7 %216)
%667 = (-.f64 %540 %125)
%668 = (-.f64 %537 #s(literal 0 binary64))
%669 = (-.f64 %160 %14)
%670 = (-.f64 z %552)
%672 = (+.f64 (fma.f64 %500 y %138) %138)
%673 = (+.f64 %563 %185)
%674 = (+.f64 %138 %577)
%675 = (+.f64 %138 %579)
%676 = (+.f64 %185 %561)
%677 = (+.f64 %185 %563)
%678 = (+.f64 %7 %160)
%679 = (+.f64 %540 z)
%680 = (+.f64 %537 #s(literal 0 binary64))
%681 = (+.f64 %160 %7)
%683 = (+.f64 z (+.f64 #s(literal 0 binary64) %540))
%685 = (+.f64 z (-.f64 #s(literal 0 binary64) %552))
%686 = (+.f64 z %540)
%687 = (fma.f64 y x %463)
x
y
%4
%5
%8
%7
%9
%10
%13
%15
z
#s(literal 1 binary64)
(*.f64 %21 #s(literal 4 binary64))
(*.f64 %24 #s(literal 2 binary64))
(*.f64 %19 #s(literal 1/2 binary64))
(*.f64 #s(literal 1 binary64) %18)
(pow.f64 %18 #s(literal 1 binary64))
(/.f64 (neg.f64 %30) #s(literal -4 binary64))
(/.f64 (neg.f64 %34) #s(literal -2 binary64))
(/.f64 (neg.f64 %39) #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 %53) #s(literal -4 binary64))
(/.f64 (neg.f64 %57) #s(literal -2 binary64))
(/.f64 (neg.f64 %60) #s(literal 2 binary64))
(/.f64 %30 #s(literal 4 binary64))
(/.f64 %34 #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 2 binary64) %65) #s(literal 2 binary64))
(/.f64 %39 #s(literal 2 binary64))
(/.f64 %42 #s(literal -2 binary64))
(/.f64 %45 #s(literal 1 binary64))
(/.f64 %49 #s(literal -2 binary64))
(/.f64 %53 #s(literal 4 binary64))
(/.f64 %57 #s(literal 2 binary64))
(/.f64 %60 #s(literal -2 binary64))
(/.f64 %19 #s(literal 2 binary64))
(/.f64 %56 #s(literal -2 binary64))
(/.f64 %77 #s(literal -1 binary64))
(/.f64 %18 #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) %19))
(/.f64 #s(literal 1 binary64) (pow.f64 %18 #s(literal -1 binary64)))
(neg.f64 %77)
(fma.f64 %21 #s(literal 4 binary64) #s(literal 0 binary64))
(fma.f64 %24 #s(literal 2 binary64) #s(literal 0 binary64))
(fma.f64 %19 #s(literal 1/2 binary64) #s(literal 0 binary64))
(fma.f64 #s(literal 1 binary64) %38 #s(literal 1/2 binary64))
(fma.f64 #s(literal 1 binary64) %3 #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) %18 #s(literal 0 binary64))
(-.f64 (+.f64 %18 #s(literal 1 binary64)) #s(literal 1 binary64))
(-.f64 %38 #s(literal -1/2 binary64))
(-.f64 #s(literal 1/2 binary64) (-.f64 #s(literal -1/2 binary64) %3))
(-.f64 #s(literal 1/2 binary64) (+.f64 #s(literal -1/2 binary64) y))
(-.f64 #s(literal 1/2 binary64) (-.f64 y #s(literal 1/2 binary64)))
(-.f64 #s(literal 0 binary64) %77)
(-.f64 %3 #s(literal -1 binary64))
(-.f64 %18 #s(literal 0 binary64))
(-.f64 #s(literal 1 binary64) %104)
(-.f64 #s(literal 1 binary64) %106)
(-.f64 #s(literal 1 binary64) %108)
%18
(+.f64 (/.f64 %65 #s(literal -2 binary64)) #s(literal 1 binary64))
(+.f64 %38 #s(literal 1/2 binary64))
(+.f64 #s(literal 1/2 binary64) (+.f64 #s(literal 0 binary64) %38))
(+.f64 #s(literal 1/2 binary64) %38)
(+.f64 #s(literal 0 binary64) %18)
(+.f64 %3 #s(literal 1 binary64))
(+.f64 %18 #s(literal 0 binary64))
(+.f64 #s(literal 1 binary64) %3)
(*.f64 %120 %122)
(*.f64 %124 %125)
(*.f64 %127 %121)
(*.f64 %129 z)
(*.f64 %131 #s(literal 1/2 binary64))
(*.f64 %133 #s(literal 1/2 binary64))
(*.f64 %136 #s(literal 2 binary64))
(*.f64 %139 #s(literal 2 binary64))
(*.f64 %141 %135)
(*.f64 %122 %143)
(*.f64 %121 %145)
(*.f64 %135 %56)
(*.f64 %138 %19)
(*.f64 %19 %138)
(*.f64 #s(literal 1/2 binary64) %150)
(*.f64 #s(literal 1/2 binary64) %152)
(*.f64 #s(literal 2 binary64) %154)
(*.f64 #s(literal 2 binary64) %156)
(*.f64 %77 %125)
(*.f64 %125 %77)
(*.f64 %160 #s(literal 1 binary64))
%160
(*.f64 #s(literal 1 binary64) %160)
(*.f64 z %18)
(pow.f64 %160 #s(literal 1 binary64))
(/.f64 (neg.f64 %131) #s(literal -2 binary64))
(/.f64 (neg.f64 %167) #s(literal -2 binary64))
(/.f64 (neg.f64 %133) #s(literal -2 binary64))
(/.f64 (neg.f64 %172) #s(literal -2 binary64))
(/.f64 (neg.f64 %175) #s(literal -2 binary64))
(/.f64 (neg.f64 %150) #s(literal -2 binary64))
(/.f64 (neg.f64 %180) #s(literal -2 binary64))
(/.f64 (neg.f64 %152) #s(literal -2 binary64))
(/.f64 (neg.f64 %186) #s(literal -2 binary64))
(/.f64 (neg.f64 %189) #s(literal -4 binary64))
(/.f64 (neg.f64 %192) #s(literal -4 binary64))
(/.f64 (neg.f64 %195) #s(literal -4 binary64))
(/.f64 (neg.f64 %198) #s(literal -4 binary64))
(/.f64 %131 #s(literal 2 binary64))
(/.f64 %167 #s(literal 2 binary64))
(/.f64 %133 #s(literal 2 binary64))
(/.f64 %172 #s(literal 2 binary64))
(/.f64 %175 #s(literal 2 binary64))
(/.f64 %150 #s(literal 2 binary64))
(/.f64 %180 #s(literal 2 binary64))
(/.f64 %152 #s(literal 2 binary64))
(/.f64 %186 #s(literal 2 binary64))
(/.f64 %189 #s(literal 4 binary64))
(/.f64 %192 #s(literal 4 binary64))
(/.f64 %195 #s(literal 4 binary64))
(/.f64 %198 #s(literal 4 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %160 #s(literal -1 binary64)))
(neg.f64 %216)
(fma.f64 %120 %122 %218)
(fma.f64 %120 %122 %220)
(fma.f64 %120 %122 %222)
(fma.f64 %120 %122 %224)
(fma.f64 %120 %122 #s(literal 0 binary64))
(fma.f64 %124 %125 %218)
(fma.f64 %124 %125 %220)
(fma.f64 %124 %125 %222)
(fma.f64 %124 %125 %224)
(fma.f64 %124 %125 #s(literal 0 binary64))
(fma.f64 %127 %121 %218)
(fma.f64 %127 %121 %220)
(fma.f64 %127 %121 %222)
(fma.f64 %127 %121 %224)
(fma.f64 %127 %121 #s(literal 0 binary64))
(fma.f64 %129 z %218)
(fma.f64 %129 z %220)
(fma.f64 %129 z %222)
(fma.f64 %129 z %224)
(fma.f64 %129 z #s(literal 0 binary64))
(fma.f64 %131 #s(literal 1/2 binary64) %218)
(fma.f64 %131 #s(literal 1/2 binary64) %220)
(fma.f64 %131 #s(literal 1/2 binary64) %222)
(fma.f64 %131 #s(literal 1/2 binary64) %224)
(fma.f64 %131 #s(literal 1/2 binary64) #s(literal 0 binary64))
(fma.f64 %133 #s(literal 1/2 binary64) %218)
(fma.f64 %133 #s(literal 1/2 binary64) %220)
(fma.f64 %133 #s(literal 1/2 binary64) %222)
(fma.f64 %133 #s(literal 1/2 binary64) %224)
(fma.f64 %133 #s(literal 1/2 binary64) #s(literal 0 binary64))
(fma.f64 %252 #s(literal 1/2 binary64) z)
(fma.f64 %254 #s(literal 1/2 binary64) z)
(fma.f64 %136 #s(literal 2 binary64) %218)
(fma.f64 %136 #s(literal 2 binary64) %220)
(fma.f64 %136 #s(literal 2 binary64) %222)
(fma.f64 %136 #s(literal 2 binary64) %224)
(fma.f64 %136 #s(literal 2 binary64) #s(literal 0 binary64))
(fma.f64 %139 #s(literal 2 binary64) %218)
(fma.f64 %139 #s(literal 2 binary64) %220)
(fma.f64 %139 #s(literal 2 binary64) %222)
(fma.f64 %139 #s(literal 2 binary64) %224)
(fma.f64 %139 #s(literal 2 binary64) #s(literal 0 binary64))
(fma.f64 %266 %122 z)
(fma.f64 %268 #s(literal 2 binary64) z)
(fma.f64 %270 #s(literal 2 binary64) z)
(fma.f64 %272 %121 z)
(fma.f64 %274 #s(literal 2 binary64) %275)
(fma.f64 %274 #s(literal 2 binary64) %278)
(fma.f64 %274 #s(literal 2 binary64) %280)
(fma.f64 %274 #s(literal 2 binary64) %282)
(fma.f64 %284 z z)
(fma.f64 %141 %135 %218)
(fma.f64 %141 %135 %220)
(fma.f64 %141 %135 %222)
(fma.f64 %141 %135 %224)
(fma.f64 %141 %135 #s(literal 0 binary64))
(fma.f64 %291 %125 z)
(fma.f64 #s(literal 1/4 binary64) %121 %275)
(fma.f64 #s(literal 1/4 binary64) %121 %278)
(fma.f64 #s(literal 1/4 binary64) %121 %280)
(fma.f64 #s(literal 1/4 binary64) %121 %282)
(fma.f64 %38 z %138)
(fma.f64 %122 %143 %218)
(fma.f64 %122 %143 %220)
(fma.f64 %122 %143 %222)
(fma.f64 %122 %143 %224)
(fma.f64 %122 %143 #s(literal 0 binary64))
(fma.f64 %122 %304 z)
(fma.f64 %121 %145 %218)
(fma.f64 %121 %145 %220)
(fma.f64 %121 %145 %222)
(fma.f64 %121 %145 %224)
(fma.f64 %121 %145 #s(literal 0 binary64))
(fma.f64 %121 %311 z)
(fma.f64 %121 #s(literal 1/4 binary64) %275)
(fma.f64 %121 #s(literal 1/4 binary64) %278)
(fma.f64 %121 #s(literal 1/4 binary64) %280)
(fma.f64 %121 #s(literal 1/4 binary64) %282)
(fma.f64 %135 %56 %218)
(fma.f64 %135 %56 %220)
(fma.f64 %135 %56 %222)
(fma.f64 %135 %56 %224)
(fma.f64 %135 %56 #s(literal 0 binary64))
(fma.f64 %135 %65 z)
(fma.f64 %135 %77 %154)
(fma.f64 %138 %19 %218)
(fma.f64 %138 %19 %220)
(fma.f64 %138 %19 %222)
(fma.f64 %138 %19 %224)
(fma.f64 %138 %19 #s(literal 0 binary64))
(fma.f64 %138 %329 z)
(fma.f64 %138 %18 %156)
(fma.f64 %138 #s(literal 1 binary64) %275)
(fma.f64 %138 #s(literal 1 binary64) %278)
(fma.f64 %138 #s(literal 1 binary64) %280)
(fma.f64 %138 #s(literal 1 binary64) %282)
(fma.f64 %19 %138 %218)
(fma.f64 %19 %138 %220)
(fma.f64 %19 %138 %222)
(fma.f64 %19 %138 %224)
(fma.f64 %19 %138 #s(literal 0 binary64))
(fma.f64 %329 %138 z)
(fma.f64 %65 %135 z)
(fma.f64 %185 #s(literal 1 binary64) z)
(fma.f64 #s(literal 1/2 binary64) %150 %218)
(fma.f64 #s(literal 1/2 binary64) %150 %220)
(fma.f64 #s(literal 1/2 binary64) %150 %222)
(fma.f64 #s(literal 1/2 binary64) %150 %224)
(fma.f64 #s(literal 1/2 binary64) %150 #s(literal 0 binary64))
(fma.f64 #s(literal 1/2 binary64) %152 %218)
(fma.f64 #s(literal 1/2 binary64) %152 %220)
(fma.f64 #s(literal 1/2 binary64) %152 %222)
(fma.f64 #s(literal 1/2 binary64) %152 %224)
(fma.f64 #s(literal 1/2 binary64) %152 #s(literal 0 binary64))
(fma.f64 #s(literal 1/2 binary64) %354 z)
(fma.f64 #s(literal 1/2 binary64) %356 z)
(fma.f64 #s(literal 1/2 binary64) z %275)
(fma.f64 #s(literal 1/2 binary64) z %278)
(fma.f64 #s(literal 1/2 binary64) z %280)
(fma.f64 #s(literal 1/2 binary64) z %282)
(fma.f64 #s(literal 2 binary64) %154 %218)
(fma.f64 #s(literal 2 binary64) %154 %220)
(fma.f64 #s(literal 2 binary64) %154 %222)
(fma.f64 #s(literal 2 binary64) %154 %224)
(fma.f64 #s(literal 2 binary64) %154 #s(literal 0 binary64))
(fma.f64 #s(literal 2 binary64) %156 %218)
(fma.f64 #s(literal 2 binary64) %156 %220)
(fma.f64 #s(literal 2 binary64) %156 %222)
(fma.f64 #s(literal 2 binary64) %156 %224)
(fma.f64 #s(literal 2 binary64) %156 #s(literal 0 binary64))
(fma.f64 #s(literal 2 binary64) %372 z)
(fma.f64 #s(literal 2 binary64) %374 %275)
(fma.f64 #s(literal 2 binary64) %374 %278)
(fma.f64 #s(literal 2 binary64) %374 %280)
(fma.f64 #s(literal 2 binary64) %374 %282)
(fma.f64 #s(literal 2 binary64) %379 z)
(fma.f64 %77 %135 %136)
(fma.f64 %77 %125 %218)
(fma.f64 %77 %125 %220)
(fma.f64 %77 %125 %222)
(fma.f64 %77 %125 %224)
(fma.f64 %77 %125 #s(literal 0 binary64))
(fma.f64 %125 %77 %218)
(fma.f64 %125 %77 %220)
(fma.f64 %125 %77 %222)
(fma.f64 %125 %77 %224)
(fma.f64 %125 %77 #s(literal 0 binary64))
(fma.f64 %125 y z)
(fma.f64 %3 z z)
(fma.f64 %160 #s(literal 1 binary64) %218)
(fma.f64 %160 #s(literal 1 binary64) %220)
(fma.f64 %160 #s(literal 1 binary64) %222)
(fma.f64 %160 #s(literal 1 binary64) %224)
(fma.f64 %160 #s(literal 1 binary64) #s(literal 0 binary64))
(fma.f64 %18 %138 %139)
(fma.f64 %18 z %218)
(fma.f64 %18 z %220)
(fma.f64 %18 z %222)
(fma.f64 %18 z %224)
(fma.f64 %18 z #s(literal 0 binary64))
(fma.f64 #s(literal 1 binary64) %138 %275)
(fma.f64 #s(literal 1 binary64) %138 %278)
(fma.f64 #s(literal 1 binary64) %138 %280)
(fma.f64 #s(literal 1 binary64) %138 %282)
(fma.f64 #s(literal 1 binary64) %185 z)
(fma.f64 #s(literal 1 binary64) %160 %218)
(fma.f64 #s(literal 1 binary64) %160 %220)
(fma.f64 #s(literal 1 binary64) %160 %222)
(fma.f64 #s(literal 1 binary64) %160 %224)
(fma.f64 #s(literal 1 binary64) %160 #s(literal 0 binary64))
(fma.f64 z %38 %138)
(fma.f64 z #s(literal 1/2 binary64) %275)
(fma.f64 z #s(literal 1/2 binary64) %278)
(fma.f64 z #s(literal 1/2 binary64) %280)
(fma.f64 z #s(literal 1/2 binary64) %282)
(fma.f64 z %3 z)
(fma.f64 z %18 %218)
(fma.f64 z %18 %220)
(fma.f64 z %18 %222)
(fma.f64 z %18 %224)
(fma.f64 z %18 #s(literal 0 binary64))
(fma.f64 y %125 z)
(-.f64 %185 %125)
(-.f64 z %277)
(+.f64 (fma.f64 %125 y %138) %138)
(+.f64 %136 %136)
(+.f64 %139 %139)
(+.f64 %280 %138)
(+.f64 %154 %154)
(+.f64 %156 %156)
(+.f64 %282 %138)
(+.f64 %138 %275)
(+.f64 %138 %278)
(+.f64 %138 %280)
(+.f64 %138 %282)
(+.f64 %185 z)
(+.f64 %160 %218)
(+.f64 %160 %220)
(+.f64 %160 %222)
(+.f64 %160 %224)
(+.f64 %160 #s(literal 0 binary64))
(+.f64 z (+.f64 #s(literal 0 binary64) %185))
(+.f64 z (-.f64 #s(literal 0 binary64) %277))
(+.f64 z %185)
(*.f64 #s(literal 1 binary64) %455)
(pow.f64 %455 #s(literal 1 binary64))
%455
(/.f64 #s(literal 1 binary64) (pow.f64 %455 #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) %463)
(pow.f64 %463 #s(literal 1 binary64))
%463
(/.f64 #s(literal 1 binary64) (pow.f64 %463 #s(literal -1 binary64)))
(neg.f64 %468)
(*.f64 #s(literal 1 binary64) %3)
(pow.f64 %3 #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %3 #s(literal -1 binary64)))
(neg.f64 %106)
(neg.f64 %108)
%3
(fma.f64 #s(literal 1 binary64) %3 #s(literal 0 binary64))
(-.f64 #s(literal 0 binary64) %104)
(-.f64 #s(literal 0 binary64) %106)
(-.f64 #s(literal 0 binary64) y)
(-.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) %3))
(-.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) y))
(+.f64 #s(literal 0 binary64) %3)
(+.f64 %3 #s(literal 0 binary64))
%4
%5
%8
%7
%9
%10
%13
%15
(*.f64 #s(literal 1 binary64) %486)
(pow.f64 %486 #s(literal 1 binary64))
(/.f64 (neg.f64 %489) #s(literal -2 binary64))
(/.f64 (neg.f64 %493) #s(literal -2 binary64))
(/.f64 %489 #s(literal 2 binary64))
(/.f64 %493 #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %486 #s(literal -1 binary64)))
(neg.f64 %500)
(fma.f64 %274 #s(literal 2 binary64) %502)
(fma.f64 %274 #s(literal 2 binary64) %504)
(fma.f64 #s(literal 1/4 binary64) %121 %502)
(fma.f64 #s(literal 1/4 binary64) %121 %504)
(fma.f64 %121 #s(literal 1/4 binary64) %502)
(fma.f64 %121 #s(literal 1/4 binary64) %504)
(fma.f64 %138 #s(literal 1 binary64) %502)
(fma.f64 %138 #s(literal 1 binary64) %504)
(fma.f64 #s(literal 1/2 binary64) z %502)
(fma.f64 #s(literal 1/2 binary64) z %504)
(fma.f64 #s(literal 2 binary64) %374 %502)
(fma.f64 #s(literal 2 binary64) %374 %504)
(fma.f64 #s(literal 1 binary64) %138 %502)
(fma.f64 #s(literal 1 binary64) %138 %504)
(fma.f64 #s(literal 1 binary64) %2 z)
(fma.f64 #s(literal 1 binary64) %486 #s(literal 0 binary64))
(fma.f64 z #s(literal 1/2 binary64) %502)
(fma.f64 z #s(literal 1/2 binary64) %504)
(-.f64 (-.f64 %2 %135) %135)
(-.f64 %2 %125)
(-.f64 %486 #s(literal 0 binary64))
%486
(+.f64 (+.f64 %2 %138) %138)
(+.f64 %138 %502)
(+.f64 %138 %504)
(+.f64 %2 z)
(+.f64 %486 #s(literal 0 binary64))
(+.f64 z (+.f64 #s(literal 0 binary64) %2))
(+.f64 z (-.f64 #s(literal 0 binary64) x))
(+.f64 z %2)
%538
%539
%543
%547
%548
%549
%551
%554
%555
%556
%557
%558
%559
%560
%562
%564
%565
%566
%567
%568
%569
%570
%571
%572
%573
%574
%575
%576
%578
%580
%581
%582
%583
%584
%585
%586
%587
%588
%589
%590
%591
%592
%593
%594
%595
%596
%597
%598
%599
%600
%601
%602
%603
%604
%605
%606
%607
%608
%609
%610
%611
%612
%613
%614
%615
%616
%617
%618
%619
%620
%621
%622
%623
%624
%625
%626
%627
%537
%628
%629
%630
%631
%632
%633
%634
%635
%636
%637
%638
%639
%640
%641
%642
%643
%644
%645
%646
%647
%648
%649
%650
%651
%652
%653
%654
%655
%656
%657
%659
%660
%661
%663
%665
%666
%667
%668
%669
%670
%672
%673
%674
%675
%676
%677
%678
%679
%680
%681
%683
%685
%686
%538
%539
%543
%547
%548
%549
%551
%554
%555
%556
%557
%558
%559
%560
%562
%564
%565
%566
%567
%568
%569
%570
%571
%572
%573
%574
%575
%576
%578
%580
%581
%582
%583
%584
%585
%586
%587
%588
%589
%590
%591
%592
%593
%594
%595
%596
%597
%598
%599
%600
%601
%602
%603
%604
%605
%606
%607
%608
%609
%610
%611
%612
%613
%614
%615
%616
%617
%618
%619
%620
%621
%622
%623
%624
%625
%626
%627
%537
%628
%629
%630
%631
%632
%633
%634
%635
%636
%637
%638
%639
%640
%641
%642
%643
%644
%645
%646
%647
%648
%649
%650
%651
%652
%653
%654
%655
%656
%657
%659
%660
%661
%663
%665
%666
%667
%668
%669
%670
%672
%673
%674
%675
%676
%677
%678
%679
%680
%681
%683
%685
%686
(*.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 %2 %3 %463)
(fma.f64 %3 %2 %463)
(fma.f64 #s(literal 1 binary64) %7 %463)
(fma.f64 #s(literal 1 binary64) %463 %7)
%687
(fma.f64 x y %463)
(-.f64 %7 %468)
(-.f64 %463 %14)
(+.f64 %7 %463)
(+.f64 %463 %7)

reconstruct53.0ms (3.7%)

Counts
715 → 78
Compiler

Compiled 715 to 787 computations (-10.1% saved)

eval6.0ms (0.4%)

Compiler

Compiled 68 to 158 computations (-132.4% saved)

prune2.0ms (0.1%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New64468
Fresh000
Picked314
Done000
Total67572
Accuracy
100.0%
Counts
72 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
98.4%
(fma.f64 z (-.f64 #s(literal 1 binary64) y) (*.f64 y x))
100.0%
(fma.f64 y (-.f64 x z) z)
73.6%
(fma.f64 x y (approx (* (- 1 y) z) z))
59.6%
(approx (+ (* x y) (* z (- 1 y))) (-.f64 z (*.f64 z y)))
31.5%
%5 = (- 1 y)
(approx (+ (* x y) (* z %5)) (*.f64 z (approx %5 #s(literal 1 binary64))))
Compiler

Compiled 5 to 13 computations (-160.0% saved)

sample0.0ms (0.0%)

Calls
Call 1
Inputs
Outputs

series16.0ms (1.2%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0163668
Stop Event
iter-limit
Counts
14 → 47
Calls
Call 1
Inputs
%5 = (- 1 y)
%6 = (approx %5 #s(literal 1 binary64))
%7 = (*.f64 z y)
%8 = (-.f64 z %7)
%9 = (*.f64 z %6)
%11 = (approx (* %5 z) z)
%12 = (-.f64 x z)
%17 = (+ (* x y) (* z %5))
x
y
z
#s(literal 1 binary64)
%6
%7
%8
%9
%11
%12
(fma.f64 y %12 z)
(fma.f64 x y %11)
(approx %17 %9)
(approx %17 %8)
Outputs
%5 = (- x z)
%7 = (*.f64 #s(literal -1 binary64) z)
%9 = (-.f64 x z)
%13 = (+ (* y %5) z)
%14 = (*.f64 y z)
%15 = (*.f64 #s(literal -1 binary64) %14)
%16 = (+.f64 z %15)
%18 = (*.f64 x y)
%24 = (- 1 y)
%26 = (+ (* x y) (* %24 z))
%28 = (-.f64 #s(literal 1 binary64) y)
%29 = (*.f64 z %28)
%33 = (/.f64 z x)
%44 = (/.f64 %29 x)
%65 = (*.f64 #s(literal -1 binary64) y)
%66 = (+.f64 #s(literal 1 binary64) %65)
%68 = (* z y)
%70 = (- z %68)
%72 = (*.f64 y %9)
%75 = (+.f64 x %7)
%76 = (*.f64 y %75)
%80 = (/.f64 #s(literal 1 binary64) y)
%85 = (/.f64 z y)
%89 = (* z %24)
%90 = (fma.f64 #s(literal -1 binary64) z %85)
%106 = (*.f64 #s(literal -1 binary64) %85)
%130 = (*.f64 z %66)
%133 = (/.f64 x z)
%138 = (/.f64 %18 z)
%156 = (*.f64 #s(literal -1 binary64) %138)
(approx x #s(literal 0 binary64))
(approx x x)
(approx %5 %7)
(approx %5 %9)
(approx %13 %16)
(approx %13 (+.f64 z (fma.f64 #s(literal -1 binary64) %14 %18)))
(approx %26 %29)
(approx %26 (fma.f64 x y %29))
(approx %5 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) %33))))
(approx %13 %18)
(approx %13 (*.f64 x (+.f64 y (fma.f64 #s(literal -1 binary64) (/.f64 %14 x) %33))))
(approx %26 (*.f64 x (+.f64 y %44)))
(approx %5 (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 %33 #s(literal 1 binary64)))))
(approx %13 (*.f64 #s(literal -1 binary64) (*.f64 x (fma.f64 #s(literal -1 binary64) y (*.f64 #s(literal -1 binary64) (/.f64 %16 x))))))
(approx %26 (*.f64 #s(literal -1 binary64) (*.f64 x (fma.f64 #s(literal -1 binary64) y (*.f64 #s(literal -1 binary64) %44)))))
(approx y y)
(approx %24 #s(literal 1 binary64))
(approx %24 %66)
(approx %68 %14)
(approx %70 z)
(approx %13 (+.f64 z %72))
(approx %26 (+.f64 z %76))
(approx %24 %65)
(approx %24 (*.f64 y (-.f64 %80 #s(literal 1 binary64))))
(approx %70 %15)
(approx %70 (*.f64 y (-.f64 %85 z)))
(approx %89 (*.f64 y %90))
(approx %13 %72)
(approx %13 (*.f64 y (-.f64 (+.f64 x %85) z)))
(approx %26 %76)
(approx %26 (*.f64 y (+.f64 x %90)))
(approx %24 (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 #s(literal 1 binary64) %80))))
(approx %70 (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 %106 %7))))
(approx %89 (*.f64 #s(literal -1 binary64) (*.f64 y (+.f64 z %106))))
(approx %13 (*.f64 #s(literal -1 binary64) (*.f64 y (fma.f64 #s(literal -1 binary64) %9 %106))))
(approx %26 (*.f64 #s(literal -1 binary64) (*.f64 y (+.f64 z (*.f64 #s(literal -1 binary64) x)))))
(approx %26 (*.f64 #s(literal -1 binary64) (*.f64 y (+.f64 z (fma.f64 #s(literal -1 binary64) x %106)))))
(approx %5 %75)
(approx %13 (fma.f64 x y %130))
(approx %5 (*.f64 z (-.f64 %133 #s(literal 1 binary64))))
(approx %13 %130)
(approx %13 (*.f64 z (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) y %138))))
(approx %26 (*.f64 z (-.f64 (+.f64 #s(literal 1 binary64) %138) y)))
(approx %5 (*.f64 #s(literal -1 binary64) (*.f64 z (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) %133)))))
(approx %13 (*.f64 #s(literal -1 binary64) (*.f64 z (-.f64 y #s(literal 1 binary64)))))
(approx %13 (*.f64 #s(literal -1 binary64) (*.f64 z (-.f64 (+.f64 y %156) #s(literal 1 binary64)))))
(approx %26 (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) %28 %156))))
Calls

9 calls:

TimeVariablePoint
3.0ms
y
inf
2.0ms
z
inf
1.0ms
y
-inf
1.0ms
z
-inf
1.0ms
x
inf

rewrite109.0ms (7.7%)

Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01982
02682
18182
218676
352876
4253476
0411976
0429376
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
14 → 705
Calls
Call 1
Inputs
%5 = (- 1 y)
%6 = (approx %5 #s(literal 1 binary64))
%7 = (*.f64 z y)
%8 = (-.f64 z %7)
%9 = (*.f64 z %6)
%11 = (approx (* %5 z) z)
%12 = (-.f64 x z)
%17 = (+ (* x y) (* z %5))
x
y
z
#s(literal 1 binary64)
%6
%7
%8
%9
%11
%12
(fma.f64 y %12 z)
(fma.f64 x y %11)
(approx %17 %9)
(approx %17 %8)
Outputs
%5 = (- 1 y)
%6 = (approx %5 #s(literal 1 binary64))
%12 = (neg.f64 y)
%13 = (+.f64 z z)
%14 = (neg.f64 %13)
%15 = (*.f64 %12 %14)
%18 = (*.f64 y %13)
%20 = (*.f64 y #s(literal 1/2 binary64))
%23 = (/.f64 z #s(literal -2 binary64))
%24 = (*.f64 %12 %23)
%27 = (*.f64 #s(literal 1/2 binary64) z)
%28 = (*.f64 y %27)
%30 = (*.f64 %12 #s(literal 1/2 binary64))
%32 = (*.f64 %12 #s(literal 1 binary64))
%33 = (neg.f64 z)
%35 = (*.f64 y #s(literal 1 binary64))
%37 = (*.f64 #s(literal 1/2 binary64) %12)
%39 = (*.f64 #s(literal 1/2 binary64) y)
%41 = (+.f64 y y)
%42 = (neg.f64 %41)
%47 = (*.f64 z y)
%49 = (*.f64 %14 %12)
%51 = (*.f64 %13 y)
%53 = (*.f64 %23 %12)
%55 = (*.f64 %27 y)
%76 = (*.f64 %12 z)
%79 = (*.f64 %12 #s(literal 0 binary64))
%81 = (*.f64 y #s(literal 0 binary64))
%83 = (*.f64 #s(literal 0 binary64) %12)
%85 = (*.f64 #s(literal 0 binary64) y)
%191 = (-.f64 y #s(literal 1 binary64))
%192 = (*.f64 %191 #s(literal 1/2 binary64))
%194 = (*.f64 %191 #s(literal 1 binary64))
%196 = (-.f64 #s(literal 1 binary64) y)
%197 = (*.f64 %196 #s(literal 1/2 binary64))
%199 = (*.f64 %196 #s(literal 1 binary64))
%201 = (*.f64 %191 %14)
%203 = (*.f64 %196 %13)
%205 = (*.f64 %191 %23)
%207 = (*.f64 %196 %27)
%209 = (*.f64 %191 #s(literal 2 binary64))
%211 = (*.f64 #s(literal 1/2 binary64) %191)
%213 = (*.f64 #s(literal 1/2 binary64) %196)
%215 = (fma.f64 #s(literal 2 binary64) y #s(literal -2 binary64))
%217 = (*.f64 #s(literal 2 binary64) %196)
%220 = (*.f64 %14 %191)
%222 = (*.f64 %13 %196)
%224 = (*.f64 %23 %191)
%226 = (*.f64 %27 %196)
%230 = (*.f64 %196 z)
%237 = (*.f64 %33 %215)
%242 = (*.f64 z %217)
%245 = (*.f64 %215 %33)
%250 = (*.f64 %217 z)
%255 = (fma.f64 %76 #s(literal 2 binary64) %13)
%259 = (-.f64 (*.f64 %76 #s(literal 2 binary64)) %14)
%262 = (*.f64 %215 %14)
%266 = (*.f64 %14 %215)
%269 = (*.f64 %217 %13)
%272 = (*.f64 %13 %217)
%292 = (*.f64 %191 z)
%294 = (*.f64 %191 #s(literal 0 binary64))
%296 = (*.f64 %196 #s(literal 0 binary64))
%298 = (*.f64 #s(literal 0 binary64) %191)
%300 = (*.f64 #s(literal 0 binary64) %196)
%328 = (*.f64 %12 %13)
%330 = (*.f64 y %14)
%344 = (*.f64 %12 %27)
%346 = (*.f64 y %23)
%348 = (*.f64 #s(literal 1/2 binary64) %27)
%349 = (fma.f64 #s(literal 1/2 binary64) z %76)
%351 = (-.f64 %27 %47)
%353 = (-.f64 #s(literal 1/2 binary64) y)
%354 = (*.f64 z %353)
%356 = (*.f64 %353 z)
%422 = (*.f64 %14 y)
%424 = (*.f64 %13 %12)
%440 = (*.f64 %27 #s(literal 1/2 binary64))
%445 = (*.f64 %27 %12)
%447 = (*.f64 %23 y)
%524 = (*.f64 %6 #s(literal 1/2 binary64))
%526 = (*.f64 %6 #s(literal 2 binary64))
%528 = (*.f64 %6 #s(literal 1 binary64))
%530 = (*.f64 %6 %13)
%532 = (*.f64 %6 %27)
%534 = (*.f64 #s(literal 1/2 binary64) %6)
%536 = (*.f64 #s(literal 2 binary64) %6)
%538 = (*.f64 %13 %6)
%540 = (*.f64 %27 %6)
%542 = (*.f64 %6 z)
%559 = (*.f64 %6 #s(literal 0 binary64))
%561 = (*.f64 #s(literal 0 binary64) %6)
%594 = (approx (* %5 z) z)
%599 = (neg.f64 %594)
%601 = (-.f64 x z)
%604 = (fma.f64 x #s(literal 2 binary64) %14)
%608 = (-.f64 (*.f64 x #s(literal 2 binary64)) %13)
%615 = (-.f64 z x)
%617 = (*.f64 #s(literal -1 binary64) %13)
%618 = (+.f64 #s(literal 0 binary64) x)
%620 = (neg.f64 x)
%621 = (-.f64 #s(literal 0 binary64) %620)
%625 = (/.f64 %13 #s(literal -8 binary64))
%630 = (*.f64 z #s(literal -1/2 binary64))
%634 = (*.f64 #s(literal -1 binary64) %27)
%638 = (*.f64 %23 #s(literal 1/2 binary64))
%642 = (*.f64 #s(literal 1/2 binary64) %23)
%643 = (fma.f64 #s(literal 1/2 binary64) %33 x)
%645 = (-.f64 %23 %620)
%647 = (*.f64 z #s(literal -2 binary64))
%651 = (/.f64 z #s(literal -1/2 binary64))
%676 = (/.f64 z #s(literal -4 binary64))
%686 = (*.f64 %13 #s(literal -1 binary64))
%690 = (*.f64 #s(literal -2 binary64) z)
%701 = (*.f64 %27 #s(literal -1 binary64))
%705 = (*.f64 #s(literal -1/2 binary64) z)
%739 = (fma.f64 %601 y z)
%742 = (*.f64 %601 y)
%743 = (fma.f64 %742 #s(literal 2 binary64) %13)
%747 = (-.f64 (*.f64 %742 #s(literal 2 binary64)) %14)
%754 = (*.f64 %615 y)
%757 = (*.f64 y x)
%764 = (fma.f64 y x z)
%773 = (fma.f64 #s(literal 1/2 binary64) z %742)
%775 = (-.f64 %27 %754)
%843 = (*.f64 %12 x)
%862 = (fma.f64 y x %594)
%880 = (- z (* (- z x) y))
%881 = (approx %880 %542)
%886 = (approx %880 %230)
x
y
z
#s(literal 1 binary64)
(*.f64 #s(literal 1 binary64) %6)
(pow.f64 %6 #s(literal 1 binary64))
%6
(/.f64 #s(literal 1 binary64) (pow.f64 %6 #s(literal -1 binary64)))
(*.f64 %15 #s(literal 1/2 binary64))
(*.f64 %18 #s(literal 1/2 binary64))
(*.f64 %20 %13)
(*.f64 %24 #s(literal 2 binary64))
(*.f64 %28 #s(literal 2 binary64))
(*.f64 %30 %14)
(*.f64 %32 %33)
(*.f64 %35 z)
(*.f64 %14 %37)
(*.f64 %13 %39)
(*.f64 %23 %42)
(*.f64 %27 %41)
(*.f64 %42 %23)
(*.f64 %41 %27)
(*.f64 %47 #s(literal 1 binary64))
(*.f64 #s(literal 1/2 binary64) %49)
(*.f64 #s(literal 1/2 binary64) %51)
(*.f64 #s(literal 2 binary64) %53)
(*.f64 #s(literal 2 binary64) %55)
(*.f64 %12 %33)
(*.f64 %33 %12)
(*.f64 #s(literal 1 binary64) %47)
%47
(*.f64 y z)
(pow.f64 %47 #s(literal 1 binary64))
(/.f64 (neg.f64 %15) #s(literal -2 binary64))
(/.f64 (neg.f64 %18) #s(literal -2 binary64))
(/.f64 (neg.f64 %49) #s(literal -2 binary64))
(/.f64 (neg.f64 %51) #s(literal -2 binary64))
(/.f64 %15 #s(literal 2 binary64))
(/.f64 %18 #s(literal 2 binary64))
(/.f64 %49 #s(literal 2 binary64))
(/.f64 %51 #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %47 #s(literal -1 binary64)))
(neg.f64 %76)
(fma.f64 %15 #s(literal 1/2 binary64) %79)
(fma.f64 %15 #s(literal 1/2 binary64) %81)
(fma.f64 %15 #s(literal 1/2 binary64) %83)
(fma.f64 %15 #s(literal 1/2 binary64) %85)
(fma.f64 %18 #s(literal 1/2 binary64) %79)
(fma.f64 %18 #s(literal 1/2 binary64) %81)
(fma.f64 %18 #s(literal 1/2 binary64) %83)
(fma.f64 %18 #s(literal 1/2 binary64) %85)
(fma.f64 %20 %13 %79)
(fma.f64 %20 %13 %81)
(fma.f64 %20 %13 %83)
(fma.f64 %20 %13 %85)
(fma.f64 %24 #s(literal 2 binary64) %79)
(fma.f64 %24 #s(literal 2 binary64) %81)
(fma.f64 %24 #s(literal 2 binary64) %83)
(fma.f64 %24 #s(literal 2 binary64) %85)
(fma.f64 %28 #s(literal 2 binary64) %79)
(fma.f64 %28 #s(literal 2 binary64) %81)
(fma.f64 %28 #s(literal 2 binary64) %83)
(fma.f64 %28 #s(literal 2 binary64) %85)
(fma.f64 %30 %14 %79)
(fma.f64 %30 %14 %81)
(fma.f64 %30 %14 %83)
(fma.f64 %30 %14 %85)
(fma.f64 %32 %33 %79)
(fma.f64 %32 %33 %81)
(fma.f64 %32 %33 %83)
(fma.f64 %32 %33 %85)
(fma.f64 %35 z %79)
(fma.f64 %35 z %81)
(fma.f64 %35 z %83)
(fma.f64 %35 z %85)
(fma.f64 %14 %37 %79)
(fma.f64 %14 %37 %81)
(fma.f64 %14 %37 %83)
(fma.f64 %14 %37 %85)
(fma.f64 %13 %39 %79)
(fma.f64 %13 %39 %81)
(fma.f64 %13 %39 %83)
(fma.f64 %13 %39 %85)
(fma.f64 %23 %42 %79)
(fma.f64 %23 %42 %81)
(fma.f64 %23 %42 %83)
(fma.f64 %23 %42 %85)
(fma.f64 %23 %12 %53)
(fma.f64 %27 %41 %79)
(fma.f64 %27 %41 %81)
(fma.f64 %27 %41 %83)
(fma.f64 %27 %41 %85)
(fma.f64 %27 y %55)
(fma.f64 %42 %23 %79)
(fma.f64 %42 %23 %81)
(fma.f64 %42 %23 %83)
(fma.f64 %42 %23 %85)
(fma.f64 %41 %27 %79)
(fma.f64 %41 %27 %81)
(fma.f64 %41 %27 %83)
(fma.f64 %41 %27 %85)
(fma.f64 %47 #s(literal 1 binary64) %79)
(fma.f64 %47 #s(literal 1 binary64) %81)
(fma.f64 %47 #s(literal 1 binary64) %83)
(fma.f64 %47 #s(literal 1 binary64) %85)
(fma.f64 #s(literal 1/2 binary64) %49 %79)
(fma.f64 #s(literal 1/2 binary64) %49 %81)
(fma.f64 #s(literal 1/2 binary64) %49 %83)
(fma.f64 #s(literal 1/2 binary64) %49 %85)
(fma.f64 #s(literal 1/2 binary64) %51 %79)
(fma.f64 #s(literal 1/2 binary64) %51 %81)
(fma.f64 #s(literal 1/2 binary64) %51 %83)
(fma.f64 #s(literal 1/2 binary64) %51 %85)
(fma.f64 #s(literal 2 binary64) %53 %79)
(fma.f64 #s(literal 2 binary64) %53 %81)
(fma.f64 #s(literal 2 binary64) %53 %83)
(fma.f64 #s(literal 2 binary64) %53 %85)
(fma.f64 #s(literal 2 binary64) %55 %79)
(fma.f64 #s(literal 2 binary64) %55 %81)
(fma.f64 #s(literal 2 binary64) %55 %83)
(fma.f64 #s(literal 2 binary64) %55 %85)
(fma.f64 %12 %23 %24)
(fma.f64 %12 %33 %79)
(fma.f64 %12 %33 %81)
(fma.f64 %12 %33 %83)
(fma.f64 %12 %33 %85)
(fma.f64 %33 %12 %79)
(fma.f64 %33 %12 %81)
(fma.f64 %33 %12 %83)
(fma.f64 %33 %12 %85)
(fma.f64 #s(literal 1 binary64) %47 %79)
(fma.f64 #s(literal 1 binary64) %47 %81)
(fma.f64 #s(literal 1 binary64) %47 %83)
(fma.f64 #s(literal 1 binary64) %47 %85)
(fma.f64 z y %79)
(fma.f64 z y %81)
(fma.f64 z y %83)
(fma.f64 z y %85)
(fma.f64 y %27 %28)
(fma.f64 y z %79)
(fma.f64 y z %81)
(fma.f64 y z %83)
(fma.f64 y z %85)
(+.f64 %24 %24)
(+.f64 %28 %28)
(+.f64 %53 %53)
(+.f64 %55 %55)
(+.f64 %47 %79)
(+.f64 %47 %81)
(+.f64 %47 %83)
(+.f64 %47 %85)
(*.f64 %192 %14)
(*.f64 %194 %33)
(*.f64 %197 %13)
(*.f64 %199 z)
(*.f64 %201 #s(literal 1/2 binary64))
(*.f64 %203 #s(literal 1/2 binary64))
(*.f64 %205 #s(literal 2 binary64))
(*.f64 %207 #s(literal 2 binary64))
(*.f64 %209 %23)
(*.f64 %14 %211)
(*.f64 %13 %213)
(*.f64 %23 %215)
(*.f64 %27 %217)
(*.f64 %217 %27)
(*.f64 #s(literal 1/2 binary64) %220)
(*.f64 #s(literal 1/2 binary64) %222)
(*.f64 #s(literal 2 binary64) %224)
(*.f64 #s(literal 2 binary64) %226)
(*.f64 %191 %33)
(*.f64 %33 %191)
(*.f64 %230 #s(literal 1 binary64))
%230
(*.f64 #s(literal 1 binary64) %230)
(*.f64 z %196)
(pow.f64 %230 #s(literal 1 binary64))
(/.f64 (neg.f64 %201) #s(literal -2 binary64))
(/.f64 (neg.f64 %237) #s(literal -2 binary64))
(/.f64 (neg.f64 %203) #s(literal -2 binary64))
(/.f64 (neg.f64 %242) #s(literal -2 binary64))
(/.f64 (neg.f64 %245) #s(literal -2 binary64))
(/.f64 (neg.f64 %220) #s(literal -2 binary64))
(/.f64 (neg.f64 %250) #s(literal -2 binary64))
(/.f64 (neg.f64 %222) #s(literal -2 binary64))
(/.f64 (neg.f64 %255) #s(literal -2 binary64))
(/.f64 (neg.f64 %259) #s(literal -2 binary64))
(/.f64 (neg.f64 %262) #s(literal -4 binary64))
(/.f64 (neg.f64 %266) #s(literal -4 binary64))
(/.f64 (neg.f64 %269) #s(literal -4 binary64))
(/.f64 (neg.f64 %272) #s(literal -4 binary64))
(/.f64 %201 #s(literal 2 binary64))
(/.f64 %237 #s(literal 2 binary64))
(/.f64 %203 #s(literal 2 binary64))
(/.f64 %242 #s(literal 2 binary64))
(/.f64 %245 #s(literal 2 binary64))
(/.f64 %220 #s(literal 2 binary64))
(/.f64 %250 #s(literal 2 binary64))
(/.f64 %222 #s(literal 2 binary64))
(/.f64 %255 #s(literal 2 binary64))
(/.f64 %259 #s(literal 2 binary64))
(/.f64 %262 #s(literal 4 binary64))
(/.f64 %266 #s(literal 4 binary64))
(/.f64 %269 #s(literal 4 binary64))
(/.f64 %272 #s(literal 4 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %230 #s(literal -1 binary64)))
(neg.f64 %292)
(fma.f64 %192 %14 %294)
(fma.f64 %192 %14 %296)
(fma.f64 %192 %14 %298)
(fma.f64 %192 %14 %300)
(fma.f64 %192 %14 #s(literal 0 binary64))
(fma.f64 %194 %33 %294)
(fma.f64 %194 %33 %296)
(fma.f64 %194 %33 %298)
(fma.f64 %194 %33 %300)
(fma.f64 %194 %33 #s(literal 0 binary64))
(fma.f64 %197 %13 %294)
(fma.f64 %197 %13 %296)
(fma.f64 %197 %13 %298)
(fma.f64 %197 %13 %300)
(fma.f64 %197 %13 #s(literal 0 binary64))
(fma.f64 %199 z %294)
(fma.f64 %199 z %296)
(fma.f64 %199 z %298)
(fma.f64 %199 z %300)
(fma.f64 %199 z #s(literal 0 binary64))
(fma.f64 %201 #s(literal 1/2 binary64) %294)
(fma.f64 %201 #s(literal 1/2 binary64) %296)
(fma.f64 %201 #s(literal 1/2 binary64) %298)
(fma.f64 %201 #s(literal 1/2 binary64) %300)
(fma.f64 %201 #s(literal 1/2 binary64) #s(literal 0 binary64))
(fma.f64 %203 #s(literal 1/2 binary64) %294)
(fma.f64 %203 #s(literal 1/2 binary64) %296)
(fma.f64 %203 #s(literal 1/2 binary64) %298)
(fma.f64 %203 #s(literal 1/2 binary64) %300)
(fma.f64 %203 #s(literal 1/2 binary64) #s(literal 0 binary64))
(fma.f64 %328 #s(literal 1/2 binary64) z)
(fma.f64 %330 #s(literal 1/2 binary64) z)
(fma.f64 %205 #s(literal 2 binary64) %294)
(fma.f64 %205 #s(literal 2 binary64) %296)
(fma.f64 %205 #s(literal 2 binary64) %298)
(fma.f64 %205 #s(literal 2 binary64) %300)
(fma.f64 %205 #s(literal 2 binary64) #s(literal 0 binary64))
(fma.f64 %207 #s(literal 2 binary64) %294)
(fma.f64 %207 #s(literal 2 binary64) %296)
(fma.f64 %207 #s(literal 2 binary64) %298)
(fma.f64 %207 #s(literal 2 binary64) %300)
(fma.f64 %207 #s(literal 2 binary64) #s(literal 0 binary64))
(fma.f64 %20 %14 z)
(fma.f64 %30 %13 z)
(fma.f64 %344 #s(literal 2 binary64) z)
(fma.f64 %346 #s(literal 2 binary64) z)
(fma.f64 %348 #s(literal 2 binary64) %349)
(fma.f64 %348 #s(literal 2 binary64) %351)
(fma.f64 %348 #s(literal 2 binary64) %354)
(fma.f64 %348 #s(literal 2 binary64) %356)
(fma.f64 %32 z z)
(fma.f64 %209 %23 %294)
(fma.f64 %209 %23 %296)
(fma.f64 %209 %23 %298)
(fma.f64 %209 %23 %300)
(fma.f64 %209 %23 #s(literal 0 binary64))
(fma.f64 %35 %33 z)
(fma.f64 #s(literal 1/4 binary64) %13 %349)
(fma.f64 #s(literal 1/4 binary64) %13 %351)
(fma.f64 #s(literal 1/4 binary64) %13 %354)
(fma.f64 #s(literal 1/4 binary64) %13 %356)
(fma.f64 %353 z %27)
(fma.f64 %14 %211 %294)
(fma.f64 %14 %211 %296)
(fma.f64 %14 %211 %298)
(fma.f64 %14 %211 %300)
(fma.f64 %14 %211 #s(literal 0 binary64))
(fma.f64 %14 %39 z)
(fma.f64 %13 %213 %294)
(fma.f64 %13 %213 %296)
(fma.f64 %13 %213 %298)
(fma.f64 %13 %213 %300)
(fma.f64 %13 %213 #s(literal 0 binary64))
(fma.f64 %13 %37 z)
(fma.f64 %13 #s(literal 1/4 binary64) %349)
(fma.f64 %13 #s(literal 1/4 binary64) %351)
(fma.f64 %13 #s(literal 1/4 binary64) %354)
(fma.f64 %13 #s(literal 1/4 binary64) %356)
(fma.f64 %23 %215 %294)
(fma.f64 %23 %215 %296)
(fma.f64 %23 %215 %298)
(fma.f64 %23 %215 %300)
(fma.f64 %23 %215 #s(literal 0 binary64))
(fma.f64 %23 %41 z)
(fma.f64 %23 %191 %224)
(fma.f64 %27 %217 %294)
(fma.f64 %27 %217 %296)
(fma.f64 %27 %217 %298)
(fma.f64 %27 %217 %300)
(fma.f64 %27 %217 #s(literal 0 binary64))
(fma.f64 %27 %42 z)
(fma.f64 %27 %196 %226)
(fma.f64 %27 #s(literal 1 binary64) %349)
(fma.f64 %27 #s(literal 1 binary64) %351)
(fma.f64 %27 #s(literal 1 binary64) %354)
(fma.f64 %27 #s(literal 1 binary64) %356)
(fma.f64 %217 %27 %294)
(fma.f64 %217 %27 %296)
(fma.f64 %217 %27 %298)
(fma.f64 %217 %27 %300)
(fma.f64 %217 %27 #s(literal 0 binary64))
(fma.f64 %42 %27 z)
(fma.f64 %41 %23 z)
(fma.f64 #s(literal 1/2 binary64) %220 %294)
(fma.f64 #s(literal 1/2 binary64) %220 %296)
(fma.f64 #s(literal 1/2 binary64) %220 %298)
(fma.f64 #s(literal 1/2 binary64) %220 %300)
(fma.f64 #s(literal 1/2 binary64) %220 #s(literal 0 binary64))
(fma.f64 #s(literal 1/2 binary64) %222 %294)
(fma.f64 #s(literal 1/2 binary64) %222 %296)
(fma.f64 #s(literal 1/2 binary64) %222 %298)
(fma.f64 #s(literal 1/2 binary64) %222 %300)
(fma.f64 #s(literal 1/2 binary64) %222 #s(literal 0 binary64))
(fma.f64 #s(literal 1/2 binary64) %422 z)
(fma.f64 #s(literal 1/2 binary64) %424 z)
(fma.f64 #s(literal 1/2 binary64) z %349)
(fma.f64 #s(literal 1/2 binary64) z %351)
(fma.f64 #s(literal 1/2 binary64) z %354)
(fma.f64 #s(literal 1/2 binary64) z %356)
(fma.f64 #s(literal 2 binary64) %224 %294)
(fma.f64 #s(literal 2 binary64) %224 %296)
(fma.f64 #s(literal 2 binary64) %224 %298)
(fma.f64 #s(literal 2 binary64) %224 %300)
(fma.f64 #s(literal 2 binary64) %224 #s(literal 0 binary64))
(fma.f64 #s(literal 2 binary64) %226 %294)
(fma.f64 #s(literal 2 binary64) %226 %296)
(fma.f64 #s(literal 2 binary64) %226 %298)
(fma.f64 #s(literal 2 binary64) %226 %300)
(fma.f64 #s(literal 2 binary64) %226 #s(literal 0 binary64))
(fma.f64 #s(literal 2 binary64) %440 %349)
(fma.f64 #s(literal 2 binary64) %440 %351)
(fma.f64 #s(literal 2 binary64) %440 %354)
(fma.f64 #s(literal 2 binary64) %440 %356)
(fma.f64 #s(literal 2 binary64) %445 z)
(fma.f64 #s(literal 2 binary64) %447 z)
(fma.f64 %76 #s(literal 1 binary64) z)
(fma.f64 %12 z z)
(fma.f64 %191 %23 %205)
(fma.f64 %191 %33 %294)
(fma.f64 %191 %33 %296)
(fma.f64 %191 %33 %298)
(fma.f64 %191 %33 %300)
(fma.f64 %191 %33 #s(literal 0 binary64))
(fma.f64 %33 %191 %294)
(fma.f64 %33 %191 %296)
(fma.f64 %33 %191 %298)
(fma.f64 %33 %191 %300)
(fma.f64 %33 %191 #s(literal 0 binary64))
(fma.f64 %33 y z)
(fma.f64 %230 #s(literal 1 binary64) %294)
(fma.f64 %230 #s(literal 1 binary64) %296)
(fma.f64 %230 #s(literal 1 binary64) %298)
(fma.f64 %230 #s(literal 1 binary64) %300)
(fma.f64 %230 #s(literal 1 binary64) #s(literal 0 binary64))
(fma.f64 %196 %27 %207)
(fma.f64 %196 z %294)
(fma.f64 %196 z %296)
(fma.f64 %196 z %298)
(fma.f64 %196 z %300)
(fma.f64 %196 z #s(literal 0 binary64))
(fma.f64 #s(literal 1 binary64) %27 %349)
(fma.f64 #s(literal 1 binary64) %27 %351)
(fma.f64 #s(literal 1 binary64) %27 %354)
(fma.f64 #s(literal 1 binary64) %27 %356)
(fma.f64 #s(literal 1 binary64) %76 z)
(fma.f64 #s(literal 1 binary64) %230 %294)
(fma.f64 #s(literal 1 binary64) %230 %296)
(fma.f64 #s(literal 1 binary64) %230 %298)
(fma.f64 #s(literal 1 binary64) %230 %300)
(fma.f64 #s(literal 1 binary64) %230 #s(literal 0 binary64))
(fma.f64 z %353 %27)
(fma.f64 z #s(literal 1/2 binary64) %349)
(fma.f64 z #s(literal 1/2 binary64) %351)
(fma.f64 z #s(literal 1/2 binary64) %354)
(fma.f64 z #s(literal 1/2 binary64) %356)
(fma.f64 z %12 z)
(fma.f64 z %196 %294)
(fma.f64 z %196 %296)
(fma.f64 z %196 %298)
(fma.f64 z %196 %300)
(fma.f64 z %196 #s(literal 0 binary64))
(fma.f64 y %33 z)
(-.f64 (-.f64 %76 %23) %23)
(-.f64 %76 %33)
(-.f64 %230 #s(literal 0 binary64))
(-.f64 z %47)
(+.f64 (fma.f64 %12 z %27) %27)
(+.f64 %205 %205)
(+.f64 %207 %207)
(+.f64 %354 %27)
(+.f64 %224 %224)
(+.f64 %226 %226)
(+.f64 %356 %27)
(+.f64 %27 %349)
(+.f64 %27 %351)
(+.f64 %27 %354)
(+.f64 %27 %356)
(+.f64 %76 z)
(+.f64 %230 %294)
(+.f64 %230 %296)
(+.f64 %230 %298)
(+.f64 %230 %300)
(+.f64 %230 #s(literal 0 binary64))
(+.f64 z (+.f64 #s(literal 0 binary64) %76))
(+.f64 z (-.f64 #s(literal 0 binary64) %47))
(+.f64 z %76)
(*.f64 %524 %13)
(*.f64 %526 %27)
(*.f64 %528 z)
(*.f64 %530 #s(literal 1/2 binary64))
(*.f64 %532 #s(literal 2 binary64))
(*.f64 %13 %534)
(*.f64 %27 %536)
(*.f64 #s(literal 1/2 binary64) %538)
(*.f64 #s(literal 2 binary64) %540)
(*.f64 %542 #s(literal 1 binary64))
%542
(*.f64 #s(literal 1 binary64) %542)
(*.f64 z %6)
(pow.f64 %542 #s(literal 1 binary64))
(/.f64 (neg.f64 %530) #s(literal -2 binary64))
(/.f64 (neg.f64 %538) #s(literal -2 binary64))
(/.f64 %530 #s(literal 2 binary64))
(/.f64 %538 #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %542 #s(literal -1 binary64)))
(neg.f64 (*.f64 %33 %6))
(neg.f64 (*.f64 %6 %33))
(fma.f64 %524 %13 %559)
(fma.f64 %524 %13 %561)
(fma.f64 %526 %27 %559)
(fma.f64 %526 %27 %561)
(fma.f64 %528 z %559)
(fma.f64 %528 z %561)
(fma.f64 %530 #s(literal 1/2 binary64) %559)
(fma.f64 %530 #s(literal 1/2 binary64) %561)
(fma.f64 %532 #s(literal 2 binary64) %559)
(fma.f64 %532 #s(literal 2 binary64) %561)
(fma.f64 %13 %534 %559)
(fma.f64 %13 %534 %561)
(fma.f64 %27 %536 %559)
(fma.f64 %27 %536 %561)
(fma.f64 %27 %6 %540)
(fma.f64 #s(literal 1/2 binary64) %538 %559)
(fma.f64 #s(literal 1/2 binary64) %538 %561)
(fma.f64 #s(literal 2 binary64) %540 %559)
(fma.f64 #s(literal 2 binary64) %540 %561)
(fma.f64 %542 #s(literal 1 binary64) %559)
(fma.f64 %542 #s(literal 1 binary64) %561)
(fma.f64 %6 %27 %532)
(fma.f64 %6 z %559)
(fma.f64 %6 z %561)
(fma.f64 #s(literal 1 binary64) %542 %559)
(fma.f64 #s(literal 1 binary64) %542 %561)
(fma.f64 z %6 %559)
(fma.f64 z %6 %561)
(+.f64 %532 %532)
(+.f64 %540 %540)
(+.f64 %542 %559)
(+.f64 %542 %561)
(*.f64 #s(literal 1 binary64) %594)
(pow.f64 %594 #s(literal 1 binary64))
%594
(/.f64 #s(literal 1 binary64) (pow.f64 %594 #s(literal -1 binary64)))
(neg.f64 %599)
(*.f64 #s(literal 1 binary64) %601)
(pow.f64 %601 #s(literal 1 binary64))
(/.f64 (neg.f64 %604) #s(literal -2 binary64))
(/.f64 (neg.f64 %608) #s(literal -2 binary64))
(/.f64 %604 #s(literal 2 binary64))
(/.f64 %608 #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %601 #s(literal -1 binary64)))
(neg.f64 %615)
(fma.f64 %617 #s(literal 1/2 binary64) %618)
(fma.f64 %617 #s(literal 1/2 binary64) %621)
(fma.f64 %617 #s(literal 1/2 binary64) x)
(fma.f64 %625 #s(literal 4 binary64) %618)
(fma.f64 %625 #s(literal 4 binary64) %621)
(fma.f64 %625 #s(literal 4 binary64) x)
(fma.f64 %630 #s(literal 2 binary64) %618)
(fma.f64 %630 #s(literal 2 binary64) %621)
(fma.f64 %630 #s(literal 2 binary64) x)
(fma.f64 %634 #s(literal 2 binary64) %618)
(fma.f64 %634 #s(literal 2 binary64) %621)
(fma.f64 %634 #s(literal 2 binary64) x)
(fma.f64 %638 #s(literal 4 binary64) %618)
(fma.f64 %638 #s(literal 4 binary64) %621)
(fma.f64 %638 #s(literal 4 binary64) x)
(fma.f64 %642 #s(literal 2 binary64) %643)
(fma.f64 %642 #s(literal 2 binary64) %645)
(fma.f64 %647 #s(literal 1/2 binary64) %618)
(fma.f64 %647 #s(literal 1/2 binary64) %621)
(fma.f64 %647 #s(literal 1/2 binary64) x)
(fma.f64 %651 #s(literal 1/2 binary64) %618)
(fma.f64 %651 #s(literal 1/2 binary64) %621)
(fma.f64 %651 #s(literal 1/2 binary64) x)
(fma.f64 #s(literal 1/4 binary64) %14 %643)
(fma.f64 #s(literal 1/4 binary64) %14 %645)
(fma.f64 %14 #s(literal 1/4 binary64) %643)
(fma.f64 %14 #s(literal 1/4 binary64) %645)
(fma.f64 %14 #s(literal 1/2 binary64) %618)
(fma.f64 %14 #s(literal 1/2 binary64) %621)
(fma.f64 %14 #s(literal 1/2 binary64) x)
(fma.f64 %13 #s(literal -1/2 binary64) %618)
(fma.f64 %13 #s(literal -1/2 binary64) %621)
(fma.f64 %13 #s(literal -1/2 binary64) x)
(fma.f64 %23 #s(literal 2 binary64) %618)
(fma.f64 %23 #s(literal 2 binary64) %621)
(fma.f64 %23 #s(literal 2 binary64) x)
(fma.f64 %23 #s(literal 1 binary64) %643)
(fma.f64 %23 #s(literal 1 binary64) %645)
(fma.f64 %27 #s(literal -2 binary64) %618)
(fma.f64 %27 #s(literal -2 binary64) %621)
(fma.f64 %27 #s(literal -2 binary64) x)
(fma.f64 #s(literal -1/2 binary64) %13 %618)
(fma.f64 #s(literal -1/2 binary64) %13 %621)
(fma.f64 #s(literal -1/2 binary64) %13 x)
(fma.f64 #s(literal 4 binary64) %676 %618)
(fma.f64 #s(literal 4 binary64) %676 %621)
(fma.f64 #s(literal 4 binary64) %676 x)
(fma.f64 #s(literal -2 binary64) %27 %618)
(fma.f64 #s(literal -2 binary64) %27 %621)
(fma.f64 #s(literal -2 binary64) %27 x)
(fma.f64 #s(literal -1 binary64) z %618)
(fma.f64 #s(literal -1 binary64) z %621)
(fma.f64 #s(literal -1 binary64) z x)
(fma.f64 #s(literal 1/2 binary64) %686 %618)
(fma.f64 #s(literal 1/2 binary64) %686 %621)
(fma.f64 #s(literal 1/2 binary64) %686 x)
(fma.f64 #s(literal 1/2 binary64) %690 %618)
(fma.f64 #s(literal 1/2 binary64) %690 %621)
(fma.f64 #s(literal 1/2 binary64) %690 x)
(fma.f64 #s(literal 1/2 binary64) %14 %618)
(fma.f64 #s(literal 1/2 binary64) %14 %621)
(fma.f64 #s(literal 1/2 binary64) %14 x)
(fma.f64 #s(literal 1/2 binary64) %33 %643)
(fma.f64 #s(literal 1/2 binary64) %33 %645)
(fma.f64 #s(literal 2 binary64) %638 %643)
(fma.f64 #s(literal 2 binary64) %638 %645)
(fma.f64 #s(literal 2 binary64) %701 %618)
(fma.f64 #s(literal 2 binary64) %701 %621)
(fma.f64 #s(literal 2 binary64) %701 x)
(fma.f64 #s(literal 2 binary64) %705 %618)
(fma.f64 #s(literal 2 binary64) %705 %621)
(fma.f64 #s(literal 2 binary64) %705 x)
(fma.f64 #s(literal 2 binary64) %23 %618)
(fma.f64 #s(literal 2 binary64) %23 %621)
(fma.f64 #s(literal 2 binary64) %23 x)
(fma.f64 %33 #s(literal 1/2 binary64) %643)
(fma.f64 %33 #s(literal 1/2 binary64) %645)
(fma.f64 %33 #s(literal 1 binary64) %618)
(fma.f64 %33 #s(literal 1 binary64) %621)
(fma.f64 %33 #s(literal 1 binary64) x)
(fma.f64 #s(literal 1 binary64) %23 %643)
(fma.f64 #s(literal 1 binary64) %23 %645)
(fma.f64 #s(literal 1 binary64) %33 %618)
(fma.f64 #s(literal 1 binary64) %33 %621)
(fma.f64 #s(literal 1 binary64) %33 x)
(fma.f64 #s(literal 1 binary64) %601 #s(literal 0 binary64))
(fma.f64 z #s(literal -1 binary64) %618)
(fma.f64 z #s(literal -1 binary64) %621)
(fma.f64 z #s(literal -1 binary64) x)
(-.f64 (-.f64 x %27) %27)
(-.f64 %33 %620)
(-.f64 %601 #s(literal 0 binary64))
%601
(+.f64 (+.f64 x %23) %23)
(+.f64 %23 %643)
(+.f64 %23 %645)
(+.f64 %33 %618)
(+.f64 %33 %621)
(+.f64 %33 x)
(+.f64 %601 #s(literal 0 binary64))
(+.f64 x %33)
(*.f64 #s(literal 1 binary64) %739)
(pow.f64 %739 #s(literal 1 binary64))
(/.f64 (neg.f64 %743) #s(literal -2 binary64))
(/.f64 (neg.f64 %747) #s(literal -2 binary64))
(/.f64 %743 #s(literal 2 binary64))
(/.f64 %747 #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %739 #s(literal -1 binary64)))
(neg.f64 (-.f64 %754 z))
(fma.f64 %192 %14 %757)
(fma.f64 %194 %33 %757)
(fma.f64 %197 %13 %757)
(fma.f64 %199 z %757)
(fma.f64 %201 #s(literal 1/2 binary64) %757)
(fma.f64 %203 #s(literal 1/2 binary64) %757)
(fma.f64 %328 #s(literal 1/2 binary64) %764)
(fma.f64 %330 #s(literal 1/2 binary64) %764)
(fma.f64 %205 #s(literal 2 binary64) %757)
(fma.f64 %207 #s(literal 2 binary64) %757)
(fma.f64 %20 %14 %764)
(fma.f64 %30 %13 %764)
(fma.f64 %344 #s(literal 2 binary64) %764)
(fma.f64 %346 #s(literal 2 binary64) %764)
(fma.f64 %348 #s(literal 2 binary64) %773)
(fma.f64 %348 #s(literal 2 binary64) %775)
(fma.f64 %32 z %764)
(fma.f64 %209 %23 %757)
(fma.f64 %35 %33 %764)
(fma.f64 #s(literal 1/4 binary64) %13 %773)
(fma.f64 #s(literal 1/4 binary64) %13 %775)
(fma.f64 %14 %211 %757)
(fma.f64 %14 %39 %764)
(fma.f64 %13 %213 %757)
(fma.f64 %13 %37 %764)
(fma.f64 %13 #s(literal 1/4 binary64) %773)
(fma.f64 %13 #s(literal 1/4 binary64) %775)
(fma.f64 %23 %215 %757)
(fma.f64 %23 %41 %764)
(fma.f64 %27 %217 %757)
(fma.f64 %27 %42 %764)
(fma.f64 %27 #s(literal 1 binary64) %773)
(fma.f64 %27 #s(literal 1 binary64) %775)
(fma.f64 %217 %27 %757)
(fma.f64 %42 %27 %764)
(fma.f64 %41 %23 %764)
(fma.f64 %620 %12 %230)
(fma.f64 #s(literal 1/2 binary64) %220 %757)
(fma.f64 #s(literal 1/2 binary64) %222 %757)
(fma.f64 #s(literal 1/2 binary64) %422 %764)
(fma.f64 #s(literal 1/2 binary64) %424 %764)
(fma.f64 #s(literal 1/2 binary64) z %773)
(fma.f64 #s(literal 1/2 binary64) z %775)
(fma.f64 #s(literal 2 binary64) %224 %757)
(fma.f64 #s(literal 2 binary64) %226 %757)
(fma.f64 #s(literal 2 binary64) %440 %773)
(fma.f64 #s(literal 2 binary64) %440 %775)
(fma.f64 #s(literal 2 binary64) %445 %764)
(fma.f64 #s(literal 2 binary64) %447 %764)
(fma.f64 %76 #s(literal 1 binary64) %764)
(fma.f64 %12 %620 %230)
(fma.f64 %12 %615 z)
(fma.f64 %12 z %764)
(fma.f64 %615 %12 z)
(fma.f64 %191 %33 %757)
(fma.f64 %33 %191 %757)
(fma.f64 %33 y %764)
(fma.f64 %230 #s(literal 1 binary64) %757)
%739
(fma.f64 %196 z %757)
(fma.f64 #s(literal 1 binary64) %764 %76)
(fma.f64 #s(literal 1 binary64) %27 %773)
(fma.f64 #s(literal 1 binary64) %27 %775)
(fma.f64 #s(literal 1 binary64) %76 %764)
(fma.f64 #s(literal 1 binary64) %742 z)
(fma.f64 #s(literal 1 binary64) %739 #s(literal 0 binary64))
(fma.f64 #s(literal 1 binary64) %230 %757)
(fma.f64 #s(literal 1 binary64) %757 %230)
(fma.f64 z #s(literal 1/2 binary64) %773)
(fma.f64 z #s(literal 1/2 binary64) %775)
(fma.f64 z %12 %764)
(fma.f64 z %196 %757)
(fma.f64 y %33 %764)
(fma.f64 y %601 z)
(fma.f64 y x %230)
(fma.f64 x y %230)
(-.f64 (-.f64 %742 %23) %23)
(-.f64 %764 %47)
(-.f64 %76 (neg.f64 %764))
(-.f64 %742 %33)
(-.f64 %739 #s(literal 0 binary64))
(-.f64 %230 %843)
(-.f64 %757 %292)
(-.f64 z %754)
(+.f64 (fma.f64 %601 y %27) %27)
(+.f64 %764 %76)
(+.f64 %27 %773)
(+.f64 %27 %775)
(+.f64 %76 %764)
(+.f64 %742 z)
(+.f64 %739 #s(literal 0 binary64))
(+.f64 %230 %757)
(+.f64 %757 %230)
(+.f64 z (+.f64 #s(literal 0 binary64) %742))
(+.f64 z (-.f64 #s(literal 0 binary64) %754))
(+.f64 z %742)
(*.f64 #s(literal 1 binary64) %862)
(pow.f64 %862 #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %862 #s(literal -1 binary64)))
(neg.f64 (neg.f64 %862))
(fma.f64 %620 %12 %594)
(fma.f64 %12 %620 %594)
(fma.f64 #s(literal 1 binary64) %757 %594)
(fma.f64 #s(literal 1 binary64) %594 %757)
%862
(fma.f64 x y %594)
(-.f64 %757 %599)
(-.f64 %594 %843)
(+.f64 %757 %594)
(+.f64 %594 %757)
(*.f64 #s(literal 1 binary64) %881)
(pow.f64 %881 #s(literal 1 binary64))
%881
(/.f64 #s(literal 1 binary64) (pow.f64 %881 #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) %886)
(pow.f64 %886 #s(literal 1 binary64))
%886
(/.f64 #s(literal 1 binary64) (pow.f64 %886 #s(literal -1 binary64)))

reconstruct56.0ms (4.0%)

Counts
751 → 73
Compiler

Compiled 751 to 978 computations (-30.2% saved)

eval6.0ms (0.4%)

Compiler

Compiled 68 to 156 computations (-129.4% saved)

prune2.0ms (0.1%)

Pruning

6 alts after pruning (3 fresh and 3 done)

PrunedKeptTotal
New65368
Fresh000
Picked224
Done011
Total67673
Accuracy
100.0%
Counts
73 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
98.4%
(fma.f64 z (-.f64 #s(literal 1 binary64) y) (*.f64 y x))
73.6%
(fma.f64 x y (approx (* (- 1 y) z) z))
70.0%
(approx (+ (* y (- x z)) z) (*.f64 y (-.f64 x z)))
44.5%
(approx (+ (* y (- x z)) z) (*.f64 x y))
59.6%
(approx (+ (* x y) (* z (- 1 y))) (-.f64 z (*.f64 z y)))
31.5%
(approx (+ (* x y) (* z (- 1 y))) (approx (- z (* z y)) z))
Compiler

Compiled 6 to 13 computations (-116.7% saved)

sample0.0ms (0.0%)

Calls
Call 1
Inputs
Outputs

series15.0ms (1.0%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0156666
Stop Event
iter-limit
Counts
10 → 44
Calls
Call 1
Inputs
%2 = (*.f64 x y)
%4 = (-.f64 x z)
%7 = (+ (* y (- x z)) z)
%11 = (approx (- z (* z y)) z)
%12 = (*.f64 y %4)
x
y
%2
z
%4
(approx %7 %2)
%11
%12
(approx %7 %12)
(approx (+ (* x y) (* z (- 1 y))) %11)
Outputs
%5 = (* x y)
%6 = (*.f64 x y)
%9 = (- x z)
%11 = (*.f64 #s(literal -1 binary64) z)
%13 = (-.f64 x z)
%15 = (* y %9)
%16 = (+ %15 z)
%17 = (*.f64 y z)
%18 = (*.f64 #s(literal -1 binary64) %17)
%19 = (+.f64 z %18)
%21 = (fma.f64 #s(literal -1 binary64) %17 %6)
%29 = (+ %5 (* z (- 1 y)))
%31 = (-.f64 #s(literal 1 binary64) y)
%32 = (*.f64 z %31)
%36 = (/.f64 z x)
%41 = (/.f64 %17 x)
%50 = (/.f64 %32 x)
%75 = (*.f64 y %13)
%79 = (+.f64 x %11)
%80 = (*.f64 y %79)
%83 = (/.f64 z y)
%89 = (- z (* z y))
%98 = (*.f64 #s(literal -1 binary64) %83)
%120 = (*.f64 z (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) y)))
%123 = (/.f64 x z)
%128 = (/.f64 %6 z)
%129 = (fma.f64 #s(literal -1 binary64) y %128)
%148 = (*.f64 #s(literal -1 binary64) %128)
%149 = (+.f64 y %148)
(approx x #s(literal 0 binary64))
(approx x x)
(approx %5 %6)
(approx %9 %11)
(approx %9 %13)
(approx %16 %19)
(approx %16 (+.f64 z %21))
(approx %15 %18)
(approx %15 %21)
(approx %29 %32)
(approx %29 (fma.f64 x y %32))
(approx %9 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) %36))))
(approx %16 (*.f64 x (+.f64 y (fma.f64 #s(literal -1 binary64) %41 %36))))
(approx %15 (*.f64 x (+.f64 y (*.f64 #s(literal -1 binary64) %41))))
(approx %29 (*.f64 x (+.f64 y %50)))
(approx %9 (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 %36 #s(literal 1 binary64)))))
(approx %16 (*.f64 #s(literal -1 binary64) (*.f64 x (fma.f64 #s(literal -1 binary64) y (*.f64 #s(literal -1 binary64) (/.f64 %19 x))))))
(approx %15 (*.f64 #s(literal -1 binary64) (*.f64 x (fma.f64 #s(literal -1 binary64) y %41))))
(approx %29 (*.f64 #s(literal -1 binary64) (*.f64 x (fma.f64 #s(literal -1 binary64) y (*.f64 #s(literal -1 binary64) %50)))))
(approx y y)
(approx %16 z)
(approx %16 (+.f64 z %75))
(approx %15 %75)
(approx %29 (+.f64 z %80))
(approx %16 (*.f64 y (-.f64 (+.f64 x %83) z)))
(approx %89 (*.f64 y (-.f64 %83 z)))
(approx %29 %80)
(approx %29 (*.f64 y (+.f64 x (fma.f64 #s(literal -1 binary64) z %83))))
(approx %16 (*.f64 #s(literal -1 binary64) (*.f64 y (fma.f64 #s(literal -1 binary64) %13 %98))))
(approx %89 (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 %98 %11))))
(approx %29 (*.f64 #s(literal -1 binary64) (*.f64 y (+.f64 z (*.f64 #s(literal -1 binary64) x)))))
(approx %29 (*.f64 #s(literal -1 binary64) (*.f64 y (+.f64 z (fma.f64 #s(literal -1 binary64) x %98)))))
(approx %9 %79)
(approx %16 (fma.f64 x y %120))
(approx %9 (*.f64 z (-.f64 %123 #s(literal 1 binary64))))
(approx %16 %120)
(approx %16 (*.f64 z (+.f64 #s(literal 1 binary64) %129)))
(approx %15 (*.f64 z %129))
(approx %29 (*.f64 z (-.f64 (+.f64 #s(literal 1 binary64) %128) y)))
(approx %9 (*.f64 #s(literal -1 binary64) (*.f64 z (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) %123)))))
(approx %16 (*.f64 #s(literal -1 binary64) (*.f64 z (-.f64 y #s(literal 1 binary64)))))
(approx %16 (*.f64 #s(literal -1 binary64) (*.f64 z (-.f64 %149 #s(literal 1 binary64)))))
(approx %15 (*.f64 #s(literal -1 binary64) (*.f64 z %149)))
(approx %29 (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) %31 %148))))
Calls

9 calls:

TimeVariablePoint
3.0ms
y
inf
1.0ms
z
inf
1.0ms
x
inf
1.0ms
z
-inf
1.0ms
y
-inf

rewrite113.0ms (7.9%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02062
02362
17162
216860
349160
4241660
0460760
0476757
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
10 → 179
Calls
Call 1
Inputs
%2 = (*.f64 x y)
%4 = (-.f64 x z)
%7 = (+ (* y (- x z)) z)
%11 = (approx (- z (* z y)) z)
%12 = (*.f64 y %4)
x
y
%2
z
%4
(approx %7 %2)
%11
%12
(approx %7 %12)
(approx (+ (* x y) (* z (- 1 y))) %11)
Outputs
%2 = (neg.f64 x)
%3 = (neg.f64 y)
%7 = (*.f64 y x)
%14 = (*.f64 %3 x)
%17 = (-.f64 x z)
%21 = (+.f64 z z)
%22 = (neg.f64 %21)
%23 = (fma.f64 x #s(literal 2 binary64) %22)
%28 = (-.f64 (*.f64 x #s(literal 2 binary64)) %21)
%40 = (-.f64 z x)
%42 = (*.f64 #s(literal -1 binary64) %21)
%44 = (+.f64 #s(literal 0 binary64) x)
%46 = (-.f64 #s(literal 0 binary64) %2)
%50 = (/.f64 %21 #s(literal -8 binary64))
%55 = (*.f64 #s(literal 1/2 binary64) z)
%56 = (*.f64 #s(literal -1 binary64) %55)
%61 = (*.f64 z #s(literal -1/2 binary64))
%65 = (/.f64 z #s(literal -2 binary64))
%66 = (*.f64 #s(literal 1/2 binary64) %65)
%67 = (neg.f64 z)
%68 = (fma.f64 #s(literal 1/2 binary64) %67 x)
%70 = (-.f64 %65 %2)
%72 = (*.f64 %65 #s(literal 1/2 binary64))
%76 = (*.f64 z #s(literal -2 binary64))
%80 = (/.f64 z #s(literal -1/2 binary64))
%107 = (/.f64 z #s(literal -4 binary64))
%117 = (*.f64 %21 #s(literal -1 binary64))
%121 = (*.f64 #s(literal -2 binary64) z)
%130 = (*.f64 %55 #s(literal -1 binary64))
%136 = (*.f64 #s(literal -1/2 binary64) z)
%172 = (- z (* (- z x) y))
%173 = (approx %172 %7)
%181 = (approx (* (- 1 y) z) z)
%188 = (*.f64 %17 y)
%216 = (+.f64 y y)
%218 = (neg.f64 %216)
%222 = (*.f64 %3 z)
%247 = (approx %172 %188)
%252 = (approx %172 %181)
x
y
(*.f64 %2 %3)
(*.f64 %3 %2)
(*.f64 #s(literal 1 binary64) %7)
%7
(*.f64 x y)
(pow.f64 %7 #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %7 #s(literal -1 binary64)))
(neg.f64 %14)
z
(*.f64 #s(literal 1 binary64) %17)
(pow.f64 %17 #s(literal 1 binary64))
(/.f64 (-.f64 %23 #s(literal 0 binary64)) #s(literal 2 binary64))
(/.f64 (-.f64 %28 #s(literal 0 binary64)) #s(literal 2 binary64))
(/.f64 (neg.f64 %23) #s(literal -2 binary64))
(/.f64 (neg.f64 %28) #s(literal -2 binary64))
(/.f64 %23 #s(literal 2 binary64))
(/.f64 %28 #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %17 #s(literal -1 binary64)))
(neg.f64 %40)
(fma.f64 %42 #s(literal 1/2 binary64) %44)
(fma.f64 %42 #s(literal 1/2 binary64) %46)
(fma.f64 %42 #s(literal 1/2 binary64) x)
(fma.f64 %50 #s(literal 4 binary64) %44)
(fma.f64 %50 #s(literal 4 binary64) %46)
(fma.f64 %50 #s(literal 4 binary64) x)
(fma.f64 %56 #s(literal 2 binary64) %44)
(fma.f64 %56 #s(literal 2 binary64) %46)
(fma.f64 %56 #s(literal 2 binary64) x)
(fma.f64 %61 #s(literal 2 binary64) %44)
(fma.f64 %61 #s(literal 2 binary64) %46)
(fma.f64 %61 #s(literal 2 binary64) x)
(fma.f64 %66 #s(literal 2 binary64) %68)
(fma.f64 %66 #s(literal 2 binary64) %70)
(fma.f64 %72 #s(literal 4 binary64) %44)
(fma.f64 %72 #s(literal 4 binary64) %46)
(fma.f64 %72 #s(literal 4 binary64) x)
(fma.f64 %76 #s(literal 1/2 binary64) %44)
(fma.f64 %76 #s(literal 1/2 binary64) %46)
(fma.f64 %76 #s(literal 1/2 binary64) x)
(fma.f64 %80 #s(literal 1/2 binary64) %44)
(fma.f64 %80 #s(literal 1/2 binary64) %46)
(fma.f64 %80 #s(literal 1/2 binary64) x)
(fma.f64 #s(literal 1/4 binary64) %22 %68)
(fma.f64 #s(literal 1/4 binary64) %22 %70)
(fma.f64 %22 #s(literal 1/4 binary64) %68)
(fma.f64 %22 #s(literal 1/4 binary64) %70)
(fma.f64 %22 #s(literal 1/2 binary64) %44)
(fma.f64 %22 #s(literal 1/2 binary64) %46)
(fma.f64 %22 #s(literal 1/2 binary64) x)
(fma.f64 %21 #s(literal -1/2 binary64) %44)
(fma.f64 %21 #s(literal -1/2 binary64) %46)
(fma.f64 %21 #s(literal -1/2 binary64) x)
(fma.f64 %65 #s(literal 2 binary64) %44)
(fma.f64 %65 #s(literal 2 binary64) %46)
(fma.f64 %65 #s(literal 2 binary64) x)
(fma.f64 %65 #s(literal 1 binary64) %68)
(fma.f64 %65 #s(literal 1 binary64) %70)
(fma.f64 %55 #s(literal -2 binary64) %44)
(fma.f64 %55 #s(literal -2 binary64) %46)
(fma.f64 %55 #s(literal -2 binary64) x)
(fma.f64 #s(literal -1/2 binary64) %21 %44)
(fma.f64 #s(literal -1/2 binary64) %21 %46)
(fma.f64 #s(literal -1/2 binary64) %21 x)
(fma.f64 #s(literal 4 binary64) %107 %44)
(fma.f64 #s(literal 4 binary64) %107 %46)
(fma.f64 #s(literal 4 binary64) %107 x)
(fma.f64 #s(literal -2 binary64) %55 %44)
(fma.f64 #s(literal -2 binary64) %55 %46)
(fma.f64 #s(literal -2 binary64) %55 x)
(fma.f64 #s(literal -1 binary64) z %44)
(fma.f64 #s(literal -1 binary64) z %46)
(fma.f64 #s(literal -1 binary64) z x)
(fma.f64 #s(literal 1/2 binary64) %117 %44)
(fma.f64 #s(literal 1/2 binary64) %117 %46)
(fma.f64 #s(literal 1/2 binary64) %117 x)
(fma.f64 #s(literal 1/2 binary64) %121 %44)
(fma.f64 #s(literal 1/2 binary64) %121 %46)
(fma.f64 #s(literal 1/2 binary64) %121 x)
(fma.f64 #s(literal 1/2 binary64) %22 %44)
(fma.f64 #s(literal 1/2 binary64) %22 %46)
(fma.f64 #s(literal 1/2 binary64) %22 x)
(fma.f64 #s(literal 1/2 binary64) %67 %68)
(fma.f64 #s(literal 1/2 binary64) %67 %70)
(fma.f64 #s(literal 2 binary64) %130 %44)
(fma.f64 #s(literal 2 binary64) %130 %46)
(fma.f64 #s(literal 2 binary64) %130 x)
(fma.f64 #s(literal 2 binary64) %72 %68)
(fma.f64 #s(literal 2 binary64) %72 %70)
(fma.f64 #s(literal 2 binary64) %136 %44)
(fma.f64 #s(literal 2 binary64) %136 %46)
(fma.f64 #s(literal 2 binary64) %136 x)
(fma.f64 #s(literal 2 binary64) %65 %44)
(fma.f64 #s(literal 2 binary64) %65 %46)
(fma.f64 #s(literal 2 binary64) %65 x)
(fma.f64 %67 #s(literal 1/2 binary64) %68)
(fma.f64 %67 #s(literal 1/2 binary64) %70)
(fma.f64 %67 #s(literal 1 binary64) %44)
(fma.f64 %67 #s(literal 1 binary64) %46)
(fma.f64 %67 #s(literal 1 binary64) x)
(fma.f64 #s(literal 1 binary64) %65 %68)
(fma.f64 #s(literal 1 binary64) %65 %70)
(fma.f64 #s(literal 1 binary64) %67 %44)
(fma.f64 #s(literal 1 binary64) %67 %46)
(fma.f64 #s(literal 1 binary64) %67 x)
(fma.f64 #s(literal 1 binary64) %17 #s(literal 0 binary64))
(fma.f64 z #s(literal -1 binary64) %44)
(fma.f64 z #s(literal -1 binary64) %46)
(fma.f64 z #s(literal -1 binary64) x)
(-.f64 (-.f64 x %55) %55)
(-.f64 %67 %2)
(-.f64 %17 #s(literal 0 binary64))
%17
(+.f64 (+.f64 x %65) %65)
(+.f64 %65 %68)
(+.f64 %65 %70)
(+.f64 %67 %44)
(+.f64 %67 %46)
(+.f64 %67 x)
(+.f64 %17 #s(literal 0 binary64))
(+.f64 x %67)
(*.f64 #s(literal 1 binary64) %173)
(pow.f64 %173 #s(literal 1 binary64))
%173
(/.f64 #s(literal 1 binary64) (pow.f64 %173 #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) %181)
(pow.f64 %181 #s(literal 1 binary64))
%181
(/.f64 #s(literal 1 binary64) (pow.f64 %181 #s(literal -1 binary64)))
(*.f64 %3 %40)
(*.f64 %40 %3)
(*.f64 #s(literal 1 binary64) %188)
%188
(*.f64 y %17)
(pow.f64 %188 #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %188 #s(literal -1 binary64)))
(neg.f64 (*.f64 %40 y))
(fma.f64 (*.f64 %3 %21) #s(literal 1/2 binary64) %7)
(fma.f64 (*.f64 y %22) #s(literal 1/2 binary64) %7)
(fma.f64 (*.f64 %3 #s(literal 1/2 binary64)) %21 %7)
(fma.f64 (*.f64 y #s(literal 1/2 binary64)) %22 %7)
(fma.f64 (*.f64 %3 %55) #s(literal 2 binary64) %7)
(fma.f64 (*.f64 y %65) #s(literal 2 binary64) %7)
(fma.f64 (*.f64 %3 #s(literal 1 binary64)) z %7)
(fma.f64 (*.f64 y #s(literal 1 binary64)) %67 %7)
(fma.f64 %22 (*.f64 #s(literal 1/2 binary64) y) %7)
(fma.f64 %21 (*.f64 #s(literal 1/2 binary64) %3) %7)
(fma.f64 %65 %216 %7)
(fma.f64 %55 %218 %7)
(fma.f64 %218 %55 %7)
(fma.f64 %216 %65 %7)
(fma.f64 %2 %3 %222)
(fma.f64 #s(literal 1/2 binary64) (*.f64 %22 y) %7)
(fma.f64 #s(literal 1/2 binary64) (*.f64 %21 %3) %7)
(fma.f64 #s(literal 2 binary64) (*.f64 %55 %3) %7)
(fma.f64 #s(literal 2 binary64) (*.f64 %65 y) %7)
(fma.f64 %222 #s(literal 1 binary64) %7)
(fma.f64 %3 %2 %222)
(fma.f64 %3 z %7)
(fma.f64 %67 y %7)
(fma.f64 #s(literal 1 binary64) %222 %7)
(fma.f64 #s(literal 1 binary64) %7 %222)
(fma.f64 z %3 %7)
(fma.f64 y %67 %7)
(fma.f64 y x %222)
(fma.f64 x y %222)
(-.f64 %222 %14)
(-.f64 %7 (*.f64 z y))
(+.f64 %222 %7)
(+.f64 %7 %222)
(*.f64 #s(literal 1 binary64) %247)
(pow.f64 %247 #s(literal 1 binary64))
%247
(/.f64 #s(literal 1 binary64) (pow.f64 %247 #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) %252)
(pow.f64 %252 #s(literal 1 binary64))
%252
(/.f64 #s(literal 1 binary64) (pow.f64 %252 #s(literal -1 binary64)))

reconstruct17.0ms (1.2%)

Counts
223 → 46
Compiler

Compiled 223 to 345 computations (-54.7% saved)

eval4.0ms (0.3%)

Compiler

Compiled 47 to 104 computations (-121.3% saved)

prune3.0ms (0.2%)

Pruning

7 alts after pruning (2 fresh and 5 done)

PrunedKeptTotal
New45247
Fresh000
Picked033
Done123
Total46753
Accuracy
100.0%
Counts
53 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
73.6%
(fma.f64 x y (approx (* (- 1 y) z) z))
67.2%
(approx (+ (* y (- x z)) z) (-.f64 (*.f64 y x) (*.f64 z y)))
2.6%
(approx (+ (* y (- x z)) z) (*.f64 (approx x #s(literal 0 binary64)) y))
70.0%
(approx (+ (* y (- x z)) z) (*.f64 y (-.f64 x z)))
44.5%
(approx (+ (* y (- x z)) z) (*.f64 x y))
59.6%
(approx (+ (* x y) (* z (- 1 y))) (-.f64 z (*.f64 z y)))
31.5%
(approx (+ (* x y) (* z (- 1 y))) (approx (- z (* z y)) z))
Compiler

Compiled 7 to 13 computations (-85.7% saved)

regimes33.0ms (2.3%)

Accuracy

Total 20.7b remaining (21.0%)

Threshold costs 1.0b (1.0%)

6.9b62.3%
6.4b62.2%
6.4b62.2%
0.7b95.7%
0.2b0.0%

Counts
1 → 1
3 → 3
5 → 1
6 → 3
7 → 3
8 → 3
10 → 1
Calls
Call 1
Inputs
(approx (+ (* x y) (* z (- 1 y))) (approx (- z (* z y)) z))
Outputs
(approx (+ (* x y) (* z (- 1 y))) (approx (- z (* z y)) z))
Call 2
Inputs
%5 = (- 1 y)
%7 = (+ (* x y) (* z %5))
(approx %7 (approx (- z (* z y)) z))
(approx %7 (*.f64 z (approx %5 #s(literal 1 binary64))))
(approx (+ (* y (- x z)) z) (*.f64 x y))
Outputs
%7 = (approx (+ (* y (- x z)) z) (*.f64 x y))
%7
(approx (+ (* x y) (* z (- 1 y))) (approx (- z (* z y)) z))
%7
Call 3
Inputs
%5 = (- 1 y)
%7 = (+ (* x y) (* z %5))
%18 = (+ (* y (- x z)) z)
(approx %7 (approx (- z (* z y)) z))
(approx %7 (*.f64 z (approx %5 #s(literal 1 binary64))))
(approx %18 (*.f64 x y))
(approx %18 (*.f64 (approx x #s(literal 0 binary64)) y))
(fma.f64 x y (approx (* %5 z) z))
Outputs
(fma.f64 x y (approx (* (- 1 y) z) z))
Call 4
Inputs
%5 = (- 1 y)
%7 = (+ (* x y) (* z %5))
%18 = (+ (* y (- x z)) z)
(approx %7 (approx (- z (* z y)) z))
(approx %7 (*.f64 z (approx %5 #s(literal 1 binary64))))
(approx %18 (*.f64 x y))
(approx %18 (*.f64 (approx x #s(literal 0 binary64)) y))
(fma.f64 x y (approx (* %5 z) z))
(approx %7 (*.f64 z (-.f64 #s(literal 1 binary64) y)))
Outputs
%3 = (- 1 y)
%7 = (fma.f64 x y (approx (* %3 z) z))
%7
(approx (+ (* x y) (* z %3)) (*.f64 z (-.f64 #s(literal 1 binary64) y)))
%7
Call 5
Inputs
%5 = (- 1 y)
%7 = (+ (* x y) (* z %5))
%18 = (+ (* y (- x z)) z)
(approx %7 (approx (- z (* z y)) z))
(approx %7 (*.f64 z (approx %5 #s(literal 1 binary64))))
(approx %18 (*.f64 x y))
(approx %18 (*.f64 (approx x #s(literal 0 binary64)) y))
(fma.f64 x y (approx (* %5 z) z))
(approx %7 (*.f64 z (-.f64 #s(literal 1 binary64) y)))
(approx %7 (-.f64 z (*.f64 z y)))
Outputs
%3 = (- 1 y)
%7 = (fma.f64 x y (approx (* %3 z) z))
%7
(approx (+ (* x y) (* z %3)) (-.f64 z (*.f64 z y)))
%7
Call 6
Inputs
%5 = (- 1 y)
%7 = (+ (* x y) (* z %5))
%18 = (+ (* y (- x z)) z)
(approx %7 (approx (- z (* z y)) z))
(approx %7 (*.f64 z (approx %5 #s(literal 1 binary64))))
(approx %18 (*.f64 x y))
(approx %18 (*.f64 (approx x #s(literal 0 binary64)) y))
(fma.f64 x y (approx (* %5 z) z))
(approx %7 (*.f64 z (-.f64 #s(literal 1 binary64) y)))
(approx %7 (-.f64 z (*.f64 z y)))
(approx %18 (*.f64 y (-.f64 x z)))
Outputs
%8 = (approx (+ (* y (- x z)) z) (*.f64 y (-.f64 x z)))
%8
(fma.f64 x y (approx (* (- 1 y) z) z))
%8
Call 7
Inputs
%5 = (- 1 y)
%6 = (* z %5)
%7 = (+ (* x y) %6)
%18 = (+ (* y (- x z)) z)
%19 = (*.f64 x y)
%34 = (-.f64 x z)
(approx %7 (approx (- z (* z y)) z))
(approx %7 (*.f64 z (approx %5 #s(literal 1 binary64))))
(approx %18 %19)
(approx %18 (*.f64 (approx x #s(literal 0 binary64)) y))
(fma.f64 x y (approx (* %5 z) z))
(approx %7 (*.f64 z (-.f64 #s(literal 1 binary64) y)))
(approx %7 (-.f64 z (*.f64 z y)))
(approx %18 (*.f64 y %34))
(+.f64 %19 (approx %6 z))
(fma.f64 y %34 z)
Outputs
(fma.f64 y (-.f64 x z) z)
Calls

4 calls:

12.0ms
x
9.0ms
z
7.0ms
(+.f64 (*.f64 x y) (*.f64 z (-.f64 #s(literal 1 binary64) y)))
7.0ms
y
Results
AccuracySegmentsBranch
31.5%1
z
31.5%1
y
31.5%1
x
31.5%1
(+.f64 (*.f64 x y) (*.f64 z (-.f64 #s(literal 1 binary64) y)))
Compiler

Compiled 18 to 32 computations (-77.8% saved)

bsearch0.0ms (0.0%)

bsearch15.0ms (1.0%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
9.0ms
0.0037464000066246743
9373332.684899932
7.0ms
-60483670.74488553
-1.3910059451961023
Samples
8.0ms288×0valid
Compiler

Compiled 16 to 23 computations (-43.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 0.0ms
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)

bsearch14.0ms (1.0%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
14.0ms
7.224380456116987e-81
2.4266617232544718e-51
5.0ms
-4.420245809256181e-50
-2.8368855981903414e-51
Samples
12.0ms272×0valid
Compiler

Compiled 16 to 23 computations (-43.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 0.0ms
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)

bsearch1.0ms (0.1%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
0.0ms
7.224380456116987e-81
2.4266617232544718e-51
0.0ms
-4.420245809256181e-50
-2.8368855981903414e-51
Compiler

Compiled 16 to 25 computations (-56.3% saved)

bsearch0.0ms (0.0%)

bsearch14.0ms (1.0%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
10.0ms
7.258619132602248e-169
1.2564824626374914e-156
6.0ms
-0.03908848034999349
-0.0012090316397476394
Samples
6.0ms272×0valid
Compiler

Compiled 16 to 19 computations (-18.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 0.0ms
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)

bsearch0.0ms (0.0%)

derivations79.0ms (5.6%)

Stop Event
fuel
Compiler

Compiled 7 to 33 computations (-371.4% saved)

preprocess32.0ms (2.3%)

Compiler

Compiled 8 to 41 computations (-412.5% saved)

end0.0ms (0.0%)

gc269ms (18.9%)

Allocations
AllocatedPercentPhase
523.6 MiB28.7%rewrite
378.3 MiB20.7%sample
339.0 MiB18.6%reconstruct
155.5 MiB8.5%preprocess
128.3 MiB7.0%series
95.1 MiB5.2%bsearch
77.7 MiB4.3%regimes
70.6 MiB3.9%derivations
40.2 MiB2.2%eval
17.6 MiB1.0%prune
0.3 MiB0.0%analyze
0.0 MiB0.0%start
0.0 MiB0.0%end
1 826.5 MiB100.0%total

Profiling

Loading profile data...