Data.Number.Erf:$cinvnormcdf from erf-2.0.0.0, B

Time bar (total: 3.6s)

start0.0ms (0%)

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

analyze18.0ms (0.5%)

Memory
39.9MiB live, 39.9MiB allocated; 0ms collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
50%50%50%0.1%0%0%0%3
50%50%50%0.1%0%0%0%4
62.5%62.4%37.5%0.1%0%0%0%5
68.8%68.7%31.2%0.1%0%0%0%6
78.1%78%21.9%0.1%0%0%0%7
82.8%82.7%17.2%0.1%0%0%0%8
88.3%88.2%11.7%0.1%0%0%0%9
91%90.9%9%0.1%0%0%0%10
93.9%93.9%6%0.1%0%0%0%11
95.4%95.3%4.6%0.1%0%0%0%12
Compiler

Compiled 13 to 11 computations (15.4% saved)

sample690.0ms (19.1%)

Memory
6.0MiB live, 701.4MiB allocated; 220ms collecting garbage
Samples
453.0ms8 252×0valid
2.0ms2valid
0.0ms1valid
Precisions
Click to see histograms. Total time spent on operations: 224.0ms
ival-div!: 108.0ms (48.1% of total)
ival-mult!: 74.0ms (33% of total)
ival-add!: 22.0ms (9.8% of total)
ival-sub!: 18.0ms (8% of total)
adjust: 2.0ms (0.9% of total)
Bogosity

preprocess95.0ms (2.6%)

Memory
9.9MiB live, 54.9MiB allocated; 16ms collecting garbage
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02876
116670
Stop Event
iter-limit
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
Compiler

Compiled 22 to 18 computations (18.2% saved)

series171.0ms (4.7%)

