Graphics.Rendering.Plot.Render.Plot.Legend:renderLegendOutside from plot-0.2.3.4, A

Time bar (total: 1.5s)

start0.0ms (0.0%)

analyze93.0ms (6.1%)

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 7 to 6 computations (14.3% saved)

sample379.0ms (25.0%)

Samples
327.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 7.0ms
Add: 7.0ms (104.4% of total, 0.0 MiB)
Bogosity

preprocess41.0ms (2.7%)

Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01432
15630
214430
321230
428630
578230
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(+.f64 (+.f64 x y) x)
Compiler

Compiled 2 to 8 computations (-300.0% saved)

sample0.0ms (0.0%)

Calls
Call 1
Inputs
Outputs

series8.0ms (0.5%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
051152
Stop Event
iter-limit
Counts
4 → 14
Calls
Call 1
Inputs
%2 = (+.f64 x y)
x
y
%2
(+.f64 %2 x)
Outputs
%5 = (+ x y)
%9 = (+ %5 x)
%11 = (*.f64 #s(literal 2 binary64) x)
%15 = (/.f64 y x)
%24 = (*.f64 #s(literal -1 binary64) %15)
%33 = (/.f64 x y)
(approx x #s(literal 0 binary64))
(approx x x)
(approx %5 y)
(approx %5 (+.f64 x y))
(approx %9 (+.f64 y %11))
(approx %5 (*.f64 x (+.f64 #s(literal 1 binary64) %15)))
(approx %9 %11)
(approx %9 (*.f64 x (+.f64 #s(literal 2 binary64) %15)))
(approx %5 (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 %24 #s(literal 1 binary64)))))
(approx %9 (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 %24 #s(literal 2 binary64)))))
(approx %5 (*.f64 y (+.f64 #s(literal 1 binary64) %33)))
(approx %9 (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) %33))))
(approx %5 (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 (*.f64 #s(literal -1 binary64) %33) #s(literal 1 binary64)))))
(approx %9 (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 (*.f64 #s(literal -2 binary64) %33) #s(literal 1 binary64)))))
Calls

6 calls:

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

rewrite110.0ms (7.3%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0410
0610
11810
24710
39910
416410
556710
0401710
041869
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
4 → 73
Calls
Call 1
Inputs
%2 = (+.f64 x y)
x
y
%2
(+.f64 %2 x)
Outputs
%3 = (+.f64 y x)
%4 = (neg.f64 %3)
%12 = (*.f64 x #s(literal 1 binary64))
%14 = (*.f64 y #s(literal 1 binary64))
%16 = (neg.f64 x)
%18 = (neg.f64 y)
%24 = (*.f64 #s(literal -2 binary64) x)
%25 = (-.f64 %24 y)
%28 = (fma.f64 #s(literal 2 binary64) x y)
%33 = (*.f64 x #s(literal 8 binary64))
%36 = (*.f64 x #s(literal 4 binary64))
%39 = (*.f64 #s(literal 8 binary64) x)
%42 = (*.f64 #s(literal 4 binary64) x)
%50 = (*.f64 #s(literal 4 binary64) %16)
%66 = (*.f64 x #s(literal 1/2 binary64))
%79 = (+.f64 x x)
%94 = (*.f64 %3 #s(literal 1 binary64))
x
y
(*.f64 #s(literal -1 binary64) %4)
(*.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 %4)
(fma.f64 y #s(literal 1 binary64) %12)
(fma.f64 x #s(literal 1 binary64) %14)
(-.f64 y %16)
(-.f64 x %18)
(+.f64 %14 %12)
(+.f64 %12 %14)
%3
(+.f64 x y)
(*.f64 #s(literal -1 binary64) %25)
(*.f64 #s(literal 1 binary64) %28)
(pow.f64 %28 #s(literal 1 binary64))
(/.f64 (fma.f64 y #s(literal 4 binary64) %33) #s(literal 4 binary64))
(/.f64 (fma.f64 y #s(literal 2 binary64) %36) #s(literal 2 binary64))
(/.f64 (fma.f64 y #s(literal 4 binary64) %39) #s(literal 4 binary64))
(/.f64 (fma.f64 y #s(literal 2 binary64) %42) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 y #s(literal 4 binary64)) (*.f64 #s(literal 8 binary64) %16)) #s(literal 4 binary64))
(/.f64 (-.f64 (*.f64 y #s(literal 2 binary64)) %50) #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %28 #s(literal -1 binary64)))
(neg.f64 %25)
(fma.f64 %33 #s(literal 1/4 binary64) %14)
(fma.f64 %33 #s(literal 1/4 binary64) y)
(fma.f64 %36 #s(literal 1/2 binary64) %14)
(fma.f64 %36 #s(literal 1/2 binary64) y)
(fma.f64 %39 #s(literal 1/4 binary64) %14)
(fma.f64 %39 #s(literal 1/4 binary64) y)
(fma.f64 %42 #s(literal 1/2 binary64) %14)
(fma.f64 %42 #s(literal 1/2 binary64) y)
(fma.f64 %66 #s(literal 4 binary64) %14)
(fma.f64 %66 #s(literal 4 binary64) y)
(fma.f64 %12 #s(literal 2 binary64) %14)
(fma.f64 %12 #s(literal 2 binary64) y)
(fma.f64 #s(literal -1/2 binary64) %50 %14)
(fma.f64 #s(literal -1/2 binary64) %50 y)
(fma.f64 #s(literal -2 binary64) %16 %14)
(fma.f64 #s(literal -2 binary64) %16 y)
(fma.f64 #s(literal -1 binary64) %24 %14)
(fma.f64 #s(literal -1 binary64) %24 y)
(fma.f64 #s(literal -1 binary64) %4 x)
(fma.f64 %79 #s(literal 1 binary64) %14)
(fma.f64 %79 #s(literal 1 binary64) y)
(fma.f64 #s(literal 1/2 binary64) %42 %14)
(fma.f64 #s(literal 1/2 binary64) %42 y)
(fma.f64 #s(literal 2 binary64) x %14)
%28
(fma.f64 %16 #s(literal -2 binary64) %14)
(fma.f64 %16 #s(literal -2 binary64) y)
(fma.f64 #s(literal 1 binary64) %79 %14)
(fma.f64 #s(literal 1 binary64) %79 y)
(fma.f64 #s(literal 1 binary64) %3 x)
(fma.f64 %3 #s(literal 1 binary64) %12)
(fma.f64 y #s(literal 1 binary64) %79)
(fma.f64 x #s(literal 2 binary64) %14)
(fma.f64 x #s(literal 2 binary64) y)
(fma.f64 x #s(literal 1 binary64) %94)
(-.f64 %79 %18)
(-.f64 %3 %16)
(-.f64 y %24)
(-.f64 x %4)
(+.f64 %94 %12)
(+.f64 %14 %79)
(+.f64 %12 %94)
(+.f64 %79 %14)
(+.f64 %79 y)
(+.f64 %3 x)
(+.f64 y %79)
(+.f64 x %3)

reconstruct12.0ms (0.8%)

Counts
87 → 14
Compiler

Compiled 87 to 137 computations (-57.5% saved)

eval2.0ms (0.1%)

Compiler

Compiled 13 to 34 computations (-161.5% saved)

prune1.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New10313
Fresh000
Picked101
Done000
Total11314
Accuracy
100.0%
Counts
14 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 #s(literal 2 binary64) x y)
58.9%
(+.f64 (approx (+ x y) y) x)
49.9%
(approx (+ (+ x y) x) (*.f64 #s(literal 2 binary64) x))
Compiler

Compiled 3 to 6 computations (-100.0% saved)

sample0.0ms (0.0%)

Calls
Call 1
Inputs
Outputs

series21.0ms (1.4%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
051150
Stop Event
iter-limit
Counts
8 → 14
Calls
Call 1
Inputs
%2 = (+ x y)
%3 = (approx %2 y)
%5 = (*.f64 #s(literal 2 binary64) x)
x
y
%3
#s(literal 2 binary64)
%5
(approx (+ %2 x) %5)
(fma.f64 #s(literal 2 binary64) x y)
(+.f64 %3 x)
Outputs
%5 = (+ x y)
%12 = (*.f64 #s(literal 2 binary64) x)
%14 = (+ %5 x)
%18 = (/.f64 y x)
%26 = (*.f64 #s(literal -1 binary64) %18)
%35 = (/.f64 x y)
(approx x #s(literal 0 binary64))
(approx x x)
(approx %5 y)
(approx %5 (+.f64 x y))
(approx (* 2 x) %12)
(approx %14 (+.f64 y %12))
(approx %5 (*.f64 x (+.f64 #s(literal 1 binary64) %18)))
(approx %14 (*.f64 x (+.f64 #s(literal 2 binary64) %18)))
(approx %5 (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 %26 #s(literal 1 binary64)))))
(approx %14 (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 %26 #s(literal 2 binary64)))))
(approx %5 (*.f64 y (+.f64 #s(literal 1 binary64) %35)))
(approx %14 (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) %35))))
(approx %5 (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 (*.f64 #s(literal -1 binary64) %35) #s(literal 1 binary64)))))
(approx %14 (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 (*.f64 #s(literal -2 binary64) %35) #s(literal 1 binary64)))))
Calls

6 calls:

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

rewrite212.0ms (14.0%)

Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01031
01431
13930
28630
320830
454630
5292830
0400330
0422330
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
8 → 460
Calls
Call 1
Inputs
%2 = (+ x y)
%3 = (approx %2 y)
%5 = (*.f64 #s(literal 2 binary64) x)
x
y
%3
#s(literal 2 binary64)
%5
(approx (+ %2 x) %5)
(fma.f64 #s(literal 2 binary64) x y)
(+.f64 %3 x)
Outputs
%4 = (approx (+ y x) y)
%10 = (neg.f64 %4)
%14 = (*.f64 #s(literal 1/2 binary64) x)
%16 = (*.f64 %14 #s(literal 16 binary64))
%19 = (+.f64 x x)
%21 = (*.f64 %19 #s(literal 1/8 binary64))
%24 = (*.f64 %14 #s(literal 1/4 binary64))
%26 = (*.f64 %19 #s(literal 8 binary64))
%29 = (*.f64 #s(literal -2 binary64) x)
%31 = (*.f64 %29 #s(literal 4 binary64))
%34 = (*.f64 #s(literal 4 binary64) x)
%35 = (*.f64 %34 #s(literal 2 binary64))
%37 = (*.f64 %19 #s(literal 4 binary64))
%39 = (*.f64 #s(literal 1/4 binary64) x)
%42 = (*.f64 #s(literal -4 binary64) x)
%46 = (*.f64 #s(literal -1/2 binary64) x)
%48 = (*.f64 #s(literal 1/4 binary64) %14)
%51 = (*.f64 #s(literal 8 binary64) %19)
%53 = (*.f64 #s(literal 16 binary64) %14)
%55 = (*.f64 #s(literal 4 binary64) %19)
%57 = (*.f64 #s(literal 1/8 binary64) %19)
%64 = (neg.f64 x)
%120 = (*.f64 %14 #s(literal 1/8 binary64))
%121 = (fma.f64 #s(literal 1/2 binary64) x x)
%123 = (-.f64 %14 %64)
%126 = (*.f64 %14 #s(literal 3 binary64))
%129 = (*.f64 x #s(literal 3/2 binary64))
%131 = (*.f64 #s(literal 3 binary64) %14)
%133 = (*.f64 #s(literal 3/2 binary64) x)
%187 = (*.f64 #s(literal 1/8 binary64) %14)
%204 = (*.f64 %39 #s(literal 1/2 binary64))
%232 = (*.f64 #s(literal -1/2 binary64) %14)
%307 = (approx (+ (* 2 x) y) %19)
%312 = (fma.f64 #s(literal 2 binary64) x y)
%315 = (+.f64 y x)
%330 = (+.f64 #s(literal 0 binary64) y)
%332 = (neg.f64 y)
%333 = (-.f64 #s(literal 0 binary64) %332)
%339 = (fma.f64 #s(literal 1/2 binary64) x %315)
%341 = (neg.f64 %315)
%342 = (-.f64 %14 %341)
%489 = (+.f64 %4 x)
%501 = (fma.f64 #s(literal 1/2 binary64) x %4)
%503 = (-.f64 %14 %10)
x
y
(*.f64 #s(literal 1 binary64) %4)
(pow.f64 %4 #s(literal 1 binary64))
%4
(/.f64 #s(literal 1 binary64) (pow.f64 %4 #s(literal -1 binary64)))
(neg.f64 %10)
#s(literal 2 binary64)
(*.f64 %16 #s(literal 1/4 binary64))
(*.f64 %21 #s(literal 8 binary64))
(*.f64 %24 #s(literal 16 binary64))
(*.f64 %26 #s(literal 1/8 binary64))
(*.f64 %31 #s(literal -1/4 binary64))
(*.f64 %35 #s(literal 1/4 binary64))
(*.f64 %37 #s(literal 1/4 binary64))
(*.f64 %39 #s(literal 8 binary64))
(*.f64 %42 #s(literal -1/2 binary64))
(*.f64 %34 #s(literal 1/2 binary64))
(*.f64 %46 #s(literal -4 binary64))
(*.f64 #s(literal 16 binary64) %48)
(*.f64 #s(literal -4 binary64) %46)
(*.f64 #s(literal 1/8 binary64) %51)
(*.f64 #s(literal 1/4 binary64) %53)
(*.f64 #s(literal 1/4 binary64) %55)
(*.f64 #s(literal 8 binary64) %57)
(*.f64 #s(literal 8 binary64) %39)
(*.f64 %14 #s(literal 4 binary64))
(*.f64 #s(literal 4 binary64) %14)
(*.f64 #s(literal -1/2 binary64) %42)
(*.f64 #s(literal 1/2 binary64) %34)
(*.f64 #s(literal -2 binary64) %64)
(*.f64 #s(literal -1 binary64) %29)
(*.f64 %29 #s(literal -1 binary64))
(*.f64 %64 #s(literal -2 binary64))
(*.f64 #s(literal 1 binary64) %19)
(*.f64 %19 #s(literal 1 binary64))
(*.f64 #s(literal 2 binary64) x)
(*.f64 x #s(literal 2 binary64))
(pow.f64 %19 #s(literal 1 binary64))
(/.f64 (*.f64 x #s(literal 8 binary64)) #s(literal 4 binary64))
(/.f64 (*.f64 #s(literal 8 binary64) x) #s(literal 4 binary64))
(/.f64 (/.f64 %34 #s(literal 1/2 binary64)) #s(literal 4 binary64))
(/.f64 (fma.f64 #s(literal 4 binary64) x %34) #s(literal 4 binary64))
(/.f64 (-.f64 %34 %42) #s(literal 4 binary64))
(/.f64 (*.f64 #s(literal -4 binary64) %29) #s(literal 4 binary64))
(/.f64 (*.f64 %29 #s(literal -4 binary64)) #s(literal 4 binary64))
(/.f64 (*.f64 #s(literal 4 binary64) %34) #s(literal 8 binary64))
(/.f64 %51 #s(literal 8 binary64))
(/.f64 %26 #s(literal 8 binary64))
(/.f64 (*.f64 %34 #s(literal 4 binary64)) #s(literal 8 binary64))
(/.f64 (*.f64 #s(literal -2 binary64) %34) #s(literal -4 binary64))
(/.f64 (*.f64 %42 #s(literal -2 binary64)) #s(literal 4 binary64))
(/.f64 (*.f64 %42 #s(literal 2 binary64)) #s(literal -4 binary64))
(/.f64 (*.f64 %34 #s(literal -2 binary64)) #s(literal -4 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) %34) #s(literal 4 binary64))
(/.f64 %55 #s(literal 4 binary64))
(/.f64 %35 #s(literal 4 binary64))
(/.f64 %37 #s(literal 4 binary64))
(/.f64 %42 #s(literal -2 binary64))
(/.f64 %34 #s(literal 2 binary64))
(/.f64 %29 #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) %34))
(/.f64 #s(literal 1 binary64) (pow.f64 %19 #s(literal -1 binary64)))
(/.f64 %19 #s(literal 1 binary64))
(/.f64 x #s(literal 1/2 binary64))
(neg.f64 %29)
(fma.f64 %16 #s(literal 1/4 binary64) #s(literal 0 binary64))
(fma.f64 %21 #s(literal 8 binary64) #s(literal 0 binary64))
(fma.f64 %120 #s(literal 8 binary64) %121)
(fma.f64 %120 #s(literal 8 binary64) %123)
(fma.f64 %120 #s(literal 8 binary64) %126)
(fma.f64 %120 #s(literal 8 binary64) %129)
(fma.f64 %120 #s(literal 8 binary64) %131)
(fma.f64 %120 #s(literal 8 binary64) %133)
(fma.f64 %24 #s(literal 16 binary64) #s(literal 0 binary64))
(fma.f64 %24 #s(literal 4 binary64) %121)
(fma.f64 %24 #s(literal 4 binary64) %123)
(fma.f64 %24 #s(literal 4 binary64) %126)
(fma.f64 %24 #s(literal 4 binary64) %129)
(fma.f64 %24 #s(literal 4 binary64) %131)
(fma.f64 %24 #s(literal 4 binary64) %133)
(fma.f64 %26 #s(literal 1/8 binary64) #s(literal 0 binary64))
(fma.f64 %31 #s(literal -1/4 binary64) #s(literal 0 binary64))
(fma.f64 %35 #s(literal 1/4 binary64) #s(literal 0 binary64))
(fma.f64 %37 #s(literal 1/4 binary64) #s(literal 0 binary64))
(fma.f64 #s(literal 3/2 binary64) x %14)
(fma.f64 %39 #s(literal 8 binary64) #s(literal 0 binary64))
(fma.f64 %39 #s(literal 2 binary64) %121)
(fma.f64 %39 #s(literal 2 binary64) %123)
(fma.f64 %39 #s(literal 2 binary64) %126)
(fma.f64 %39 #s(literal 2 binary64) %129)
(fma.f64 %39 #s(literal 2 binary64) %131)
(fma.f64 %39 #s(literal 2 binary64) %133)
(fma.f64 %42 #s(literal -1/2 binary64) #s(literal 0 binary64))
(fma.f64 %34 #s(literal 1/8 binary64) %121)
(fma.f64 %34 #s(literal 1/8 binary64) %123)
(fma.f64 %34 #s(literal 1/8 binary64) %126)
(fma.f64 %34 #s(literal 1/8 binary64) %129)
(fma.f64 %34 #s(literal 1/8 binary64) %131)
(fma.f64 %34 #s(literal 1/8 binary64) %133)
(fma.f64 %34 #s(literal 1/2 binary64) #s(literal 0 binary64))
(fma.f64 %46 #s(literal -4 binary64) #s(literal 0 binary64))
(fma.f64 %46 #s(literal -1 binary64) %121)
(fma.f64 %46 #s(literal -1 binary64) %123)
(fma.f64 %46 #s(literal -1 binary64) %126)
(fma.f64 %46 #s(literal -1 binary64) %129)
(fma.f64 %46 #s(literal -1 binary64) %131)
(fma.f64 %46 #s(literal -1 binary64) %133)
(fma.f64 #s(literal 16 binary64) %48 #s(literal 0 binary64))
(fma.f64 #s(literal -4 binary64) %46 #s(literal 0 binary64))
(fma.f64 #s(literal 1/8 binary64) %51 #s(literal 0 binary64))
(fma.f64 #s(literal 1/8 binary64) %34 %121)
(fma.f64 #s(literal 1/8 binary64) %34 %123)
(fma.f64 #s(literal 1/8 binary64) %34 %126)
(fma.f64 #s(literal 1/8 binary64) %34 %129)
(fma.f64 #s(literal 1/8 binary64) %34 %131)
(fma.f64 #s(literal 1/8 binary64) %34 %133)
(fma.f64 #s(literal 1/4 binary64) %53 #s(literal 0 binary64))
(fma.f64 #s(literal 1/4 binary64) %55 #s(literal 0 binary64))
(fma.f64 #s(literal 1/4 binary64) %19 %121)
(fma.f64 #s(literal 1/4 binary64) %19 %123)
(fma.f64 #s(literal 1/4 binary64) %19 %126)
(fma.f64 #s(literal 1/4 binary64) %19 %129)
(fma.f64 #s(literal 1/4 binary64) %19 %131)
(fma.f64 #s(literal 1/4 binary64) %19 %133)
(fma.f64 #s(literal 8 binary64) %57 #s(literal 0 binary64))
(fma.f64 #s(literal 8 binary64) %187 %121)
(fma.f64 #s(literal 8 binary64) %187 %123)
(fma.f64 #s(literal 8 binary64) %187 %126)
(fma.f64 #s(literal 8 binary64) %187 %129)
(fma.f64 #s(literal 8 binary64) %187 %131)
(fma.f64 #s(literal 8 binary64) %187 %133)
(fma.f64 #s(literal 8 binary64) %39 #s(literal 0 binary64))
(fma.f64 #s(literal 3 binary64) %14 %14)
(fma.f64 %14 #s(literal 3 binary64) %14)
(fma.f64 %14 #s(literal 4 binary64) #s(literal 0 binary64))
(fma.f64 %14 #s(literal 1 binary64) %121)
(fma.f64 %14 #s(literal 1 binary64) %123)
(fma.f64 %14 #s(literal 1 binary64) %126)
(fma.f64 %14 #s(literal 1 binary64) %129)
(fma.f64 %14 #s(literal 1 binary64) %131)
(fma.f64 %14 #s(literal 1 binary64) %133)
(fma.f64 #s(literal 4 binary64) %204 %121)
(fma.f64 #s(literal 4 binary64) %204 %123)
(fma.f64 #s(literal 4 binary64) %204 %126)
(fma.f64 #s(literal 4 binary64) %204 %129)
(fma.f64 #s(literal 4 binary64) %204 %131)
(fma.f64 #s(literal 4 binary64) %204 %133)
(fma.f64 #s(literal 4 binary64) %48 %121)
(fma.f64 #s(literal 4 binary64) %48 %123)
(fma.f64 #s(literal 4 binary64) %48 %126)
(fma.f64 #s(literal 4 binary64) %48 %129)
(fma.f64 #s(literal 4 binary64) %48 %131)
(fma.f64 #s(literal 4 binary64) %48 %133)
(fma.f64 #s(literal 4 binary64) %14 #s(literal 0 binary64))
(fma.f64 #s(literal -1/2 binary64) %42 #s(literal 0 binary64))
(fma.f64 #s(literal -1/2 binary64) %64 %121)
(fma.f64 #s(literal -1/2 binary64) %64 %123)
(fma.f64 #s(literal -1/2 binary64) %64 %126)
(fma.f64 #s(literal -1/2 binary64) %64 %129)
(fma.f64 #s(literal -1/2 binary64) %64 %131)
(fma.f64 #s(literal -1/2 binary64) %64 %133)
(fma.f64 #s(literal 1/2 binary64) %34 #s(literal 0 binary64))
(fma.f64 #s(literal 1/2 binary64) x %121)
(fma.f64 #s(literal 1/2 binary64) x %123)
(fma.f64 #s(literal 1/2 binary64) x %126)
(fma.f64 #s(literal 1/2 binary64) x %129)
(fma.f64 #s(literal 1/2 binary64) x %131)
(fma.f64 #s(literal 1/2 binary64) x %133)
(fma.f64 #s(literal -2 binary64) %232 %121)
(fma.f64 #s(literal -2 binary64) %232 %123)
(fma.f64 #s(literal -2 binary64) %232 %126)
(fma.f64 #s(literal -2 binary64) %232 %129)
(fma.f64 #s(literal -2 binary64) %232 %131)
(fma.f64 #s(literal -2 binary64) %232 %133)
(fma.f64 #s(literal -2 binary64) %64 #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) %46 %121)
(fma.f64 #s(literal -1 binary64) %46 %123)
(fma.f64 #s(literal -1 binary64) %46 %126)
(fma.f64 #s(literal -1 binary64) %46 %129)
(fma.f64 #s(literal -1 binary64) %46 %131)
(fma.f64 #s(literal -1 binary64) %46 %133)
(fma.f64 #s(literal -1 binary64) %29 #s(literal 0 binary64))
(fma.f64 %29 #s(literal -1 binary64) #s(literal 0 binary64))
(fma.f64 %64 #s(literal -1/2 binary64) %121)
(fma.f64 %64 #s(literal -1/2 binary64) %123)
(fma.f64 %64 #s(literal -1/2 binary64) %126)
(fma.f64 %64 #s(literal -1/2 binary64) %129)
(fma.f64 %64 #s(literal -1/2 binary64) %131)
(fma.f64 %64 #s(literal -1/2 binary64) %133)
(fma.f64 %64 #s(literal -2 binary64) #s(literal 0 binary64))
(fma.f64 #s(literal 1 binary64) %14 %121)
(fma.f64 #s(literal 1 binary64) %14 %123)
(fma.f64 #s(literal 1 binary64) %14 %126)
(fma.f64 #s(literal 1 binary64) %14 %129)
(fma.f64 #s(literal 1 binary64) %14 %131)
(fma.f64 #s(literal 1 binary64) %14 %133)
(fma.f64 #s(literal 1 binary64) %19 #s(literal 0 binary64))
(fma.f64 %19 #s(literal 1/4 binary64) %121)
(fma.f64 %19 #s(literal 1/4 binary64) %123)
(fma.f64 %19 #s(literal 1/4 binary64) %126)
(fma.f64 %19 #s(literal 1/4 binary64) %129)
(fma.f64 %19 #s(literal 1/4 binary64) %131)
(fma.f64 %19 #s(literal 1/4 binary64) %133)
(fma.f64 %19 #s(literal 1 binary64) #s(literal 0 binary64))
(fma.f64 #s(literal 2 binary64) %39 %121)
(fma.f64 #s(literal 2 binary64) %39 %123)
(fma.f64 #s(literal 2 binary64) %39 %126)
(fma.f64 #s(literal 2 binary64) %39 %129)
(fma.f64 #s(literal 2 binary64) %39 %131)
(fma.f64 #s(literal 2 binary64) %39 %133)
(fma.f64 #s(literal 2 binary64) x #s(literal 0 binary64))
(fma.f64 x #s(literal 3/2 binary64) %14)
(fma.f64 x #s(literal 1/2 binary64) %121)
(fma.f64 x #s(literal 1/2 binary64) %123)
(fma.f64 x #s(literal 1/2 binary64) %126)
(fma.f64 x #s(literal 1/2 binary64) %129)
(fma.f64 x #s(literal 1/2 binary64) %131)
(fma.f64 x #s(literal 1/2 binary64) %133)
(fma.f64 x #s(literal 2 binary64) #s(literal 0 binary64))
(-.f64 (-.f64 x %46) %46)
(-.f64 %19 #s(literal 0 binary64))
(-.f64 x %64)
(+.f64 (+.f64 x %14) %14)
(+.f64 %126 %14)
(+.f64 %129 %14)
(+.f64 %131 %14)
(+.f64 %133 %14)
(+.f64 %14 %121)
(+.f64 %14 %123)
(+.f64 %14 %126)
(+.f64 %14 %129)
(+.f64 %14 %131)
(+.f64 %14 %133)
(+.f64 #s(literal 0 binary64) %19)
(+.f64 %19 #s(literal 0 binary64))
(+.f64 x (-.f64 #s(literal 0 binary64) %64))
%19
(*.f64 #s(literal 1 binary64) %307)
(pow.f64 %307 #s(literal 1 binary64))
%307
(/.f64 #s(literal 1 binary64) (pow.f64 %307 #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) %312)
(pow.f64 %312 #s(literal 1 binary64))
(/.f64 (fma.f64 %315 #s(literal 2 binary64) %19) #s(literal 2 binary64))
(/.f64 (fma.f64 y #s(literal 2 binary64) %34) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 %315 #s(literal 2 binary64)) %29) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 y #s(literal 2 binary64)) %42) #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %312 #s(literal -1 binary64)))
(neg.f64 (-.f64 %29 y))
(fma.f64 %16 #s(literal 1/4 binary64) %330)
(fma.f64 %16 #s(literal 1/4 binary64) %333)
(fma.f64 %16 #s(literal 1/4 binary64) y)
(fma.f64 %21 #s(literal 8 binary64) %330)
(fma.f64 %21 #s(literal 8 binary64) %333)
(fma.f64 %21 #s(literal 8 binary64) y)
(fma.f64 %120 #s(literal 8 binary64) %339)
(fma.f64 %120 #s(literal 8 binary64) %342)
(fma.f64 %24 #s(literal 16 binary64) %330)
(fma.f64 %24 #s(literal 16 binary64) %333)
(fma.f64 %24 #s(literal 16 binary64) y)
(fma.f64 %24 #s(literal 4 binary64) %339)
(fma.f64 %24 #s(literal 4 binary64) %342)
(fma.f64 %26 #s(literal 1/8 binary64) %330)
(fma.f64 %26 #s(literal 1/8 binary64) %333)
(fma.f64 %26 #s(literal 1/8 binary64) y)
(fma.f64 %31 #s(literal -1/4 binary64) %330)
(fma.f64 %31 #s(literal -1/4 binary64) %333)
(fma.f64 %31 #s(literal -1/4 binary64) y)
(fma.f64 %35 #s(literal 1/4 binary64) %330)
(fma.f64 %35 #s(literal 1/4 binary64) %333)
(fma.f64 %35 #s(literal 1/4 binary64) y)
(fma.f64 %37 #s(literal 1/4 binary64) %330)
(fma.f64 %37 #s(literal 1/4 binary64) %333)
(fma.f64 %37 #s(literal 1/4 binary64) y)
(fma.f64 %39 #s(literal 8 binary64) %330)
(fma.f64 %39 #s(literal 8 binary64) %333)
(fma.f64 %39 #s(literal 8 binary64) y)
(fma.f64 %39 #s(literal 2 binary64) %339)
(fma.f64 %39 #s(literal 2 binary64) %342)
(fma.f64 %42 #s(literal -1/2 binary64) %330)
(fma.f64 %42 #s(literal -1/2 binary64) %333)
(fma.f64 %42 #s(literal -1/2 binary64) y)
(fma.f64 %34 #s(literal 1/8 binary64) %339)
(fma.f64 %34 #s(literal 1/8 binary64) %342)
(fma.f64 %34 #s(literal 1/2 binary64) %330)
(fma.f64 %34 #s(literal 1/2 binary64) %333)
(fma.f64 %34 #s(literal 1/2 binary64) y)
(fma.f64 %46 #s(literal -4 binary64) %330)
(fma.f64 %46 #s(literal -4 binary64) %333)
(fma.f64 %46 #s(literal -4 binary64) y)
(fma.f64 %46 #s(literal -1 binary64) %339)
(fma.f64 %46 #s(literal -1 binary64) %342)
(fma.f64 #s(literal 16 binary64) %48 %330)
(fma.f64 #s(literal 16 binary64) %48 %333)
(fma.f64 #s(literal 16 binary64) %48 y)
(fma.f64 #s(literal -4 binary64) %46 %330)
(fma.f64 #s(literal -4 binary64) %46 %333)
(fma.f64 #s(literal -4 binary64) %46 y)
(fma.f64 #s(literal 1/8 binary64) %51 %330)
(fma.f64 #s(literal 1/8 binary64) %51 %333)
(fma.f64 #s(literal 1/8 binary64) %51 y)
(fma.f64 #s(literal 1/8 binary64) %34 %339)
(fma.f64 #s(literal 1/8 binary64) %34 %342)
(fma.f64 #s(literal 1/4 binary64) %53 %330)
(fma.f64 #s(literal 1/4 binary64) %53 %333)
(fma.f64 #s(literal 1/4 binary64) %53 y)
(fma.f64 #s(literal 1/4 binary64) %55 %330)
(fma.f64 #s(literal 1/4 binary64) %55 %333)
(fma.f64 #s(literal 1/4 binary64) %55 y)
(fma.f64 #s(literal 1/4 binary64) %19 %339)
(fma.f64 #s(literal 1/4 binary64) %19 %342)
(fma.f64 #s(literal 8 binary64) %57 %330)
(fma.f64 #s(literal 8 binary64) %57 %333)
(fma.f64 #s(literal 8 binary64) %57 y)
(fma.f64 #s(literal 8 binary64) %187 %339)
(fma.f64 #s(literal 8 binary64) %187 %342)
(fma.f64 #s(literal 8 binary64) %39 %330)
(fma.f64 #s(literal 8 binary64) %39 %333)
(fma.f64 #s(literal 8 binary64) %39 y)
(fma.f64 %14 #s(literal 4 binary64) %330)
(fma.f64 %14 #s(literal 4 binary64) %333)
(fma.f64 %14 #s(literal 4 binary64) y)
(fma.f64 %14 #s(literal 1 binary64) %339)
(fma.f64 %14 #s(literal 1 binary64) %342)
(fma.f64 #s(literal 4 binary64) %204 %339)
(fma.f64 #s(literal 4 binary64) %204 %342)
(fma.f64 #s(literal 4 binary64) %48 %339)
(fma.f64 #s(literal 4 binary64) %48 %342)
(fma.f64 #s(literal 4 binary64) %14 %330)
(fma.f64 #s(literal 4 binary64) %14 %333)
(fma.f64 #s(literal 4 binary64) %14 y)
(fma.f64 #s(literal -1/2 binary64) %42 %330)
(fma.f64 #s(literal -1/2 binary64) %42 %333)
(fma.f64 #s(literal -1/2 binary64) %42 y)
(fma.f64 #s(literal -1/2 binary64) %64 %339)
(fma.f64 #s(literal -1/2 binary64) %64 %342)
(fma.f64 #s(literal 1/2 binary64) %34 %330)
(fma.f64 #s(literal 1/2 binary64) %34 %333)
(fma.f64 #s(literal 1/2 binary64) %34 y)
(fma.f64 #s(literal 1/2 binary64) x %339)
(fma.f64 #s(literal 1/2 binary64) x %342)
(fma.f64 #s(literal -2 binary64) %232 %339)
(fma.f64 #s(literal -2 binary64) %232 %342)
(fma.f64 #s(literal -2 binary64) %64 %330)
(fma.f64 #s(literal -2 binary64) %64 %333)
(fma.f64 #s(literal -2 binary64) %64 y)
(fma.f64 #s(literal -1 binary64) %46 %339)
(fma.f64 #s(literal -1 binary64) %46 %342)
(fma.f64 #s(literal -1 binary64) %29 %330)
(fma.f64 #s(literal -1 binary64) %29 %333)
(fma.f64 #s(literal -1 binary64) %29 y)
(fma.f64 %29 #s(literal -1 binary64) %330)
(fma.f64 %29 #s(literal -1 binary64) %333)
(fma.f64 %29 #s(literal -1 binary64) y)
(fma.f64 %64 #s(literal -1/2 binary64) %339)
(fma.f64 %64 #s(literal -1/2 binary64) %342)
(fma.f64 %64 #s(literal -2 binary64) %330)
(fma.f64 %64 #s(literal -2 binary64) %333)
(fma.f64 %64 #s(literal -2 binary64) y)
(fma.f64 #s(literal 1 binary64) %14 %339)
(fma.f64 #s(literal 1 binary64) %14 %342)
(fma.f64 #s(literal 1 binary64) %312 #s(literal 0 binary64))
(fma.f64 #s(literal 1 binary64) %19 %330)
(fma.f64 #s(literal 1 binary64) %19 %333)
(fma.f64 #s(literal 1 binary64) %19 y)
(fma.f64 #s(literal 1 binary64) %315 x)
(fma.f64 %19 #s(literal 1/4 binary64) %339)
(fma.f64 %19 #s(literal 1/4 binary64) %342)
(fma.f64 %19 #s(literal 1 binary64) %330)
(fma.f64 %19 #s(literal 1 binary64) %333)
(fma.f64 %19 #s(literal 1 binary64) y)
(fma.f64 #s(literal 2 binary64) %39 %339)
(fma.f64 #s(literal 2 binary64) %39 %342)
(fma.f64 #s(literal 2 binary64) x %330)
(fma.f64 #s(literal 2 binary64) x %333)
%312
(fma.f64 x #s(literal 1/2 binary64) %339)
(fma.f64 x #s(literal 1/2 binary64) %342)
(fma.f64 x #s(literal 2 binary64) %330)
(fma.f64 x #s(literal 2 binary64) %333)
(fma.f64 x #s(literal 2 binary64) y)
(-.f64 (-.f64 %315 %46) %46)
(-.f64 %312 #s(literal 0 binary64))
(-.f64 %19 %332)
(-.f64 %315 %64)
(-.f64 y %29)
(-.f64 x %341)
(+.f64 (+.f64 %315 %14) %14)
(+.f64 %14 %339)
(+.f64 %14 %342)
(+.f64 %312 #s(literal 0 binary64))
(+.f64 %19 %330)
(+.f64 %19 %333)
(+.f64 %19 y)
(+.f64 %315 x)
(+.f64 y %19)
(+.f64 x (+.f64 #s(literal 0 binary64) %315))
(+.f64 x (-.f64 #s(literal 0 binary64) %341))
(+.f64 x %315)
(*.f64 #s(literal 1 binary64) %489)
(pow.f64 %489 #s(literal 1 binary64))
(/.f64 (fma.f64 %4 #s(literal 2 binary64) %19) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 %4 #s(literal 2 binary64)) %29) #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %489 #s(literal -1 binary64)))
(neg.f64 (neg.f64 %489))
(fma.f64 %120 #s(literal 8 binary64) %501)
(fma.f64 %120 #s(literal 8 binary64) %503)
(fma.f64 %24 #s(literal 4 binary64) %501)
(fma.f64 %24 #s(literal 4 binary64) %503)
(fma.f64 %39 #s(literal 2 binary64) %501)
(fma.f64 %39 #s(literal 2 binary64) %503)
(fma.f64 %34 #s(literal 1/8 binary64) %501)
(fma.f64 %34 #s(literal 1/8 binary64) %503)
(fma.f64 %46 #s(literal -1 binary64) %501)
(fma.f64 %46 #s(literal -1 binary64) %503)
(fma.f64 #s(literal 1/8 binary64) %34 %501)
(fma.f64 #s(literal 1/8 binary64) %34 %503)
(fma.f64 #s(literal 1/4 binary64) %19 %501)
(fma.f64 #s(literal 1/4 binary64) %19 %503)
(fma.f64 #s(literal 8 binary64) %187 %501)
(fma.f64 #s(literal 8 binary64) %187 %503)
(fma.f64 %14 #s(literal 1 binary64) %501)
(fma.f64 %14 #s(literal 1 binary64) %503)
(fma.f64 #s(literal 4 binary64) %204 %501)
(fma.f64 #s(literal 4 binary64) %204 %503)
(fma.f64 #s(literal 4 binary64) %48 %501)
(fma.f64 #s(literal 4 binary64) %48 %503)
(fma.f64 #s(literal -1/2 binary64) %64 %501)
(fma.f64 #s(literal -1/2 binary64) %64 %503)
(fma.f64 #s(literal 1/2 binary64) x %501)
(fma.f64 #s(literal 1/2 binary64) x %503)
(fma.f64 #s(literal -2 binary64) %232 %501)
(fma.f64 #s(literal -2 binary64) %232 %503)
(fma.f64 #s(literal -1 binary64) %46 %501)
(fma.f64 #s(literal -1 binary64) %46 %503)
(fma.f64 %64 #s(literal -1/2 binary64) %501)
(fma.f64 %64 #s(literal -1/2 binary64) %503)
(fma.f64 #s(literal 1 binary64) %14 %501)
(fma.f64 #s(literal 1 binary64) %14 %503)
(fma.f64 #s(literal 1 binary64) %489 #s(literal 0 binary64))
(fma.f64 #s(literal 1 binary64) %4 x)
(fma.f64 %19 #s(literal 1/4 binary64) %501)
(fma.f64 %19 #s(literal 1/4 binary64) %503)
(fma.f64 #s(literal 2 binary64) %39 %501)
(fma.f64 #s(literal 2 binary64) %39 %503)
(fma.f64 x #s(literal 1/2 binary64) %501)
(fma.f64 x #s(literal 1/2 binary64) %503)
(-.f64 (-.f64 %4 %46) %46)
(-.f64 %489 #s(literal 0 binary64))
(-.f64 %4 %64)
(-.f64 x %10)
(+.f64 (+.f64 %4 %14) %14)
(+.f64 %14 %501)
(+.f64 %14 %503)
(+.f64 %489 #s(literal 0 binary64))
%489
(+.f64 x (+.f64 #s(literal 0 binary64) %4))
(+.f64 x (-.f64 #s(literal 0 binary64) %10))
(+.f64 x %4)

reconstruct65.0ms (4.3%)

Counts
474 → 23
Compiler

Compiled 474 to 582 computations (-22.8% saved)

eval-12.0ms (-0.8%)

Compiler

Compiled 23 to 51 computations (-121.7% saved)

prune2.0ms (0.1%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New22123
Fresh000
Picked123
Done000
Total23326
Accuracy
100.0%
Counts
26 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 #s(literal 2 binary64) x y)
58.9%
(+.f64 (approx (+ x y) y) x)
49.9%
(approx (+ (+ x y) x) (+.f64 x x))
Compiler

Compiled 3 to 6 computations (-100.0% saved)

sample0.0ms (0.0%)

Calls
Call 1
Inputs
Outputs

series6.0ms (0.4%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03693
Stop Event
iter-limit
Counts
3 → 9
Calls
Call 1
Inputs
%1 = (+.f64 x x)
x
%1
(approx (+ (+ x y) x) %1)
Outputs
%6 = (*.f64 #s(literal 2 binary64) x)
%10 = (+ (+ x y) x)
%14 = (/.f64 y x)
%25 = (/.f64 x y)
(approx x #s(literal 0 binary64))
(approx x x)
(approx (+ x x) %6)
(approx %10 y)
(approx %10 (+.f64 y %6))
(approx %10 (*.f64 x (+.f64 #s(literal 2 binary64) %14)))
(approx %10 (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal -1 binary64) %14) #s(literal 2 binary64)))))
(approx %10 (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) %25))))
(approx %10 (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 (*.f64 #s(literal -2 binary64) %25) #s(literal 1 binary64)))))
Calls

6 calls:

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

rewrite119.0ms (7.8%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0613
0713
12413
25513
312413
428913
5169313
0416213
0427012
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
3 → 147
Calls
Call 1
Inputs
%1 = (+.f64 x x)
x
%1
(approx (+ (+ x y) x) %1)
Outputs
%2 = (*.f64 #s(literal 1/2 binary64) x)
%3 = (*.f64 %2 #s(literal 1/2 binary64))
%6 = (+.f64 x x)
%8 = (*.f64 %6 #s(literal 4 binary64))
%12 = (/.f64 x #s(literal -2 binary64))
%15 = (*.f64 #s(literal 4 binary64) x)
%19 = (neg.f64 x)
%20 = (*.f64 #s(literal 4 binary64) %19)
%22 = (*.f64 #s(literal 4 binary64) %6)
%27 = (*.f64 #s(literal -2 binary64) x)
%29 = (*.f64 #s(literal -4 binary64) %19)
%41 = (*.f64 %2 #s(literal 8 binary64))
%42 = (*.f64 %19 #s(literal 4 binary64))
%51 = (*.f64 #s(literal -2 binary64) %6)
%58 = (*.f64 %6 #s(literal -2 binary64))
%63 = (*.f64 x #s(literal 8 binary64))
%66 = (*.f64 #s(literal 8 binary64) x)
%69 = (fma.f64 #s(literal 4 binary64) x %15)
%72 = (*.f64 #s(literal 8 binary64) %6)
%76 = (*.f64 %6 #s(literal 8 binary64))
%111 = (*.f64 #s(literal 1/2 binary64) %2)
%112 = (fma.f64 #s(literal 1/2 binary64) x x)
%114 = (-.f64 %2 %19)
%117 = (*.f64 %2 #s(literal 3 binary64))
%120 = (*.f64 x #s(literal 3/2 binary64))
%122 = (*.f64 #s(literal 3 binary64) %2)
%124 = (*.f64 #s(literal 3/2 binary64) x)
%209 = (approx (+ (+ y x) x) %6)
x
(*.f64 %3 #s(literal 8 binary64))
(*.f64 %8 #s(literal 1/4 binary64))
(*.f64 %12 #s(literal -4 binary64))
(*.f64 %15 #s(literal 1/2 binary64))
(*.f64 %2 #s(literal 4 binary64))
(*.f64 #s(literal -1/2 binary64) %20)
(*.f64 #s(literal 1/4 binary64) %22)
(*.f64 #s(literal 4 binary64) %2)
(*.f64 #s(literal -2 binary64) %19)
(*.f64 #s(literal -1 binary64) %27)
(*.f64 #s(literal 1/2 binary64) %29)
(*.f64 #s(literal 1/2 binary64) %15)
(*.f64 %27 #s(literal -1 binary64))
(*.f64 #s(literal 2 binary64) x)
(*.f64 %19 #s(literal -2 binary64))
(*.f64 #s(literal 1 binary64) %6)
(*.f64 %6 #s(literal 1 binary64))
(*.f64 x #s(literal 2 binary64))
(pow.f64 %6 #s(literal 1 binary64))
(/.f64 (-.f64 %41 %42) #s(literal 4 binary64))
(/.f64 (-.f64 %15 %42) #s(literal 4 binary64))
(/.f64 (-.f64 %41 %20) #s(literal 4 binary64))
(/.f64 (-.f64 %15 %20) #s(literal 4 binary64))
(/.f64 (-.f64 %41 %51) #s(literal 4 binary64))
(/.f64 (-.f64 %15 %51) #s(literal 4 binary64))
(/.f64 (-.f64 %51 %15) #s(literal -4 binary64))
(/.f64 (-.f64 %58 %15) #s(literal -4 binary64))
(/.f64 (-.f64 %6 %27) #s(literal 2 binary64))
(/.f64 (neg.f64 %63) #s(literal -4 binary64))
(/.f64 (neg.f64 %66) #s(literal -4 binary64))
(/.f64 (neg.f64 %69) #s(literal -4 binary64))
(/.f64 (neg.f64 %72) #s(literal -8 binary64))
(/.f64 (neg.f64 %76) #s(literal -8 binary64))
(/.f64 (neg.f64 %22) #s(literal -4 binary64))
(/.f64 (neg.f64 %51) #s(literal 2 binary64))
(/.f64 (neg.f64 %8) #s(literal -4 binary64))
(/.f64 (neg.f64 %58) #s(literal 2 binary64))
(/.f64 %63 #s(literal 4 binary64))
(/.f64 %66 #s(literal 4 binary64))
(/.f64 (neg.f64 %15) #s(literal -2 binary64))
(/.f64 %20 #s(literal -2 binary64))
(/.f64 (/.f64 %27 #s(literal 1/2 binary64)) #s(literal -2 binary64))
(/.f64 %69 #s(literal 4 binary64))
(/.f64 %72 #s(literal 8 binary64))
(/.f64 %76 #s(literal 8 binary64))
(/.f64 %22 #s(literal 4 binary64))
(/.f64 %51 #s(literal -2 binary64))
(/.f64 %8 #s(literal 4 binary64))
(/.f64 %58 #s(literal -2 binary64))
(/.f64 %15 #s(literal 2 binary64))
(/.f64 %27 #s(literal -1 binary64))
(/.f64 %19 #s(literal -1/2 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 %6 #s(literal -1 binary64)))
(/.f64 %6 #s(literal 1 binary64))
(/.f64 x #s(literal 1/2 binary64))
(neg.f64 %27)
(fma.f64 %3 #s(literal 8 binary64) #s(literal 0 binary64))
(fma.f64 %111 #s(literal 2 binary64) %112)
(fma.f64 %111 #s(literal 2 binary64) %114)
(fma.f64 %111 #s(literal 2 binary64) %117)
(fma.f64 %111 #s(literal 2 binary64) %120)
(fma.f64 %111 #s(literal 2 binary64) %122)
(fma.f64 %111 #s(literal 2 binary64) %124)
(fma.f64 %8 #s(literal 1/4 binary64) #s(literal 0 binary64))
(fma.f64 #s(literal 3/2 binary64) x %2)
(fma.f64 %12 #s(literal -4 binary64) #s(literal 0 binary64))
(fma.f64 %15 #s(literal 1/2 binary64) #s(literal 0 binary64))
(fma.f64 %2 #s(literal 3 binary64) %2)
(fma.f64 %2 #s(literal 4 binary64) #s(literal 0 binary64))
(fma.f64 %2 #s(literal 1 binary64) %112)
(fma.f64 %2 #s(literal 1 binary64) %114)
(fma.f64 %2 #s(literal 1 binary64) %117)
(fma.f64 %2 #s(literal 1 binary64) %120)
(fma.f64 %2 #s(literal 1 binary64) %122)
(fma.f64 %2 #s(literal 1 binary64) %124)
(fma.f64 #s(literal -1/2 binary64) %20 #s(literal 0 binary64))
(fma.f64 #s(literal 1/4 binary64) %22 #s(literal 0 binary64))
(fma.f64 #s(literal 1/4 binary64) %6 %112)
(fma.f64 #s(literal 1/4 binary64) %6 %114)
(fma.f64 #s(literal 1/4 binary64) %6 %117)
(fma.f64 #s(literal 1/4 binary64) %6 %120)
(fma.f64 #s(literal 1/4 binary64) %6 %122)
(fma.f64 #s(literal 1/4 binary64) %6 %124)
(fma.f64 #s(literal 3 binary64) %2 %2)
(fma.f64 #s(literal 4 binary64) %2 #s(literal 0 binary64))
(fma.f64 #s(literal -2 binary64) %19 #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) %27 #s(literal 0 binary64))
(fma.f64 #s(literal 1/2 binary64) %29 #s(literal 0 binary64))
(fma.f64 #s(literal 1/2 binary64) %15 #s(literal 0 binary64))
(fma.f64 #s(literal 1/2 binary64) x %112)
(fma.f64 #s(literal 1/2 binary64) x %114)
(fma.f64 #s(literal 1/2 binary64) x %117)
(fma.f64 #s(literal 1/2 binary64) x %120)
(fma.f64 #s(literal 1/2 binary64) x %122)
(fma.f64 #s(literal 1/2 binary64) x %124)
(fma.f64 %27 #s(literal -1 binary64) #s(literal 0 binary64))
(fma.f64 #s(literal 2 binary64) %3 %112)
(fma.f64 #s(literal 2 binary64) %3 %114)
(fma.f64 #s(literal 2 binary64) %3 %117)
(fma.f64 #s(literal 2 binary64) %3 %120)
(fma.f64 #s(literal 2 binary64) %3 %122)
(fma.f64 #s(literal 2 binary64) %3 %124)
(fma.f64 #s(literal 2 binary64) x #s(literal 0 binary64))
(fma.f64 %19 #s(literal -2 binary64) #s(literal 0 binary64))
(fma.f64 #s(literal 1 binary64) %2 %112)
(fma.f64 #s(literal 1 binary64) %2 %114)
(fma.f64 #s(literal 1 binary64) %2 %117)
(fma.f64 #s(literal 1 binary64) %2 %120)
(fma.f64 #s(literal 1 binary64) %2 %122)
(fma.f64 #s(literal 1 binary64) %2 %124)
(fma.f64 #s(literal 1 binary64) %6 #s(literal 0 binary64))
(fma.f64 %6 #s(literal 1/4 binary64) %112)
(fma.f64 %6 #s(literal 1/4 binary64) %114)
(fma.f64 %6 #s(literal 1/4 binary64) %117)
(fma.f64 %6 #s(literal 1/4 binary64) %120)
(fma.f64 %6 #s(literal 1/4 binary64) %122)
(fma.f64 %6 #s(literal 1/4 binary64) %124)
(fma.f64 %6 #s(literal 1 binary64) #s(literal 0 binary64))
(fma.f64 x #s(literal 3/2 binary64) %2)
(fma.f64 x #s(literal 1/2 binary64) %112)
(fma.f64 x #s(literal 1/2 binary64) %114)
(fma.f64 x #s(literal 1/2 binary64) %117)
(fma.f64 x #s(literal 1/2 binary64) %120)
(fma.f64 x #s(literal 1/2 binary64) %122)
(fma.f64 x #s(literal 1/2 binary64) %124)
(fma.f64 x #s(literal 2 binary64) #s(literal 0 binary64))
(-.f64 x %19)
(+.f64 (+.f64 x %2) %2)
(+.f64 %117 %2)
(+.f64 %120 %2)
(+.f64 %122 %2)
(+.f64 %124 %2)
(+.f64 %2 %112)
(+.f64 %2 %114)
(+.f64 %2 %117)
(+.f64 %2 %120)
(+.f64 %2 %122)
(+.f64 %2 %124)
(+.f64 #s(literal 0 binary64) %6)
(+.f64 %6 #s(literal 0 binary64))
(+.f64 x (-.f64 #s(literal 0 binary64) %19))
%6
(*.f64 #s(literal 1 binary64) %209)
(pow.f64 %209 #s(literal 1 binary64))
%209
(/.f64 #s(literal 1 binary64) (pow.f64 %209 #s(literal -1 binary64)))

reconstruct11.0ms (0.7%)

Counts
156 → 10
Compiler

Compiled 156 to 227 computations (-45.5% saved)

eval1.0ms (0.1%)

Compiler

Compiled 9 to 21 computations (-133.3% saved)

prune1.0ms (0.1%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New819
Fresh000
Picked011
Done022
Total8412
Accuracy
100.0%
Counts
12 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 #s(literal 2 binary64) x y)
58.9%
(+.f64 (approx (+ x y) y) x)
49.9%
(approx (+ (+ x y) x) (+.f64 x x))
51.5%
(approx (+ (+ x y) x) y)
Compiler

Compiled 4 to 6 computations (-50.0% saved)

sample0.0ms (0.0%)

Calls
Call 1
Inputs
Outputs

series4.0ms (0.3%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03492
Stop Event
iter-limit
Counts
2 → 8
Calls
Call 1
Inputs
y
(approx (+ (+ x y) x) y)
Outputs
%5 = (+ (+ x y) x)
%8 = (*.f64 #s(literal 2 binary64) x)
%12 = (/.f64 y x)
%23 = (/.f64 x y)
(approx y #s(literal 0 binary64))
(approx %5 y)
(approx %5 (+.f64 y %8))
(approx %5 %8)
(approx %5 (*.f64 x (+.f64 #s(literal 2 binary64) %12)))
(approx %5 (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal -1 binary64) %12) #s(literal 2 binary64)))))
(approx %5 (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) %23))))
(approx %5 (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 (*.f64 #s(literal -2 binary64) %23) #s(literal 1 binary64)))))
Calls

6 calls:

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

rewrite77.0ms (5.0%)

Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
058
058
1188
2478
31018
41668
55718
040248
041957
Stop Event
iter-limit
iter-limit
node-limit
saturated
Counts
2 → 5
Calls
Call 1
Inputs
y
(approx (+ (+ x y) x) y)
Outputs
%5 = (approx (+ (+ x y) x) y)
y
(*.f64 #s(literal 1 binary64) %5)
(pow.f64 %5 #s(literal 1 binary64))
%5
(/.f64 #s(literal 1 binary64) (pow.f64 %5 #s(literal -1 binary64)))

reconstruct1.0ms (0.1%)

Counts
12 → 8
Compiler

Compiled 12 to 28 computations (-133.3% saved)

eval1.0ms (0.0%)

Compiler

Compiled 7 to 17 computations (-142.9% saved)

prune1.0ms (0.1%)

Pruning

5 alts after pruning (1 fresh and 4 done)

PrunedKeptTotal
New617
Fresh000
Picked011
Done033
Total6511
Accuracy
100.0%
Counts
11 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 #s(literal 2 binary64) x y)
58.9%
(+.f64 (approx (+ x y) y) x)
49.9%
(approx (+ (+ x y) x) (+.f64 x x))
2.6%
(approx (+ (+ x y) x) (approx y #s(literal 0 binary64)))
51.5%
(approx (+ (+ x y) x) y)
Compiler

Compiled 5 to 7 computations (-40.0% saved)

regimes14.0ms (0.9%)

Accuracy

Total 24.3b remaining (41.8%)

Threshold costs 0.0b (0.0%)

12.7b57.3%
11.7b53.1%
0.0b16.7%
0.0b0%

Counts
1 → 1
3 → 3
4 → 3
6 → 1
Calls
Call 1
Inputs
(approx (+ (+ x y) x) y)
Outputs
(approx (+ (+ x y) x) y)
Call 2
Inputs
%3 = (+ (+ x y) x)
(approx %3 y)
(approx %3 (approx y #s(literal 0 binary64)))
(approx %3 (+.f64 x x))
Outputs
%3 = (+ (+ x y) x)
%4 = (approx %3 y)
%4
(approx %3 (+.f64 x x))
%4
Call 3
Inputs
%2 = (+ x y)
%3 = (+ %2 x)
(approx %3 y)
(approx %3 (approx y #s(literal 0 binary64)))
(approx %3 (+.f64 x x))
(+.f64 (approx %2 y) x)
Outputs
%2 = (+ x y)
%4 = (+.f64 (approx %2 y) x)
%4
(approx (+ %2 x) (+.f64 x x))
%4
Call 4
Inputs
%2 = (+ x y)
%3 = (+ %2 x)
(approx %3 y)
(approx %3 (approx y #s(literal 0 binary64)))
(approx %3 (+.f64 x x))
(+.f64 (approx %2 y) x)
(approx %3 (*.f64 #s(literal 2 binary64) x))
(fma.f64 #s(literal 2 binary64) x y)
Outputs
(fma.f64 #s(literal 2 binary64) x y)
Calls

3 calls:

6.0ms
x
4.0ms
(+.f64 (+.f64 x y) x)
4.0ms
y
Results
AccuracySegmentsBranch
51.5%1
y
51.5%1
x
51.5%1
(+.f64 (+.f64 x y) x)
Compiler

Compiled 10 to 14 computations (-40.0% saved)

bsearch0.0ms (0.0%)

bsearch14.0ms (0.9%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
6.0ms
2.4702238806001017e+40
2.5020956682989923e+48
10.0ms
-1.1623226477154053e-26
-1.5431403025918893e-49
Samples
6.0ms320×0valid
Compiler

Compiled 12 to 16 computations (-33.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 0.0ms
Add: 0.0ms (0.0% of total, 0.0 MiB)

bsearch5.0ms (0.3%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
0.0ms
2.4702238806001017e+40
2.5020956682989923e+48
4.0ms
-3.7736488112764267e+33
-3.1195660053825565e+32
Samples
2.0ms96×0valid
Compiler

Compiled 12 to 14 computations (-16.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 0.0ms
Add: 0.0ms (0.0% of total, 0.0 MiB)

bsearch0.0ms (0.0%)

derivations48.0ms (3.1%)

Stop Event
fuel
Compiler

Compiled 4 to 16 computations (-300.0% saved)

preprocess16.0ms (1.0%)

Compiler

Compiled 5 to 20 computations (-300.0% saved)

end0.0ms (0.0%)

gc263ms (17.3%)

Allocations
AllocatedPercentPhase
642.0 MiB34.0%sample
613.4 MiB32.5%rewrite
292.4 MiB15.5%reconstruct
87.8 MiB4.7%preprocess
82.8 MiB4.4%series
41.6 MiB2.2%derivations
36.7 MiB1.9%bsearch
36.7 MiB1.9%regimes
29.2 MiB1.5%eval
22.1 MiB1.2%prune
1.9 MiB0.1%analyze
0.2 MiB0.0%start
0.0 MiB0.0%end
1 886.7 MiB100.0%total

Profiling

Loading profile data...