Numeric.LinearAlgebra.Util:formatSparse from hmatrix-0.16.1.5

Time bar (total: 830.0ms)

start0.0ms (0.0%)

analyze6.0ms (0.7%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0.0%0.0%99.9%0.1%0.0%0.0%0.0%0
0.0%0.0%99.9%0.1%0.0%0.0%0.0%1
0.0%0.0%99.9%0.1%0.0%0.0%0.0%2
50.0%50.0%50.0%0.1%0.0%0.0%0.0%3
50.0%50.0%50.0%0.1%0.0%0.0%0.0%4
75.0%74.9%25.0%0.1%0.0%0.0%0.0%5
75.0%74.9%25.0%0.1%0.0%0.0%0.0%6
87.5%87.4%12.5%0.1%0.0%0.0%0.0%7
87.5%87.4%12.5%0.1%0.0%0.0%0.0%8
93.8%93.7%6.2%0.1%0.0%0.0%0.0%9
93.8%93.7%6.2%0.1%0.0%0.0%0.0%10
96.9%96.8%3.1%0.1%0.0%0.0%0.0%11
96.9%96.8%3.1%0.1%0.0%0.0%0.0%12
Compiler

Compiled 9 to 8 computations (11.1% saved)

sample262.0ms (31.6%)

Samples
184.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 9.0ms
Div: 3.0ms (32.6% of total, 0.0 MiB)
Fabs: 3.0ms (32.6% of total, 0.0 MiB)
Sub: 2.0ms (21.7% of total, 0.0 MiB)
Bogosity

preprocess24.0ms (2.9%)

Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02142
112038
247138
3172138
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y))
Compiler

Compiled 2 to 12 computations (-500.0% saved)

sample0.0ms (0.0%)

Calls
Call 1
Inputs
Outputs