Memory
-5.4MiB live, 39.7MiB allocated; 33ms collecting garbage
Counts
9 → 47
Calls
Call 1
Inputs
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
x
(/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64))))
y
(+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))
#s(literal 1 binary64)
(/.f64 (*.f64 x y) #s(literal 2 binary64))
(*.f64 x y)
#s(literal 2 binary64)
Outputs
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 #s(literal -1 binary64) y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64))))) y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 x (pow.f64 y #s(literal 3 binary64))) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64)))))) y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64)) (*.f64 x (fma.f64 #s(literal -1/4 binary64) (pow.f64 y #s(literal 3 binary64)) (*.f64 #s(literal 1/8 binary64) (*.f64 x (pow.f64 y #s(literal 4 binary64))))))))) y))
#s(approx x x)
#s(approx (/ y (+ 1 (/ (* x y) 2))) y)
#s(approx (/ y (+ 1 (/ (* x y) 2))) (+.f64 y (*.f64 #s(literal -1/2 binary64) (*.f64 x (pow.f64 y #s(literal 2 binary64))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (+.f64 y (*.f64 x (-.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 x (pow.f64 y #s(literal 3 binary64)))) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (+.f64 y (*.f64 x (-.f64 (*.f64 x (-.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 x (pow.f64 y #s(literal 4 binary64)))) (*.f64 #s(literal -1/4 binary64) (pow.f64 y #s(literal 3 binary64))))) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64)))))))
#s(approx (+ 1 (/ (* x y) 2)) #s(literal 1 binary64))
#s(approx (+ 1 (/ (* x y) 2)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 x y))))
#s(approx (/ (* x y) 2) (*.f64 #s(literal 1/2 binary64) (*.f64 x y)))
#s(approx (* x y) (*.f64 x y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 x (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 x (-.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 x (-.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)))) (fma.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 2 binary64)))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x y)))) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (+.f64 #s(literal 2 binary64) (/.f64 #s(literal 8 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (pow.f64 y #s(literal 2 binary64))))) (/.f64 #s(literal 4 binary64) (*.f64 x y))) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (+.f64 #s(literal 2 binary64) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (pow.f64 y #s(literal 2 binary64)))))) (fma.f64 #s(literal 16 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 3 binary64)))) (/.f64 #s(literal 4 binary64) (*.f64 x y)))) x))
#s(approx (+ 1 (/ (* x y) 2)) (*.f64 x (fma.f64 #s(literal 1/2 binary64) y (/.f64 #s(literal 1 binary64) x))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))) #s(literal 1 binary64)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) y)) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x (pow.f64 y #s(literal 2 binary64)))))) (pow.f64 x #s(literal 3 binary64))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))) #s(literal 1 binary64)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x y))) #s(literal 2 binary64)) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x (pow.f64 y #s(literal 2 binary64))))) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) y))) x)) #s(literal 2 binary64)) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 16 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x (pow.f64 y #s(literal 3 binary64))))) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 2 binary64))))) x)) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) y))) x)) #s(literal 2 binary64)) x)))
#s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal -1/2 binary64) y) (/.f64 #s(literal 1 binary64) x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (+.f64 x (*.f64 #s(literal -1 binary64) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (+.f64 x (*.f64 y (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 x y)) #s(literal 1 binary64)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (+.f64 x (*.f64 y (-.f64 (*.f64 y (fma.f64 #s(literal -1/4 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y) (*.f64 #s(literal 1/2 binary64) x))) #s(literal 1 binary64)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 x y)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 y (-.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)) (*.f64 #s(literal 1/2 binary64) x))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 y (-.f64 (*.f64 y (-.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)) (*.f64 #s(literal -1/4 binary64) (pow.f64 x #s(literal 2 binary64))))) (*.f64 #s(literal 1/2 binary64) x))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 x (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (+.f64 x (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (+.f64 x (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y))) (fma.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 8 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 2 binary64)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (+.f64 x (fma.f64 #s(literal 16 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 3 binary64)))) (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)))) (fma.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 2 binary64))))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (-.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x)) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (-.f64 (fma.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 8 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 2 binary64))))) (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (-.f64 (fma.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 2 binary64)))))) (fma.f64 #s(literal 16 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 3 binary64)))) (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)))))
#s(approx (+ 1 (/ (* x y) 2)) (*.f64 y (fma.f64 #s(literal 1/2 binary64) x (/.f64 #s(literal 1 binary64) y))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (+.f64 x (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y))) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))) y))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (+.f64 x (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 16 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) y))) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64))))) y)) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))) y))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)))) y) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (*.f64 #s(literal 16 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) y)))) y) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))) y) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x))))
#s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y)))))
Calls

6 calls:

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

rewrite257.0ms (7.1%)

Memory
-25.4MiB live, 73.7MiB allocated; 71ms collecting garbage
Counts
9 → 42
Calls
Call 1
Inputs
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
x
(/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64))))
y
(+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))
#s(literal 1 binary64)
(/.f64 (*.f64 x y) #s(literal 2 binary64))
(*.f64 x y)
#s(literal 2 binary64)
Outputs
(*.f64 (neg.f64 (fma.f64 (/.f64 y (fma.f64 y x #s(literal 1 binary64))) y (*.f64 x x))) (neg.f64 (-.f64 x (/.f64 y (fma.f64 y x #s(literal 1 binary64))))))
(*.f64 (-.f64 x (/.f64 y (fma.f64 y x #s(literal 1 binary64)))) (fma.f64 (/.f64 y (fma.f64 y x #s(literal 1 binary64))) y (*.f64 x x)))
(*.f64 (fma.f64 (/.f64 y (fma.f64 y x #s(literal 1 binary64))) y (*.f64 x x)) (-.f64 x (/.f64 y (fma.f64 y x #s(literal 1 binary64)))))
(*.f64 (fma.f64 (-.f64 x (/.f64 y (fma.f64 y x #s(literal 1 binary64)))) (/.f64 y (fma.f64 y x #s(literal 1 binary64))) (*.f64 x x)) (fma.f64 (/.f64 y (fma.f64 y x #s(literal 1 binary64))) y (*.f64 x x)))
(*.f64 (fma.f64 (/.f64 y (fma.f64 y x #s(literal 1 binary64))) y (*.f64 x x)) (fma.f64 (-.f64 x (/.f64 y (fma.f64 y x #s(literal 1 binary64)))) (/.f64 y (fma.f64 y x #s(literal 1 binary64))) (*.f64 x x)))
x
(*.f64 x #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) x)
(/.f64 x #s(literal 1 binary64))
(/.f64 (neg.f64 x) #s(literal 1 binary64))
(*.f64 (/.f64 y (fma.f64 y x #s(literal 1 binary64))) (fma.f64 y x #s(literal 1 binary64)))
(*.f64 (fma.f64 y x #s(literal 1 binary64)) (/.f64 y (fma.f64 y x #s(literal 1 binary64))))
(+.f64 (*.f64 (/.f64 y (fma.f64 y x #s(literal 1 binary64))) #s(literal 1 binary64)) (*.f64 (/.f64 y (fma.f64 y x #s(literal 1 binary64))) (*.f64 (*.f64 x y) (fma.f64 y x #s(literal 1 binary64)))))
(+.f64 (*.f64 (/.f64 y (fma.f64 y x #s(literal 1 binary64))) #s(literal 1 binary64)) (*.f64 (/.f64 y (fma.f64 y x #s(literal 1 binary64))) (*.f64 x y)))
(+.f64 (*.f64 (/.f64 y (fma.f64 y x #s(literal 1 binary64))) (*.f64 (*.f64 x y) (fma.f64 y x #s(literal 1 binary64)))) (*.f64 (/.f64 y (fma.f64 y x #s(literal 1 binary64))) #s(literal 1 binary64)))
y
(neg.f64 (neg.f64 y))
(*.f64 (fma.f64 y x #s(literal 1 binary64)) (fma.f64 y x #s(literal 1 binary64)))
(*.f64 (fma.f64 y x #s(literal 1 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (fma.f64 y x #s(literal 1 binary64)))
(*.f64 (fabs.f64 (fma.f64 y x #s(literal 1 binary64))) (fabs.f64 (fma.f64 y x #s(literal 1 binary64))))
(*.f64 (pow.f64 (fma.f64 y x #s(literal 1 binary64)) (/.f64 #s(literal 3 binary64) #s(literal 1 binary64))) (pow.f64 (fma.f64 y x #s(literal 1 binary64)) (/.f64 #s(literal 3 binary64) #s(literal 1 binary64))))
#s(literal 1 binary64)
#s(literal 2 binary64)
#s(literal 0 binary64)
(*.f64 #s(literal 1 binary64) #s(literal 3 binary64))
(*.f64 #s(literal 3 binary64) #s(literal 1 binary64))
(*.f64 x y)
(*.f64 y x)
(*.f64 (*.f64 x y) #s(literal 1 binary64))
(*.f64 (*.f64 #s(literal 1 binary64) y) (neg.f64 x))
(*.f64 (*.f64 #s(literal 1 binary64) y) x)
(*.f64 x y)
(*.f64 y x)
(*.f64 (*.f64 x y) #s(literal 1 binary64))
(*.f64 (*.f64 #s(literal 1 binary64) y) (neg.f64 x))
(*.f64 (*.f64 #s(literal 1 binary64) y) x)
#s(literal 1 binary64)
#s(literal 2 binary64)
#s(literal 0 binary64)
(*.f64 #s(literal 1 binary64) #s(literal 3 binary64))
(*.f64 #s(literal 3 binary64) #s(literal 1 binary64))

eval10.0ms (0.3%)

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

Compiled 1 842 to 431 computations (76.6% saved)

prune6.0ms (0.2%)

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

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New69776
Fresh000
Picked101
Done000
Total70777
Accuracy
100.0%
Counts
77 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
92.6%
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (*.f64 y x))))
100.0%
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) #s(approx (/ (* x y) 2) (*.f64 #s(literal 1/2 binary64) (*.f64 x y))))))
64.7%
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)))
62.4%
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 x y))))))
75.7%
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y))
59.8%
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64))))) y))
27.2%
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 #s(literal -1 binary64) y))
Compiler

Compiled 226 to 176 computations (22.1% saved)

series213.0ms (5.9%)

Memory
10.5MiB live, 101.6MiB allocated; 31ms collecting garbage
Counts
23 → 87
Calls
Call 1
Inputs
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) #s(approx (/ (* x y) 2) (*.f64 #s(literal 1/2 binary64) (*.f64 x y))))))
x
(/.f64 y (+.f64 #s(literal 1 binary64) #s(approx (/ (* x y) 2) (*.f64 #s(literal 1/2 binary64) (*.f64 x y)))))
y
(+.f64 #s(literal 1 binary64) #s(approx (/ (* x y) 2) (*.f64 #s(literal 1/2 binary64) (*.f64 x y))))
#s(literal 1 binary64)
#s(approx (/ (* x y) 2) (*.f64 #s(literal 1/2 binary64) (*.f64 x y)))
(*.f64 #s(literal 1/2 binary64) (*.f64 x y))
#s(literal 1/2 binary64)
(*.f64 x y)
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) y)
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 #s(literal -1 binary64) y))
(*.f64 #s(literal -1 binary64) y)
#s(literal -1 binary64)
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x))
(/.f64 #s(literal 2 binary64) x)
#s(literal 2 binary64)
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (*.f64 y x))))
(/.f64 y (+.f64 #s(literal 1 binary64) (*.f64 y x)))
(+.f64 #s(literal 1 binary64) (*.f64 y x))
(*.f64 y x)
Outputs
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 #s(literal -1 binary64) y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64))))) y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 x (pow.f64 y #s(literal 3 binary64))) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64)))))) y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64)) (*.f64 x (fma.f64 #s(literal -1/4 binary64) (pow.f64 y #s(literal 3 binary64)) (*.f64 #s(literal 1/8 binary64) (*.f64 x (pow.f64 y #s(literal 4 binary64))))))))) y))
#s(approx x x)
#s(approx (/ y (+ 1 (/ (* x y) 2))) y)
#s(approx (/ y (+ 1 (/ (* x y) 2))) (+.f64 y (*.f64 #s(literal -1/2 binary64) (*.f64 x (pow.f64 y #s(literal 2 binary64))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (+.f64 y (*.f64 x (-.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 x (pow.f64 y #s(literal 3 binary64)))) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (+.f64 y (*.f64 x (-.f64 (*.f64 x (-.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 x (pow.f64 y #s(literal 4 binary64)))) (*.f64 #s(literal -1/4 binary64) (pow.f64 y #s(literal 3 binary64))))) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64)))))))
#s(approx (+ 1 (/ (* x y) 2)) #s(literal 1 binary64))
#s(approx (+ 1 (/ (* x y) 2)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 x y))))
#s(approx (/ (* x y) 2) (*.f64 #s(literal 1/2 binary64) (*.f64 x y)))
#s(approx (* x y) (*.f64 x y))
#s(approx (/ 2 x) (/.f64 #s(literal 2 binary64) x))
#s(approx (- x (/ y (+ 1 (* y x)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 2 binary64)))) y))
#s(approx (- x (/ y (+ 1 (* y x)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) (*.f64 x (pow.f64 y #s(literal 3 binary64))) (pow.f64 y #s(literal 2 binary64))))) y))
#s(approx (- x (/ y (+ 1 (* y x)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (fma.f64 x (fma.f64 #s(literal -1 binary64) (pow.f64 y #s(literal 3 binary64)) (*.f64 x (pow.f64 y #s(literal 4 binary64)))) (pow.f64 y #s(literal 2 binary64))))) y))
#s(approx (/ y (+ 1 (* y x))) (+.f64 y (*.f64 #s(literal -1 binary64) (*.f64 x (pow.f64 y #s(literal 2 binary64))))))
#s(approx (/ y (+ 1 (* y x))) (+.f64 y (*.f64 x (-.f64 (*.f64 x (pow.f64 y #s(literal 3 binary64))) (pow.f64 y #s(literal 2 binary64))))))
#s(approx (/ y (+ 1 (* y x))) (+.f64 y (*.f64 x (-.f64 (*.f64 x (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 x (pow.f64 y #s(literal 4 binary64)))) (*.f64 #s(literal -1 binary64) (pow.f64 y #s(literal 3 binary64))))) (pow.f64 y #s(literal 2 binary64))))))
#s(approx (+ 1 (* y x)) (+.f64 #s(literal 1 binary64) (*.f64 x y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 x (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 x (-.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 x (-.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)))) (fma.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 2 binary64)))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x y)))) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (+.f64 #s(literal 2 binary64) (/.f64 #s(literal 8 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (pow.f64 y #s(literal 2 binary64))))) (/.f64 #s(literal 4 binary64) (*.f64 x y))) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (+.f64 #s(literal 2 binary64) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (pow.f64 y #s(literal 2 binary64)))))) (fma.f64 #s(literal 16 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 3 binary64)))) (/.f64 #s(literal 4 binary64) (*.f64 x y)))) x))
#s(approx (+ 1 (/ (* x y) 2)) (*.f64 x (fma.f64 #s(literal 1/2 binary64) y (/.f64 #s(literal 1 binary64) x))))
#s(approx (- x (/ y (+ 1 (* y x)))) (*.f64 x (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))))
#s(approx (- x (/ y (+ 1 (* y x)))) (*.f64 x (-.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y))) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))))
#s(approx (- x (/ y (+ 1 (* y x)))) (*.f64 x (-.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y))) (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))))))
#s(approx (/ y (+ 1 (* y x))) (/.f64 #s(literal 1 binary64) x))
#s(approx (/ y (+ 1 (* y x))) (/.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x y))) x))
#s(approx (/ y (+ 1 (* y x))) (/.f64 (-.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (pow.f64 y #s(literal 2 binary64))))) (/.f64 #s(literal 1 binary64) (*.f64 x y))) x))
#s(approx (/ y (+ 1 (* y x))) (/.f64 (-.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (pow.f64 y #s(literal 2 binary64))))) (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 x y)) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 3 binary64)))))) x))
#s(approx (+ 1 (* y x)) (*.f64 x (+.f64 y (/.f64 #s(literal 1 binary64) x))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))) #s(literal 1 binary64)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) y)) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x (pow.f64 y #s(literal 2 binary64)))))) (pow.f64 x #s(literal 3 binary64))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))) #s(literal 1 binary64)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x y))) #s(literal 2 binary64)) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x (pow.f64 y #s(literal 2 binary64))))) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) y))) x)) #s(literal 2 binary64)) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 16 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x (pow.f64 y #s(literal 3 binary64))))) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 2 binary64))))) x)) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) y))) x)) #s(literal 2 binary64)) x)))
#s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal -1/2 binary64) y) (/.f64 #s(literal 1 binary64) x)))))
#s(approx (- x (/ y (+ 1 (* y x)))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1 binary64)))))
#s(approx (- x (/ y (+ 1 (* y x)))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)))))))
#s(approx (- x (/ y (+ 1 (* y x)))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) y) (/.f64 #s(literal 1 binary64) (*.f64 x (pow.f64 y #s(literal 2 binary64))))) (pow.f64 x #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))) #s(literal 1 binary64)))))
#s(approx (/ y (+ 1 (* y x))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 x y)) #s(literal 1 binary64)) x)))
#s(approx (/ y (+ 1 (* y x))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (pow.f64 y #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) y)) x)) #s(literal 1 binary64)) x)))
#s(approx (/ y (+ 1 (* y x))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 x (pow.f64 y #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 2 binary64)))) x)) (/.f64 #s(literal 1 binary64) y)) x)) #s(literal 1 binary64)) x)))
#s(approx (+ 1 (* y x)) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal -1 binary64) y) (/.f64 #s(literal 1 binary64) x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (+.f64 x (*.f64 #s(literal -1 binary64) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (+.f64 x (*.f64 y (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 x y)) #s(literal 1 binary64)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (+.f64 x (*.f64 y (-.f64 (*.f64 y (fma.f64 #s(literal -1/4 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y) (*.f64 #s(literal 1/2 binary64) x))) #s(literal 1 binary64)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 x y)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 y (-.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)) (*.f64 #s(literal 1/2 binary64) x))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 y (-.f64 (*.f64 y (-.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)) (*.f64 #s(literal -1/4 binary64) (pow.f64 x #s(literal 2 binary64))))) (*.f64 #s(literal 1/2 binary64) x))))))
#s(approx (- x (/ y (+ 1 (* y x)))) (+.f64 x (*.f64 y (-.f64 (*.f64 x y) #s(literal 1 binary64)))))
#s(approx (- x (/ y (+ 1 (* y x)))) (+.f64 x (*.f64 y (-.f64 (*.f64 y (+.f64 x (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)))) #s(literal 1 binary64)))))
#s(approx (/ y (+ 1 (* y x))) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (*.f64 x y)))))
#s(approx (/ y (+ 1 (* y x))) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 y (-.f64 (*.f64 (pow.f64 x #s(literal 2 binary64)) y) x)))))
#s(approx (/ y (+ 1 (* y x))) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 y (-.f64 (*.f64 y (-.f64 (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)) (*.f64 #s(literal -1 binary64) (pow.f64 x #s(literal 2 binary64))))) x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 x (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (+.f64 x (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (+.f64 x (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y))) (fma.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 8 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 2 binary64)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (+.f64 x (fma.f64 #s(literal 16 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 3 binary64)))) (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)))) (fma.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 2 binary64))))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (-.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x)) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (-.f64 (fma.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 8 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 2 binary64))))) (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (-.f64 (fma.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 2 binary64)))))) (fma.f64 #s(literal 16 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 3 binary64)))) (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)))))
#s(approx (+ 1 (/ (* x y) 2)) (*.f64 y (fma.f64 #s(literal 1/2 binary64) x (/.f64 #s(literal 1 binary64) y))))
#s(approx (- x (/ y (+ 1 (* y x)))) (-.f64 x (/.f64 #s(literal 1 binary64) x)))
#s(approx (- x (/ y (+ 1 (* y x)))) (-.f64 (+.f64 x (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y))) (/.f64 #s(literal 1 binary64) x)))
#s(approx (- x (/ y (+ 1 (* y x)))) (-.f64 (+.f64 x (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y))) (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 2 binary64)))))))
#s(approx (- x (/ y (+ 1 (* y x)))) (-.f64 (+.f64 x (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 3 binary64)))))) (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 2 binary64)))))))
#s(approx (/ y (+ 1 (* y x))) (-.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y))))
#s(approx (/ y (+ 1 (* y x))) (-.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 2 binary64))))) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y))))
#s(approx (/ y (+ 1 (* y x))) (-.f64 (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 2 binary64))))) (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 3 binary64)))))))
#s(approx (+ 1 (* y x)) (*.f64 y (+.f64 x (/.f64 #s(literal 1 binary64) y))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (+.f64 x (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y))) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))) y))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (+.f64 x (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 16 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) y))) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64))))) y)) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))) y))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)))) y) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (*.f64 #s(literal 16 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) y)))) y) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))) y) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x))))
#s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y)))))
#s(approx (- x (/ y (+ 1 (* y x)))) (-.f64 (+.f64 x (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))) y))) (/.f64 #s(literal 1 binary64) x)))
#s(approx (- x (/ y (+ 1 (* y x)))) (-.f64 (+.f64 x (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) y)) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) y)) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))) y))) (/.f64 #s(literal 1 binary64) x)))
#s(approx (/ y (+ 1 (* y x))) (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y))) y) (/.f64 #s(literal 1 binary64) x)))
#s(approx (/ y (+ 1 (* y x))) (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) y))) y) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))) y) (/.f64 #s(literal 1 binary64) x)))
#s(approx (+ 1 (* y x)) (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 (*.f64 #s(literal -1 binary64) x) (/.f64 #s(literal 1 binary64) y)))))
Calls

6 calls:

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

rewrite287.0ms (7.9%)

Memory
-5.1MiB live, 103.5MiB allocated; 77ms collecting garbage
Counts
23 → 71
Calls
Call 1
Inputs
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) #s(approx (/ (* x y) 2) (*.f64 #s(literal 1/2 binary64) (*.f64 x y))))))
x
(/.f64 y (+.f64 #s(literal 1 binary64) #s(approx (/ (* x y) 2) (*.f64 #s(literal 1/2 binary64) (*.f64 x y)))))
y
(+.f64 #s(literal 1 binary64) #s(approx (/ (* x y) 2) (*.f64 #s(literal 1/2 binary64) (*.f64 x y))))
#s(literal 1 binary64)
#s(approx (/ (* x y) 2) (*.f64 #s(literal 1/2 binary64) (*.f64 x y)))
(*.f64 #s(literal 1/2 binary64) (*.f64 x y))
#s(literal 1/2 binary64)
(*.f64 x y)
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) y)
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 #s(literal -1 binary64) y))
(*.f64 #s(literal -1 binary64) y)
#s(literal -1 binary64)
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x))
(/.f64 #s(literal 2 binary64) x)
#s(literal 2 binary64)
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (*.f64 y x))))
(/.f64 y (+.f64 #s(literal 1 binary64) (*.f64 y x)))
(+.f64 #s(literal 1 binary64) (*.f64 y x))
(*.f64 y x)
Outputs
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) #s(approx (* y x) (*.f64 #s(literal 1/2 binary64) (*.f64 x y))))))
x
(*.f64 x #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) x)
(/.f64 x #s(literal 1 binary64))
(/.f64 (neg.f64 x) #s(literal 1 binary64))
(/.f64 y (+.f64 #s(literal 1 binary64) #s(approx (* y x) (*.f64 #s(literal 1/2 binary64) (*.f64 x y)))))
y
(*.f64 #s(literal -1 binary64) y)
(*.f64 y #s(literal -1 binary64))
(*.f64 y #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) y)
(+.f64 #s(literal 1 binary64) #s(approx (* y x) (*.f64 #s(literal 1/2 binary64) (*.f64 x y))))
#s(literal 1 binary64)
#s(literal 2 binary64)
#s(literal 0 binary64)
(*.f64 #s(literal 1 binary64) #s(literal 3 binary64))
(*.f64 #s(literal 3 binary64) #s(literal 1 binary64))
#s(approx (* y x) (*.f64 #s(literal 1/2 binary64) (*.f64 x y)))
(*.f64 #s(literal 1/2 binary64) (*.f64 x y))
(*.f64 (*.f64 x #s(literal 1/2 binary64)) y)
(*.f64 (*.f64 y #s(literal 1/2 binary64)) x)
(*.f64 (*.f64 #s(literal 1/2 binary64) #s(literal 1 binary64)) (*.f64 x y))
(*.f64 (*.f64 x y) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(*.f64 x y)
(*.f64 y x)
(*.f64 (*.f64 #s(literal 1 binary64) #s(literal -1 binary64)) (*.f64 x y))
(*.f64 (neg.f64 x) y)
(*.f64 (*.f64 #s(literal -1 binary64) #s(literal 1 binary64)) (*.f64 x y))
(-.f64 x #s(approx (/ y (+ 2 (* y x))) y))
#s(approx (/ y (+ 2 (* y x))) y)
#s(approx (+ x (/ y (+ 2 (* y x)))) y)
y
(*.f64 #s(literal -1 binary64) y)
(*.f64 y #s(literal -1 binary64))
(*.f64 y #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) y)
#s(literal -1 binary64)
(-.f64 x #s(approx (/ y (+ 2 (* y x))) (/.f64 #s(literal 1 binary64) x)))
#s(approx (/ y (+ 2 (* y x))) (/.f64 #s(literal 1 binary64) x))
(*.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) x))
(+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) x))
(/.f64 #s(literal 1 binary64) x)
(/.f64 (+.f64 x x) (*.f64 x x))
(/.f64 #s(literal 1 binary64) (neg.f64 x))
#s(literal 1 binary64)
#s(literal 2 binary64)
#s(literal 0 binary64)
(*.f64 #s(literal 1 binary64) #s(literal 3 binary64))
(*.f64 #s(literal 3 binary64) #s(literal 1 binary64))
(*.f64 (fma.f64 (/.f64 y (fma.f64 y x #s(literal 1 binary64))) y (*.f64 x x)) (-.f64 x (/.f64 y (fma.f64 y x #s(literal 1 binary64)))))
(*.f64 (-.f64 x (/.f64 y (fma.f64 y x #s(literal 1 binary64)))) (fma.f64 (/.f64 y (fma.f64 y x #s(literal 1 binary64))) y (*.f64 x x)))
(*.f64 (neg.f64 (fma.f64 (/.f64 y (fma.f64 y x #s(literal 1 binary64))) y (*.f64 x x))) (neg.f64 (-.f64 x (/.f64 y (fma.f64 y x #s(literal 1 binary64))))))
(*.f64 (fma.f64 (-.f64 x (/.f64 y (fma.f64 y x #s(literal 1 binary64)))) (/.f64 y (fma.f64 y x #s(literal 1 binary64))) (*.f64 x x)) (fma.f64 (/.f64 y (fma.f64 y x #s(literal 1 binary64))) y (*.f64 x x)))
(*.f64 (neg.f64 (fma.f64 (/.f64 y (fma.f64 y x #s(literal 1 binary64))) y (*.f64 x x))) (fma.f64 (-.f64 x (/.f64 y (fma.f64 y x #s(literal 1 binary64)))) (/.f64 y (fma.f64 y x #s(literal 1 binary64))) (neg.f64 (*.f64 x x))))
(*.f64 (/.f64 #s(literal -1 binary64) (fma.f64 y x #s(literal 1 binary64))) y)
(*.f64 (/.f64 y (fma.f64 y x #s(literal 1 binary64))) #s(literal -1 binary64))
(*.f64 (/.f64 y (fma.f64 y x #s(literal 1 binary64))) (fma.f64 y x #s(literal 1 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 y (fma.f64 y x #s(literal 1 binary64))))
(*.f64 y (/.f64 #s(literal -1 binary64) (fma.f64 y x #s(literal 1 binary64))))
(*.f64 (fma.f64 y x #s(literal 1 binary64)) (fma.f64 y x #s(literal 1 binary64)))
(*.f64 (fma.f64 y x #s(literal 1 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (fma.f64 y x #s(literal 1 binary64)))
(*.f64 (fabs.f64 (fma.f64 y x #s(literal 1 binary64))) (fabs.f64 (fma.f64 y x #s(literal 1 binary64))))
(*.f64 (pow.f64 (fma.f64 y x #s(literal 1 binary64)) (/.f64 #s(literal 3 binary64) #s(literal 1 binary64))) (pow.f64 (fma.f64 y x #s(literal 1 binary64)) (/.f64 #s(literal 3 binary64) #s(literal 1 binary64))))
(*.f64 x y)
(*.f64 y x)
(*.f64 (*.f64 #s(literal 1 binary64) #s(literal -1 binary64)) (*.f64 x y))
(*.f64 (neg.f64 x) y)
(*.f64 (*.f64 #s(literal -1 binary64) #s(literal 1 binary64)) (*.f64 x y))

eval20.0ms (0.6%)

Memory
-16.6MiB live, 30.1MiB allocated; 4ms collecting garbage
Compiler

Compiled 3 681 to 793 computations (78.5% saved)

prune6.0ms (0.2%)

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

8 alts after pruning (4 fresh and 4 done)

PrunedKeptTotal
New1602162
Fresh022
Picked145
Done000
Total1618169
Accuracy
100.0%
Counts
169 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) #s(approx (/ (* x y) 2) (*.f64 #s(literal 1/2 binary64) (*.f64 x y))))))
64.7%
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)))
62.4%
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 x y))))))
75.7%
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y))
59.8%
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64))))) y))
27.2%
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 #s(literal -1 binary64) y))
62.3%
#s(approx (- x (/ y (+ 1 (* y x)))) (+.f64 x (*.f64 y (-.f64 (*.f64 x y) #s(literal 1 binary64)))))
3.1%
#s(approx (+ x (/ y (+ 2 (* y x)))) y)
Compiler

Compiled 134 to 102 computations (23.9% saved)

series278.0ms (7.7%)

Memory
14.4MiB live, 104.7MiB allocated; 35ms collecting garbage
Counts
23 → 118
Calls
Call 1
Inputs
#s(approx (+ x (/ y (+ 2 (* y x)))) y)
y
#s(approx (- x (/ y (+ 1 (* y x)))) (+.f64 x (*.f64 y (-.f64 (*.f64 x y) #s(literal 1 binary64)))))
(+.f64 x (*.f64 y (-.f64 (*.f64 x y) #s(literal 1 binary64))))
x
(*.f64 y (-.f64 (*.f64 x y) #s(literal 1 binary64)))
(-.f64 (*.f64 x y) #s(literal 1 binary64))
(*.f64 x y)
#s(literal 1 binary64)
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64))))) y))
(-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64))))) y)
(*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64)))))
(+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64))))
(*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64)))
#s(literal 1/2 binary64)
(pow.f64 y #s(literal 2 binary64))
#s(literal 2 binary64)
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 x y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 x y)))))
(*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 x y))))
(+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 x y)))
(*.f64 #s(literal -1/2 binary64) (*.f64 x y))
#s(literal -1/2 binary64)
Outputs
#s(approx (+ x (/ y (+ 2 (* y x)))) (*.f64 #s(literal 1/2 binary64) y))
#s(approx (+ x (/ y (+ 2 (* y x)))) (fma.f64 #s(literal 1/2 binary64) y (*.f64 x (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/4 binary64) (pow.f64 y #s(literal 2 binary64)))))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (fma.f64 #s(literal 1/2 binary64) y (*.f64 x (-.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/8 binary64) (*.f64 x (pow.f64 y #s(literal 3 binary64))))) (*.f64 #s(literal 1/4 binary64) (pow.f64 y #s(literal 2 binary64)))))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (fma.f64 #s(literal 1/2 binary64) y (*.f64 x (-.f64 (+.f64 #s(literal 1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 x (pow.f64 y #s(literal 4 binary64)))) (*.f64 #s(literal -1/8 binary64) (pow.f64 y #s(literal 3 binary64)))))) (*.f64 #s(literal 1/4 binary64) (pow.f64 y #s(literal 2 binary64)))))))
#s(approx (- x (/ y (+ 1 (* y x)))) (*.f64 #s(literal -1 binary64) y))
#s(approx (- x (/ y (+ 1 (* y x)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 2 binary64)))) y))
#s(approx (- x (/ y (+ 1 (* y x)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) (*.f64 x (pow.f64 y #s(literal 3 binary64))) (pow.f64 y #s(literal 2 binary64))))) y))
#s(approx (- x (/ y (+ 1 (* y x)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (fma.f64 x (fma.f64 #s(literal -1 binary64) (pow.f64 y #s(literal 3 binary64)) (*.f64 x (pow.f64 y #s(literal 4 binary64)))) (pow.f64 y #s(literal 2 binary64))))) y))
#s(approx (+ x (* y (- (* x y) 1))) (fma.f64 #s(literal -1 binary64) y (*.f64 x (+.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 2 binary64))))))
#s(approx x x)
#s(approx (* y (- (* x y) 1)) (fma.f64 #s(literal -1 binary64) y (*.f64 x (pow.f64 y #s(literal 2 binary64)))))
#s(approx (- (* x y) 1) #s(literal -1 binary64))
#s(approx (- (* x y) 1) (-.f64 (*.f64 x y) #s(literal 1 binary64)))
#s(approx (* x y) (*.f64 x y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64))))) y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 x (pow.f64 y #s(literal 3 binary64))) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64)))))) y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64)) (*.f64 x (fma.f64 #s(literal -1/4 binary64) (pow.f64 y #s(literal 3 binary64)) (*.f64 #s(literal 1/8 binary64) (*.f64 x (pow.f64 y #s(literal 4 binary64))))))))) y))
#s(approx (* x (+ 1 (* 1/2 (pow y 2)))) (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) y)
#s(approx (/ y (+ 1 (/ (* x y) 2))) (+.f64 y (*.f64 #s(literal -1/2 binary64) (*.f64 x (pow.f64 y #s(literal 2 binary64))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (+.f64 y (*.f64 x (-.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 x (pow.f64 y #s(literal 3 binary64)))) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (+.f64 y (*.f64 x (-.f64 (*.f64 x (-.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 x (pow.f64 y #s(literal 4 binary64)))) (*.f64 #s(literal -1/4 binary64) (pow.f64 y #s(literal 3 binary64))))) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64)))))))
#s(approx (+ 1 (* -1/2 (* x y))) #s(literal 1 binary64))
#s(approx (+ 1 (* -1/2 (* x y))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 x y))))
#s(approx (* -1/2 (* x y)) (*.f64 #s(literal -1/2 binary64) (*.f64 x y)))
#s(approx (+ x (/ y (+ 2 (* y x)))) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (*.f64 x (-.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))) (/.f64 #s(literal 2 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (*.f64 x (-.f64 (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y))))))
#s(approx (- x (/ y (+ 1 (* y x)))) (*.f64 x (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))))
#s(approx (- x (/ y (+ 1 (* y x)))) (*.f64 x (-.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y))) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))))
#s(approx (- x (/ y (+ 1 (* y x)))) (*.f64 x (-.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y))) (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))))))
#s(approx (+ x (* y (- (* x y) 1))) (*.f64 x (+.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 2 binary64)))))
#s(approx (+ x (* y (- (* x y) 1))) (*.f64 x (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) (/.f64 y x) (pow.f64 y #s(literal 2 binary64))))))
#s(approx (* y (- (* x y) 1)) (*.f64 x (pow.f64 y #s(literal 2 binary64))))
#s(approx (* y (- (* x y) 1)) (*.f64 x (fma.f64 #s(literal -1 binary64) (/.f64 y x) (pow.f64 y #s(literal 2 binary64)))))
#s(approx (- (* x y) 1) (*.f64 x (-.f64 y (/.f64 #s(literal 1 binary64) x))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 x (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 x (-.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 x (-.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)))) (fma.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 2 binary64)))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))))))
#s(approx (- (* x (+ 1 (* 1/2 (pow y 2)))) y) (*.f64 x (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) (/.f64 y x) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x y)))) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (+.f64 #s(literal 2 binary64) (/.f64 #s(literal 8 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (pow.f64 y #s(literal 2 binary64))))) (/.f64 #s(literal 4 binary64) (*.f64 x y))) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (+.f64 #s(literal 2 binary64) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (pow.f64 y #s(literal 2 binary64)))))) (fma.f64 #s(literal 16 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 3 binary64)))) (/.f64 #s(literal 4 binary64) (*.f64 x y)))) x))
#s(approx (* y (+ 1 (* -1/2 (* x y)))) (*.f64 #s(literal -1/2 binary64) (*.f64 x (pow.f64 y #s(literal 2 binary64)))))
#s(approx (* y (+ 1 (* -1/2 (* x y)))) (*.f64 x (fma.f64 #s(literal -1/2 binary64) (pow.f64 y #s(literal 2 binary64)) (/.f64 y x))))
#s(approx (+ 1 (* -1/2 (* x y))) (*.f64 x (fma.f64 #s(literal -1/2 binary64) y (/.f64 #s(literal 1 binary64) x))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (/.f64 #s(literal 2 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x (pow.f64 y #s(literal 2 binary64))))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) y))) (pow.f64 x #s(literal 3 binary64)))) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))))))
#s(approx (- x (/ y (+ 1 (* y x)))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1 binary64)))))
#s(approx (- x (/ y (+ 1 (* y x)))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)))))))
#s(approx (- x (/ y (+ 1 (* y x)))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) y) (/.f64 #s(literal 1 binary64) (*.f64 x (pow.f64 y #s(literal 2 binary64))))) (pow.f64 x #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))) #s(literal 1 binary64)))))
#s(approx (+ x (* y (- (* x y) 1))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal -1 binary64) (pow.f64 y #s(literal 2 binary64))) #s(literal 1 binary64)))))
#s(approx (+ x (* y (- (* x y) 1))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (fma.f64 #s(literal -1 binary64) (pow.f64 y #s(literal 2 binary64)) (/.f64 y x)) #s(literal 1 binary64)))))
#s(approx (* y (- (* x y) 1)) (*.f64 #s(literal -1 binary64) (*.f64 x (fma.f64 #s(literal -1 binary64) (pow.f64 y #s(literal 2 binary64)) (/.f64 y x)))))
#s(approx (- (* x y) 1) (*.f64 #s(literal -1 binary64) (*.f64 x (fma.f64 #s(literal -1 binary64) y (/.f64 #s(literal 1 binary64) x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))) #s(literal 1 binary64)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) y)) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x (pow.f64 y #s(literal 2 binary64)))))) (pow.f64 x #s(literal 3 binary64))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))) #s(literal 1 binary64)))))
#s(approx (- (* x (+ 1 (* 1/2 (pow y 2)))) y) (*.f64 #s(literal -1 binary64) (*.f64 x (fma.f64 #s(literal -1 binary64) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64)))) (/.f64 y x)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x y))) #s(literal 2 binary64)) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x (pow.f64 y #s(literal 2 binary64))))) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) y))) x)) #s(literal 2 binary64)) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 16 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x (pow.f64 y #s(literal 3 binary64))))) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 2 binary64))))) x)) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) y))) x)) #s(literal 2 binary64)) x)))
#s(approx (* y (+ 1 (* -1/2 (* x y)))) (*.f64 #s(literal -1 binary64) (*.f64 x (fma.f64 #s(literal -1 binary64) (/.f64 y x) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64)))))))
#s(approx (+ 1 (* -1/2 (* x y))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal 1/2 binary64) y) (/.f64 #s(literal 1 binary64) x)))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (+.f64 x (*.f64 #s(literal 1/2 binary64) y)))
#s(approx (+ x (/ y (+ 2 (* y x)))) (+.f64 x (*.f64 y (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/4 binary64) (*.f64 x y))))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (+.f64 x (*.f64 y (+.f64 #s(literal 1/2 binary64) (*.f64 y (-.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)) (*.f64 #s(literal 1/4 binary64) x)))))))
#s(approx (- x (/ y (+ 1 (* y x)))) (+.f64 x (*.f64 #s(literal -1 binary64) y)))
#s(approx (- x (/ y (+ 1 (* y x)))) (+.f64 x (*.f64 y (-.f64 (*.f64 x y) #s(literal 1 binary64)))))
#s(approx (- x (/ y (+ 1 (* y x)))) (+.f64 x (*.f64 y (-.f64 (*.f64 y (+.f64 x (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)))) #s(literal 1 binary64)))))
#s(approx (* y (- (* x y) 1)) (*.f64 y (-.f64 (*.f64 x y) #s(literal 1 binary64))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (+.f64 x (*.f64 y (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 x y)) #s(literal 1 binary64)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (+.f64 x (*.f64 y (-.f64 (*.f64 y (fma.f64 #s(literal -1/4 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y) (*.f64 #s(literal 1/2 binary64) x))) #s(literal 1 binary64)))))
#s(approx (* x (+ 1 (* 1/2 (pow y 2)))) (+.f64 x (*.f64 #s(literal 1/2 binary64) (*.f64 x (pow.f64 y #s(literal 2 binary64))))))
#s(approx (+ 1 (* 1/2 (pow y 2))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64)))))
#s(approx (* 1/2 (pow y 2)) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64))))
#s(approx (pow y 2) (pow.f64 y #s(literal 2 binary64)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 x y)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 y (-.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)) (*.f64 #s(literal 1/2 binary64) x))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 y (-.f64 (*.f64 y (-.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)) (*.f64 #s(literal -1/4 binary64) (pow.f64 x #s(literal 2 binary64))))) (*.f64 #s(literal 1/2 binary64) x))))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (+.f64 x (/.f64 #s(literal 1 binary64) x)))
#s(approx (+ x (/ y (+ 2 (* y x)))) (-.f64 (+.f64 x (/.f64 #s(literal 1 binary64) x)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (-.f64 (+.f64 x (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 2 binary64)))))) (/.f64 #s(literal 2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (-.f64 (+.f64 x (+.f64 (/.f64 #s(literal 1 binary64) x) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 2 binary64))))))) (fma.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 3 binary64)))) (/.f64 #s(literal 2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)))))
#s(approx (- x (/ y (+ 1 (* y x)))) (-.f64 x (/.f64 #s(literal 1 binary64) x)))
#s(approx (- x (/ y (+ 1 (* y x)))) (-.f64 (+.f64 x (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y))) (/.f64 #s(literal 1 binary64) x)))
#s(approx (- x (/ y (+ 1 (* y x)))) (-.f64 (+.f64 x (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y))) (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 2 binary64)))))))
#s(approx (- x (/ y (+ 1 (* y x)))) (-.f64 (+.f64 x (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 3 binary64)))))) (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 2 binary64)))))))
#s(approx (+ x (* y (- (* x y) 1))) (*.f64 (pow.f64 y #s(literal 2 binary64)) (-.f64 x (/.f64 #s(literal 1 binary64) y))))
#s(approx (+ x (* y (- (* x y) 1))) (*.f64 (pow.f64 y #s(literal 2 binary64)) (-.f64 (+.f64 x (/.f64 x (pow.f64 y #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) y))))
#s(approx (- (* x y) 1) (*.f64 y (-.f64 x (/.f64 #s(literal 1 binary64) y))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 x (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (+.f64 x (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (+.f64 x (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y))) (fma.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 8 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 2 binary64)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (+.f64 x (fma.f64 #s(literal 16 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 3 binary64)))) (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)))) (fma.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 2 binary64))))))))
#s(approx (- (* x (+ 1 (* 1/2 (pow y 2)))) y) (*.f64 #s(literal 1/2 binary64) (*.f64 x (pow.f64 y #s(literal 2 binary64)))))
#s(approx (- (* x (+ 1 (* 1/2 (pow y 2)))) y) (*.f64 (pow.f64 y #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/2 binary64) x) (/.f64 #s(literal 1 binary64) y))))
#s(approx (- (* x (+ 1 (* 1/2 (pow y 2)))) y) (*.f64 (pow.f64 y #s(literal 2 binary64)) (-.f64 (fma.f64 #s(literal 1/2 binary64) x (/.f64 x (pow.f64 y #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) y))))
#s(approx (* x (+ 1 (* 1/2 (pow y 2)))) (*.f64 (pow.f64 y #s(literal 2 binary64)) (fma.f64 #s(literal 1/2 binary64) x (/.f64 x (pow.f64 y #s(literal 2 binary64))))))
#s(approx (+ 1 (* 1/2 (pow y 2))) (*.f64 (pow.f64 y #s(literal 2 binary64)) (+.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 2 binary64))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (-.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x)) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (-.f64 (fma.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 8 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 2 binary64))))) (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (-.f64 (fma.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 2 binary64)))))) (fma.f64 #s(literal 16 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 3 binary64)))) (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)))))
#s(approx (* y (+ 1 (* -1/2 (* x y)))) (*.f64 (pow.f64 y #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 1 binary64) y))))
#s(approx (+ 1 (* -1/2 (* x y))) (*.f64 y (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 1 binary64) y))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (+.f64 x (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)))) y) (/.f64 #s(literal 1 binary64) x))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (+.f64 x (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) y)))) y) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))) y) (/.f64 #s(literal 1 binary64) x))))
#s(approx (- x (/ y (+ 1 (* y x)))) (-.f64 (+.f64 x (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))) y))) (/.f64 #s(literal 1 binary64) x)))
#s(approx (- x (/ y (+ 1 (* y x)))) (-.f64 (+.f64 x (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) y)) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) y)) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))) y))) (/.f64 #s(literal 1 binary64) x)))
#s(approx (+ x (* y (- (* x y) 1))) (*.f64 (pow.f64 y #s(literal 2 binary64)) (+.f64 x (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 x y))) y)))))
#s(approx (- (* x y) 1) (*.f64 #s(literal -1 binary64) (*.f64 y (fma.f64 #s(literal -1 binary64) x (/.f64 #s(literal 1 binary64) y)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (+.f64 x (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y))) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))) y))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (+.f64 x (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 16 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) y))) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64))))) y)) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))) y))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x))))
#s(approx (- (* x (+ 1 (* 1/2 (pow y 2)))) y) (*.f64 (pow.f64 y #s(literal 2 binary64)) (fma.f64 #s(literal -1 binary64) (/.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 x y))) y) (*.f64 #s(literal 1/2 binary64) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)))) y) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (*.f64 #s(literal 16 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) y)))) y) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))) y) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x))))
#s(approx (+ 1 (* -1/2 (* x y))) (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 (*.f64 #s(literal 1/2 binary64) x) (/.f64 #s(literal 1 binary64) y)))))
Calls

6 calls:

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

rewrite249.0ms (6.9%)

Memory
-13.5MiB live, 83.0MiB allocated; 37ms collecting garbage
Counts
23 → 95
Calls
Call 1
Inputs
#s(approx (+ x (/ y (+ 2 (* y x)))) y)
y
#s(approx (- x (/ y (+ 1 (* y x)))) (+.f64 x (*.f64 y (-.f64 (*.f64 x y) #s(literal 1 binary64)))))
(+.f64 x (*.f64 y (-.f64 (*.f64 x y) #s(literal 1 binary64))))
x
(*.f64 y (-.f64 (*.f64 x y) #s(literal 1 binary64)))
(-.f64 (*.f64 x y) #s(literal 1 binary64))
(*.f64 x y)
#s(literal 1 binary64)
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64))))) y))
(-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64))))) y)
(*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64)))))
(+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64))))
(*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64)))
#s(literal 1/2 binary64)
(pow.f64 y #s(literal 2 binary64))
#s(literal 2 binary64)
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 x y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 x y)))))
(*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 x y))))
(+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 x y)))
(*.f64 #s(literal -1/2 binary64) (*.f64 x y))
#s(literal -1/2 binary64)
Outputs
#s(approx (+ x (* y x)) y)
y
(*.f64 y #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) y)
(*.f64 y y)
(fabs.f64 y)
#s(approx (+ x (* y x)) (fma.f64 y x x))
(*.f64 (fma.f64 y x x) (fma.f64 y x x))
(*.f64 x (fma.f64 y x x))
(*.f64 (fma.f64 y x (fabs.f64 x)) (-.f64 (*.f64 x y) (fabs.f64 x)))
(*.f64 (+.f64 (fabs.f64 x) (*.f64 x y)) (-.f64 (fabs.f64 x) (*.f64 x y)))
(+.f64 x (*.f64 x y))
x
(*.f64 x #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) x)
(+.f64 x x)
(/.f64 x #s(literal 1 binary64))
(*.f64 x y)
(*.f64 y x)
(*.f64 y (*.f64 x y))
(*.f64 (*.f64 x x) (*.f64 x y))
(*.f64 (*.f64 x x) y)
(*.f64 x y)
(*.f64 y x)
(*.f64 y (*.f64 x y))
(*.f64 (*.f64 x x) (*.f64 x y))
(*.f64 (*.f64 x x) y)
(*.f64 x y)
(*.f64 y x)
(*.f64 y (*.f64 x y))
(*.f64 (*.f64 x x) (*.f64 x y))
(*.f64 (*.f64 x x) y)
#s(literal 1 binary64)
#s(literal 2 binary64)
#s(literal 0 binary64)
(*.f64 #s(literal 1 binary64) #s(literal 3 binary64))
(*.f64 #s(literal 3 binary64) #s(literal 1 binary64))
#s(approx (+ x (* y x)) (fma.f64 (fma.f64 y #s(literal 1/2 binary64) #s(literal 1 binary64)) x y))
(*.f64 (fma.f64 (fma.f64 y #s(literal 1/2 binary64) #s(literal 1 binary64)) x y) (fma.f64 (fma.f64 y #s(literal 1/2 binary64) #s(literal 1 binary64)) x y))
(*.f64 (fma.f64 (fma.f64 (*.f64 x #s(literal 1/2 binary64)) y x) y (fma.f64 (fma.f64 y #s(literal 1/2 binary64) #s(literal 1 binary64)) x y)) (fma.f64 (fma.f64 y #s(literal 1/2 binary64) #s(literal 1 binary64)) x y))
(*.f64 (fma.f64 (fma.f64 y #s(literal 1/2 binary64) #s(literal 1 binary64)) x y) (fma.f64 (fma.f64 (*.f64 x #s(literal 1/2 binary64)) y x) y (fma.f64 (fma.f64 y #s(literal 1/2 binary64) #s(literal 1 binary64)) x y)))
(*.f64 (fma.f64 (fma.f64 y #s(literal 1/2 binary64) #s(literal 1 binary64)) x y) (fma.f64 (fma.f64 (*.f64 x y) (fma.f64 y #s(literal 1/2 binary64) #s(literal 1 binary64)) y) (fma.f64 (fma.f64 (*.f64 x #s(literal 1/2 binary64)) y x) y (fma.f64 (fma.f64 y #s(literal 1/2 binary64) #s(literal 1 binary64)) x y)) (fma.f64 (*.f64 x #s(literal 1/2 binary64)) y x)))
(+.f64 (*.f64 (*.f64 x #s(literal 1/2 binary64)) y) (+.f64 x y))
(*.f64 x (fma.f64 y #s(literal 1/2 binary64) #s(literal 1 binary64)))
(*.f64 (*.f64 x x) (fma.f64 y #s(literal 1/2 binary64) #s(literal 1 binary64)))
(*.f64 (fma.f64 y #s(literal 1/2 binary64) #s(literal 1 binary64)) x)
(*.f64 (fma.f64 y #s(literal 1/2 binary64) #s(literal 1 binary64)) (*.f64 x x))
(*.f64 (fma.f64 (*.f64 x #s(literal 1/2 binary64)) y x) (fma.f64 y #s(literal 1/2 binary64) #s(literal 1 binary64)))
(*.f64 (fma.f64 y #s(literal 1/2 binary64) #s(literal 1 binary64)) (fma.f64 y #s(literal 1/2 binary64) #s(literal 1 binary64)))
(*.f64 (fma.f64 y #s(literal 1/2 binary64) #s(literal 1 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (fma.f64 y #s(literal 1/2 binary64) #s(literal 1 binary64)))
(*.f64 (fabs.f64 (fma.f64 y #s(literal 1/2 binary64) #s(literal 1 binary64))) (fabs.f64 (fma.f64 y #s(literal 1/2 binary64) #s(literal 1 binary64))))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (fma.f64 y #s(literal 1/2 binary64) y) #s(literal 1 binary64)) (fma.f64 y #s(literal 1/2 binary64) #s(literal 1 binary64)))
(*.f64 #s(literal 1/2 binary64) y)
(*.f64 y #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) y) #s(literal 1 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) y) y)
(*.f64 (neg.f64 #s(literal 1/2 binary64)) y)
#s(literal 1/2 binary64)
(*.f64 #s(literal 1 binary64) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) #s(literal 1 binary64))
(/.f64 #s(literal 1/2 binary64) #s(literal 1 binary64))
(neg.f64 (neg.f64 #s(literal 1/2 binary64)))
y
(*.f64 y #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) y)
(*.f64 y y)
(fabs.f64 y)
#s(literal 1 binary64)
#s(literal 2 binary64)
#s(literal 0 binary64)
(*.f64 #s(literal 1 binary64) #s(literal 3 binary64))
(*.f64 #s(literal 3 binary64) #s(literal 1 binary64))
(-.f64 x #s(approx (* y x) (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y y)))
#s(approx (* y x) (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y y))
(*.f64 y (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)))
(*.f64 (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)) y)
(*.f64 (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)) (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y y))
(*.f64 (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y y) (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y y))
(*.f64 (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y y) #s(literal 1 binary64))
(*.f64 (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)) (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)))
(*.f64 (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y (*.f64 x y)) #s(literal 1 binary64)) (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)))
(*.f64 (+.f64 #s(literal 1 binary64) (fabs.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 x y)))) (-.f64 #s(literal 1 binary64) (fabs.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 x y)))))
(*.f64 #s(literal -1/2 binary64) (*.f64 x y))
(*.f64 (*.f64 x #s(literal -1/2 binary64)) (*.f64 x y))
(*.f64 (*.f64 x #s(literal -1/2 binary64)) y)
(*.f64 (*.f64 y #s(literal -1/2 binary64)) (*.f64 x y))
(*.f64 (*.f64 y #s(literal -1/2 binary64)) x)
#s(literal -1/2 binary64)
(*.f64 #s(literal 1 binary64) #s(literal -1/2 binary64))
(*.f64 #s(literal -1/2 binary64) #s(literal 1 binary64))
(/.f64 #s(literal -1/2 binary64) #s(literal 1 binary64))
(neg.f64 (neg.f64 #s(literal -1/2 binary64)))

eval36.0ms (1%)

Memory
-12.6MiB live, 32.4MiB allocated; 6ms collecting garbage
Compiler

Compiled 5 757 to 1 094 computations (81% saved)

prune18.0ms (0.5%)

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

12 alts after pruning (6 fresh and 6 done)

PrunedKeptTotal
New2076213
Fresh000
Picked224
Done044
Total20912221
Accuracy
100.0%
Counts
221 → 12
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) #s(approx (/ (* x y) 2) (*.f64 #s(literal 1/2 binary64) (*.f64 x y))))))
64.7%
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)))
62.4%
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)) y)))
75.7%
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y))
59.8%
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) y) y))) y))
27.2%
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 #s(literal -1 binary64) y))
62.3%
#s(approx (- x (/ y (+ 1 (* y x)))) (+.f64 x (*.f64 y (-.f64 (*.f64 x y) #s(literal 1 binary64)))))
49.8%
#s(approx (+ x (/ y (+ 2 (* y x)))) (+.f64 x (*.f64 #s(literal 1/2 binary64) y)))
3.1%
#s(approx (+ x (/ y (+ 2 (* y x)))) (*.f64 #s(literal 1/2 binary64) y))
15.2%
#s(approx (+ x (/ y (+ 2 (* y x)))) (fabs.f64 y))
3.1%
#s(approx (+ x (/ y (+ 2 (* y x)))) y)
36.3%
#s(approx (+ x (* y x)) (fma.f64 y x x))
Compiler

Compiled 276 to 204 computations (26.1% saved)

series210.0ms (5.8%)

Memory
-10.4MiB live, 88.1MiB allocated; 52ms collecting garbage
Counts
18 → 80
Calls
Call 1
Inputs
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)) y)))
x
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)) y))
(*.f64 (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)) y)
(fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64))
(*.f64 x #s(literal -1/2 binary64))
#s(literal -1/2 binary64)
y
#s(literal 1 binary64)
#s(approx (+ x (/ y (+ 2 (* y x)))) (fabs.f64 y))
(fabs.f64 y)
#s(approx (+ x (/ y (+ 2 (* y x)))) (*.f64 #s(literal 1/2 binary64) y))
(*.f64 #s(literal 1/2 binary64) y)
#s(literal 1/2 binary64)
#s(approx (+ x (* y x)) (fma.f64 y x x))
(fma.f64 y x x)
#s(approx (+ x (/ y (+ 2 (* y x)))) (+.f64 x (*.f64 #s(literal 1/2 binary64) y)))
(+.f64 x (*.f64 #s(literal 1/2 binary64) y))
Outputs
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 #s(literal -1 binary64) y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64))))) y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/4 binary64) (*.f64 x (pow.f64 y #s(literal 3 binary64))) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64)))))) y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64)) (*.f64 x (fma.f64 #s(literal -1/4 binary64) (pow.f64 y #s(literal 3 binary64)) (*.f64 #s(literal 1/8 binary64) (*.f64 x (pow.f64 y #s(literal 4 binary64))))))))) y))
#s(approx x x)
#s(approx (/ y (+ 1 (/ (* x y) 2))) y)
#s(approx (/ y (+ 1 (/ (* x y) 2))) (+.f64 y (*.f64 #s(literal -1/2 binary64) (*.f64 x (pow.f64 y #s(literal 2 binary64))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (+.f64 y (*.f64 x (-.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 x (pow.f64 y #s(literal 3 binary64)))) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (+.f64 y (*.f64 x (-.f64 (*.f64 x (-.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 x (pow.f64 y #s(literal 4 binary64)))) (*.f64 #s(literal -1/4 binary64) (pow.f64 y #s(literal 3 binary64))))) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64)))))))
#s(approx (+ (* (* x -1/2) y) 1) #s(literal 1 binary64))
#s(approx (+ (* (* x -1/2) y) 1) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 x y))))
#s(approx (* x -1/2) (*.f64 #s(literal -1/2 binary64) x))
#s(approx (+ x (/ y (+ 2 (* y x)))) (*.f64 #s(literal 1/2 binary64) y))
#s(approx (+ x (/ y (+ 2 (* y x)))) (fma.f64 #s(literal 1/2 binary64) y (*.f64 x (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/4 binary64) (pow.f64 y #s(literal 2 binary64)))))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (fma.f64 #s(literal 1/2 binary64) y (*.f64 x (-.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/8 binary64) (*.f64 x (pow.f64 y #s(literal 3 binary64))))) (*.f64 #s(literal 1/4 binary64) (pow.f64 y #s(literal 2 binary64)))))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (fma.f64 #s(literal 1/2 binary64) y (*.f64 x (-.f64 (+.f64 #s(literal 1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal -1/16 binary64) (*.f64 x (pow.f64 y #s(literal 4 binary64)))) (*.f64 #s(literal -1/8 binary64) (pow.f64 y #s(literal 3 binary64)))))) (*.f64 #s(literal 1/4 binary64) (pow.f64 y #s(literal 2 binary64)))))))
#s(approx (+ x (* y x)) (*.f64 x (+.f64 #s(literal 1 binary64) y)))
#s(approx (+ x (* 1/2 y)) (+.f64 x (*.f64 #s(literal 1/2 binary64) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 x (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 x (-.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 x (-.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)))) (fma.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 2 binary64)))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x y)))) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (+.f64 #s(literal 2 binary64) (/.f64 #s(literal 8 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (pow.f64 y #s(literal 2 binary64))))) (/.f64 #s(literal 4 binary64) (*.f64 x y))) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (+.f64 #s(literal 2 binary64) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (pow.f64 y #s(literal 2 binary64)))))) (fma.f64 #s(literal 16 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 3 binary64)))) (/.f64 #s(literal 4 binary64) (*.f64 x y)))) x))
#s(approx (* (+ (* (* x -1/2) y) 1) y) (*.f64 #s(literal -1/2 binary64) (*.f64 x (pow.f64 y #s(literal 2 binary64)))))
#s(approx (* (+ (* (* x -1/2) y) 1) y) (*.f64 x (fma.f64 #s(literal -1/2 binary64) (pow.f64 y #s(literal 2 binary64)) (/.f64 y x))))
#s(approx (+ (* (* x -1/2) y) 1) (*.f64 #s(literal -1/2 binary64) (*.f64 x y)))
#s(approx (+ (* (* x -1/2) y) 1) (*.f64 x (fma.f64 #s(literal -1/2 binary64) y (/.f64 #s(literal 1 binary64) x))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (*.f64 x (-.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))) (/.f64 #s(literal 2 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (*.f64 x (-.f64 (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y))))))
#s(approx (+ x (* 1/2 y)) (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 y x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))) #s(literal 1 binary64)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) y)) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x (pow.f64 y #s(literal 2 binary64)))))) (pow.f64 x #s(literal 3 binary64))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))) #s(literal 1 binary64)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x y))) #s(literal 2 binary64)) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x (pow.f64 y #s(literal 2 binary64))))) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) y))) x)) #s(literal 2 binary64)) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 16 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x (pow.f64 y #s(literal 3 binary64))))) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 2 binary64))))) x)) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) y))) x)) #s(literal 2 binary64)) x)))
#s(approx (* (+ (* (* x -1/2) y) 1) y) (*.f64 #s(literal -1 binary64) (*.f64 x (fma.f64 #s(literal -1 binary64) (/.f64 y x) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64)))))))
#s(approx (+ (* (* x -1/2) y) 1) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal 1/2 binary64) y) (/.f64 #s(literal 1 binary64) x)))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (/.f64 #s(literal 2 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x (pow.f64 y #s(literal 2 binary64))))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) y))) (pow.f64 x #s(literal 3 binary64)))) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))))))
#s(approx (+ x (* y x)) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal -1 binary64) y) #s(literal 1 binary64)))))
#s(approx (+ x (* 1/2 y)) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 y x)) #s(literal 1 binary64)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (+.f64 x (*.f64 #s(literal -1 binary64) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (+.f64 x (*.f64 y (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 x y)) #s(literal 1 binary64)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (+.f64 x (*.f64 y (-.f64 (*.f64 y (fma.f64 #s(literal -1/4 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y) (*.f64 #s(literal 1/2 binary64) x))) #s(literal 1 binary64)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 x y)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 y (-.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)) (*.f64 #s(literal 1/2 binary64) x))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 y (-.f64 (*.f64 y (-.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)) (*.f64 #s(literal -1/4 binary64) (pow.f64 x #s(literal 2 binary64))))) (*.f64 #s(literal 1/2 binary64) x))))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (+.f64 x (*.f64 y (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/4 binary64) (*.f64 x y))))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (+.f64 x (*.f64 y (+.f64 #s(literal 1/2 binary64) (*.f64 y (-.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)) (*.f64 #s(literal 1/4 binary64) x)))))))
#s(approx (fabs y) (fabs.f64 y))
#s(approx (+ x (* y x)) (+.f64 x (*.f64 x y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 x (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (+.f64 x (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (+.f64 x (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y))) (fma.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 8 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 2 binary64)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (+.f64 x (fma.f64 #s(literal 16 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 3 binary64)))) (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)))) (fma.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 2 binary64))))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (-.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x)) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (-.f64 (fma.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 8 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 2 binary64))))) (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (-.f64 (fma.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 2 binary64)))))) (fma.f64 #s(literal 16 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 3 binary64)))) (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)))))
#s(approx (* (+ (* (* x -1/2) y) 1) y) (*.f64 (pow.f64 y #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 1 binary64) y))))
#s(approx (+ (* (* x -1/2) y) 1) (*.f64 y (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 1 binary64) y))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (+.f64 x (/.f64 #s(literal 1 binary64) x)))
#s(approx (+ x (/ y (+ 2 (* y x)))) (-.f64 (+.f64 x (/.f64 #s(literal 1 binary64) x)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (-.f64 (+.f64 x (+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 2 binary64)))))) (/.f64 #s(literal 2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (-.f64 (+.f64 x (+.f64 (/.f64 #s(literal 1 binary64) x) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 y #s(literal 2 binary64))))))) (fma.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 3 binary64)))) (/.f64 #s(literal 2 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) y)))))
#s(approx (+ x (* y x)) (*.f64 x y))
#s(approx (+ x (* y x)) (*.f64 y (+.f64 x (/.f64 x y))))
#s(approx (+ x (* 1/2 y)) (*.f64 y (+.f64 #s(literal 1/2 binary64) (/.f64 x y))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (+.f64 x (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y))) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))) y))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (+.f64 x (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 16 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) y))) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64))))) y)) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))) y))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)))) y) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (*.f64 #s(literal 16 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) y)))) y) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))) y) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) x))))
#s(approx (+ (* (* x -1/2) y) 1) (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 (*.f64 #s(literal 1/2 binary64) x) (/.f64 #s(literal 1 binary64) y)))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (+.f64 x (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64)))) (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)))) y) (/.f64 #s(literal 1 binary64) x))))
#s(approx (+ x (/ y (+ 2 (* y x)))) (+.f64 x (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 4 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (*.f64 #s(literal 8 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) y)))) y) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 2 binary64))))) y) (/.f64 #s(literal 1 binary64) x))))
#s(approx (+ x (* y x)) (*.f64 #s(literal -1 binary64) (*.f64 y (fma.f64 #s(literal -1 binary64) x (*.f64 #s(literal -1 binary64) (/.f64 x y))))))
#s(approx (+ x (* 1/2 y)) (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 x y)) #s(literal 1/2 binary64)))))
Calls

6 calls:

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

rewrite289.0ms (8%)

Memory
43.7MiB live, 135.1MiB allocated; 8ms collecting garbage
Counts
18 → 59
Calls
Call 1
Inputs
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)) y)))
x
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)) y))
(*.f64 (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)) y)
(fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64))
(*.f64 x #s(literal -1/2 binary64))
#s(literal -1/2 binary64)
y
#s(literal 1 binary64)
#s(approx (+ x (/ y (+ 2 (* y x)))) (fabs.f64 y))
(fabs.f64 y)
#s(approx (+ x (/ y (+ 2 (* y x)))) (*.f64 #s(literal 1/2 binary64) y))
(*.f64 #s(literal 1/2 binary64) y)
#s(literal 1/2 binary64)
#s(approx (+ x (* y x)) (fma.f64 y x x))
(fma.f64 y x x)
#s(approx (+ x (/ y (+ 2 (* y x)))) (+.f64 x (*.f64 #s(literal 1/2 binary64) y)))
(+.f64 x (*.f64 #s(literal 1/2 binary64) y))
Outputs
(-.f64 x #s(approx (* y x) (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y y)))
x
(*.f64 x #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) x)
(+.f64 x x)
(/.f64 x #s(literal 1 binary64))
#s(approx (* y x) (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y y))
(*.f64 (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)) y)
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) #s(literal -1/2 binary64)) (*.f64 y x) y) (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)))
(*.f64 (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y y) (fma.f64 (*.f64 #s(literal -1/2 binary64) #s(literal -1/2 binary64)) (*.f64 y x) #s(literal 1 binary64)))
(*.f64 y (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) #s(literal -1/2 binary64)) (*.f64 y x) #s(literal 1 binary64)) (/.f64 y (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) #s(literal -1/2 binary64)) (*.f64 y x) #s(literal 1 binary64)) (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)))
(*.f64 (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)) (fma.f64 (*.f64 #s(literal -1/2 binary64) #s(literal -1/2 binary64)) (*.f64 y x) #s(literal 1 binary64)))
(*.f64 (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)))
(*.f64 (pow.f64 (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)) (/.f64 #s(literal 3 binary64) #s(literal 1 binary64))) (pow.f64 (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)) (/.f64 #s(literal 3 binary64) #s(literal 1 binary64))))
(*.f64 x #s(literal -1/2 binary64))
(*.f64 #s(literal -1/2 binary64) x)
(*.f64 (*.f64 x #s(literal -1/2 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 x #s(literal -1/2 binary64)))
(*.f64 x (*.f64 #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(literal -1/2 binary64)
y
(*.f64 y #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) y)
(*.f64 y y)
(*.f64 (pow.f64 y (/.f64 #s(literal 3 binary64) #s(literal 1 binary64))) (pow.f64 y (/.f64 #s(literal 3 binary64) #s(literal 1 binary64))))
#s(literal 1 binary64)
#s(literal 2 binary64)
#s(literal 0 binary64)
(*.f64 #s(literal 1 binary64) #s(literal 3 binary64))
(*.f64 #s(literal 3 binary64) #s(literal 1 binary64))
#s(approx (+ (* y x) x) y)
y
(*.f64 y #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) y)
(*.f64 y y)
(*.f64 (pow.f64 y (/.f64 #s(literal 3 binary64) #s(literal 1 binary64))) (pow.f64 y (/.f64 #s(literal 3 binary64) #s(literal 1 binary64))))
#s(approx (+ (* y x) x) (*.f64 #s(literal 1/2 binary64) y))
(*.f64 #s(literal 1/2 binary64) y)
(*.f64 y #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal 1/2 binary64) y) y)
(*.f64 (neg.f64 #s(literal 1/2 binary64)) y)
(*.f64 y (*.f64 #s(literal 1/2 binary64) y))
#s(literal 1/2 binary64)
(neg.f64 (neg.f64 #s(literal 1/2 binary64)))
#s(approx (+ (* y x) x) (fma.f64 y x x))
(*.f64 (*.f64 x x) (fma.f64 y x x))
(*.f64 (-.f64 y #s(literal 1 binary64)) (fma.f64 y x x))
(*.f64 (-.f64 y #s(literal 1 binary64)) x)
(*.f64 (-.f64 y #s(literal 1 binary64)) (*.f64 x x))
(*.f64 (fma.f64 y x x) (fma.f64 y x x))
#s(approx (+ (* y x) x) (fma.f64 y #s(literal 1/2 binary64) x))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) #s(literal 1/2 binary64)) y (*.f64 x x)) (fma.f64 y #s(literal 1/2 binary64) x))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) #s(literal 1/2 binary64)) y (*.f64 x x)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) (fma.f64 y #s(literal 1/2 binary64) x) (*.f64 x x)))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) (fma.f64 y #s(literal 1/2 binary64) x) (*.f64 x x)) (fma.f64 (*.f64 #s(literal 1/2 binary64) #s(literal 1/2 binary64)) y (*.f64 x x)))
(*.f64 (fma.f64 y #s(literal 1/2 binary64) x) (fma.f64 (*.f64 #s(literal 1/2 binary64) #s(literal 1/2 binary64)) y (*.f64 x x)))
(*.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) #s(literal 1/2 binary64)) y) (*.f64 x x)) (neg.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) (fma.f64 y #s(literal 1/2 binary64) x) (*.f64 x x))))

eval45.0ms (1.2%)

Memory
-7.1MiB live, 35.5MiB allocated; 23ms collecting garbage
Compiler

Compiled 3 720 to 723 computations (80.6% saved)

prune46.0ms (1.3%)

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

13 alts after pruning (4 fresh and 9 done)

PrunedKeptTotal
New1503153
Fresh011
Picked235
Done066
Total15213165
Accuracy
100.0%
Counts
165 → 13
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) #s(approx (/ (* x y) 2) (*.f64 #s(literal 1/2 binary64) (*.f64 x y))))))
64.7%
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)))
62.4%
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)) y)))
75.7%
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y))
59.8%
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) y) y))) y))
27.2%
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 #s(literal -1 binary64) y))
62.3%
#s(approx (- x (/ y (+ 1 (* y x)))) (+.f64 x (*.f64 y (-.f64 (*.f64 x y) #s(literal 1 binary64)))))
49.8%
#s(approx (+ (* y x) x) (fma.f64 y #s(literal 1/2 binary64) x))
7.3%
#s(approx (+ x (/ y (+ 2 (* y x)))) (*.f64 (neg.f64 #s(literal 1/2 binary64)) y))
3.1%
#s(approx (+ x (/ y (+ 2 (* y x)))) (*.f64 #s(literal 1/2 binary64) y))
15.2%
#s(approx (+ x (/ y (+ 2 (* y x)))) (fabs.f64 y))
3.1%
#s(approx (+ x (/ y (+ 2 (* y x)))) y)
3.7%
#s(approx (+ x (* y x)) (*.f64 x y))
Compiler

Compiled 191 to 143 computations (25.1% saved)

regimes143.0ms (4%)

Memory
-13.5MiB live, 126.5MiB allocated; 55ms collecting garbage
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
2 → 1
10 → 1
12 → 3
16 → 3
19 → 1
Calls
Call 1
Inputs
#s(approx (+ x (/ y (+ 2 (* y x)))) y)
Outputs
#s(approx (+ x (/ y (+ 2 (* y x)))) y)
Call 2
Inputs
#s(approx (+ x (/ y (+ 2 (* y x)))) y)
#s(approx (+ x (/ y (+ 2 (* y x)))) (fabs.f64 y))
Outputs
#s(approx (+ x (/ y (+ 2 (* y x)))) (fabs.f64 y))
Call 3
Inputs
#s(approx (+ x (/ y (+ 2 (* y x)))) y)
#s(approx (+ x (/ y (+ 2 (* y x)))) (fabs.f64 y))
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y))
#s(approx (+ x (* y x)) (*.f64 x y))
#s(approx (+ x (/ y (+ 2 (* y x)))) (*.f64 #s(literal 1/2 binary64) y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 #s(literal -1 binary64) y))
#s(approx (+ x (/ y (+ 2 (* y x)))) (*.f64 (neg.f64 #s(literal 1/2 binary64)) y))
#s(approx (+ x (* y x)) (fma.f64 y x x))
#s(approx (+ (* y x) x) (fma.f64 y #s(literal 1/2 binary64) x))
#s(approx (+ x (/ y (+ 2 (* y x)))) (+.f64 x (*.f64 #s(literal 1/2 binary64) y)))
Outputs
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y))
Call 4
Inputs
#s(approx (+ x (/ y (+ 2 (* y x)))) y)
#s(approx (+ x (/ y (+ 2 (* y x)))) (fabs.f64 y))
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y))
#s(approx (+ x (* y x)) (*.f64 x y))
#s(approx (+ x (/ y (+ 2 (* y x)))) (*.f64 #s(literal 1/2 binary64) y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 #s(literal -1 binary64) y))
#s(approx (+ x (/ y (+ 2 (* y x)))) (*.f64 (neg.f64 #s(literal 1/2 binary64)) y))
#s(approx (+ x (* y x)) (fma.f64 y x x))
#s(approx (+ (* y x) x) (fma.f64 y #s(literal 1/2 binary64) x))
#s(approx (+ x (/ y (+ 2 (* y x)))) (+.f64 x (*.f64 #s(literal 1/2 binary64) y)))
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)))
#s(approx (- x (/ y (+ 1 (* y x)))) (+.f64 x (*.f64 y (-.f64 (*.f64 x y) #s(literal 1 binary64)))))
Outputs
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)))
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y))
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)))
Call 5
Inputs
#s(approx (+ x (/ y (+ 2 (* y x)))) y)
#s(approx (+ x (/ y (+ 2 (* y x)))) (fabs.f64 y))
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y))
#s(approx (+ x (* y x)) (*.f64 x y))
#s(approx (+ x (/ y (+ 2 (* y x)))) (*.f64 #s(literal 1/2 binary64) y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 #s(literal -1 binary64) y))
#s(approx (+ x (/ y (+ 2 (* y x)))) (*.f64 (neg.f64 #s(literal 1/2 binary64)) y))
#s(approx (+ x (* y x)) (fma.f64 y x x))
#s(approx (+ (* y x) x) (fma.f64 y #s(literal 1/2 binary64) x))
#s(approx (+ x (/ y (+ 2 (* y x)))) (+.f64 x (*.f64 #s(literal 1/2 binary64) y)))
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)))
#s(approx (- x (/ y (+ 1 (* y x)))) (+.f64 x (*.f64 y (-.f64 (*.f64 x y) #s(literal 1 binary64)))))
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (*.f64 y x))))
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) y) y))) y))
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 x y))))))
Outputs
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)))
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (*.f64 y x))))
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)))
Call 6
Inputs
#s(approx (+ x (/ y (+ 2 (* y x)))) y)
#s(approx (+ x (/ y (+ 2 (* y x)))) (fabs.f64 y))
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y))
#s(approx (+ x (* y x)) (*.f64 x y))
#s(approx (+ x (/ y (+ 2 (* y x)))) (*.f64 #s(literal 1/2 binary64) y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 #s(literal -1 binary64) y))
#s(approx (+ x (/ y (+ 2 (* y x)))) (*.f64 (neg.f64 #s(literal 1/2 binary64)) y))
#s(approx (+ x (* y x)) (fma.f64 y x x))
#s(approx (+ (* y x) x) (fma.f64 y #s(literal 1/2 binary64) x))
#s(approx (+ x (/ y (+ 2 (* y x)))) (+.f64 x (*.f64 #s(literal 1/2 binary64) y)))
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)))
#s(approx (- x (/ y (+ 1 (* y x)))) (+.f64 x (*.f64 y (-.f64 (*.f64 x y) #s(literal 1 binary64)))))
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (*.f64 y x))))
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 (fma.f64 (*.f64 x #s(literal -1/2 binary64)) y #s(literal 1 binary64)) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) y) y))) y))
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 x y))))))
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) #s(approx (/ (* x y) 2) (*.f64 #s(literal 1/2 binary64) (*.f64 x y))))))
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (pow.f64 y #s(literal 2 binary64))))) y))
Outputs
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) #s(approx (/ (* x y) 2) (*.f64 #s(literal 1/2 binary64) (*.f64 x y))))))
Calls

18 calls:

16.0ms
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
12.0ms
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
10.0ms
x
9.0ms
y
7.0ms
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
3.1%1(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
3.1%1y
3.1%1x
15.2%1(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
15.2%1x
15.2%1y
75.7%1x
75.7%1(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
75.7%1y
91.5%3(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
91.2%3x
93.7%3y
92.6%1(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
92.6%1x
97.2%3y
100.0%1(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
100.0%1x
100.0%1y
Compiler

Compiled 358 to 162 computations (54.7% saved)

bsearch29.0ms (0.8%)

Memory
-13.0MiB live, 32.8MiB allocated; 6ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
15.0ms
3.159640360695602e+184
9.37156653232565e+187
12.0ms
-5.33534508583671e+176
-2.0110149973941473e+159
Samples
11.0ms288×0valid
Compiler

Compiled 446 to 392 computations (12.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-div!: 3.0ms (52.5% of total)
ival-mult!: 2.0ms (35% of total)
ival-sub!: 1.0ms (17.5% of total)
ival-add!: 1.0ms (17.5% of total)
adjust: 0.0ms (0% of total)

bsearch21.0ms (0.6%)

Memory
28.8MiB live, 28.8MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
9.0ms
1.7230152996067986e+123
3.6113855909463286e+127
9.0ms
-2.1768432430988128e+99
-1.2041816829531046e+95
Samples
10.0ms256×0valid
Compiler

Compiled 462 to 398 computations (13.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 5.0ms
ival-div!: 2.0ms (41% of total)
ival-sub!: 1.0ms (20.5% of total)
ival-add!: 1.0ms (20.5% of total)
ival-mult!: 1.0ms (20.5% of total)
adjust: 0.0ms (0% of total)

derivations2.0ms (0%)

Memory
1.7MiB live, 1.7MiB allocated; 0ms collecting garbage
Stop Event
fuel
Compiler

Compiled 151 to 45 computations (70.2% saved)

preprocess474.0ms (13.1%)

Memory
-80.7MiB live, 62.1MiB allocated; 499ms collecting garbage
Compiler

Compiled 162 to 54 computations (66.7% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...