Data.Random.Distribution.Normal:normalTail from random-fu-0.2.6.2

Time bar (total: 1.4s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage

analyze0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated; 0ms collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
100%99.9%0%0.1%0%0%0%1
Compiler

Compiled 9 to 7 computations (22.2% saved)

sample631.0ms (44.7%)

Memory
-33.9MiB live, 594.5MiB allocated; 157ms collecting garbage
Samples
432.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 201.0ms
ival-mult!: 132.0ms (65.7% of total)
ival-add!: 68.0ms (33.8% of total)
adjust: 1.0ms (0.5% of total)
Bogosity

preprocess55.0ms (3.9%)

Memory
-14.2MiB live, 32.5MiB allocated; 4ms collecting garbage
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01744
16343
220742
336842
469942
5300142
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(+.f64 (+.f64 (*.f64 x x) y) y)
Symmetry

(abs x)

Compiler

Compiled 10 to 10 computations (0% saved)

series4.0ms (0.3%)

Memory
10.6MiB live, 10.6MiB allocated; 0ms collecting garbage
Counts
5 → 12
Calls
Call 1
Inputs
(+.f64 (+.f64 (*.f64 x x) y) y)
(+.f64 (*.f64 x x) y)
(*.f64 x x)
x
y
Outputs
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (* 2 y)))
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (+ (* 2 y) (pow x 2))))
#s(approx (+ (* x x) y) #s(hole binary64 y))
#s(approx (+ (* x x) y) #s(hole binary64 (+ y (pow x 2))))
#s(approx (* x x) #s(hole binary64 (pow x 2)))
#s(approx x #s(hole binary64 x))
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (* (pow x 2) (+ 1 (* 2 (/ y (pow x 2)))))))
#s(approx (+ (* x x) y) #s(hole binary64 (* (pow x 2) (+ 1 (/ y (pow x 2))))))
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (* y (+ 2 (/ (pow x 2) y)))))
#s(approx (+ (* x x) y) #s(hole binary64 (* y (+ 1 (/ (pow x 2) y)))))
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (* -1 (* y (- (* -1 (/ (pow x 2) y)) 2)))))
#s(approx (+ (* x x) y) #s(hole binary64 (* -1 (* y (- (* -1 (/ (pow x 2) y)) 1)))))
Calls

6 calls:

TimeVariablePointExpression
1.0ms
x
@inf
((+ (+ (* x x) y) y) (+ (* x x) y) (* x x) x y)
1.0ms
x
@-inf
((+ (+ (* x x) y) y) (+ (* x x) y) (* x x) x y)
1.0ms
x
@0
((+ (+ (* x x) y) y) (+ (* x x) y) (* x x) x y)
1.0ms
y
@0
((+ (+ (* x x) y) y) (+ (* x x) y) (* x x) x y)
1.0ms
y
@-inf
((+ (+ (* x x) y) y) (+ (* x x) y) (* x x) x y)

rewrite111.0ms (7.8%)