series13.0ms (1.6%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
068242
Stop Event
iter-limit
Counts
6 → 22
Calls
Call 1
Inputs
%2 = (-.f64 x y)
%3 = (fabs.f64 %2)
%4 = (fabs.f64 y)
x
y
%2
%3
%4
(/.f64 %3 %4)
Outputs
%5 = (- x y)
%7 = (*.f64 #s(literal -1 binary64) y)
%9 = (-.f64 x y)
%11 = (fabs %5)
%12 = (fabs.f64 %9)
%14 = (fabs y)
%15 = (/ %11 %14)
%16 = (fabs.f64 y)
%20 = (/.f64 y x)
%26 = (pow.f64 x #s(literal 2 binary64))
%29 = (*.f64 %26 (fabs.f64 (/.f64 #s(literal 1 binary64) x)))
%39 = (*.f64 %26 (fabs.f64 (/.f64 #s(literal -1 binary64) x)))
%49 = (/.f64 x y)
%53 = (pow.f64 y #s(literal 2 binary64))
%56 = (*.f64 %53 (fabs.f64 (/.f64 #s(literal 1 binary64) y)))
%68 = (*.f64 %53 (fabs.f64 (/.f64 #s(literal -1 binary64) y)))
(approx x #s(literal 0 binary64))
(approx x x)
(approx %5 %7)
(approx %5 %9)
(approx %11 %12)
(approx %15 (/.f64 %12 %16))
(approx %5 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) %20))))
(approx %11 %29)
(approx %15 (/.f64 %29 %16))
(approx %5 (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 %20 #s(literal 1 binary64)))))
(approx %11 (*.f64 #s(literal -1 binary64) %39))
(approx %15 (*.f64 #s(literal -1 binary64) (/.f64 %39 %16)))
(approx y y)
(approx %5 (+.f64 x %7))
(approx %14 %16)
(approx %5 (*.f64 y (-.f64 %49 #s(literal 1 binary64))))
(approx %11 (*.f64 #s(literal -1 binary64) %56))
(approx %14 %56)
(approx %15 #s(literal -1 binary64))
(approx %5 (*.f64 #s(literal -1 binary64) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) %49)))))
(approx %11 %68)
(approx %14 (*.f64 #s(literal -1 binary64) %68))
Calls

6 calls:

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

rewrite74.0ms (8.9%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0618
01017
13917
214117
364017
0411617
0432717
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
6 → 161
Calls
Call 1
Inputs
%2 = (-.f64 x y)
%3 = (fabs.f64 %2)
%4 = (fabs.f64 y)
x
y
%2
%3
%4
(/.f64 %3 %4)
Outputs
%2 = (-.f64 x y)
%8 = (-.f64 y x)
%10 = (neg.f64 x)
%11 = (neg.f64 %10)
%13 = (neg.f64 y)
%21 = (fabs.f64 %2)
%22 = (sqrt.f64 %21)
%23 = (neg.f64 %22)
%24 = (*.f64 #s(literal 1 binary64) %23)
%26 = (*.f64 %23 #s(literal 1 binary64))
%28 = (neg.f64 %23)
%32 = (sqrt.f64 (*.f64 %22 %21))
%33 = (sqrt.f64 %22)
%36 = (*.f64 %21 #s(literal 2 binary64))
%37 = (fabs.f64 %36)
%48 = (*.f64 %8 %2)
%53 = (*.f64 %8 %8)
%59 = (neg.f64 %21)
%62 = (*.f64 %21 #s(literal 0 binary64))
%64 = (*.f64 #s(literal 0 binary64) %21)
%86 = (*.f64 #s(literal 1/2 binary64) %21)
%90 = (*.f64 %21 #s(literal 1/2 binary64))
%110 = (fabs.f64 y)
%111 = (sqrt.f64 %110)
%112 = (neg.f64 %111)
%113 = (neg.f64 %112)
%117 = (sqrt.f64 (*.f64 %111 %110))
%118 = (sqrt.f64 %111)
%125 = (*.f64 y y)
%131 = (/.f64 #s(literal 1 binary64) %110)
%133 = (neg.f64 %110)
%145 = (/.f64 %23 %111)
%147 = (/.f64 %22 %112)
%151 = (/.f64 #s(literal -1 binary64) %111)
%152 = (/.f64 %59 %111)
%154 = (/.f64 #s(literal 1 binary64) %112)
%157 = (fabs.f64 (/.f64 %8 y))
%158 = (sqrt.f64 %157)
%159 = (neg.f64 %158)
%161 = (*.f64 %131 %22)
%164 = (/.f64 %2 y)
%167 = (sqrt.f64 (fabs.f64 (*.f64 %164 %2)))
%173 = (/.f64 #s(literal 1 binary64) %111)
%174 = (/.f64 %21 %111)
%180 = (/.f64 #s(literal -1 binary64) %110)
%195 = (*.f64 %8 (/.f64 %8 %125))
%258 = (neg.f64 %157)
%261 = (/.f64 %8 %110)
%264 = (/.f64 %59 y)
%267 = (/.f64 %21 y)
%270 = (/.f64 %2 %110)
x
y
(pow.f64 %2 #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %2 #s(literal -1 binary64)))
(neg.f64 %8)
(-.f64 %11 y)
(-.f64 %13 (neg.f64 %11))
(-.f64 %13 %10)
%2
(+.f64 %11 %13)
(+.f64 %13 %11)
(+.f64 %13 x)
(+.f64 x %13)
(*.f64 %24 %24)
(*.f64 %26 %26)
(*.f64 %28 %28)
(*.f64 %28 %22)
(*.f64 %32 %33)
(*.f64 %37 #s(literal 1/2 binary64))
(*.f64 %36 #s(literal 1/2 binary64))
(*.f64 %23 %23)
(*.f64 %33 %32)
(*.f64 %22 %28)
(*.f64 %22 %22)
(*.f64 #s(literal 1 binary64) %21)
(*.f64 %21 #s(literal 1 binary64))
(pow.f64 %23 #s(literal 2 binary64))
(pow.f64 (*.f64 %48 %48) #s(literal 1/4 binary64))
(pow.f64 %22 #s(literal 2 binary64))
(pow.f64 %53 #s(literal 1/2 binary64))
(pow.f64 %21 #s(literal 1 binary64))
(/.f64 %36 #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %21 #s(literal -1 binary64)))
(neg.f64 %59)
(fma.f64 %24 %24 %62)
(fma.f64 %24 %24 %64)
(fma.f64 %26 %26 %62)
(fma.f64 %26 %26 %64)
(fma.f64 %28 %28 %62)
(fma.f64 %28 %28 %64)
(fma.f64 %28 %22 %62)
(fma.f64 %28 %22 %64)
(fma.f64 %32 %33 %62)
(fma.f64 %32 %33 %64)
(fma.f64 %37 #s(literal 1/2 binary64) %62)
(fma.f64 %37 #s(literal 1/2 binary64) %64)
(fma.f64 %36 #s(literal 1/2 binary64) %62)
(fma.f64 %36 #s(literal 1/2 binary64) %64)
(fma.f64 %23 %23 %62)
(fma.f64 %23 %23 %64)
(fma.f64 %33 %32 %62)
(fma.f64 %33 %32 %64)
(fma.f64 %22 %28 %62)
(fma.f64 %22 %28 %64)
(fma.f64 %22 %22 %62)
(fma.f64 %22 %22 %64)
(fma.f64 #s(literal 1/2 binary64) %21 %86)
(fma.f64 #s(literal 1 binary64) %21 %62)
(fma.f64 #s(literal 1 binary64) %21 %64)
(fma.f64 %21 #s(literal 1/2 binary64) %90)
(fma.f64 %21 #s(literal 1 binary64) %62)
(fma.f64 %21 #s(literal 1 binary64) %64)
(sqrt.f64 %53)
(fabs.f64 (*.f64 #s(literal 1 binary64) %8))
(fabs.f64 (*.f64 #s(literal 1 binary64) %2))
(fabs.f64 (*.f64 %8 #s(literal 1 binary64)))
(fabs.f64 (*.f64 %2 #s(literal 1 binary64)))
(fabs.f64 %59)
(fabs.f64 %8)
(fabs.f64 %21)
%21
(+.f64 %90 %90)
(+.f64 %86 %86)
(+.f64 %21 %62)
(+.f64 %21 %64)
(*.f64 %113 %113)
(*.f64 %113 %111)
(*.f64 %117 %118)
(*.f64 %112 %112)
(*.f64 %118 %117)
(*.f64 %111 %113)
(*.f64 %111 %111)
(pow.f64 %112 #s(literal 2 binary64))
(pow.f64 (*.f64 %125 %125) #s(literal 1/4 binary64))
(pow.f64 %111 #s(literal 2 binary64))
(pow.f64 %125 #s(literal 1/2 binary64))
(pow.f64 %110 #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) %131)
(neg.f64 %133)
(sqrt.f64 %125)
(fabs.f64 %133)
(fabs.f64 %13)
(fabs.f64 %110)
%110
(*.f64 (/.f64 %36 %112) (/.f64 #s(literal 1/2 binary64) %112))
(*.f64 (/.f64 %36 %111) (/.f64 #s(literal 1/2 binary64) %111))
(*.f64 %145 %145)
(*.f64 %145 %147)
(*.f64 %147 %145)
(*.f64 %147 %147)
(*.f64 %151 %152)
(*.f64 %154 %152)
(*.f64 %159 %159)
(*.f64 (fabs.f64 %161) %22)
(*.f64 %167 (sqrt.f64 %131))
(*.f64 %161 %22)
(*.f64 %152 %151)
(*.f64 %152 %154)
(*.f64 %173 %174)
(*.f64 %174 %173)
(*.f64 %23 (/.f64 %23 %110))
(*.f64 %158 %158)
(*.f64 %180 %59)
(*.f64 %22 (sqrt.f64 (fabs.f64 (/.f64 (*.f64 #s(literal -1 binary64) %8) %125))))
(*.f64 %22 (/.f64 %22 %110))
(*.f64 %131 %21)
(*.f64 %59 %180)
(*.f64 #s(literal 1 binary64) %157)
(*.f64 %21 %131)
(pow.f64 %158 #s(literal 2 binary64))
(pow.f64 %195 #s(literal 1/2 binary64))
(pow.f64 %157 #s(literal 1 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) %174) (*.f64 #s(literal 2 binary64) %111))
(/.f64 (*.f64 #s(literal 2 binary64) %59) (*.f64 #s(literal 2 binary64) %133))
(/.f64 (*.f64 #s(literal 2 binary64) %21) (*.f64 #s(literal 2 binary64) %110))
(/.f64 (*.f64 %13 %174) (*.f64 %13 %111))
(/.f64 (*.f64 %13 %59) (*.f64 %13 %133))
(/.f64 (*.f64 %13 %21) (*.f64 %13 %110))
(/.f64 (*.f64 y %174) (*.f64 y %111))
(/.f64 (*.f64 y %59) (*.f64 y %133))
(/.f64 (*.f64 y %21) (*.f64 y %110))
(/.f64 (fabs.f64 (-.f64 (*.f64 (/.f64 x y) y) y)) %110)
(/.f64 (fabs.f64 (*.f64 %2 y)) %125)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %164 %8))) %111)
(/.f64 %167 %111)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %8 %164))) %111)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %2 %164))) %111)
(/.f64 %152 %112)
(/.f64 %174 %111)
(/.f64 %59 %133)
(/.f64 #s(literal 1 binary64) (/.f64 %111 %174))
(/.f64 #s(literal 1 binary64) (pow.f64 %157 #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 %133 %59))
(/.f64 #s(literal 1 binary64) (/.f64 %110 %21))
(/.f64 %21 %110)
(neg.f64 %258)
(sqrt.f64 %195)
(fabs.f64 (*.f64 #s(literal 1 binary64) %261))
(fabs.f64 (*.f64 #s(literal 1 binary64) %264))
(fabs.f64 (*.f64 #s(literal 1 binary64) %267))
(fabs.f64 (*.f64 #s(literal 1 binary64) %270))
(fabs.f64 (*.f64 #s(literal 1 binary64) %164))
(fabs.f64 (*.f64 %59 (/.f64 #s(literal 1 binary64) y)))
(fabs.f64 %261)
(fabs.f64 %264)
(fabs.f64 %267)
(fabs.f64 %270)
(fabs.f64 %258)
%157
(fabs.f64 %164)
(fabs.f64 %157)

reconstruct14.0ms (1.7%)

Counts
183 → 47
Compiler

Compiled 183 to 319 computations (-74.3% saved)

eval4.0ms (0.5%)

Compiler

Compiled 46 to 147 computations (-219.6% saved)

prune1.0ms (0.2%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New43346
Fresh000
Picked101
Done000
Total44347
Accuracy
100.0%
Counts
47 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(/.f64 (fabs.f64 (approx (- x y) (*.f64 y (-.f64 (/.f64 x y) #s(literal 1 binary64))))) (fabs.f64 y))
100.0%
(fabs.f64 (/.f64 (-.f64 x y) y))
1.3%
(approx (/ (fabs (- x y)) (fabs y)) #s(literal -1 binary64))
Compiler

Compiled 3 to 13 computations (-333.3% saved)

sample0.0ms (0.0%)

Calls
Call 1
Inputs
Outputs

series18.0ms (2.1%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
090359
Stop Event
iter-limit
Counts
15 → 31
Calls
Call 1
Inputs
%2 = (-.f64 x y)
%3 = (fabs.f64 y)
%6 = (/.f64 x y)
%7 = (-.f64 %6 #s(literal 1 binary64))
%8 = (*.f64 y %7)
%9 = (- x y)
%10 = (approx %9 %8)
%15 = (/.f64 %2 y)
%17 = (fabs.f64 %10)
x
y
%2
%3
#s(literal -1 binary64)
#s(literal 1 binary64)
%6
%7
%8
%10
(approx (/ (fabs %9) (fabs y)) #s(literal -1 binary64))
%15
(fabs.f64 %15)
%17
(/.f64 %17 %3)
Outputs
%5 = (- x y)
%7 = (*.f64 #s(literal -1 binary64) y)
%9 = (-.f64 x y)
%11 = (/ x y)
%12 = (/.f64 x y)
%15 = (- %11 1)
%18 = (-.f64 %12 #s(literal 1 binary64))
%21 = (+.f64 x %7)
%23 = (fabs %5)
%24 = (fabs y)
%25 = (/ %23 %24)
%26 = (fabs.f64 %9)
%27 = (fabs.f64 y)
%31 = (fabs (/ %5 y))
%34 = (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) %12))
%37 = (/.f64 y x)
%42 = (/.f64 #s(literal 1 binary64) y)
%43 = (/.f64 #s(literal 1 binary64) x)
%48 = (pow.f64 x #s(literal 2 binary64))
%50 = (*.f64 %48 (fabs.f64 %43))
%67 = (*.f64 %48 (fabs.f64 (/.f64 #s(literal -1 binary64) x)))
%85 = (pow.f64 y #s(literal 2 binary64))
%87 = (*.f64 %85 (fabs.f64 %42))
%96 = (*.f64 %85 (fabs.f64 (/.f64 #s(literal -1 binary64) y)))
(approx x #s(literal 0 binary64))
(approx x x)
(approx %5 %7)
(approx %5 %9)
(approx %11 %12)
(approx %15 #s(literal -1 binary64))
(approx %15 %18)
(approx (* y %15) %21)
(approx %25 (/.f64 %26 %27))
(approx %31 #s(literal 1 binary64))
(approx %31 %34)
(approx %23 %26)
(approx %5 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) %37))))
(approx %15 (*.f64 x (-.f64 %42 %43)))
(approx %25 (/.f64 %50 %27))
(approx %31 (fabs.f64 (/.f64 %9 y)))
(approx %23 %50)
(approx %5 (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 %37 #s(literal 1 binary64)))))
(approx %15 (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 %43 %42))))
(approx %25 (*.f64 #s(literal -1 binary64) (/.f64 %67 %27)))
(approx %31 (fabs.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 y (*.f64 #s(literal -1 binary64) x)) y))))
(approx %23 (*.f64 #s(literal -1 binary64) %67))
(approx y y)
(approx %24 %27)
(approx %15 (/.f64 %21 y))
(approx %5 (*.f64 y %18))
(approx %24 %87)
(approx %23 (*.f64 #s(literal -1 binary64) %87))
(approx %5 (*.f64 #s(literal -1 binary64) (*.f64 y %34)))
(approx %24 (*.f64 #s(literal -1 binary64) %96))
(approx %23 %96)
Calls

6 calls:

TimeVariablePoint
4.0ms
x
-inf
2.0ms
x
inf
2.0ms
x
0
2.0ms
y
0
2.0ms
y
inf

rewrite82.0ms (9.9%)

Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01982
02876
110276
235664
3238264
0402764
0441564
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
15 → 514
Calls
Call 1
Inputs
%2 = (-.f64 x y)
%3 = (fabs.f64 y)
%6 = (/.f64 x y)
%7 = (-.f64 %6 #s(literal 1 binary64))
%8 = (*.f64 y %7)
%9 = (- x y)
%10 = (approx %9 %8)
%15 = (/.f64 %2 y)
%17 = (fabs.f64 %10)
x
y
%2
%3
#s(literal -1 binary64)
#s(literal 1 binary64)
%6
%7
%8
%10
(approx (/ (fabs %9) (fabs y)) #s(literal -1 binary64))
%15
(fabs.f64 %15)
%17
(/.f64 %17 %3)
Outputs
%2 = (-.f64 x y)
%4 = (*.f64 %2 #s(literal 2 binary64))
%6 = (*.f64 %4 #s(literal 1/2 binary64))
%7 = (*.f64 %2 #s(literal 1/2 binary64))
%8 = (*.f64 %7 #s(literal 2 binary64))
%9 = (*.f64 %2 y)
%11 = (/.f64 #s(literal 1 binary64) y)
%12 = (*.f64 %9 %11)
%13 = (-.f64 y x)
%14 = (*.f64 y %13)
%16 = (/.f64 #s(literal -1 binary64) y)
%17 = (*.f64 %14 %16)
%18 = (*.f64 y %2)
%19 = (*.f64 %18 %11)
%20 = (*.f64 %11 %9)
%21 = (*.f64 %16 y)
%22 = (*.f64 %13 %21)
%23 = (neg.f64 y)
%24 = (/.f64 %13 y)
%25 = (*.f64 %23 %24)
%26 = (*.f64 %24 %23)
%27 = (/.f64 %2 y)
%28 = (*.f64 %27 y)
%29 = (*.f64 %2 #s(literal 1 binary64))
%30 = (*.f64 #s(literal 1 binary64) %2)
%31 = (*.f64 y %27)
%32 = (pow.f64 %2 #s(literal 1 binary64))
%34 = (*.f64 %23 y)
%35 = (/.f64 (*.f64 y %14) %34)
%37 = (*.f64 y y)
%38 = (/.f64 (*.f64 y %18) %37)
%39 = (/.f64 %4 #s(literal 2 binary64))
%41 = (/.f64 (*.f64 %14 y) %34)
%43 = (/.f64 (*.f64 %18 y) %37)
%45 = (/.f64 (*.f64 %13 y) %23)
%46 = (/.f64 %9 y)
%47 = (*.f64 %23 %2)
%48 = (/.f64 %47 %23)
%49 = (/.f64 %14 %23)
%50 = (/.f64 %18 y)
%52 = (/.f64 #s(literal 1 binary64) (pow.f64 %2 #s(literal -1 binary64)))
%53 = (*.f64 %2 #s(literal -1 binary64))
%54 = (neg.f64 %53)
%55 = (neg.f64 %13)
%58 = (fma.f64 (*.f64 y #s(literal -2 binary64)) #s(literal 1/2 binary64) x)
%60 = (*.f64 %2 #s(literal 0 binary64))
%61 = (fma.f64 %4 #s(literal 1/2 binary64) %60)
%62 = (*.f64 #s(literal 0 binary64) %2)
%63 = (fma.f64 %4 #s(literal 1/2 binary64) %62)
%64 = (fma.f64 %7 #s(literal 2 binary64) %60)
%65 = (fma.f64 %7 #s(literal 2 binary64) %62)
%66 = (fma.f64 %9 %11 %60)
%67 = (fma.f64 %9 %11 %62)
%68 = (*.f64 y #s(literal 2 binary64))
%70 = (fma.f64 %68 #s(literal -1/2 binary64) x)
%72 = (fma.f64 #s(literal -2 binary64) (*.f64 #s(literal 1/2 binary64) y) x)
%73 = (fma.f64 %14 %16 %60)
%74 = (fma.f64 %14 %16 %62)
%75 = (fma.f64 %18 %11 %60)
%76 = (fma.f64 %18 %11 %62)
%78 = (fma.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 2 binary64) %23) x)
%79 = (*.f64 #s(literal 1/2 binary64) %2)
%80 = (fma.f64 #s(literal 1/2 binary64) %2 %79)
%82 = (fma.f64 #s(literal 2 binary64) (*.f64 #s(literal -1/2 binary64) y) x)
%84 = (fma.f64 #s(literal 2 binary64) (*.f64 #s(literal 1/2 binary64) %23) x)
%85 = (fma.f64 %11 %9 %60)
%86 = (fma.f64 %11 %9 %62)
%87 = (fma.f64 %13 %21 %60)
%88 = (fma.f64 %13 %21 %62)
%89 = (fma.f64 %23 %24 %60)
%90 = (fma.f64 %23 %24 %62)
%91 = (fma.f64 %23 #s(literal 1 binary64) x)
%92 = (fma.f64 %24 %23 %60)
%93 = (fma.f64 %24 %23 %62)
%94 = (fma.f64 %27 y %60)
%95 = (fma.f64 %27 y %62)
%96 = (fma.f64 %2 #s(literal 1/2 binary64) %7)
%97 = (fma.f64 %2 #s(literal 1 binary64) %60)
%98 = (fma.f64 %2 #s(literal 1 binary64) %62)
%99 = (fma.f64 #s(literal 1 binary64) %23 x)
%100 = (fma.f64 #s(literal 1 binary64) %2 %60)
%101 = (fma.f64 #s(literal 1 binary64) %2 %62)
%102 = (fma.f64 #s(literal -1 binary64) y x)
%103 = (*.f64 %11 %23)
%104 = (fma.f64 y %103 x)
%105 = (fma.f64 y %27 %60)
%106 = (fma.f64 y %27 %62)
%107 = (fma.f64 y #s(literal -1 binary64) x)
%108 = (neg.f64 x)
%109 = (-.f64 %23 %108)
%111 = (-.f64 x (*.f64 %23 #s(literal -1 binary64)))
%112 = (+.f64 %7 %7)
%113 = (+.f64 %79 %79)
%114 = (+.f64 %23 x)
%115 = (+.f64 %2 %60)
%116 = (+.f64 %2 %62)
%117 = (+.f64 x %23)
%118 = (fabs.f64 y)
%119 = (sqrt.f64 %118)
%122 = (sqrt.f64 (fabs.f64 (*.f64 %119 %118)))
%123 = (sqrt.f64 %119)
%125 = (neg.f64 %119)
%134 = (/.f64 #s(literal 1 binary64) %118)
%136 = (neg.f64 %118)
%142 = (*.f64 x #s(literal 2 binary64))
%143 = (/.f64 #s(literal 1/2 binary64) y)
%146 = (*.f64 %143 x)
%150 = (/.f64 x y)
%167 = (/.f64 %108 y)
%169 = (*.f64 %4 %143)
%170 = (*.f64 %16 %13)
%171 = (/.f64 #s(literal 1 binary64) %34)
%172 = (*.f64 %14 %171)
%173 = (/.f64 #s(literal 1 binary64) %37)
%174 = (*.f64 %18 %173)
%176 = (*.f64 #s(literal 2 binary64) (*.f64 %143 %2))
%177 = (*.f64 %11 %2)
%178 = (*.f64 %13 %16)
%179 = (*.f64 %2 %11)
%180 = (*.f64 #s(literal 1 binary64) %27)
%181 = (pow.f64 %27 #s(literal 1 binary64))
%183 = (/.f64 (/.f64 %18 %118) %118)
%184 = (/.f64 %53 %23)
%186 = (/.f64 (fma.f64 #s(literal -1 binary64) %23 %108) %23)
%189 = (/.f64 (-.f64 (*.f64 %150 #s(literal 2 binary64)) #s(literal 2 binary64)) #s(literal 2 binary64))
%192 = (/.f64 (-.f64 (*.f64 %150 %23) %23) %23)
%195 = (/.f64 (-.f64 (*.f64 x %23) %34) %34)
%197 = (*.f64 %23 #s(literal 2 binary64))
%199 = (/.f64 (-.f64 (*.f64 %108 #s(literal 2 binary64)) %197) %197)
%202 = (/.f64 (-.f64 (*.f64 %108 %23) %37) %37)
%204 = (/.f64 (-.f64 %142 %68) %68)
%206 = (/.f64 (*.f64 #s(literal -1 binary64) %2) %23)
%208 = (/.f64 (neg.f64 %14) %37)
%209 = (/.f64 %47 %34)
%210 = (/.f64 %14 %34)
%211 = (/.f64 %18 %37)
%212 = (/.f64 %13 %23)
%214 = (/.f64 #s(literal 1 binary64) (/.f64 %34 %14))
%216 = (/.f64 #s(literal 1 binary64) (/.f64 %37 %18))
%218 = (/.f64 #s(literal 1 binary64) (pow.f64 %27 #s(literal -1 binary64)))
%220 = (/.f64 #s(literal 1 binary64) (/.f64 %23 %13))
%222 = (/.f64 #s(literal 1 binary64) (/.f64 y %2))
%223 = (neg.f64 %24)
%224 = (fma.f64 %142 %143 %103)
%225 = (fma.f64 %142 %143 #s(literal -1 binary64))
%226 = (fma.f64 %16 %108 %103)
%227 = (fma.f64 %16 %108 #s(literal -1 binary64))
%228 = (fma.f64 #s(literal 2 binary64) %146 %103)
%229 = (fma.f64 #s(literal 2 binary64) %146 #s(literal -1 binary64))
%230 = (fma.f64 %11 %23 %150)
%231 = (fma.f64 %11 x %103)
%232 = (fma.f64 %11 x #s(literal -1 binary64))
%233 = (fma.f64 %108 %16 %103)
%234 = (fma.f64 %108 %16 #s(literal -1 binary64))
%235 = (fma.f64 #s(literal 1 binary64) %150 %103)
%236 = (fma.f64 #s(literal 1 binary64) %150 #s(literal -1 binary64))
%237 = (fma.f64 x %11 %103)
%238 = (fma.f64 x %11 #s(literal -1 binary64))
%240 = (-.f64 (-.f64 %150 #s(literal 1/2 binary64)) #s(literal 1/2 binary64))
%243 = (-.f64 (/.f64 (*.f64 %108 y) %34) #s(literal 1 binary64))
%246 = (-.f64 (/.f64 (*.f64 y x) %37) #s(literal 1 binary64))
%247 = (-.f64 %27 #s(literal 0 binary64))
%248 = (-.f64 %150 #s(literal 1 binary64))
%249 = (-.f64 #s(literal -1 binary64) %167)
%250 = (+.f64 %103 %150)
%251 = (+.f64 %150 %103)
%252 = (+.f64 %150 #s(literal -1 binary64))
%253 = (+.f64 #s(literal -1 binary64) %150)
%255 = (approx (- x y) %2)
%260 = (neg.f64 %255)
%266 = (approx (fabs (- 1 (/ x y))) #s(literal -1 binary64))
%271 = (*.f64 %13 %24)
%278 = (fabs.f64 %27)
%282 = (fabs.f64 %2)
%283 = (sqrt.f64 %282)
%285 = (sqrt.f64 %278)
%288 = (sqrt.f64 (fabs.f64 (*.f64 %285 %278)))
%289 = (sqrt.f64 %285)
%293 = (sqrt.f64 (fabs.f64 (*.f64 %271 #s(literal 1 binary64))))
%294 = (/.f64 #s(literal 1 binary64) %119)
%296 = (neg.f64 %282)
%299 = (sqrt.f64 (fabs.f64 (*.f64 %278 %296)))
%300 = (/.f64 #s(literal -1 binary64) %118)
%301 = (fabs.f64 %300)
%306 = (sqrt.f64 (fabs.f64 (*.f64 %278 %282)))
%310 = (sqrt.f64 (fabs.f64 (*.f64 %24 %13)))
%315 = (/.f64 #s(literal 1/2 binary64) %118)
%317 = (/.f64 %282 %119)
%319 = (neg.f64 %285)
%324 = (sqrt.f64 (fabs.f64 (*.f64 %282 %278)))
%326 = (fabs.f64 %271)
%327 = (sqrt.f64 %326)
%330 = (sqrt.f64 (fabs.f64 %173))
%332 = (/.f64 %2 %37)
%334 = (sqrt.f64 (fabs.f64 %332))
%337 = (fabs.f64 (*.f64 %13 %27))
%338 = (sqrt.f64 %337)
%411 = (*.f64 %332 %2)
%453 = (sqrt.f64 (fabs.f64 (*.f64 %37 %37)))
%492 = (sqrt.f64 (fabs.f64 (*.f64 %37 %23)))
%499 = (sqrt.f64 (fabs.f64 (*.f64 %37 y)))
%562 = (neg.f64 %278)
%582 = (fabs.f64 %255)
%583 = (sqrt.f64 %582)
%586 = (sqrt.f64 (fabs.f64 (*.f64 %583 %582)))
%587 = (sqrt.f64 %583)
%589 = (*.f64 %582 #s(literal 2 binary64))
%591 = (*.f64 %582 y)
%593 = (*.f64 %582 #s(literal 1/2 binary64))
%595 = (neg.f64 %583)
%607 = (*.f64 %255 %255)
%620 = (*.f64 %582 #s(literal -1 binary64))
%622 = (neg.f64 %582)
%624 = (*.f64 %582 #s(literal 0 binary64))
%626 = (*.f64 #s(literal 0 binary64) %582)
%640 = (*.f64 #s(literal 1/2 binary64) %582)
%659 = (/.f64 %255 y)
%662 = (sqrt.f64 (fabs.f64 (*.f64 %659 %255)))
%667 = (/.f64 %582 %119)
%669 = (fabs.f64 %659)
%670 = (sqrt.f64 %669)
%685 = (/.f64 %255 %37)
%701 = (*.f64 %255 %685)
x
y
%6
%8
%12
%17
%19
%20
%22
%25
%26
%28
%29
%30
%31
%32
%35
%38
%39
%41
%43
%45
%46
%48
%49
%50
%52
%54
%55
%58
%61
%63
%64
%65
%66
%67
%70
%72
%73
%74
%75
%76
%78
%80
%82
%84
%85
%86
%87
%88
%89
%90
%91
%92
%93
%94
%95
%96
%97
%98
%99
%100
%101
%102
%104
%105
%106
%107
%109
%111
%2
%112
%113
%114
%115
%116
%117
(*.f64 %122 %123)
(*.f64 %125 %125)
(*.f64 %123 %122)
(*.f64 %119 %119)
(*.f64 #s(literal 1 binary64) %118)
(pow.f64 %125 #s(literal 2 binary64))
(pow.f64 %119 #s(literal 2 binary64))
(pow.f64 %37 #s(literal 1/2 binary64))
(pow.f64 %118 #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) %134)
(neg.f64 %136)
(sqrt.f64 %37)
(fabs.f64 %136)
(fabs.f64 %23)
(fabs.f64 %118)
%118
#s(literal -1 binary64)
#s(literal 1 binary64)
(*.f64 %142 %143)
(*.f64 %16 %108)
(*.f64 #s(literal 2 binary64) %146)
(*.f64 %11 x)
(*.f64 %108 %16)
(*.f64 #s(literal 1 binary64) %150)
(*.f64 x %11)
(pow.f64 %150 #s(literal 1 binary64))
(/.f64 (*.f64 %108 #s(literal 1 binary64)) %23)
(/.f64 (*.f64 #s(literal -1 binary64) x) %23)
(/.f64 (*.f64 x #s(literal -1 binary64)) %23)
(/.f64 %108 %23)
(/.f64 #s(literal 1 binary64) (pow.f64 %150 #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 %23 %108))
(/.f64 #s(literal 1 binary64) (/.f64 y x))
%150
(neg.f64 %167)
%169
%170
%172
%174
%176
%177
%178
%179
%180
%181
%183
%184
%186
%189
%192
%195
%199
%202
%204
%206
%208
%209
%210
%211
%212
%27
%214
%216
%218
%220
%222
%223
%224
%225
%226
%227
%228
%229
%230
%231
%232
%233
%234
%235
%236
%237
%238
%240
%243
%246
%247
%248
%249
%250
%251
%252
%253
%6
%8
%12
%17
%19
%20
%22
%25
%26
%28
%29
%30
%31
%32
%35
%38
%39
%41
%43
%45
%46
%48
%49
%50
%52
%54
%55
%58
%61
%63
%64
%65
%66
%67
%70
%72
%73
%74
%75
%76
%78
%80
%82
%84
%85
%86
%87
%88
%89
%90
%91
%92
%93
%94
%95
%96
%97
%98
%99
%100
%101
%102
%104
%105
%106
%107
%109
%111
%2
%112
%113
%114
%115
%116
%117
(*.f64 #s(literal 1 binary64) %255)
(pow.f64 %255 #s(literal 1 binary64))
%255
(/.f64 #s(literal 1 binary64) (pow.f64 %255 #s(literal -1 binary64)))
(neg.f64 %260)
(*.f64 #s(literal 1 binary64) %266)
(pow.f64 %266 #s(literal 1 binary64))
%266
(/.f64 #s(literal 1 binary64) (pow.f64 %266 #s(literal -1 binary64)))
%169
%170
%172
%174
%176
%177
%178
%179
%180
%181
%183
%184
%186
%189
%192
%195
%199
%202
%204
%206
%208
%209
%210
%211
%212
%27
%214
%216
%218
%220
%222
%223
%224
%225
%226
%227
%228
%229
%230
%231
%232
%233
%234
%235
%236
%237
%238
%240
%243
%246
%247
%248
%249
%250
%251
%252
%253
(*.f64 (sqrt.f64 (fabs.f64 (*.f64 %271 #s(literal 2 binary64)))) (sqrt.f64 (fabs.f64 %143)))
(*.f64 (sqrt.f64 (fabs.f64 (*.f64 %278 %134))) %283)
(*.f64 %288 %289)
(*.f64 %293 %294)
(*.f64 %299 (sqrt.f64 %301))
(*.f64 %306 %294)
(*.f64 %310 %294)
(*.f64 (*.f64 %134 %283) %283)
(*.f64 (*.f64 %282 #s(literal 2 binary64)) %315)
(*.f64 %317 %294)
(*.f64 %319 %319)
(*.f64 %289 %288)
(*.f64 %294 %324)
(*.f64 %294 %327)
(*.f64 %330 %282)
(*.f64 %334 %283)
(*.f64 %338 %294)
(*.f64 %327 %294)
(*.f64 %300 %296)
(*.f64 %285 %285)
(*.f64 %283 (sqrt.f64 (fabs.f64 (*.f64 %300 %278))))
(*.f64 %283 (sqrt.f64 (fabs.f64 (*.f64 %13 %173))))
(*.f64 %283 (sqrt.f64 (fabs.f64 (*.f64 %16 %27))))
(*.f64 %283 (sqrt.f64 (fabs.f64 (/.f64 %27 %23))))
(*.f64 %283 (sqrt.f64 (fabs.f64 (/.f64 %2 %34))))
(*.f64 %283 (sqrt.f64 (fabs.f64 (/.f64 %13 %37))))
(*.f64 %283 (sqrt.f64 (fabs.f64 (*.f64 %11 %24))))
(*.f64 %283 (sqrt.f64 (fabs.f64 (*.f64 %282 %173))))
(*.f64 %283 (sqrt.f64 (fabs.f64 (*.f64 %134 %278))))
(*.f64 %283 (sqrt.f64 (fabs.f64 (/.f64 %282 %37))))
(*.f64 %283 (sqrt.f64 (fabs.f64 (*.f64 %2 %173))))
(*.f64 %283 (sqrt.f64 (fabs.f64 (*.f64 %16 %24))))
(*.f64 %283 (*.f64 %283 %134))
(*.f64 %283 (/.f64 %283 %118))
(*.f64 %283 %334)
(*.f64 #s(literal 2 binary64) (*.f64 %315 %282))
(*.f64 %134 %282)
(*.f64 %296 %300)
(*.f64 %282 (sqrt.f64 (fabs.f64 %171)))
(*.f64 %282 %301)
(*.f64 %282 %330)
(*.f64 %282 %134)
(*.f64 #s(literal 1 binary64) %278)
(pow.f64 (*.f64 #s(literal -1 binary64) %285) #s(literal 2 binary64))
(pow.f64 %319 #s(literal 2 binary64))
(pow.f64 %285 #s(literal 2 binary64))
(pow.f64 %411 #s(literal 1/2 binary64))
(pow.f64 %278 #s(literal 1 binary64))
(/.f64 %293 %119)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %271 #s(literal -1 binary64)))) %119)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %27 %14))) %118)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %27 %18))) %118)
(/.f64 %299 %119)
(/.f64 %306 %119)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %14 %27))) %118)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %18 %27))) %118)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %296 %278))) %119)
(/.f64 %324 %119)
(/.f64 (sqrt.f64 (fabs.f64 (/.f64 (*.f64 %13 %13) %118))) %119)
(/.f64 %310 %119)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %14 %14))) %453)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %14 %18))) (sqrt.f64 (fabs.f64 (*.f64 %34 %37))))
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %14 %13))) (sqrt.f64 (fabs.f64 (*.f64 %34 %23))))
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %14 %2))) (sqrt.f64 (fabs.f64 (*.f64 %34 y))))
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %18 %14))) (sqrt.f64 (fabs.f64 (*.f64 %37 %34))))
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %18 %18))) %453)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %18 %13))) %492)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %18 %2))) %499)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %13 %14))) (sqrt.f64 (fabs.f64 (*.f64 %23 %34))))
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %13 %18))) %492)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %2 %14))) (sqrt.f64 (fabs.f64 (*.f64 y %34))))
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %2 %18))) %499)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %296 %282))) (sqrt.f64 (fabs.f64 (*.f64 %136 %118))))
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %282 %296))) (sqrt.f64 (fabs.f64 (*.f64 %118 %136))))
(/.f64 (*.f64 %296 #s(literal 1 binary64)) %136)
(/.f64 (*.f64 #s(literal -1 binary64) %282) %136)
(/.f64 (*.f64 %282 #s(literal -1 binary64)) %136)
(/.f64 %317 %119)
(/.f64 (fabs.f64 %14) %37)
(/.f64 (fabs.f64 %18) %37)
(/.f64 %338 %119)
(/.f64 %327 %119)
(/.f64 %296 %136)
(/.f64 %282 %118)
(/.f64 #s(literal 1 binary64) (pow.f64 %285 #s(literal -2 binary64)))
(/.f64 #s(literal 1 binary64) (pow.f64 %411 #s(literal -1/2 binary64)))
(/.f64 #s(literal 1 binary64) (pow.f64 %278 #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 %136 %296))
(/.f64 #s(literal 1 binary64) (/.f64 %118 %282))
(neg.f64 %562)
(sqrt.f64 (/.f64 %337 %118))
(sqrt.f64 (/.f64 %326 %118))
(sqrt.f64 %411)
(fabs.f64 (*.f64 %282 %11))
(fabs.f64 (/.f64 %13 %118))
(fabs.f64 (/.f64 %282 %23))
(fabs.f64 (/.f64 %282 y))
(fabs.f64 (/.f64 %2 %118))
(fabs.f64 %562)
(fabs.f64 %24)
%278
(fabs.f64 %278)
(*.f64 %586 %587)
(*.f64 %589 #s(literal 1/2 binary64))
(*.f64 %591 %11)
(*.f64 %593 #s(literal 2 binary64))
(*.f64 %595 %595)
(*.f64 %587 %586)
(*.f64 %583 %583)
(*.f64 %582 #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) %582)
(pow.f64 (*.f64 %583 #s(literal -1 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(literal -1 binary64) %583) #s(literal 2 binary64))
(pow.f64 %595 #s(literal 2 binary64))
(pow.f64 %583 #s(literal 2 binary64))
(pow.f64 %607 #s(literal 1/2 binary64))
(pow.f64 %582 #s(literal 1 binary64))
(/.f64 %589 #s(literal 2 binary64))
(/.f64 (*.f64 %582 %23) %23)
(/.f64 %591 y)
(/.f64 #s(literal 1 binary64) (pow.f64 %583 #s(literal -2 binary64)))
(/.f64 #s(literal 1 binary64) (pow.f64 %607 #s(literal -1/2 binary64)))
(/.f64 #s(literal 1 binary64) (pow.f64 %582 #s(literal -1 binary64)))
(neg.f64 %620)
(neg.f64 %622)
(fma.f64 %586 %587 %624)
(fma.f64 %586 %587 %626)
(fma.f64 %589 #s(literal 1/2 binary64) %624)
(fma.f64 %589 #s(literal 1/2 binary64) %626)
(fma.f64 %591 %11 %624)
(fma.f64 %591 %11 %626)
(fma.f64 %593 #s(literal 2 binary64) %624)
(fma.f64 %593 #s(literal 2 binary64) %626)
(fma.f64 %595 %595 %624)
(fma.f64 %595 %595 %626)
(fma.f64 %587 %586 %624)
(fma.f64 %587 %586 %626)
(fma.f64 %583 %583 %624)
(fma.f64 %583 %583 %626)
(fma.f64 #s(literal 1/2 binary64) %582 %640)
(fma.f64 %582 #s(literal 1/2 binary64) %593)
(fma.f64 %582 #s(literal 1 binary64) %624)
(fma.f64 %582 #s(literal 1 binary64) %626)
(fma.f64 #s(literal 1 binary64) %582 %624)
(fma.f64 #s(literal 1 binary64) %582 %626)
(sqrt.f64 %607)
(fabs.f64 (*.f64 %260 #s(literal 1 binary64)))
(fabs.f64 (*.f64 %255 #s(literal 1 binary64)))
(fabs.f64 %622)
(fabs.f64 %260)
(fabs.f64 %582)
%582
(+.f64 %593 %593)
(+.f64 %640 %640)
(+.f64 %582 %624)
(+.f64 %582 %626)
(*.f64 %662 %294)
(*.f64 (*.f64 %134 %583) %583)
(*.f64 %589 %315)
(*.f64 %667 %294)
(*.f64 %670 %670)
(*.f64 %300 %622)
(*.f64 %583 (sqrt.f64 (fabs.f64 (/.f64 %260 %37))))
(*.f64 %583 (sqrt.f64 (fabs.f64 (/.f64 %582 %37))))
(*.f64 %583 (sqrt.f64 (fabs.f64 (*.f64 %11 %659))))
(*.f64 %583 (sqrt.f64 (fabs.f64 %685)))
(*.f64 %583 (*.f64 %583 %134))
(*.f64 %583 (/.f64 %583 %118))
(*.f64 #s(literal 2 binary64) (*.f64 %315 %582))
(*.f64 %134 %582)
(*.f64 %622 %300)
(*.f64 %582 %330)
(*.f64 %582 %134)
(*.f64 #s(literal 1 binary64) %669)
(pow.f64 %670 #s(literal 2 binary64))
(pow.f64 %701 #s(literal 1/2 binary64))
(pow.f64 %669 #s(literal 1 binary64))
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %659 %260))) %119)
(/.f64 %662 %119)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %260 %659))) %119)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %255 %659))) %119)
(/.f64 (sqrt.f64 (fabs.f64 (/.f64 %607 %23))) %119)
(/.f64 (sqrt.f64 (fabs.f64 (/.f64 %607 %118))) %119)
(/.f64 (sqrt.f64 (fabs.f64 (/.f64 %607 y))) %119)
(/.f64 (sqrt.f64 (fabs.f64 (neg.f64 %607))) %118)
(/.f64 (*.f64 %622 #s(literal 1 binary64)) %136)
(/.f64 (*.f64 #s(literal -1 binary64) %582) %136)
(/.f64 %620 %136)
(/.f64 %667 %119)
(/.f64 %622 %136)
(/.f64 %582 %118)
(/.f64 #s(literal 1 binary64) (pow.f64 %701 #s(literal -1/2 binary64)))
(/.f64 #s(literal 1 binary64) (pow.f64 %669 #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 %136 %622))
(/.f64 #s(literal 1 binary64) (/.f64 %118 %582))
(neg.f64 (neg.f64 %669))
(sqrt.f64 %701)
(fabs.f64 (/.f64 %260 %118))
(fabs.f64 (/.f64 %582 %23))
(fabs.f64 (/.f64 %582 y))
(fabs.f64 (/.f64 %255 %118))
(fabs.f64 (/.f64 %260 y))
%669
(fabs.f64 %669)

reconstruct43.0ms (5.2%)

Counts
545 → 141
Compiler

Compiled 545 to 797 computations (-46.2% saved)

eval11.0ms (1.3%)

Compiler

Compiled 137 to 435 computations (-217.5% saved)

prune2.0ms (0.3%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New1352137
Fresh000
Picked213
Done000
Total1373140
Accuracy
100.0%
Counts
140 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fabs.f64 (/.f64 (-.f64 x y) y))
100.0%
(fabs.f64 (+.f64 #s(literal -1 binary64) (/.f64 x y)))
48.3%
(approx (fabs (/ (- x y) y)) #s(literal 1 binary64))
Compiler

Compiled 3 to 10 computations (-233.3% saved)

sample0.0ms (0.0%)

Calls
Call 1
Inputs
Outputs

series9.0ms (1.0%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
047160
Stop Event
iter-limit
Counts
8 → 15
Calls
Call 1
Inputs
%4 = (/.f64 x y)
%9 = (+.f64 #s(literal -1 binary64) %4)
x
y
#s(literal -1 binary64)
#s(literal 1 binary64)
%4
(approx (fabs (/ (- x y) y)) #s(literal 1 binary64))
%9
(fabs.f64 %9)
Outputs
%5 = (/ x y)
%6 = (/.f64 x y)
%10 = (fabs (/ (- x y) y))
%15 = (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) %6))
%18 = (+ -1 %5)
%20 = (-.f64 %6 #s(literal 1 binary64))
%26 = (/.f64 #s(literal 1 binary64) y)
%27 = (/.f64 #s(literal 1 binary64) x)
%31 = (fabs %18)
(approx x #s(literal 0 binary64))
(approx x x)
(approx %5 %6)
(approx %10 #s(literal 1 binary64))
(approx %10 %15)
(approx %18 #s(literal -1 binary64))
(approx %18 %20)
(approx %10 (fabs.f64 (/.f64 (-.f64 x y) y)))
(approx %18 (*.f64 x (-.f64 %26 %27)))
(approx %31 (fabs.f64 %20))
(approx %10 (fabs.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 y (*.f64 #s(literal -1 binary64) x)) y))))
(approx %18 (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 %27 %26))))
(approx %31 (fabs.f64 (neg.f64 %15)))
(approx y y)
(approx %18 (/.f64 (+.f64 x (*.f64 #s(literal -1 binary64) y)) y))
Calls

6 calls:

TimeVariablePoint
1.0ms
x
-inf
1.0ms
x
inf
1.0ms
x
0
1.0ms
y
-inf
1.0ms
y
inf

rewrite77.0ms (9.2%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01126
01426
16526
227126
3208426
0435326
0459826
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
8 → 252
Calls
Call 1
Inputs
%4 = (/.f64 x y)
%9 = (+.f64 #s(literal -1 binary64) %4)
x
y
#s(literal -1 binary64)
#s(literal 1 binary64)
%4
(approx (fabs (/ (- x y) y)) #s(literal 1 binary64))
%9
(fabs.f64 %9)
Outputs
%5 = (*.f64 x #s(literal 2 binary64))
%7 = (/.f64 #s(literal 1/2 binary64) y)
%9 = (/.f64 #s(literal -1 binary64) y)
%10 = (neg.f64 x)
%12 = (*.f64 %7 x)
%14 = (/.f64 #s(literal 1 binary64) y)
%17 = (/.f64 x y)
%21 = (*.f64 #s(literal -1 binary64) x)
%24 = (/.f64 x #s(literal 1 binary64))
%26 = (neg.f64 y)
%28 = (*.f64 %10 #s(literal 1 binary64))
%36 = (/.f64 %10 y)
%52 = (approx (fabs (/ (- x y) y)) #s(literal 1 binary64))
%57 = (-.f64 x y)
%58 = (*.f64 %57 #s(literal 2 binary64))
%60 = (-.f64 y x)
%62 = (*.f64 y %60)
%63 = (*.f64 y y)
%64 = (/.f64 #s(literal -1 binary64) %63)
%66 = (*.f64 y %57)
%67 = (/.f64 #s(literal 1 binary64) %63)
%69 = (*.f64 %7 %57)
%74 = (/.f64 %57 y)
%77 = (neg.f64 %62)
%78 = (/.f64 %77 y)
%81 = (/.f64 %66 y)
%85 = (-.f64 (*.f64 %17 #s(literal 2 binary64)) #s(literal 2 binary64))
%90 = (-.f64 (*.f64 %17 %26) %26)
%93 = (/.f64 %60 #s(literal -1 binary64))
%96 = (*.f64 x %26)
%97 = (*.f64 %26 y)
%98 = (-.f64 %96 %97)
%101 = (*.f64 %10 #s(literal 2 binary64))
%102 = (*.f64 %26 #s(literal 2 binary64))
%103 = (-.f64 %101 %102)
%107 = (*.f64 %10 %26)
%108 = (-.f64 %107 %63)
%111 = (*.f64 y #s(literal 2 binary64))
%112 = (-.f64 %5 %111)
%116 = (*.f64 y x)
%117 = (fma.f64 %26 y %116)
%120 = (*.f64 %10 y)
%121 = (fma.f64 y y %120)
%126 = (neg.f64 %66)
%129 = (*.f64 #s(literal -1 binary64) %57)
%136 = (/.f64 %60 y)
%137 = (*.f64 #s(literal -1 binary64) %136)
%141 = (*.f64 %74 #s(literal 1 binary64))
%143 = (*.f64 %136 #s(literal -1 binary64))
%177 = (*.f64 %14 %26)
%193 = (-.f64 %17 #s(literal 1/2 binary64))
%195 = (/.f64 %116 %63)
%205 = (fabs.f64 %74)
%206 = (sqrt.f64 %205)
%207 = (neg.f64 %206)
%208 = (neg.f64 %207)
%212 = (fabs.f64 y)
%213 = (/.f64 #s(literal 1/2 binary64) %212)
%216 = (fabs.f64 (*.f64 #s(literal -1 binary64) %60))
%217 = (/.f64 #s(literal 1 binary64) %212)
%219 = (fabs.f64 %129)
%223 = (*.f64 %60 %136)
%229 = (fabs.f64 %93)
%230 = (sqrt.f64 %229)
%231 = (fabs.f64 %57)
%232 = (/.f64 %231 %63)
%233 = (sqrt.f64 %232)
%236 = (sqrt.f64 (*.f64 %206 %205))
%237 = (sqrt.f64 %206)
%241 = (sqrt.f64 (fabs.f64 (*.f64 %223 #s(literal 1 binary64))))
%242 = (sqrt.f64 %212)
%243 = (/.f64 #s(literal 1 binary64) %242)
%246 = (fabs.f64 %62)
%247 = (fabs.f64 %64)
%253 = (sqrt.f64 (/.f64 (*.f64 %60 %60) %212))
%256 = (sqrt.f64 %231)
%275 = (neg.f64 %231)
%300 = (*.f64 (/.f64 %57 %63) %57)
%303 = (neg.f64 %275)
%305 = (neg.f64 %212)
%306 = (neg.f64 %305)
%332 = (*.f64 #s(literal 2 binary64) y)
%335 = (fabs.f64 %111)
%340 = (*.f64 #s(literal 2 binary64) %26)
%343 = (fabs.f64 %102)
%347 = (*.f64 #s(literal 2 binary64) %212)
%367 = (*.f64 #s(literal 2 binary64) %10)
%371 = (*.f64 #s(literal 2 binary64) x)
%375 = (*.f64 %26 %10)
%379 = (*.f64 %26 x)
%512 = (sqrt.f64 (fabs.f64 (*.f64 %63 %26)))
%519 = (sqrt.f64 (fabs.f64 (*.f64 %63 y)))
%562 = (/.f64 %231 %305)
%564 = (/.f64 %275 %212)
%573 = (neg.f64 %205)
x
y
#s(literal -1 binary64)
#s(literal 1 binary64)
(*.f64 %5 %7)
(*.f64 %9 %10)
(*.f64 #s(literal 2 binary64) %12)
(*.f64 %14 x)
(*.f64 %10 %9)
(*.f64 #s(literal 1 binary64) %17)
(*.f64 x %14)
(pow.f64 %17 #s(literal 1 binary64))
(/.f64 (neg.f64 %21) y)
(/.f64 (neg.f64 %24) %26)
(/.f64 (neg.f64 %28) y)
(/.f64 %28 %26)
(/.f64 %21 %26)
(/.f64 %24 y)
(/.f64 (*.f64 x #s(literal -1 binary64)) %26)
(/.f64 (*.f64 %36 y) %26)
(/.f64 %36 #s(literal -1 binary64))
(/.f64 %10 %26)
(/.f64 %17 #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %17 #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 %26 %10))
(/.f64 #s(literal 1 binary64) (/.f64 y x))
%17
(neg.f64 %36)
(*.f64 #s(literal 1 binary64) %52)
(pow.f64 %52 #s(literal 1 binary64))
%52
(/.f64 #s(literal 1 binary64) (pow.f64 %52 #s(literal -1 binary64)))
(*.f64 %58 %7)
(*.f64 %9 %60)
(*.f64 %62 %64)
(*.f64 %66 %67)
(*.f64 #s(literal 2 binary64) %69)
(*.f64 %14 %57)
(*.f64 %60 %9)
(*.f64 %57 %14)
(*.f64 #s(literal 1 binary64) %74)
(pow.f64 %74 #s(literal 1 binary64))
(/.f64 (neg.f64 %78) %26)
(/.f64 (neg.f64 %81) %26)
(/.f64 (neg.f64 %85) #s(literal -2 binary64))
(/.f64 (neg.f64 %90) y)
(/.f64 (neg.f64 %93) %26)
(/.f64 (neg.f64 %98) %63)
(/.f64 (neg.f64 %103) (neg.f64 %102))
(/.f64 (neg.f64 %108) %97)
(/.f64 (neg.f64 %112) (neg.f64 %111))
(/.f64 (neg.f64 %117) %97)
(/.f64 (neg.f64 %121) %63)
(/.f64 (neg.f64 %77) %97)
(/.f64 (neg.f64 %126) %63)
(/.f64 (neg.f64 %129) y)
(/.f64 %78 y)
(/.f64 %81 y)
(/.f64 (*.f64 %60 #s(literal 1 binary64)) %26)
(/.f64 %137 #s(literal 1 binary64))
(/.f64 (*.f64 %57 #s(literal -1 binary64)) %26)
(/.f64 %141 #s(literal 1 binary64))
(/.f64 %143 #s(literal 1 binary64))
(/.f64 (-.f64 %97 %120) %63)
(/.f64 (-.f64 %63 %116) %97)
(/.f64 %85 #s(literal 2 binary64))
(/.f64 %90 %26)
(/.f64 %117 %63)
(/.f64 %121 %97)
(/.f64 %93 y)
(/.f64 %98 %97)
(/.f64 %103 %102)
(/.f64 %108 %63)
(/.f64 %112 %111)
(/.f64 %129 %26)
(/.f64 %77 %63)
(/.f64 %126 %97)
(/.f64 %62 %97)
(/.f64 %66 %63)
(/.f64 %60 %26)
(/.f64 %136 #s(literal -1 binary64))
(/.f64 %74 #s(literal 1 binary64))
%74
(/.f64 #s(literal 1 binary64) (/.f64 %97 %62))
(/.f64 #s(literal 1 binary64) (/.f64 %63 %66))
(/.f64 #s(literal 1 binary64) (pow.f64 %74 #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 %26 %60))
(/.f64 #s(literal 1 binary64) (/.f64 y %57))
(neg.f64 %136)
(fma.f64 %5 %7 %177)
(fma.f64 %5 %7 #s(literal -1 binary64))
(fma.f64 %9 %10 %177)
(fma.f64 %9 %10 #s(literal -1 binary64))
(fma.f64 #s(literal 2 binary64) %12 %177)
(fma.f64 #s(literal 2 binary64) %12 #s(literal -1 binary64))
(fma.f64 %14 %26 %17)
(fma.f64 %14 x %177)
(fma.f64 %14 x #s(literal -1 binary64))
(fma.f64 %10 %9 %177)
(fma.f64 %10 %9 #s(literal -1 binary64))
(fma.f64 #s(literal 1 binary64) %17 %177)
(fma.f64 #s(literal 1 binary64) %17 #s(literal -1 binary64))
(fma.f64 x %14 %177)
(fma.f64 x %14 #s(literal -1 binary64))
(-.f64 %193 #s(literal 1/2 binary64))
(-.f64 %195 #s(literal 1 binary64))
(-.f64 %74 #s(literal 0 binary64))
(-.f64 %17 #s(literal 1 binary64))
(-.f64 #s(literal -1 binary64) %36)
(+.f64 %177 %17)
(+.f64 %17 %177)
(+.f64 %17 #s(literal -1 binary64))
(+.f64 #s(literal -1 binary64) %17)
(*.f64 %208 %208)
(*.f64 (fabs.f64 (*.f64 %60 #s(literal 2 binary64))) %213)
(*.f64 %216 %217)
(*.f64 %219 %217)
(*.f64 (fabs.f64 %58) %213)
(*.f64 (sqrt.f64 (fabs.f64 (*.f64 %223 #s(literal 2 binary64)))) (sqrt.f64 %213))
(*.f64 %230 %233)
(*.f64 %236 %237)
(*.f64 %241 %243)
(*.f64 %207 %207)
(*.f64 %246 %247)
(*.f64 %246 %67)
(*.f64 %237 %236)
(*.f64 %243 %253)
(*.f64 %233 %230)
(*.f64 %233 %256)
(*.f64 %256 (sqrt.f64 (fabs.f64 (/.f64 %136 y))))
(*.f64 %256 (sqrt.f64 (fabs.f64 (/.f64 %60 %63))))
(*.f64 %256 (sqrt.f64 (fabs.f64 %232)))
(*.f64 %256 (sqrt.f64 (fabs.f64 (*.f64 %57 %67))))
(*.f64 %256 %233)
(*.f64 %253 %243)
(*.f64 %275 (/.f64 #s(literal -1 binary64) %212))
(*.f64 %217 %231)
(*.f64 %206 %206)
(*.f64 #s(literal 2 binary64) (fabs.f64 %69))
(*.f64 %231 (fabs.f64 (*.f64 %9 #s(literal -1 binary64))))
(*.f64 %231 (sqrt.f64 %247))
(*.f64 %231 (fabs.f64 (*.f64 %14 #s(literal -1 binary64))))
(*.f64 %231 %217)
(*.f64 %205 #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) %205)
(pow.f64 %207 #s(literal 2 binary64))
(pow.f64 (pow.f64 %136 #s(literal 4 binary64)) #s(literal 1/4 binary64))
(pow.f64 %206 #s(literal 2 binary64))
(pow.f64 %300 #s(literal 1/2 binary64))
(pow.f64 %205 #s(literal 1 binary64))
(/.f64 (neg.f64 %303) (neg.f64 %306))
(/.f64 (neg.f64 %246) %97)
(/.f64 (neg.f64 %253) (neg.f64 %242))
(/.f64 (fabs.f64 (*.f64 %62 #s(literal -1 binary64))) %63)
(/.f64 (fabs.f64 (*.f64 %66 #s(literal -1 binary64))) %63)
(/.f64 (fabs.f64 (/.f64 %60 #s(literal 1 binary64))) %212)
(/.f64 (fabs.f64 (fma.f64 %36 #s(literal 2 binary64) #s(literal 2 binary64))) #s(literal 2 binary64))
(/.f64 (fabs.f64 (fma.f64 %36 %26 %26)) %212)
(/.f64 (fabs.f64 (fma.f64 %36 y y)) %212)
(/.f64 (fabs.f64 (fma.f64 %10 #s(literal 2 binary64) %332)) %335)
(/.f64 (fabs.f64 (fma.f64 %10 %26 %97)) %63)
(/.f64 (fabs.f64 (fma.f64 x #s(literal 2 binary64) %340)) %343)
(/.f64 (fabs.f64 (fma.f64 #s(literal 2 binary64) y %101)) %347)
(/.f64 (fabs.f64 (fma.f64 #s(literal 2 binary64) %26 %5)) %347)
(/.f64 (fabs.f64 (fma.f64 %26 y %107)) %63)
(/.f64 (fabs.f64 (fma.f64 y y %96)) %63)
(/.f64 (fabs.f64 (fma.f64 %10 #s(literal 2 binary64) %111)) %335)
(/.f64 (fabs.f64 (fma.f64 x #s(literal 2 binary64) %102)) %343)
(/.f64 (fabs.f64 (fma.f64 x %26 %63)) %63)
(/.f64 (fabs.f64 (fma.f64 #s(literal 2 binary64) y %367)) %347)
(/.f64 (fabs.f64 (fma.f64 #s(literal 2 binary64) %26 %371)) %347)
(/.f64 (fabs.f64 (fma.f64 %26 y %375)) %63)
(/.f64 (fabs.f64 (fma.f64 y y %379)) %63)
(/.f64 (fabs.f64 (-.f64 %340 %367)) %347)
(/.f64 (fabs.f64 (-.f64 %332 %371)) %347)
(/.f64 (fabs.f64 (-.f64 %63 %375)) %63)
(/.f64 (fabs.f64 (-.f64 %97 %379)) %63)
(/.f64 (fabs.f64 %78) %212)
(/.f64 (fabs.f64 %81) %212)
(/.f64 (fabs.f64 %85) #s(literal 2 binary64))
(/.f64 (fabs.f64 %90) %212)
(/.f64 (fabs.f64 %117) %63)
(/.f64 (fabs.f64 %121) %63)
(/.f64 (fabs.f64 %98) %63)
(/.f64 (fabs.f64 %103) %343)
(/.f64 (fabs.f64 %108) %63)
(/.f64 (fabs.f64 %112) %335)
(/.f64 (fabs.f64 (*.f64 #s(literal -1 binary64) %62)) %63)
(/.f64 (fabs.f64 (*.f64 #s(literal -1 binary64) %66)) %63)
(/.f64 %216 %212)
(/.f64 %219 %212)
(/.f64 %229 %212)
(/.f64 %241 %242)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %223 #s(literal -1 binary64)))) %242)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %205 %275))) %242)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %74 %62))) %212)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %74 %66))) %212)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %275 %205))) %242)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %62 %74))) %212)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %66 %74))) %212)
(/.f64 (sqrt.f64 (fabs.f64 (/.f64 (*.f64 %136 %60) #s(literal 1 binary64)))) %242)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %275 %231))) (sqrt.f64 (fabs.f64 (*.f64 %305 %212))))
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %231 %275))) (sqrt.f64 (fabs.f64 (*.f64 %212 %305))))
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %62 %62))) (sqrt.f64 (fabs.f64 (*.f64 %63 %63))))
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %62 %66))) (sqrt.f64 (fabs.f64 (*.f64 %97 %63))))
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %62 %60))) (sqrt.f64 (fabs.f64 (*.f64 %97 %26))))
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %62 %57))) (sqrt.f64 (fabs.f64 (*.f64 %97 y))))
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %66 %62))) (sqrt.f64 (fabs.f64 (*.f64 %63 %97))))
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %66 %60))) %512)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %66 %57))) %519)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %60 %62))) (sqrt.f64 (fabs.f64 (*.f64 %26 %97))))
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %60 %66))) %512)
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %57 %62))) (sqrt.f64 (fabs.f64 (*.f64 y %97))))
(/.f64 (sqrt.f64 (fabs.f64 (*.f64 %57 %66))) %519)
(/.f64 (fabs.f64 %246) %63)
(/.f64 %303 %306)
(/.f64 %246 %63)
(/.f64 %253 %242)
(/.f64 %275 %305)
(/.f64 %231 %212)
(/.f64 %205 #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %206 #s(literal -2 binary64)))
(/.f64 #s(literal 1 binary64) (pow.f64 %300 #s(literal -1/2 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 %305 %275))
(/.f64 #s(literal 1 binary64) (pow.f64 %205 #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 %212 %231))
(neg.f64 %562)
(neg.f64 %564)
(sqrt.f64 %300)
(fabs.f64 (-.f64 #s(literal 1/2 binary64) %193))
(fabs.f64 (-.f64 #s(literal 1 binary64) %195))
(fabs.f64 (-.f64 #s(literal 0 binary64) %74))
(fabs.f64 (neg.f64 %573))
(fabs.f64 (*.f64 %9 %231))
(fabs.f64 (*.f64 %14 %231))
(fabs.f64 (*.f64 %60 %217))
(fabs.f64 (*.f64 %57 %217))
(fabs.f64 (*.f64 %231 %9))
(fabs.f64 (*.f64 %231 %14))
(fabs.f64 (/.f64 %60 %212))
(fabs.f64 (/.f64 %231 %26))
(fabs.f64 (/.f64 %231 y))
(fabs.f64 (/.f64 %57 %212))
(fabs.f64 %137)
(fabs.f64 %141)
(fabs.f64 %562)
(fabs.f64 %564)
(fabs.f64 %143)
(fabs.f64 %573)
(fabs.f64 %136)
(fabs.f64 %205)
%205

reconstruct24.0ms (2.9%)

Counts
266 → 62
Compiler

Compiled 266 to 618 computations (-132.3% saved)

eval5.0ms (0.6%)

Compiler

Compiled 58 to 199 computations (-243.1% saved)

prune2.0ms (0.2%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New58058
Fresh000
Picked022
Done011
Total58361
Accuracy
100.0%
Counts
61 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fabs.f64 (/.f64 (-.f64 x y) y))
100.0%
(fabs.f64 (+.f64 #s(literal -1 binary64) (/.f64 x y)))
48.3%
(approx (fabs (/ (- x y) y)) #s(literal 1 binary64))
Compiler

Compiled 3 to 10 computations (-233.3% saved)

regimes11.0ms (1.3%)

Accuracy

Total 0.0b remaining (0.0%)

Threshold costs 0.0b (0.0%)

0.0b0%
0.0b0%
0.0b0%

Counts
1 → 1
3 → 1
4 → 1
Calls
Call 1
Inputs
(approx (fabs (/ (- x y) y)) #s(literal 1 binary64))
Outputs
(approx (fabs (/ (- x y) y)) #s(literal 1 binary64))
Call 2
Inputs
%2 = (- x y)
(approx (fabs (/ %2 y)) #s(literal 1 binary64))
(approx (/ (fabs %2) (fabs y)) #s(literal -1 binary64))
(fabs.f64 (/.f64 (-.f64 x y) y))
Outputs
(fabs.f64 (/.f64 (-.f64 x y) y))
Call 3
Inputs
%2 = (- x y)
(approx (fabs (/ %2 y)) #s(literal 1 binary64))
(approx (/ (fabs %2) (fabs y)) #s(literal -1 binary64))
(fabs.f64 (/.f64 (-.f64 x y) y))
(fabs.f64 (+.f64 #s(literal -1 binary64) (/.f64 x y)))
Outputs
(fabs.f64 (+.f64 #s(literal -1 binary64) (/.f64 x y)))
Calls

3 calls:

4.0ms
x
4.0ms
y
3.0ms
(/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y))
Results
AccuracySegmentsBranch
48.3%1
y
48.3%1
x
48.3%1
(/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y))
Compiler

Compiled 9 to 23 computations (-155.6% saved)

bsearch0.0ms (0.0%)

bsearch0.0ms (0.0%)

bsearch0.0ms (0.0%)

derivations27.0ms (3.3%)

Stop Event
done
Compiler

Compiled 3 to 10 computations (-233.3% saved)

preprocess12.0ms (1.4%)

Compiler

Compiled 4 to 16 computations (-300.0% saved)

end0.0ms (0.0%)

gc108ms (13.0%)

Allocations
AllocatedPercentPhase
400.3 MiB38.8%sample
287.2 MiB27.9%rewrite
123.2 MiB11.9%reconstruct
68.1 MiB6.6%series
45.9 MiB4.5%preprocess
39.3 MiB3.8%eval
24.9 MiB2.4%derivations
21.4 MiB2.1%regimes
11.7 MiB1.1%prune
8.8 MiB0.9%analyze
0.2 MiB0.0%bsearch
0.1 MiB0.0%start
0.0 MiB0.0%end
1 030.9 MiB100.0%total

Profiling

Loading profile data...