Memory
-5.2MiB live, 88.1MiB allocated; 5ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
045181
048173
1257173
02283153
18318153
Stop Event
saturated
iter-limit
node-limit
iter-limit
Counts
17 → 132
Calls
Call 1
Inputs
(+.f64 (+.f64 (*.f64 x x) y) y)
(+.f64 (*.f64 x x) y)
(*.f64 x x)
x
y
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (* 2 y)))
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (+ (* 2 y) (pow x 2))))
#s(approx (+ (* x x) y) #s(hole binary64 y))
#s(approx (+ (* x x) y) #s(hole binary64 (+ y (pow x 2))))
#s(approx (* x x) #s(hole binary64 (pow x 2)))
#s(approx x #s(hole binary64 x))
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (* (pow x 2) (+ 1 (* 2 (/ y (pow x 2)))))))
#s(approx (+ (* x x) y) #s(hole binary64 (* (pow x 2) (+ 1 (/ y (pow x 2))))))
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (* y (+ 2 (/ (pow x 2) y)))))
#s(approx (+ (* x x) y) #s(hole binary64 (* y (+ 1 (/ (pow x 2) y)))))
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (* -1 (* y (- (* -1 (/ (pow x 2) y)) 2)))))
#s(approx (+ (* x x) y) #s(hole binary64 (* -1 (* y (- (* -1 (/ (pow x 2) y)) 1)))))
Outputs
(neg.f64 (-.f64 (*.f64 (neg.f64 x) x) (+.f64 y y)))
(neg.f64 (-.f64 (neg.f64 y) (fma.f64 x x y)))
(fma.f64 (*.f64 (fabs.f64 x) #s(literal 1 binary64)) (*.f64 (fabs.f64 x) #s(literal 1 binary64)) (+.f64 y y))
(fma.f64 (*.f64 (neg.f64 x) #s(literal 1 binary64)) (*.f64 (neg.f64 x) #s(literal 1 binary64)) (+.f64 y y))
(fma.f64 (*.f64 x #s(literal 1 binary64)) (*.f64 x #s(literal 1 binary64)) (+.f64 y y))
(fma.f64 (*.f64 #s(literal 1 binary64) (fabs.f64 x)) (*.f64 #s(literal 1 binary64) (fabs.f64 x)) (+.f64 y y))
(fma.f64 (*.f64 #s(literal 1 binary64) (fabs.f64 x)) (fabs.f64 x) (+.f64 y y))
(fma.f64 (*.f64 #s(literal 1 binary64) (neg.f64 x)) (*.f64 #s(literal 1 binary64) (neg.f64 x)) (+.f64 y y))
(fma.f64 (*.f64 #s(literal 1 binary64) (neg.f64 x)) (neg.f64 x) (+.f64 y y))
(fma.f64 (*.f64 #s(literal 1 binary64) x) (*.f64 #s(literal 1 binary64) x) (+.f64 y y))
(fma.f64 (*.f64 #s(literal 1 binary64) x) x (+.f64 y y))
(fma.f64 (fabs.f64 (fabs.f64 x)) (fabs.f64 (fabs.f64 x)) (+.f64 y y))
(fma.f64 (neg.f64 (fabs.f64 x)) (neg.f64 (fabs.f64 x)) (+.f64 y y))
(fma.f64 (neg.f64 (neg.f64 x)) (neg.f64 (neg.f64 x)) (+.f64 y y))
(fma.f64 (fabs.f64 x) (*.f64 (fabs.f64 x) #s(literal 1 binary64)) (+.f64 y y))
(fma.f64 (fabs.f64 x) (fabs.f64 x) (+.f64 y y))
(fma.f64 (neg.f64 x) (*.f64 (neg.f64 x) #s(literal 1 binary64)) (+.f64 y y))
(fma.f64 (neg.f64 x) (neg.f64 x) (+.f64 y y))
(fma.f64 #s(literal 1 binary64) (*.f64 x x) (+.f64 y y))
(fma.f64 (*.f64 x x) #s(literal 1 binary64) (+.f64 y y))
(fma.f64 #s(literal 2 binary64) y (*.f64 x x))
(fma.f64 y #s(literal 2 binary64) (*.f64 x x))
(fma.f64 x (*.f64 x #s(literal 1 binary64)) (+.f64 y y))
(fma.f64 x x (+.f64 y y))
(-.f64 (*.f64 x x) (-.f64 (neg.f64 y) y))
(-.f64 (*.f64 x x) (*.f64 #s(literal -2 binary64) y))
(-.f64 (*.f64 x x) (+.f64 (neg.f64 y) (neg.f64 y)))
(-.f64 (*.f64 x x) (*.f64 (neg.f64 y) #s(literal 2 binary64)))
(-.f64 (*.f64 x x) (neg.f64 (+.f64 y y)))
(-.f64 (+.f64 y y) (*.f64 (neg.f64 x) x))
(-.f64 (fma.f64 x x y) (neg.f64 y))
(-.f64 y (fma.f64 (neg.f64 x) x (neg.f64 y)))
(-.f64 y (-.f64 (*.f64 (neg.f64 x) x) y))
(-.f64 y (neg.f64 (fma.f64 x x y)))
(+.f64 (*.f64 x x) (+.f64 y y))
(+.f64 (+.f64 y y) (*.f64 x x))
(+.f64 (fma.f64 x x y) (neg.f64 (neg.f64 y)))
(+.f64 (fma.f64 x x y) y)
(+.f64 y (fma.f64 x x y))
(neg.f64 (-.f64 (neg.f64 y) (*.f64 x x)))
(neg.f64 (-.f64 (*.f64 (neg.f64 x) x) y))
(fma.f64 (*.f64 (fabs.f64 x) #s(literal 1 binary64)) (*.f64 (fabs.f64 x) #s(literal 1 binary64)) (neg.f64 (neg.f64 y)))
(fma.f64 (*.f64 (fabs.f64 x) #s(literal 1 binary64)) (*.f64 (fabs.f64 x) #s(literal 1 binary64)) y)
(fma.f64 (*.f64 (neg.f64 x) #s(literal 1 binary64)) (*.f64 (neg.f64 x) #s(literal 1 binary64)) (neg.f64 (neg.f64 y)))
(fma.f64 (*.f64 (neg.f64 x) #s(literal 1 binary64)) (*.f64 (neg.f64 x) #s(literal 1 binary64)) y)
(fma.f64 (*.f64 x #s(literal 1 binary64)) (*.f64 x #s(literal 1 binary64)) (neg.f64 (neg.f64 y)))
(fma.f64 (*.f64 x #s(literal 1 binary64)) (*.f64 x #s(literal 1 binary64)) y)
(fma.f64 (*.f64 #s(literal 1 binary64) (fabs.f64 x)) (*.f64 #s(literal 1 binary64) (fabs.f64 x)) (neg.f64 (neg.f64 y)))
(fma.f64 (*.f64 #s(literal 1 binary64) (fabs.f64 x)) (*.f64 #s(literal 1 binary64) (fabs.f64 x)) y)
(fma.f64 (*.f64 #s(literal 1 binary64) (fabs.f64 x)) (fabs.f64 x) (neg.f64 (neg.f64 y)))
(fma.f64 (*.f64 #s(literal 1 binary64) (fabs.f64 x)) (fabs.f64 x) y)
(fma.f64 (*.f64 #s(literal 1 binary64) (neg.f64 x)) (*.f64 #s(literal 1 binary64) (neg.f64 x)) (neg.f64 (neg.f64 y)))
(fma.f64 (*.f64 #s(literal 1 binary64) (neg.f64 x)) (*.f64 #s(literal 1 binary64) (neg.f64 x)) y)
(fma.f64 (*.f64 #s(literal 1 binary64) (neg.f64 x)) (neg.f64 x) (neg.f64 (neg.f64 y)))
(fma.f64 (*.f64 #s(literal 1 binary64) (neg.f64 x)) (neg.f64 x) y)
(fma.f64 (*.f64 #s(literal 1 binary64) x) (*.f64 #s(literal 1 binary64) x) (neg.f64 (neg.f64 y)))
(fma.f64 (*.f64 #s(literal 1 binary64) x) (*.f64 #s(literal 1 binary64) x) y)
(fma.f64 (*.f64 #s(literal 1 binary64) x) x (neg.f64 (neg.f64 y)))
(fma.f64 (*.f64 #s(literal 1 binary64) x) x y)
(fma.f64 (fabs.f64 (fabs.f64 x)) (fabs.f64 (fabs.f64 x)) (neg.f64 (neg.f64 y)))
(fma.f64 (fabs.f64 (fabs.f64 x)) (fabs.f64 (fabs.f64 x)) y)
(fma.f64 (neg.f64 (fabs.f64 x)) (neg.f64 (fabs.f64 x)) (neg.f64 (neg.f64 y)))
(fma.f64 (neg.f64 (fabs.f64 x)) (neg.f64 (fabs.f64 x)) y)
(fma.f64 (neg.f64 (neg.f64 x)) (neg.f64 (neg.f64 x)) (neg.f64 (neg.f64 y)))
(fma.f64 (neg.f64 (neg.f64 x)) (neg.f64 (neg.f64 x)) y)
(fma.f64 (fabs.f64 x) (*.f64 (fabs.f64 x) #s(literal 1 binary64)) (neg.f64 (neg.f64 y)))
(fma.f64 (fabs.f64 x) (*.f64 (fabs.f64 x) #s(literal 1 binary64)) y)
(fma.f64 (fabs.f64 x) (fabs.f64 x) (neg.f64 (neg.f64 y)))
(fma.f64 (fabs.f64 x) (fabs.f64 x) y)
(fma.f64 (neg.f64 x) (*.f64 (neg.f64 x) #s(literal 1 binary64)) (neg.f64 (neg.f64 y)))
(fma.f64 (neg.f64 x) (*.f64 (neg.f64 x) #s(literal 1 binary64)) y)
(fma.f64 (neg.f64 x) (neg.f64 x) (neg.f64 (neg.f64 y)))
(fma.f64 (neg.f64 x) (neg.f64 x) y)
(fma.f64 #s(literal 1 binary64) (*.f64 x x) (neg.f64 (neg.f64 y)))
(fma.f64 #s(literal 1 binary64) (*.f64 x x) y)
(fma.f64 (*.f64 x x) #s(literal 1 binary64) (neg.f64 (neg.f64 y)))
(fma.f64 (*.f64 x x) #s(literal 1 binary64) y)
(fma.f64 x (*.f64 x #s(literal 1 binary64)) (neg.f64 (neg.f64 y)))
(fma.f64 x (*.f64 x #s(literal 1 binary64)) y)
(fma.f64 x x (neg.f64 (neg.f64 y)))
(fma.f64 x x y)
(-.f64 (*.f64 x x) (neg.f64 y))
(-.f64 y (*.f64 (neg.f64 x) x))
(+.f64 (*.f64 x x) (neg.f64 (neg.f64 y)))
(+.f64 (*.f64 x x) y)
(+.f64 y (*.f64 x x))
(*.f64 (*.f64 (fabs.f64 x) #s(literal 1 binary64)) (*.f64 (fabs.f64 x) #s(literal 1 binary64)))
(*.f64 (*.f64 (neg.f64 x) #s(literal 1 binary64)) (*.f64 (neg.f64 x) #s(literal 1 binary64)))
(*.f64 (*.f64 x #s(literal 1 binary64)) (*.f64 x #s(literal 1 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (fabs.f64 x)) (*.f64 #s(literal 1 binary64) (fabs.f64 x)))
(*.f64 (*.f64 #s(literal 1 binary64) (fabs.f64 x)) (fabs.f64 x))
(*.f64 (*.f64 #s(literal 1 binary64) (neg.f64 x)) (*.f64 #s(literal 1 binary64) (neg.f64 x)))
(*.f64 (*.f64 #s(literal 1 binary64) (neg.f64 x)) (neg.f64 x))
(*.f64 (*.f64 #s(literal 1 binary64) x) (*.f64 #s(literal 1 binary64) x))
(*.f64 (*.f64 #s(literal 1 binary64) x) x)
(*.f64 (fabs.f64 (fabs.f64 x)) (fabs.f64 (fabs.f64 x)))
(*.f64 (neg.f64 (fabs.f64 x)) (neg.f64 (fabs.f64 x)))
(*.f64 (neg.f64 (neg.f64 x)) (neg.f64 (neg.f64 x)))
(*.f64 (fabs.f64 x) (*.f64 (fabs.f64 x) #s(literal 1 binary64)))
(*.f64 (fabs.f64 x) (fabs.f64 x))
(*.f64 (neg.f64 x) (*.f64 (neg.f64 x) #s(literal 1 binary64)))
(*.f64 (neg.f64 x) (neg.f64 x))
(*.f64 #s(literal 1 binary64) (*.f64 x x))
(*.f64 (*.f64 x x) #s(literal 1 binary64))
(*.f64 x (*.f64 x #s(literal 1 binary64)))
(*.f64 x x)
(pow.f64 (fabs.f64 (fabs.f64 x)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (fabs.f64 x)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (neg.f64 x)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 x) #s(literal 2 binary64))
(pow.f64 (neg.f64 x) #s(literal 2 binary64))
(pow.f64 x #s(literal 2 binary64))
(/.f64 (*.f64 (*.f64 x x) #s(literal 2 binary64)) #s(literal 2 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) (*.f64 x x)) #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 x) x))
(sqrt.f64 (*.f64 (*.f64 (*.f64 x x) x) x))
(fabs.f64 (*.f64 (neg.f64 x) x))
(fabs.f64 (*.f64 x x))
x
y
#s(approx (+ (+ (* x x) y) y) (+.f64 y y))
#s(approx (+ (+ (* x x) y) y) (+.f64 (fma.f64 x x y) y))
#s(approx (+ (* x x) y) y)
#s(approx (+ (* x x) y) (fma.f64 x x y))
#s(approx (* x x) (*.f64 x x))
#s(approx x x)
#s(approx (+ (+ (* x x) y) y) (*.f64 (*.f64 (fma.f64 (/.f64 y (*.f64 x x)) #s(literal 2 binary64) #s(literal 1 binary64)) x) x))
#s(approx (+ (* x x) y) (*.f64 (*.f64 (-.f64 (/.f64 y (*.f64 x x)) #s(literal -1 binary64)) x) x))
#s(approx (+ (+ (* x x) y) y) (*.f64 (fma.f64 x (/.f64 x y) #s(literal 2 binary64)) y))
#s(approx (+ (* x x) y) (fma.f64 (/.f64 (*.f64 x x) y) y y))
#s(approx (+ (+ (* x x) y) y) (*.f64 (fma.f64 x (/.f64 x y) #s(literal 2 binary64)) y))
#s(approx (+ (* x x) y) (fma.f64 (/.f64 (*.f64 x x) y) y y))

eval11.0ms (0.8%)

Memory
21.4MiB live, 21.4MiB allocated; 0ms collecting garbage
Compiler

Compiled 640 to 294 computations (54.1% saved)

prune4.0ms (0.3%)

Memory
6.7MiB live, 6.7MiB allocated; 0ms collecting garbage
Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New1242126
Fresh000
Picked101
Done000
Total1252127
Accuracy
100.0%
Counts
127 → 2
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 x x (+.f64 y y))
56.6%
(+.f64 #s(approx (+ (* x x) y) y) y)
Compiler

Compiled 10 to 10 computations (0% saved)

series3.0ms (0.2%)

Memory
5.1MiB live, 5.1MiB allocated; 0ms collecting garbage
Counts
6 → 12
Calls
Call 1
Inputs
(+.f64 #s(approx (+ (* x x) y) y) y)
#s(approx (+ (* x x) y) y)
y
(fma.f64 x x (+.f64 y y))
x
(+.f64 y y)
Outputs
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (* 2 y)))
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (+ (* 2 y) (pow x 2))))
#s(approx (+ (* x x) y) #s(hole binary64 y))
#s(approx (+ (* x x) y) #s(hole binary64 (+ y (pow x 2))))
#s(approx x #s(hole binary64 x))
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (pow x 2)))
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (* (pow x 2) (+ 1 (* 2 (/ y (pow x 2)))))))
#s(approx (+ (* x x) y) #s(hole binary64 (* (pow x 2) (+ 1 (/ y (pow x 2))))))
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (* y (+ 2 (/ (pow x 2) y)))))
#s(approx (+ (* x x) y) #s(hole binary64 (* y (+ 1 (/ (pow x 2) y)))))
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (* -1 (* y (- (* -1 (/ (pow x 2) y)) 2)))))
#s(approx (+ (* x x) y) #s(hole binary64 (* -1 (* y (- (* -1 (/ (pow x 2) y)) 1)))))
Calls

6 calls:

TimeVariablePointExpression
1.0ms
y
@-inf
((+ (+ (* x x) y) y) (+ (* x x) y) y (+ (* x x) (+ y y)) x (+ y y))
0.0ms
x
@inf
((+ (+ (* x x) y) y) (+ (* x x) y) y (+ (* x x) (+ y y)) x (+ y y))
0.0ms
x
@-inf
((+ (+ (* x x) y) y) (+ (* x x) y) y (+ (* x x) (+ y y)) x (+ y y))
0.0ms
y
@inf
((+ (+ (* x x) y) y) (+ (* x x) y) y (+ (* x x) (+ y y)) x (+ y y))
0.0ms
y
@0
((+ (+ (* x x) y) y) (+ (* x x) y) y (+ (* x x) (+ y y)) x (+ y y))

rewrite110.0ms (7.8%)

Memory
9.1MiB live, 105.7MiB allocated; 12ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
045195
048166
1293138
03194127
17962127
Stop Event
saturated
iter-limit
node-limit
iter-limit
Counts
18 → 67
Calls
Call 1
Inputs
(+.f64 #s(approx (+ (* x x) y) y) y)
#s(approx (+ (* x x) y) y)
y
(fma.f64 x x (+.f64 y y))
x
(+.f64 y y)
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (* 2 y)))
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (+ (* 2 y) (pow x 2))))
#s(approx (+ (* x x) y) #s(hole binary64 y))
#s(approx (+ (* x x) y) #s(hole binary64 (+ y (pow x 2))))
#s(approx x #s(hole binary64 x))
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (pow x 2)))
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (* (pow x 2) (+ 1 (* 2 (/ y (pow x 2)))))))
#s(approx (+ (* x x) y) #s(hole binary64 (* (pow x 2) (+ 1 (/ y (pow x 2))))))
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (* y (+ 2 (/ (pow x 2) y)))))
#s(approx (+ (* x x) y) #s(hole binary64 (* y (+ 1 (/ (pow x 2) y)))))
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (* -1 (* y (- (* -1 (/ (pow x 2) y)) 2)))))
#s(approx (+ (* x x) y) #s(hole binary64 (* -1 (* y (- (* -1 (/ (pow x 2) y)) 1)))))
Outputs
(neg.f64 (-.f64 #s(literal -1 binary64) #s(approx (+ (* x x) y) y)))
(-.f64 y (neg.f64 #s(approx (+ (* x x) y) y)))
(-.f64 #s(approx (+ (* x x) y) y) #s(literal -1 binary64))
(+.f64 y #s(approx (+ (* x x) y) y))
(+.f64 #s(approx (+ (* x x) y) y) y)
#s(approx (+ (* x x) y) y)
y
#s(literal 1 binary64)
(*.f64 #s(literal -1 binary64) (-.f64 #s(literal -2 binary64) (*.f64 x x)))
(*.f64 (-.f64 #s(literal -2 binary64) (*.f64 x x)) #s(literal -1 binary64))
(*.f64 y (fma.f64 x x #s(literal 2 binary64)))
(*.f64 (fma.f64 x x #s(literal 2 binary64)) y)
(neg.f64 (*.f64 #s(literal -1 binary64) (fma.f64 x x #s(literal 2 binary64))))
(neg.f64 (-.f64 #s(literal -1 binary64) (fma.f64 x x y)))
(neg.f64 (-.f64 #s(literal -2 binary64) (*.f64 x x)))
(fma.f64 (*.f64 (fabs.f64 x) y) (*.f64 (fabs.f64 x) y) #s(literal 2 binary64))
(fma.f64 (*.f64 (neg.f64 x) y) (*.f64 (neg.f64 x) y) #s(literal 2 binary64))
(fma.f64 (*.f64 x y) (*.f64 x y) #s(literal 2 binary64))
(fma.f64 (*.f64 y (fabs.f64 x)) (*.f64 y (fabs.f64 x)) #s(literal 2 binary64))
(fma.f64 (*.f64 y (fabs.f64 x)) (fabs.f64 x) #s(literal 2 binary64))
(fma.f64 (*.f64 y (neg.f64 x)) (*.f64 y (neg.f64 x)) #s(literal 2 binary64))
(fma.f64 (*.f64 y (neg.f64 x)) (neg.f64 x) #s(literal 2 binary64))
(fma.f64 (*.f64 y x) (*.f64 y x) #s(literal 2 binary64))
(fma.f64 (*.f64 y x) x #s(literal 2 binary64))
(fma.f64 (fabs.f64 (fabs.f64 x)) (fabs.f64 (fabs.f64 x)) #s(literal 2 binary64))
(fma.f64 (neg.f64 (fabs.f64 x)) (neg.f64 (fabs.f64 x)) #s(literal 2 binary64))
(fma.f64 (neg.f64 (neg.f64 x)) (neg.f64 (neg.f64 x)) #s(literal 2 binary64))
(fma.f64 #s(literal -1 binary64) (*.f64 (neg.f64 x) x) #s(literal 2 binary64))
(fma.f64 #s(literal -1 binary64) (-.f64 #s(literal -1 binary64) (*.f64 x x)) y)
(fma.f64 (*.f64 (neg.f64 x) x) #s(literal -1 binary64) #s(literal 2 binary64))
(fma.f64 (fabs.f64 x) (/.f64 (fabs.f64 x) y) #s(literal 2 binary64))
(fma.f64 (fabs.f64 x) (*.f64 (fabs.f64 x) y) #s(literal 2 binary64))
(fma.f64 (fabs.f64 x) (fabs.f64 x) #s(literal 2 binary64))
(fma.f64 (neg.f64 x) (/.f64 (neg.f64 x) y) #s(literal 2 binary64))
(fma.f64 (neg.f64 x) (*.f64 (neg.f64 x) y) #s(literal 2 binary64))
(fma.f64 (neg.f64 x) (neg.f64 x) #s(literal 2 binary64))
(fma.f64 (-.f64 #s(literal -1 binary64) (*.f64 x x)) #s(literal -1 binary64) y)
(fma.f64 y (*.f64 x x) #s(literal 2 binary64))
(fma.f64 y (fma.f64 x x y) y)
(fma.f64 (*.f64 x x) y #s(literal 2 binary64))
(fma.f64 (fma.f64 x x y) y y)
(fma.f64 x (/.f64 x y) #s(literal 2 binary64))
(fma.f64 x (*.f64 x y) #s(literal 2 binary64))
(fma.f64 x x #s(literal 2 binary64))
(-.f64 y (-.f64 #s(literal -1 binary64) (*.f64 x x)))
(-.f64 (*.f64 x x) #s(literal -2 binary64))
(-.f64 #s(literal 2 binary64) (*.f64 (neg.f64 x) x))
(-.f64 (fma.f64 x x y) #s(literal -1 binary64))
(+.f64 (*.f64 #s(literal -1 binary64) (*.f64 (neg.f64 x) x)) #s(literal 2 binary64))
(+.f64 y (fma.f64 x x y))
(+.f64 (*.f64 x x) #s(literal 2 binary64))
(+.f64 #s(literal 2 binary64) (*.f64 x x))
(+.f64 (fma.f64 x x y) y)
x
#s(literal 2 binary64)
#s(approx (+ (+ (* x x) y) y) #s(literal 2 binary64))
#s(approx (+ (+ (* x x) y) y) (fma.f64 x x #s(literal 2 binary64)))
#s(approx (+ (* x x) y) y)
#s(approx (+ (* x x) y) (fma.f64 x x y))
#s(approx x x)
#s(approx (+ (+ (* x x) y) y) (*.f64 x x))
#s(approx (+ (+ (* x x) y) y) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 2 binary64) (*.f64 x x)) #s(literal -1 binary64)) x) x))
#s(approx (+ (* x x) y) (fma.f64 x x (/.f64 (*.f64 x x) (*.f64 x x))))
#s(approx (+ (+ (* x x) y) y) (fma.f64 x x #s(literal 2 binary64)))
#s(approx (+ (* x x) y) (fma.f64 x x y))
#s(approx (+ (+ (* x x) y) y) (fma.f64 x x #s(literal 2 binary64)))
#s(approx (+ (* x x) y) (fma.f64 x x y))

eval16.0ms (1.1%)

Memory
-29.7MiB live, 16.3MiB allocated; 2ms collecting garbage
Compiler

Compiled 210 to 104 computations (50.5% saved)

prune3.0ms (0.2%)

Memory
8.3MiB live, 8.3MiB allocated; 0ms collecting garbage
Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New56359
Fresh000
Picked022
Done000
Total56561
Accuracy
100.0%
Counts
61 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 x x (+.f64 y y))
9.5%
(-.f64 #s(approx (+ (* x x) y) y) #s(literal -1 binary64))
56.6%
(+.f64 #s(approx (+ (* x x) y) y) y)
44.4%
#s(approx (+ (+ (* x x) y) y) (*.f64 x x))
4.0%
#s(approx (+ (+ (* x x) y) y) #s(literal 2 binary64))
Compiler

Compiled 31 to 31 computations (0% saved)

series4.0ms (0.3%)

Memory
10.5MiB live, 10.5MiB allocated; 0ms collecting garbage
Counts
9 → 18
Calls
Call 1
Inputs
#s(approx (+ (+ (* x x) y) y) #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (+ (+ (* x x) y) y) (*.f64 x x))
(*.f64 x x)
x
(-.f64 #s(approx (+ (* x x) y) y) #s(literal -1 binary64))
#s(approx (+ (* x x) y) y)
y
#s(literal -1 binary64)
Outputs
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (* 2 y)))
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (+ (* 2 y) (pow x 2))))
#s(approx (* x x) #s(hole binary64 (pow x 2)))
#s(approx x #s(hole binary64 x))
#s(approx (- (+ (* x x) y) -1) #s(hole binary64 (+ 1 y)))
#s(approx (- (+ (* x x) y) -1) #s(hole binary64 (+ 1 (+ y (pow x 2)))))
#s(approx (+ (* x x) y) #s(hole binary64 y))
#s(approx (+ (* x x) y) #s(hole binary64 (+ y (pow x 2))))
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (* (pow x 2) (+ 1 (* 2 (/ y (pow x 2)))))))
#s(approx (- (+ (* x x) y) -1) #s(hole binary64 (* (pow x 2) (+ 1 (+ (/ 1 (pow x 2)) (/ y (pow x 2)))))))
#s(approx (+ (* x x) y) #s(hole binary64 (* (pow x 2) (+ 1 (/ y (pow x 2))))))
#s(approx (- (+ (* x x) y) -1) #s(hole binary64 (+ 1 (pow x 2))))
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (* y (+ 2 (/ (pow x 2) y)))))
#s(approx (- (+ (* x x) y) -1) #s(hole binary64 (* y (+ 1 (+ (/ 1 y) (/ (pow x 2) y))))))
#s(approx (+ (* x x) y) #s(hole binary64 (* y (+ 1 (/ (pow x 2) y)))))
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (* -1 (* y (- (* -1 (/ (pow x 2) y)) 2)))))
#s(approx (- (+ (* x x) y) -1) #s(hole binary64 (* -1 (* y (- (* -1 (/ (+ 1 (pow x 2)) y)) 1)))))
#s(approx (+ (* x x) y) #s(hole binary64 (* -1 (* y (- (* -1 (/ (pow x 2) y)) 1)))))
Calls

6 calls:

TimeVariablePointExpression
1.0ms
x
@inf
((+ (+ (* x x) y) y) 2 (+ (+ (* x x) y) y) (* x x) x (- (+ (* x x) y) -1) (+ (* x x) y) y -1)
1.0ms
x
@-inf
((+ (+ (* x x) y) y) 2 (+ (+ (* x x) y) y) (* x x) x (- (+ (* x x) y) -1) (+ (* x x) y) y -1)
1.0ms
y
@-inf
((+ (+ (* x x) y) y) 2 (+ (+ (* x x) y) y) (* x x) x (- (+ (* x x) y) -1) (+ (* x x) y) y -1)
0.0ms
y
@inf
((+ (+ (* x x) y) y) 2 (+ (+ (* x x) y) y) (* x x) x (- (+ (* x x) y) -1) (+ (* x x) y) y -1)
0.0ms
x
@0
((+ (+ (* x x) y) y) 2 (+ (+ (* x x) y) y) (* x x) x (- (+ (* x x) y) -1) (+ (* x x) y) y -1)

rewrite272.0ms (19.3%)

Memory
16.5MiB live, 153.7MiB allocated; 58ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
069315
071259
1457259
24606259
08316226
132816226
Stop Event
saturated
node-limit
iter-limit
Counts
27 → 103
Calls
Call 1
Inputs
#s(approx (+ (+ (* x x) y) y) #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (+ (+ (* x x) y) y) (*.f64 x x))
(*.f64 x x)
x
(-.f64 #s(approx (+ (* x x) y) y) #s(literal -1 binary64))
#s(approx (+ (* x x) y) y)
y
#s(literal -1 binary64)
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (* 2 y)))
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (+ (* 2 y) (pow x 2))))
#s(approx (* x x) #s(hole binary64 (pow x 2)))
#s(approx x #s(hole binary64 x))
#s(approx (- (+ (* x x) y) -1) #s(hole binary64 (+ 1 y)))
#s(approx (- (+ (* x x) y) -1) #s(hole binary64 (+ 1 (+ y (pow x 2)))))
#s(approx (+ (* x x) y) #s(hole binary64 y))
#s(approx (+ (* x x) y) #s(hole binary64 (+ y (pow x 2))))
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (* (pow x 2) (+ 1 (* 2 (/ y (pow x 2)))))))
#s(approx (- (+ (* x x) y) -1) #s(hole binary64 (* (pow x 2) (+ 1 (+ (/ 1 (pow x 2)) (/ y (pow x 2)))))))
#s(approx (+ (* x x) y) #s(hole binary64 (* (pow x 2) (+ 1 (/ y (pow x 2))))))
#s(approx (- (+ (* x x) y) -1) #s(hole binary64 (+ 1 (pow x 2))))
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (* y (+ 2 (/ (pow x 2) y)))))
#s(approx (- (+ (* x x) y) -1) #s(hole binary64 (* y (+ 1 (+ (/ 1 y) (/ (pow x 2) y))))))
#s(approx (+ (* x x) y) #s(hole binary64 (* y (+ 1 (/ (pow x 2) y)))))
#s(approx (+ (+ (* x x) y) y) #s(hole binary64 (* -1 (* y (- (* -1 (/ (pow x 2) y)) 2)))))
#s(approx (- (+ (* x x) y) -1) #s(hole binary64 (* -1 (* y (- (* -1 (/ (+ 1 (pow x 2)) y)) 1)))))
#s(approx (+ (* x x) y) #s(hole binary64 (* -1 (* y (- (* -1 (/ (pow x 2) y)) 1)))))
Outputs
#s(approx (+ (+ (* x x) y) y) #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (+ (+ (* x x) y) y) (*.f64 x x))
(*.f64 (*.f64 #s(literal 1 binary64) (fabs.f64 x)) (*.f64 #s(literal 1 binary64) (fabs.f64 x)))
(*.f64 (*.f64 #s(literal 1 binary64) (fabs.f64 x)) (fabs.f64 x))
(*.f64 (*.f64 #s(literal 1 binary64) (neg.f64 x)) (*.f64 #s(literal 1 binary64) (neg.f64 x)))
(*.f64 (*.f64 #s(literal 1 binary64) (neg.f64 x)) (neg.f64 x))
(*.f64 (*.f64 #s(literal 1 binary64) x) (*.f64 #s(literal 1 binary64) x))
(*.f64 (*.f64 #s(literal 1 binary64) x) x)
(*.f64 (*.f64 #s(literal -1 binary64) (fabs.f64 x)) (*.f64 #s(literal -1 binary64) (fabs.f64 x)))
(*.f64 (*.f64 #s(literal -1 binary64) (neg.f64 x)) (*.f64 #s(literal -1 binary64) (neg.f64 x)))
(*.f64 (*.f64 #s(literal -1 binary64) x) (*.f64 #s(literal -1 binary64) x))
(*.f64 (*.f64 (fabs.f64 x) #s(literal 1 binary64)) (*.f64 (fabs.f64 x) #s(literal 1 binary64)))
(*.f64 (*.f64 (fabs.f64 x) #s(literal -1 binary64)) (*.f64 (fabs.f64 x) #s(literal -1 binary64)))
(*.f64 (*.f64 (neg.f64 x) #s(literal 1 binary64)) (*.f64 (neg.f64 x) #s(literal 1 binary64)))
(*.f64 (*.f64 (neg.f64 x) #s(literal -1 binary64)) (*.f64 (neg.f64 x) #s(literal -1 binary64)))
(*.f64 (*.f64 x #s(literal 1 binary64)) (*.f64 x #s(literal 1 binary64)))
(*.f64 (*.f64 x #s(literal -1 binary64)) (*.f64 x #s(literal -1 binary64)))
(*.f64 (fabs.f64 (fabs.f64 x)) (fabs.f64 (fabs.f64 x)))
(*.f64 (neg.f64 (fabs.f64 x)) (neg.f64 (fabs.f64 x)))
(*.f64 (neg.f64 (neg.f64 x)) (neg.f64 (neg.f64 x)))
(*.f64 (*.f64 (*.f64 x x) y) (/.f64 #s(literal 1 binary64) y))
(*.f64 (*.f64 (neg.f64 x) x) #s(literal -1 binary64))
(*.f64 (fabs.f64 x) (*.f64 (fabs.f64 x) #s(literal 1 binary64)))
(*.f64 (fabs.f64 x) (fabs.f64 x))
(*.f64 (neg.f64 x) (*.f64 (neg.f64 x) #s(literal 1 binary64)))
(*.f64 (neg.f64 x) (neg.f64 x))
(*.f64 (/.f64 (*.f64 x x) y) y)
(*.f64 #s(literal 1 binary64) (*.f64 x x))
(*.f64 (*.f64 x x) #s(literal 1 binary64))
(*.f64 #s(literal -1 binary64) (*.f64 (neg.f64 x) x))
(*.f64 y (/.f64 (*.f64 x x) y))
(*.f64 x (*.f64 x #s(literal 1 binary64)))
(*.f64 x x)
(pow.f64 (neg.f64 (fabs.f64 (fabs.f64 x))) #s(literal 2 binary64))
(pow.f64 (neg.f64 (neg.f64 (fabs.f64 x))) #s(literal 2 binary64))
(pow.f64 (neg.f64 (neg.f64 (neg.f64 x))) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(literal 1 binary64) (fabs.f64 (fabs.f64 x))) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(literal -1 binary64) (fabs.f64 (fabs.f64 x))) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (fabs.f64 x))) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(literal -1 binary64) (neg.f64 (fabs.f64 x))) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 x))) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(literal -1 binary64) (neg.f64 (neg.f64 x))) #s(literal 2 binary64))
(pow.f64 (*.f64 (fabs.f64 (fabs.f64 x)) #s(literal 1 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 (neg.f64 (fabs.f64 x)) #s(literal 1 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 (neg.f64 (neg.f64 x)) #s(literal 1 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 (fabs.f64 (fabs.f64 x)) #s(literal -1 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 (neg.f64 (fabs.f64 x)) #s(literal -1 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 (neg.f64 (neg.f64 x)) #s(literal -1 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(literal 1 binary64) (fabs.f64 x)) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(literal 1 binary64) (neg.f64 x)) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(literal 1 binary64) x) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(literal -1 binary64) (fabs.f64 x)) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(literal -1 binary64) (neg.f64 x)) #s(literal 2 binary64))
(pow.f64 (*.f64 #s(literal -1 binary64) x) #s(literal 2 binary64))
(pow.f64 (*.f64 (fabs.f64 x) #s(literal 1 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 (fabs.f64 x) #s(literal -1 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 (neg.f64 x) #s(literal 1 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 (neg.f64 x) #s(literal -1 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 x #s(literal 1 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 x #s(literal -1 binary64)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 (fabs.f64 x)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (fabs.f64 x)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (neg.f64 x)) #s(literal 2 binary64))
(pow.f64 (*.f64 (*.f64 (*.f64 x x) x) x) #s(literal 1/2 binary64))
(pow.f64 (fabs.f64 x) #s(literal 2 binary64))
(pow.f64 (neg.f64 x) #s(literal 2 binary64))
(pow.f64 x #s(literal 2 binary64))
(/.f64 (*.f64 (*.f64 x x) #s(literal 2 binary64)) #s(literal 2 binary64))
(/.f64 (*.f64 (*.f64 (neg.f64 x) x) y) (neg.f64 y))
(/.f64 (*.f64 y (*.f64 (neg.f64 x) x)) (neg.f64 y))
(/.f64 (*.f64 #s(literal 2 binary64) (*.f64 x x)) #s(literal 2 binary64))
(/.f64 (*.f64 (*.f64 x x) y) y)
(neg.f64 (*.f64 (neg.f64 x) x))
(sqrt.f64 (*.f64 (*.f64 (*.f64 x x) x) x))
(fabs.f64 (*.f64 (neg.f64 x) x))
(fabs.f64 (*.f64 x x))
x
(neg.f64 (-.f64 #s(literal -1 binary64) #s(approx (+ (* x x) y) y)))
(-.f64 #s(approx (+ (* x x) y) y) #s(literal -1 binary64))
(+.f64 #s(literal 1 binary64) #s(approx (+ (* x x) y) y))
(+.f64 #s(approx (+ (* x x) y) y) #s(literal 1 binary64))
#s(approx (+ (* x x) y) y)
y
#s(literal -1 binary64)
#s(approx (+ (+ (* x x) y) y) (+.f64 y y))
#s(approx (+ (+ (* x x) y) y) (+.f64 (fma.f64 x x y) y))
#s(approx (* x x) (*.f64 x x))
#s(approx x x)
#s(approx (- (+ (* x x) y) -1) (-.f64 y #s(literal -1 binary64)))
#s(approx (- (+ (* x x) y) -1) (-.f64 (fma.f64 x x y) #s(literal -1 binary64)))
#s(approx (+ (* x x) y) y)
#s(approx (+ (* x x) y) (fma.f64 x x y))
#s(approx (+ (+ (* x x) y) y) (+.f64 (fma.f64 x x y) y))
#s(approx (- (+ (* x x) y) -1) (-.f64 (fma.f64 x x y) #s(literal -1 binary64)))
#s(approx (+ (* x x) y) (fma.f64 x x y))
#s(approx (- (+ (* x x) y) -1) (fma.f64 x x #s(literal 1 binary64)))
#s(approx (+ (+ (* x x) y) y) (+.f64 (fma.f64 x x y) y))
#s(approx (- (+ (* x x) y) -1) (-.f64 (fma.f64 x x y) #s(literal -1 binary64)))
#s(approx (+ (* x x) y) (fma.f64 x x y))
#s(approx (+ (+ (* x x) y) y) (+.f64 (fma.f64 x x y) y))
#s(approx (- (+ (* x x) y) -1) (-.f64 (fma.f64 x x y) #s(literal -1 binary64)))
#s(approx (+ (* x x) y) (fma.f64 x x y))

eval12.0ms (0.9%)

Memory
-30.6MiB live, 14.9MiB allocated; 4ms collecting garbage
Compiler

Compiled 390 to 224 computations (42.6% saved)

prune4.0ms (0.3%)

Memory
7.9MiB live, 7.9MiB allocated; 0ms collecting garbage
Pruning

5 alts after pruning (0 fresh and 5 done)

PrunedKeptTotal
New84084
Fresh000
Picked033
Done022
Total84589
Accuracy
100.0%
Counts
89 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 x x (+.f64 y y))
9.5%
(-.f64 #s(approx (+ (* x x) y) y) #s(literal -1 binary64))
56.6%
(+.f64 #s(approx (+ (* x x) y) y) y)
44.4%
#s(approx (+ (+ (* x x) y) y) (*.f64 x x))
4.0%
#s(approx (+ (+ (* x x) y) y) #s(literal 2 binary64))
Compiler

Compiled 57 to 48 computations (15.8% saved)

regimes10.0ms (0.7%)

Memory
19.7MiB live, 19.7MiB allocated; 0ms collecting garbage
Counts
6 → 1
Calls
Call 1
Inputs
#s(approx (+ (+ (* x x) y) y) #s(literal 2 binary64))
(-.f64 #s(approx (+ (* x x) y) y) #s(literal -1 binary64))
(+.f64 #s(approx (+ (* x x) y) y) y)
#s(approx (+ (+ (* x x) y) y) (*.f64 x x))
(fma.f64 x x (+.f64 y y))
(+.f64 (+.f64 (*.f64 x x) y) y)
Outputs
(fma.f64 x x (+.f64 y y))
Calls

4 calls:

2.0ms
y
2.0ms
(+.f64 (+.f64 (*.f64 x x) y) y)
2.0ms
x
2.0ms
(*.f64 x x)
Results
AccuracySegmentsBranch
100.0%1(*.f64 x x)
100.0%1(+.f64 (+.f64 (*.f64 x x) y) y)
100.0%1x
100.0%1y
Compiler

Compiled 9 to 12 computations (-33.3% saved)

regimes23.0ms (1.6%)

Memory
-25.7MiB live, 20.5MiB allocated; 3ms collecting garbage
Counts
4 → 2
Calls
Call 1
Inputs
#s(approx (+ (+ (* x x) y) y) #s(literal 2 binary64))
(-.f64 #s(approx (+ (* x x) y) y) #s(literal -1 binary64))
(+.f64 #s(approx (+ (* x x) y) y) y)
#s(approx (+ (+ (* x x) y) y) (*.f64 x x))
Outputs
(+.f64 #s(approx (+ (* x x) y) y) y)
#s(approx (+ (+ (* x x) y) y) (*.f64 x x))
Calls

4 calls:

17.0ms
(+.f64 (+.f64 (*.f64 x x) y) y)
2.0ms
y
2.0ms
x
2.0ms
(*.f64 x x)
Results
AccuracySegmentsBranch
85.2%2(*.f64 x x)
76.1%2(+.f64 (+.f64 (*.f64 x x) y) y)
85.2%2x
67.7%3y
Compiler

Compiled 9 to 12 computations (-33.3% saved)

regimes7.0ms (0.5%)

Memory
16.1MiB live, 16.1MiB allocated; 0ms collecting garbage
Counts
3 → 1
Calls
Call 1
Inputs
#s(approx (+ (+ (* x x) y) y) #s(literal 2 binary64))
(-.f64 #s(approx (+ (* x x) y) y) #s(literal -1 binary64))
(+.f64 #s(approx (+ (* x x) y) y) y)
Outputs
(+.f64 #s(approx (+ (* x x) y) y) y)
Calls

4 calls:

2.0ms
x
2.0ms
(+.f64 (+.f64 (*.f64 x x) y) y)
2.0ms
y
1.0ms
(*.f64 x x)
Results
AccuracySegmentsBranch
56.6%1y
56.6%1(+.f64 (+.f64 (*.f64 x x) y) y)
56.6%1(*.f64 x x)
56.6%1x
Compiler

Compiled 9 to 12 computations (-33.3% saved)

regimes5.0ms (0.4%)

Memory
15.0MiB live, 15.0MiB allocated; 0ms collecting garbage
Counts
2 → 1
Calls
Call 1
Inputs
#s(approx (+ (+ (* x x) y) y) #s(literal 2 binary64))
(-.f64 #s(approx (+ (* x x) y) y) #s(literal -1 binary64))
Outputs
(-.f64 #s(approx (+ (* x x) y) y) #s(literal -1 binary64))
Calls

4 calls:

1.0ms
x
1.0ms
(+.f64 (+.f64 (*.f64 x x) y) y)
1.0ms
y
1.0ms
(*.f64 x x)
Results
AccuracySegmentsBranch
9.5%1x
9.5%1(*.f64 x x)
9.5%1(+.f64 (+.f64 (*.f64 x x) y) y)
9.5%1y
Compiler

Compiled 9 to 12 computations (-33.3% saved)

regimes25.0ms (1.7%)

Memory
-31.4MiB live, 14.2MiB allocated; 25ms collecting garbage
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (+ (+ (* x x) y) y) #s(literal 2 binary64))
Outputs
#s(approx (+ (+ (* x x) y) y) #s(literal 2 binary64))
Calls

4 calls:

21.0ms
x
1.0ms
(+.f64 (+.f64 (*.f64 x x) y) y)
1.0ms
y
1.0ms
(*.f64 x x)
Results
AccuracySegmentsBranch
4.0%1y
4.0%1(+.f64 (+.f64 (*.f64 x x) y) y)
4.0%1x
4.0%1(*.f64 x x)
Compiler

Compiled 9 to 12 computations (-33.3% saved)

bsearch9.0ms (0.6%)

Memory
30.3MiB live, 30.3MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
8.0ms
3.627618977167697e+22
9.164628221373125e+25
Samples
4.0ms128×0valid
Compiler

Compiled 114 to 130 computations (-14% saved)

Precisions
Click to see histograms. Total time spent on operations: 1.0ms
ival-add!: 1.0ms (80.8% of total)
ival-mult!: 1.0ms (80.8% of total)
adjust: 0.0ms (0% of total)

derivations56.0ms (4%)

Memory
-31.5MiB live, 60.3MiB allocated; 17ms collecting garbage
Stop Event
done
Compiler

Compiled 26 to 18 computations (30.8% saved)

preprocess37.0ms (2.6%)

Memory
38.7MiB live, 83.9MiB allocated; 8ms collecting garbage
Remove

(abs x)

Compiler

Compiled 107 to 95 computations (11.2% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage

Profiling

Loading profile data...