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

Time bar (total: 4.8s)

start0.0ms (0%)

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

analyze44.0ms (0.9%)

Memory
21.0MiB live, 66.4MiB allocated; 5ms 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)

sample1.1s (23%)

Memory
30.7MiB live, 1 703.7MiB allocated; 326ms collecting garbage
Samples
709.0ms8 254×0valid
0.0ms2valid
0.0ms1valid
Precisions
Click to see histograms. Total time spent on operations: 442.0ms
ival-mult: 218.0ms (49.4% of total)
ival-div: 117.0ms (26.5% of total)
ival-add: 43.0ms (9.7% of total)
ival-sub: 41.0ms (9.3% of total)
exact: 11.0ms (2.5% of total)
ival-true: 6.0ms (1.4% of total)
ival-assert: 4.0ms (0.9% of total)
adjust: 2.0ms (0.5% of total)
Bogosity

explain244.0ms (5.1%)

Memory
-16.3MiB live, 214.2MiB allocated; 41ms collecting garbage
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
310-0-(/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64))))
00-0-(/.f64 (*.f64 x y) #s(literal 2 binary64))
00-0-#s(literal 1 binary64)
00-0-(*.f64 x y)
00-0-(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
00-0-(+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))
00-0-#s(literal 2 binary64)
00-0-y
00-0-x
Confusion
Predicted +Predicted -
+00
-0256
Precision
0/0
Recall
0/0
Confusion?
Predicted +Predicted MaybePredicted -
+000
-00256
Precision?
0/0
Recall?
0/0
Freqs
test
numberfreq
0256
Total Confusion?
Predicted +Predicted MaybePredicted -
+000
-001
Precision?
0/0
Recall?
0/0
Samples
121.0ms510×0valid
0.0ms2valid
Compiler

Compiled 93 to 31 computations (66.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 101.0ms
ival-mult: 48.0ms (47.7% of total)
ival-div: 46.0ms (45.7% of total)
ival-add: 3.0ms (3% of total)
ival-sub: 3.0ms (3% of total)
exact: 1.0ms (1% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

preprocess308.0ms (6.4%)

Memory
-14.9MiB live, 175.4MiB allocated; 38ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02876
14972
27270
315370
437070
5155070
6733970
0911
01411
12111
23111
36811
420611
5109611
6673611
0855110
Stop Event
iter limit
node limit
iter limit
node limit
Calls
Call 1
Inputs
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
Outputs
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
(-.f64 x (*.f64 (/.f64 y (fma.f64 y x #s(literal 2 binary64))) #s(literal 2 binary64)))
Compiler

Compiled 11 to 9 computations (18.2% saved)

eval0.0ms (0%)

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

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated; 0ms collecting garbage
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
Compiler

Compiled 11 to 9 computations (18.2% saved)

simplify180.0ms (3.7%)

Memory
17.9MiB live, 253.2MiB allocated; 24ms collecting garbage
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(/.f64 (*.f64 x y) #s(literal 2 binary64))
cost-diff0
(/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64))))
cost-diff0
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
cost-diff1
(+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0939
01439
12139
23139
36839
420639
5109639
6673639
0855136
Stop Event
iter limit
node limit
iter limit
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 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
(-.f64 x (*.f64 (/.f64 y (fma.f64 y x #s(literal 2 binary64))) #s(literal 2 binary64)))
x
(/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64))))
(*.f64 (/.f64 y (fma.f64 y x #s(literal 2 binary64))) #s(literal 2 binary64))
y
(+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))
(/.f64 (fma.f64 y x #s(literal 2 binary64)) #s(literal 2 binary64))
#s(literal 1 binary64)
(/.f64 (*.f64 x y) #s(literal 2 binary64))
(/.f64 (*.f64 y x) #s(literal 2 binary64))
(*.f64 x y)
(*.f64 y x)
#s(literal 2 binary64)

localize46.0ms (1%)

Memory
22.9MiB live, 127.0MiB allocated; 14ms collecting garbage
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(*.f64 x y)
accuracy0.00390625
(/.f64 (*.f64 x y) #s(literal 2 binary64))
accuracy0.010097509768442016
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
accuracy7.399703634726763
(/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64))))
Samples
39.0ms255×0valid
0.0ms2valid
Compiler

Compiled 41 to 11 computations (73.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 15.0ms
ival-div: 9.0ms (61.8% of total)
ival-mult: 2.0ms (13.7% of total)
ival-add: 1.0ms (6.9% of total)
ival-sub: 1.0ms (6.9% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series11.0ms (0.2%)

Memory
-9.5MiB live, 37.5MiB allocated; 4ms collecting garbage
Counts
5 → 48
Calls
Call 1
Inputs
(+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
(/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64))))
(/.f64 (*.f64 x y) #s(literal 2 binary64))
(*.f64 x y)
Outputs
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 1))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (+ 1 (* 1/2 (* x y)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (* 1/2 (pow y 2)))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (+ (* -1/4 (* x (pow y 3))) (* 1/2 (pow y 2))))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (+ (* 1/2 (pow y 2)) (* x (+ (* -1/4 (pow y 3)) (* 1/8 (* x (pow y 4)))))))) y)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* -1/2 (* x (pow y 2))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* x (- (* 1/4 (* x (pow y 3))) (* 1/2 (pow y 2)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* x (- (* x (- (* -1/8 (* x (pow y 4))) (* -1/4 (pow y 3)))) (* 1/2 (pow y 2)))))))
#s(approx (/ (* x y) 2) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (* x y) #s(hole binary64 (* x y)))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* x (+ (* 1/2 y) (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- 1 (* 2 (/ 1 (pow x 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- (+ 1 (/ 4 (* (pow x 3) y))) (* 2 (/ 1 (pow x 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- (+ 1 (* 4 (/ 1 (* (pow x 3) y)))) (+ (* 8 (/ 1 (* (pow x 4) (pow y 2)))) (* 2 (/ 1 (pow x 2))))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ 2 x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- 2 (* 4 (/ 1 (* x y)))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- (+ 2 (/ 8 (* (pow x 2) (pow y 2)))) (/ 4 (* x y))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- (+ 2 (* 8 (/ 1 (* (pow x 2) (pow y 2))))) (+ (* 16 (/ 1 (* (pow x 3) (pow y 3)))) (/ 4 (* x y)))) x)))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* -1 (* x (- (* -1/2 y) (/ 1 x))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) (+ 1 (/ 4 (* (pow x 3) y))))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (+ (* -1 (/ (- (* 4 (/ 1 y)) (* 8 (/ 1 (* x (pow y 2))))) (pow x 3))) (* 2 (/ 1 (pow x 2)))) 1)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* 4 (/ 1 (* x y))) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* -1 (/ (- (* 8 (/ 1 (* x (pow y 2)))) (* 4 (/ 1 y))) x)) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* -1 (/ (- (* -1 (/ (- (* 16 (/ 1 (* x (pow y 3)))) (* 8 (/ 1 (pow y 2)))) x)) (* 4 (/ 1 y))) x)) 2) x))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* -1 y))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* y (- (* 1/2 (* x y)) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* y (- (* y (+ (* -1/4 (* (pow x 2) y)) (* 1/2 x))) 1)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* -1/2 (* x y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* y (- (* 1/4 (* (pow x 2) y)) (* 1/2 x)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* y (- (* y (- (* -1/8 (* (pow x 3) y)) (* -1/4 (pow x 2)))) (* 1/2 x)))))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* y (+ (* 1/2 x) (/ 1 y)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- x (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* 4 (/ 1 (* (pow x 2) y)))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (/ 4 (* (pow x 2) y))) (+ (* 2 (/ 1 x)) (/ 8 (* (pow x 3) (pow y 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (+ (* 16 (/ 1 (* (pow x 4) (pow y 3)))) (/ 4 (* (pow x 2) y)))) (+ (* 2 (/ 1 x)) (* 8 (/ 1 (* (pow x 3) (pow y 2))))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (* 2 (/ 1 x)) (* 4 (/ 1 (* (pow x 2) y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (+ (* 2 (/ 1 x)) (/ 8 (* (pow x 3) (pow y 2)))) (/ 4 (* (pow x 2) y)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (+ (* 2 (/ 1 x)) (* 8 (/ 1 (* (pow x 3) (pow y 2))))) (+ (* 16 (/ 1 (* (pow x 4) (pow y 3)))) (/ 4 (* (pow x 2) y))))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* -1 (* y (- (* -1/2 x) (/ 1 y))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* -1 (/ (- (* 8 (/ 1 (* (pow x 3) y))) (* 4 (/ 1 (pow x 2)))) y))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* -1 (/ (- (* -1 (/ (- (* 16 (/ 1 (* (pow x 4) y))) (* 8 (/ 1 (pow x 3)))) y)) (* 4 (/ 1 (pow x 2)))) y))) (* 2 (/ 1 x)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ (* -1 (/ (- (* 4 (/ 1 (pow x 2))) (* 8 (/ 1 (* (pow x 3) y)))) y)) (* 2 (/ 1 x)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ (- (* 8 (/ 1 (pow x 3))) (* 16 (/ 1 (* (pow x 4) y)))) y)) (* 4 (/ 1 (pow x 2)))) y)) (* 2 (/ 1 x)))))
Calls

6 calls:

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

simplify158.0ms (3.3%)

Memory
8.3MiB live, 246.1MiB allocated; 17ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02831207
17691182
224101154
082721076
Stop Event
iter limit
node limit
Counts
48 → 48
Calls
Call 1
Inputs
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 1))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (+ 1 (* 1/2 (* x y)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (* 1/2 (pow y 2)))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (+ (* -1/4 (* x (pow y 3))) (* 1/2 (pow y 2))))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (+ (* 1/2 (pow y 2)) (* x (+ (* -1/4 (pow y 3)) (* 1/8 (* x (pow y 4)))))))) y)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* -1/2 (* x (pow y 2))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* x (- (* 1/4 (* x (pow y 3))) (* 1/2 (pow y 2)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* x (- (* x (- (* -1/8 (* x (pow y 4))) (* -1/4 (pow y 3)))) (* 1/2 (pow y 2)))))))
#s(approx (/ (* x y) 2) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (* x y) #s(hole binary64 (* x y)))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* x (+ (* 1/2 y) (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- 1 (* 2 (/ 1 (pow x 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- (+ 1 (/ 4 (* (pow x 3) y))) (* 2 (/ 1 (pow x 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- (+ 1 (* 4 (/ 1 (* (pow x 3) y)))) (+ (* 8 (/ 1 (* (pow x 4) (pow y 2)))) (* 2 (/ 1 (pow x 2))))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ 2 x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- 2 (* 4 (/ 1 (* x y)))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- (+ 2 (/ 8 (* (pow x 2) (pow y 2)))) (/ 4 (* x y))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- (+ 2 (* 8 (/ 1 (* (pow x 2) (pow y 2))))) (+ (* 16 (/ 1 (* (pow x 3) (pow y 3)))) (/ 4 (* x y)))) x)))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* -1 (* x (- (* -1/2 y) (/ 1 x))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) (+ 1 (/ 4 (* (pow x 3) y))))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (+ (* -1 (/ (- (* 4 (/ 1 y)) (* 8 (/ 1 (* x (pow y 2))))) (pow x 3))) (* 2 (/ 1 (pow x 2)))) 1)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* 4 (/ 1 (* x y))) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* -1 (/ (- (* 8 (/ 1 (* x (pow y 2)))) (* 4 (/ 1 y))) x)) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* -1 (/ (- (* -1 (/ (- (* 16 (/ 1 (* x (pow y 3)))) (* 8 (/ 1 (pow y 2)))) x)) (* 4 (/ 1 y))) x)) 2) x))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* -1 y))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* y (- (* 1/2 (* x y)) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* y (- (* y (+ (* -1/4 (* (pow x 2) y)) (* 1/2 x))) 1)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* -1/2 (* x y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* y (- (* 1/4 (* (pow x 2) y)) (* 1/2 x)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* y (- (* y (- (* -1/8 (* (pow x 3) y)) (* -1/4 (pow x 2)))) (* 1/2 x)))))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* y (+ (* 1/2 x) (/ 1 y)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- x (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* 4 (/ 1 (* (pow x 2) y)))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (/ 4 (* (pow x 2) y))) (+ (* 2 (/ 1 x)) (/ 8 (* (pow x 3) (pow y 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (+ (* 16 (/ 1 (* (pow x 4) (pow y 3)))) (/ 4 (* (pow x 2) y)))) (+ (* 2 (/ 1 x)) (* 8 (/ 1 (* (pow x 3) (pow y 2))))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (* 2 (/ 1 x)) (* 4 (/ 1 (* (pow x 2) y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (+ (* 2 (/ 1 x)) (/ 8 (* (pow x 3) (pow y 2)))) (/ 4 (* (pow x 2) y)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (+ (* 2 (/ 1 x)) (* 8 (/ 1 (* (pow x 3) (pow y 2))))) (+ (* 16 (/ 1 (* (pow x 4) (pow y 3)))) (/ 4 (* (pow x 2) y))))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* -1 (* y (- (* -1/2 x) (/ 1 y))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* -1 (/ (- (* 8 (/ 1 (* (pow x 3) y))) (* 4 (/ 1 (pow x 2)))) y))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* -1 (/ (- (* -1 (/ (- (* 16 (/ 1 (* (pow x 4) y))) (* 8 (/ 1 (pow x 3)))) y)) (* 4 (/ 1 (pow x 2)))) y))) (* 2 (/ 1 x)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ (* -1 (/ (- (* 4 (/ 1 (pow x 2))) (* 8 (/ 1 (* (pow x 3) y)))) y)) (* 2 (/ 1 x)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ (- (* 8 (/ 1 (pow x 3))) (* 16 (/ 1 (* (pow x 4) y)))) y)) (* 4 (/ 1 (pow x 2)))) y)) (* 2 (/ 1 x)))))
Outputs
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 1))
#s(approx (+ 1 (/ (* x y) 2)) #s(literal 1 binary64))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (+ 1 (* 1/2 (* x y)))))
#s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (neg.f64 y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (* 1/2 (pow y 2)))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (+ (* -1/4 (* x (pow y 3))) (* 1/2 (pow y 2))))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (fma.f64 (*.f64 y y) (fma.f64 (*.f64 #s(literal -1/4 binary64) x) y #s(literal 1/2 binary64)) #s(literal 1 binary64)) x (neg.f64 y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (+ (* 1/2 (pow y 2)) (* x (+ (* -1/4 (pow y 3)) (* 1/8 (* x (pow y 4)))))))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 (pow.f64 y #s(literal 4 binary64)) x) #s(literal 1/8 binary64) (*.f64 (pow.f64 y #s(literal 3 binary64)) #s(literal -1/4 binary64))) x (fma.f64 (*.f64 y y) #s(literal 1/2 binary64) #s(literal 1 binary64))) x (neg.f64 y)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) y)
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* -1/2 (* x (pow y 2))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) y) y) x y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* x (- (* 1/4 (* x (pow y 3))) (* 1/2 (pow y 2)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (fma.f64 (*.f64 (*.f64 y y) (fma.f64 (*.f64 #s(literal 1/4 binary64) x) y #s(literal -1/2 binary64))) x y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* x (- (* x (- (* -1/8 (* x (pow y 4))) (* -1/4 (pow y 3)))) (* 1/2 (pow y 2)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (pow.f64 y #s(literal 4 binary64)) x) (*.f64 #s(literal 1/4 binary64) (pow.f64 y #s(literal 3 binary64)))) x (*.f64 (*.f64 #s(literal -1/2 binary64) y) y)) x y))
#s(approx (/ (* x y) 2) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (/ (* x y) 2) (*.f64 #s(literal 1/2 binary64) (*.f64 y x)))
#s(approx (* x y) #s(hole binary64 (* x y)))
#s(approx (* x y) (*.f64 y x))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(literal 1/2 binary64) (*.f64 y x)))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* x (+ (* 1/2 y) (/ 1 x)))))
#s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x)
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- 1 (* 2 (/ 1 (pow x 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (/.f64 (/.f64 #s(literal -2 binary64) x) x) x x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- (+ 1 (/ 4 (* (pow x 3) y))) (* 2 (/ 1 (pow x 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 4 binary64) (*.f64 y x)) #s(literal 2 binary64)) (*.f64 x x)) x x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- (+ 1 (* 4 (/ 1 (* (pow x 3) y)))) (+ (* 8 (/ 1 (* (pow x 4) (pow y 2)))) (* 2 (/ 1 (pow x 2))))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal 4 binary64) (*.f64 y x)) #s(literal 2 binary64)) (*.f64 x x)) (/.f64 (/.f64 #s(literal 8 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 y y))) x x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ 2 x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- 2 (* 4 (/ 1 (* x y)))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- (+ 2 (/ 8 (* (pow x 2) (pow y 2)))) (/ 4 (* x y))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) y) (/.f64 (/.f64 #s(literal -8 binary64) (*.f64 y y)) x)) x) #s(literal -2 binary64)) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- (+ 2 (* 8 (/ 1 (* (pow x 2) (pow y 2))))) (+ (* 16 (/ 1 (* (pow x 3) (pow y 3)))) (/ 4 (* x y)))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) y) (/.f64 (/.f64 #s(literal -8 binary64) (*.f64 y y)) x)) x) (-.f64 (/.f64 #s(literal 16 binary64) (pow.f64 (*.f64 y x) #s(literal 3 binary64))) #s(literal 2 binary64))) x))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* -1 (* x (- (* -1/2 y) (/ 1 x))))))
#s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 x) (-.f64 (*.f64 #s(literal -1/2 binary64) y) (/.f64 #s(literal 1 binary64) x))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (/.f64 (/.f64 #s(literal -2 binary64) x) x) x x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) (+ 1 (/ 4 (* (pow x 3) y))))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 4 binary64) (*.f64 y x)) #s(literal 2 binary64)) (*.f64 x x)) x x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (+ (* -1 (/ (- (* 4 (/ 1 y)) (* 8 (/ 1 (* x (pow y 2))))) (pow x 3))) (* 2 (/ 1 (pow x 2)))) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 (neg.f64 x) (-.f64 (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) y) (/.f64 (/.f64 #s(literal -8 binary64) (*.f64 y y)) x)) x) #s(literal -2 binary64)) (*.f64 x x)) #s(literal 1 binary64))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* 4 (/ 1 (* x y))) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* -1 (/ (- (* 8 (/ 1 (* x (pow y 2)))) (* 4 (/ 1 y))) x)) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) y) (/.f64 (/.f64 #s(literal -8 binary64) (*.f64 y y)) x)) x) #s(literal -2 binary64)) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* -1 (/ (- (* -1 (/ (- (* 16 (/ 1 (* x (pow y 3)))) (* 8 (/ 1 (pow y 2)))) x)) (* 4 (/ 1 y))) x)) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (+.f64 (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal -16 binary64) (*.f64 (pow.f64 y #s(literal 3 binary64)) x)) (/.f64 #s(literal -8 binary64) (*.f64 y y))) x) (/.f64 #s(literal 4 binary64) y)) x) #s(literal 2 binary64)) x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* -1 y))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 x y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* y (- (* 1/2 (* x y)) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* y (- (* y (+ (* -1/4 (* (pow x 2) y)) (* 1/2 x))) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 x x) #s(literal -1/4 binary64)) y (*.f64 #s(literal 1/2 binary64) x)) y #s(literal -1 binary64)) y x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* -1/2 (* x y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) y) y) x y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* y (- (* 1/4 (* (pow x 2) y)) (* 1/2 x)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (fma.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) x (*.f64 (*.f64 (*.f64 x x) y) #s(literal 1/4 binary64))) y) y y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* y (- (* y (- (* -1/8 (* (pow x 3) y)) (* -1/4 (pow x 2)))) (* 1/2 x)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) x (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/4 binary64) (*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) #s(literal -1/8 binary64))) y)) y #s(literal 1 binary64)) y))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* y (+ (* 1/2 x) (/ 1 y)))))
#s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- x (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 x (/.f64 #s(literal 2 binary64) x)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* 4 (/ 1 (* (pow x 2) y)))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 x (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (/ 4 (* (pow x 2) y))) (+ (* 2 (/ 1 x)) (/ 8 (* (pow x 3) (pow y 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (+.f64 (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 (/.f64 #s(literal -8 binary64) (*.f64 y y)) x) (/.f64 #s(literal -4 binary64) y)) x) #s(literal 2 binary64)) x) x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (+ (* 16 (/ 1 (* (pow x 4) (pow y 3)))) (/ 4 (* (pow x 2) y)))) (+ (* 2 (/ 1 x)) (* 8 (/ 1 (* (pow x 3) (pow y 2))))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (-.f64 x (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 x x)) (/.f64 (-.f64 (/.f64 #s(literal -8 binary64) (pow.f64 x #s(literal 3 binary64))) (/.f64 #s(literal -16 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) y))) y)) y)) (/.f64 #s(literal 2 binary64) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (* 2 (/ 1 x)) (* 4 (/ 1 (* (pow x 2) y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (+ (* 2 (/ 1 x)) (/ 8 (* (pow x 3) (pow y 2)))) (/ 4 (* (pow x 2) y)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) y) (/.f64 (/.f64 #s(literal -8 binary64) (*.f64 y y)) x)) x) #s(literal -2 binary64)) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (+ (* 2 (/ 1 x)) (* 8 (/ 1 (* (pow x 3) (pow y 2))))) (+ (* 16 (/ 1 (* (pow x 4) (pow y 3)))) (/ 4 (* (pow x 2) y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (-.f64 (/.f64 (/.f64 (-.f64 (/.f64 #s(literal -16 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) y)) (/.f64 #s(literal -8 binary64) (pow.f64 x #s(literal 3 binary64)))) y) y) (/.f64 (-.f64 (/.f64 #s(literal 4 binary64) (*.f64 y x)) #s(literal 2 binary64)) x)))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* -1 (* y (- (* -1/2 x) (/ 1 y))))))
#s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) (-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* -1 (/ (- (* 8 (/ 1 (* (pow x 3) y))) (* 4 (/ 1 (pow x 2)))) y))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (+.f64 (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 (/.f64 #s(literal -8 binary64) (*.f64 y y)) x) (/.f64 #s(literal -4 binary64) y)) x) #s(literal 2 binary64)) x) x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* -1 (/ (- (* -1 (/ (- (* 16 (/ 1 (* (pow x 4) y))) (* 8 (/ 1 (pow x 3)))) y)) (* 4 (/ 1 (pow x 2)))) y))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (-.f64 x (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 x x)) (/.f64 (-.f64 (/.f64 #s(literal -8 binary64) (pow.f64 x #s(literal 3 binary64))) (/.f64 #s(literal -16 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) y))) y)) y)) (/.f64 #s(literal 2 binary64) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ (* -1 (/ (- (* 4 (/ 1 (pow x 2))) (* 8 (/ 1 (* (pow x 3) y)))) y)) (* 2 (/ 1 x)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) y) (/.f64 (/.f64 #s(literal -8 binary64) (*.f64 y y)) x)) x) #s(literal -2 binary64)) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ (- (* 8 (/ 1 (pow x 3))) (* 16 (/ 1 (* (pow x 4) y)))) y)) (* 4 (/ 1 (pow x 2)))) y)) (* 2 (/ 1 x)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (-.f64 (/.f64 (/.f64 (-.f64 (/.f64 #s(literal -16 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) y)) (/.f64 #s(literal -8 binary64) (pow.f64 x #s(literal 3 binary64)))) y) y) (/.f64 (-.f64 (/.f64 #s(literal 4 binary64) (*.f64 y x)) #s(literal 2 binary64)) x)))

rewrite83.0ms (1.7%)

Memory
-23.2MiB live, 117.8MiB allocated; 13ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0935
01435
15435
038732
Stop Event
iter limit
iter limit
iter limit
unsound
iter limit
Counts
5 → 47
Calls
Call 1
Inputs
(+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
(/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64))))
(/.f64 (*.f64 x y) #s(literal 2 binary64))
(*.f64 x y)
Outputs
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 y x) #s(literal 2 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (-.f64 (/.f64 (*.f64 y x) #s(literal 2 binary64)) #s(literal 1 binary64)))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (/.f64 (*.f64 y x) #s(literal 2 binary64)) #s(literal 2 binary64)))) (neg.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 y x) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (/.f64 (*.f64 y x) #s(literal 2 binary64)) #s(literal 3 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (/.f64 (*.f64 y x) #s(literal 2 binary64)) (-.f64 (/.f64 (*.f64 y x) #s(literal 2 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (/.f64 (*.f64 y x) #s(literal 2 binary64)) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 y x) #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 (/.f64 (*.f64 y x) #s(literal 2 binary64)) #s(literal 3 binary64)) #s(literal 1 binary64)) (+.f64 (pow.f64 (/.f64 (*.f64 y x) #s(literal 2 binary64)) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 y x) #s(literal 2 binary64)))))
(/.f64 (+.f64 (pow.f64 (/.f64 (*.f64 y x) #s(literal 2 binary64)) #s(literal 3 binary64)) #s(literal 1 binary64)) (fma.f64 (/.f64 (*.f64 y x) #s(literal 2 binary64)) (-.f64 (/.f64 (*.f64 y x) #s(literal 2 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal 1 binary64) x) (/.f64 y #s(literal 2 binary64)) #s(literal 1 binary64))
(fma.f64 (/.f64 y #s(literal 2 binary64)) x #s(literal 1 binary64))
(fma.f64 (/.f64 (*.f64 y x) #s(literal 2 binary64)) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 y (/.f64 x #s(literal 2 binary64)) #s(literal 1 binary64))
(fma.f64 x (/.f64 y #s(literal 2 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (/.f64 (*.f64 y x) #s(literal 2 binary64)) #s(literal 1 binary64))
(-.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 y x) #s(literal 2 binary64)))) (/.f64 (pow.f64 (/.f64 (*.f64 y x) #s(literal 2 binary64)) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 y x) #s(literal 2 binary64)))))
(-.f64 (/.f64 (*.f64 y x) #s(literal 2 binary64)) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 x) (/.f64 y #s(literal 2 binary64))))
(+.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (/.f64 (*.f64 y x) #s(literal 2 binary64)) (-.f64 (/.f64 (*.f64 y x) #s(literal 2 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))) (/.f64 (pow.f64 (/.f64 (*.f64 y x) #s(literal 2 binary64)) #s(literal 3 binary64)) (fma.f64 (/.f64 (*.f64 y x) #s(literal 2 binary64)) (-.f64 (/.f64 (*.f64 y x) #s(literal 2 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))))
(+.f64 (/.f64 (*.f64 y x) #s(literal 2 binary64)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y x) #s(literal 2 binary64)))
(/.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (/.f64 y (fma.f64 (/.f64 y #s(literal 2 binary64)) x #s(literal 1 binary64))) #s(literal 2 binary64)))) (neg.f64 (+.f64 (/.f64 y (fma.f64 (/.f64 y #s(literal 2 binary64)) x #s(literal 1 binary64))) x)))
(/.f64 (neg.f64 (-.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (/.f64 y (fma.f64 (/.f64 y #s(literal 2 binary64)) x #s(literal 1 binary64))) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (/.f64 y (fma.f64 (/.f64 y #s(literal 2 binary64)) x #s(literal 1 binary64))) (+.f64 (/.f64 y (fma.f64 (/.f64 y #s(literal 2 binary64)) x #s(literal 1 binary64))) x) (*.f64 x x))))
(/.f64 (-.f64 (*.f64 x x) (pow.f64 (/.f64 y (fma.f64 (/.f64 y #s(literal 2 binary64)) x #s(literal 1 binary64))) #s(literal 2 binary64))) (+.f64 (/.f64 y (fma.f64 (/.f64 y #s(literal 2 binary64)) x #s(literal 1 binary64))) x))
(/.f64 (-.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (/.f64 y (fma.f64 (/.f64 y #s(literal 2 binary64)) x #s(literal 1 binary64))) #s(literal 3 binary64))) (fma.f64 (/.f64 y (fma.f64 (/.f64 y #s(literal 2 binary64)) x #s(literal 1 binary64))) (+.f64 (/.f64 y (fma.f64 (/.f64 y #s(literal 2 binary64)) x #s(literal 1 binary64))) x) (*.f64 x x)))
(-.f64 (/.f64 (*.f64 x x) (+.f64 (/.f64 y (fma.f64 (/.f64 y #s(literal 2 binary64)) x #s(literal 1 binary64))) x)) (/.f64 (pow.f64 (/.f64 y (fma.f64 (/.f64 y #s(literal 2 binary64)) x #s(literal 1 binary64))) #s(literal 2 binary64)) (+.f64 (/.f64 y (fma.f64 (/.f64 y #s(literal 2 binary64)) x #s(literal 1 binary64))) x)))
(-.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 (/.f64 y (fma.f64 (/.f64 y #s(literal 2 binary64)) x #s(literal 1 binary64))) (+.f64 (/.f64 y (fma.f64 (/.f64 y #s(literal 2 binary64)) x #s(literal 1 binary64))) x) (*.f64 x x))) (/.f64 (pow.f64 (/.f64 y (fma.f64 (/.f64 y #s(literal 2 binary64)) x #s(literal 1 binary64))) #s(literal 3 binary64)) (fma.f64 (/.f64 y (fma.f64 (/.f64 y #s(literal 2 binary64)) x #s(literal 1 binary64))) (+.f64 (/.f64 y (fma.f64 (/.f64 y #s(literal 2 binary64)) x #s(literal 1 binary64))) x) (*.f64 x x))))
(-.f64 x (/.f64 y (fma.f64 (/.f64 y #s(literal 2 binary64)) x #s(literal 1 binary64))))
(*.f64 (/.f64 y (-.f64 #s(literal 1 binary64) (pow.f64 (/.f64 (*.f64 y x) #s(literal 2 binary64)) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 y x) #s(literal 2 binary64))))
(*.f64 (/.f64 y (+.f64 (pow.f64 (/.f64 (*.f64 y x) #s(literal 2 binary64)) #s(literal 3 binary64)) #s(literal 1 binary64))) (fma.f64 (/.f64 (*.f64 y x) #s(literal 2 binary64)) (-.f64 (/.f64 (*.f64 y x) #s(literal 2 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64)))
(/.f64 (neg.f64 (neg.f64 y)) (neg.f64 (neg.f64 (fma.f64 (/.f64 y #s(literal 2 binary64)) x #s(literal 1 binary64)))))
(/.f64 (neg.f64 y) (neg.f64 (fma.f64 (/.f64 y #s(literal 2 binary64)) x #s(literal 1 binary64))))
(/.f64 y (fma.f64 (/.f64 y #s(literal 2 binary64)) x #s(literal 1 binary64)))
(neg.f64 (/.f64 (neg.f64 y) (fma.f64 (/.f64 y #s(literal 2 binary64)) x #s(literal 1 binary64))))
(neg.f64 (/.f64 y (neg.f64 (fma.f64 (/.f64 y #s(literal 2 binary64)) x #s(literal 1 binary64)))))
(*.f64 (*.f64 #s(literal 1 binary64) x) (/.f64 y #s(literal 2 binary64)))
(*.f64 (/.f64 y #s(literal 2 binary64)) x)
(*.f64 (/.f64 (*.f64 y x) #s(literal 2 binary64)) #s(literal 1 binary64))
(*.f64 y (/.f64 x #s(literal 2 binary64)))
(*.f64 x (/.f64 y #s(literal 2 binary64)))
(*.f64 #s(literal 1 binary64) (/.f64 (*.f64 y x) #s(literal 2 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 x) y)) #s(literal -2 binary64))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 y x)) #s(literal 2 binary64))
(/.f64 (neg.f64 (*.f64 (neg.f64 x) y)) #s(literal 2 binary64))
(/.f64 (*.f64 (neg.f64 x) y) #s(literal -2 binary64))
(/.f64 (*.f64 y x) #s(literal 2 binary64))
(neg.f64 (/.f64 (*.f64 (neg.f64 x) y) #s(literal 2 binary64)))
(neg.f64 (/.f64 (*.f64 y x) #s(literal -2 binary64)))
(*.f64 y x)
(*.f64 x y)

eval11.0ms (0.2%)

Memory
-14.7MiB live, 31.9MiB allocated; 2ms collecting garbage
Compiler

Compiled 1 699 to 384 computations (77.4% saved)

prune5.0ms (0.1%)

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

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New73881
Fresh000
Picked101
Done000
Total74882
Accuracy
100.0%
Counts
82 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))))
99.8%
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) (-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y))))))
58.2%
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)))
62.6%
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)))
75.5%
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y))
62.4%
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y x))
24.0%
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (neg.f64 y))
64.6%
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x)
Compiler

Compiled 274 to 210 computations (23.4% saved)

simplify142.0ms (2.9%)

Memory
8.0MiB live, 194.9MiB allocated; 23ms collecting garbage
Localize:

Found 15 expressions of interest:

NewMetricScoreProgram
cost-diff0
(/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) (-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y)))))
cost-diff0
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) (-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y))))))
cost-diff1
(-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y))
cost-diff1
(*.f64 (neg.f64 y) (-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y)))
cost-diff0
(*.f64 #s(literal 1/2 binary64) y)
cost-diff0
(fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64))
cost-diff0
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y x)
cost-diff0
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y x))
cost-diff0
#s(approx (/ y (+ 1 (/ (* x y) 2))) y)
cost-diff0
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y))
cost-diff0
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x)
cost-diff0
(fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64))
cost-diff0
#s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))
cost-diff0
(/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64))))
cost-diff0
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
032233
050233
169233
2117233
3274233
4725223
53062219
67056219
08294214
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))))
x
(/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64))))
y
#s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64))
#s(literal 1/2 binary64)
(*.f64 y x)
#s(literal 1 binary64)
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x)
x
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y))
x
#s(approx (/ y (+ 1 (/ (* x y) 2))) y)
y
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y x))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y x)
(fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64))
(*.f64 #s(literal 1/2 binary64) y)
#s(literal 1/2 binary64)
y
x
#s(literal -1 binary64)
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) (-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y))))))
x
(/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) (-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y)))))
y
#s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) (-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y))))
(*.f64 (neg.f64 y) (-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y)))
(neg.f64 y)
(-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y))
(*.f64 #s(literal -1/2 binary64) x)
#s(literal -1/2 binary64)
(/.f64 #s(literal 1 binary64) y)
#s(literal 1 binary64)
Outputs
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))))
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (fma.f64 y x #s(literal 2 binary64)) #s(literal 1/2 binary64)))))
x
(/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64))))
(/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (fma.f64 y x #s(literal 2 binary64)) #s(literal 1/2 binary64))))
y
#s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))
#s(approx (+ 1 (/ (* x y) 2)) (*.f64 (fma.f64 y x #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64))
(*.f64 (fma.f64 y x #s(literal 2 binary64)) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(*.f64 y x)
#s(literal 1 binary64)
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x)
x
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y))
x
#s(approx (/ y (+ 1 (/ (* x y) 2))) y)
y
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y x))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y x)
(fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64))
(*.f64 #s(literal 1/2 binary64) y)
#s(literal 1/2 binary64)
y
x
#s(literal -1 binary64)
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) (-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y))))))
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (fma.f64 #s(literal 1/2 binary64) x (/.f64 #s(literal 1 binary64) y)) y))))
x
(/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) (-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y)))))
(/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (fma.f64 #s(literal 1/2 binary64) x (/.f64 #s(literal 1 binary64) y)) y)))
y
#s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) (-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y))))
#s(approx (+ 1 (/ (* x y) 2)) (*.f64 (fma.f64 #s(literal 1/2 binary64) x (/.f64 #s(literal 1 binary64) y)) y))
(*.f64 (neg.f64 y) (-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) x (/.f64 #s(literal 1 binary64) y)) y)
(neg.f64 y)
(-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y))
(fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal -1 binary64) y))
(*.f64 #s(literal -1/2 binary64) x)
#s(literal -1/2 binary64)
(/.f64 #s(literal 1 binary64) y)
#s(literal 1 binary64)

localize104.0ms (2.2%)

Memory
24.9MiB live, 196.9MiB allocated; 50ms collecting garbage
Localize:

Found 15 expressions of interest:

NewMetricScoreProgram
accuracy0.00390625
(-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y))
accuracy0.010097509768442016
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) (-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y))))))
accuracy0.10546875
(*.f64 (neg.f64 y) (-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y)))
accuracy7.399703634726763
(/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) (-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y)))))
accuracy0.0
(fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64))
accuracy0.0
(*.f64 #s(literal 1/2 binary64) y)
accuracy0.02734375
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y x)
accuracy24.033237869414233
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y x))
accuracy0.010097509768442016
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y))
accuracy30.952102369910083
#s(approx (/ y (+ 1 (/ (* x y) 2))) y)
accuracy22.62506694084114
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x)
accuracy0.0
(*.f64 y x)
accuracy0.0
#s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))
accuracy0.010097509768442016
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))))
accuracy7.399703634726763
(/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64))))
Samples
59.0ms255×0valid
1.0ms2valid
Compiler

Compiled 169 to 27 computations (84% saved)

Precisions
Click to see histograms. Total time spent on operations: 35.0ms
ival-mult: 13.0ms (37.6% of total)
ival-div: 12.0ms (34.7% of total)
ival-add: 5.0ms (14.5% of total)
ival-sub: 3.0ms (8.7% of total)
exact: 1.0ms (2.9% of total)
ival-neg: 1.0ms (2.9% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series31.0ms (0.7%)

Memory
-6.0MiB live, 53.4MiB allocated; 27ms collecting garbage
Counts
16 → 87
Calls
Call 1
Inputs
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))))
(/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64))))
#s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x)
(-.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)))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y x))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y x)
(fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64))
(*.f64 #s(literal 1/2 binary64) y)
(*.f64 (neg.f64 y) (-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y)))
(-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y))
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) (-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y))))))
(/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) (-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y)))))
(*.f64 y x)
Outputs
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (* 1/2 (pow y 2)))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (+ (* -1/4 (* x (pow y 3))) (* 1/2 (pow y 2))))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (+ (* 1/2 (pow y 2)) (* x (+ (* -1/4 (pow y 3)) (* 1/8 (* x (pow y 4)))))))) y)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* -1/2 (* x (pow y 2))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* x (- (* 1/4 (* x (pow y 3))) (* 1/2 (pow y 2)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* x (- (* x (- (* -1/8 (* x (pow y 4))) (* -1/4 (pow y 3)))) (* 1/2 (pow y 2)))))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 1))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (+ 1 (* 1/2 (* x y)))))
#s(approx (+ (* 1/2 (* y x)) 1) #s(hole binary64 1))
#s(approx (+ (* 1/2 (* y x)) 1) #s(hole binary64 (+ 1 (* 1/2 (* x y)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* -1 y)))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (+ (* -1 y) (* x (+ 1 (* 1/2 (pow y 2)))))))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 -1))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (- (* 1/2 (* x y)) 1)))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 1))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (+ 1 (* 1/2 (* x y)))))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (/ -1 y)))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (- (* -1/2 x) (/ 1 y))))
#s(approx (* y x) #s(hole binary64 (* x y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- 1 (* 2 (/ 1 (pow x 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- (+ 1 (/ 4 (* (pow x 3) y))) (* 2 (/ 1 (pow x 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- (+ 1 (* 4 (/ 1 (* (pow x 3) y)))) (+ (* 8 (/ 1 (* (pow x 4) (pow y 2)))) (* 2 (/ 1 (pow x 2))))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ 2 x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- 2 (* 4 (/ 1 (* x y)))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- (+ 2 (/ 8 (* (pow x 2) (pow y 2)))) (/ 4 (* x y))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- (+ 2 (* 8 (/ 1 (* (pow x 2) (pow y 2))))) (+ (* 16 (/ 1 (* (pow x 3) (pow y 3)))) (/ 4 (* x y)))) x)))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* x (+ (* 1/2 y) (/ 1 x)))))
#s(approx (+ (* 1/2 (* y x)) 1) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (+ (* 1/2 (* y x)) 1) #s(hole binary64 (* x (+ (* 1/2 y) (/ 1 x)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* x (+ 1 (* 1/2 (pow y 2))))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* x (+ 1 (+ (* -1 (/ y x)) (* 1/2 (pow y 2)))))))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* x (- (* 1/2 y) (/ 1 x)))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* x (+ (* 1/2 y) (/ 1 x)))))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (* -1/2 x)))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (* -1 (* x (+ 1/2 (/ 1 (* x y)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) (+ 1 (/ 4 (* (pow x 3) y))))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (+ (* -1 (/ (- (* 4 (/ 1 y)) (* 8 (/ 1 (* x (pow y 2))))) (pow x 3))) (* 2 (/ 1 (pow x 2)))) 1)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* 4 (/ 1 (* x y))) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* -1 (/ (- (* 8 (/ 1 (* x (pow y 2)))) (* 4 (/ 1 y))) x)) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* -1 (/ (- (* -1 (/ (- (* 16 (/ 1 (* x (pow y 3)))) (* 8 (/ 1 (pow y 2)))) x)) (* 4 (/ 1 y))) x)) 2) x))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* -1 (* x (- (* -1/2 y) (/ 1 x))))))
#s(approx (+ (* 1/2 (* y x)) 1) #s(hole binary64 (* -1 (* x (- (* -1/2 y) (/ 1 x))))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* -1 (* x (- (* -1/2 (pow y 2)) 1)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* -1 (* x (- (+ (* -1/2 (pow y 2)) (/ y x)) 1)))))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* -1 (* x (+ (* -1/2 y) (/ 1 x))))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* -1 (* x (- (* -1/2 y) (/ 1 x))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* -1 y))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* y (- (* 1/2 (* x y)) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* y (- (* y (+ (* -1/4 (* (pow x 2) y)) (* 1/2 x))) 1)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* -1/2 (* x y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* y (- (* 1/4 (* (pow x 2) y)) (* 1/2 x)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* y (- (* y (- (* -1/8 (* (pow x 3) y)) (* -1/4 (pow x 2)))) (* 1/2 x)))))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 x))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (+ x (* -1 y))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (+ x (* y (- (* 1/2 (* x y)) 1)))))
#s(approx (* 1/2 y) #s(hole binary64 (* 1/2 y)))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (/ (- (* -1/2 (* x y)) 1) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- x (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* 4 (/ 1 (* (pow x 2) y)))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (/ 4 (* (pow x 2) y))) (+ (* 2 (/ 1 x)) (/ 8 (* (pow x 3) (pow y 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (+ (* 16 (/ 1 (* (pow x 4) (pow y 3)))) (/ 4 (* (pow x 2) y)))) (+ (* 2 (/ 1 x)) (* 8 (/ 1 (* (pow x 3) (pow y 2))))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (* 2 (/ 1 x)) (* 4 (/ 1 (* (pow x 2) y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (+ (* 2 (/ 1 x)) (/ 8 (* (pow x 3) (pow y 2)))) (/ 4 (* (pow x 2) y)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (+ (* 2 (/ 1 x)) (* 8 (/ 1 (* (pow x 3) (pow y 2))))) (+ (* 16 (/ 1 (* (pow x 4) (pow y 3)))) (/ 4 (* (pow x 2) y))))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* y (+ (* 1/2 x) (/ 1 y)))))
#s(approx (+ (* 1/2 (* y x)) 1) #s(hole binary64 (* y (+ (* 1/2 x) (/ 1 y)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* 1/2 (* x (pow y 2)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* (pow y 2) (- (* 1/2 x) (/ 1 y)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* (pow y 2) (- (+ (* 1/2 x) (/ x (pow y 2))) (/ 1 y)))))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* y (- (* 1/2 x) (/ 1 y)))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* y (+ (* 1/2 x) (/ 1 y)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* -1 (/ (- (* 8 (/ 1 (* (pow x 3) y))) (* 4 (/ 1 (pow x 2)))) y))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* -1 (/ (- (* -1 (/ (- (* 16 (/ 1 (* (pow x 4) y))) (* 8 (/ 1 (pow x 3)))) y)) (* 4 (/ 1 (pow x 2)))) y))) (* 2 (/ 1 x)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ (* -1 (/ (- (* 4 (/ 1 (pow x 2))) (* 8 (/ 1 (* (pow x 3) y)))) y)) (* 2 (/ 1 x)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ (- (* 8 (/ 1 (pow x 3))) (* 16 (/ 1 (* (pow x 4) y)))) y)) (* 4 (/ 1 (pow x 2)))) y)) (* 2 (/ 1 x)))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* -1 (* y (- (* -1/2 x) (/ 1 y))))))
#s(approx (+ (* 1/2 (* y x)) 1) #s(hole binary64 (* -1 (* y (- (* -1/2 x) (/ 1 y))))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* (pow y 2) (+ (* -1 (/ (+ 1 (* -1 (/ x y))) y)) (* 1/2 x)))))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* -1 (* y (+ (* -1/2 x) (/ 1 y))))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* -1 (* y (- (* -1/2 x) (/ 1 y))))))
Calls

6 calls:

TimeVariablePointExpression
19.0ms
y
@0
((- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (+ 1 (/ (* x y) 2)) (+ (* 1/2 (* y x)) 1) (- x (/ y (+ 1 (/ (* x y) 2)))) (- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (- x (/ y (+ 1 (/ (* x y) 2)))) (+ (* (+ (* (* 1/2 y) x) -1) y) x) (+ (* (* 1/2 y) x) -1) (* 1/2 y) (* (neg y) (- (* -1/2 x) (/ 1 y))) (- (* -1/2 x) (/ 1 y)) (- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (* y x))
3.0ms
x
@inf
((- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (+ 1 (/ (* x y) 2)) (+ (* 1/2 (* y x)) 1) (- x (/ y (+ 1 (/ (* x y) 2)))) (- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (- x (/ y (+ 1 (/ (* x y) 2)))) (+ (* (+ (* (* 1/2 y) x) -1) y) x) (+ (* (* 1/2 y) x) -1) (* 1/2 y) (* (neg y) (- (* -1/2 x) (/ 1 y))) (- (* -1/2 x) (/ 1 y)) (- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (* y x))
2.0ms
y
@inf
((- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (+ 1 (/ (* x y) 2)) (+ (* 1/2 (* y x)) 1) (- x (/ y (+ 1 (/ (* x y) 2)))) (- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (- x (/ y (+ 1 (/ (* x y) 2)))) (+ (* (+ (* (* 1/2 y) x) -1) y) x) (+ (* (* 1/2 y) x) -1) (* 1/2 y) (* (neg y) (- (* -1/2 x) (/ 1 y))) (- (* -1/2 x) (/ 1 y)) (- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (* y x))
2.0ms
y
@-inf
((- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (+ 1 (/ (* x y) 2)) (+ (* 1/2 (* y x)) 1) (- x (/ y (+ 1 (/ (* x y) 2)))) (- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (- x (/ y (+ 1 (/ (* x y) 2)))) (+ (* (+ (* (* 1/2 y) x) -1) y) x) (+ (* (* 1/2 y) x) -1) (* 1/2 y) (* (neg y) (- (* -1/2 x) (/ 1 y))) (- (* -1/2 x) (/ 1 y)) (- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (* y x))
2.0ms
x
@-inf
((- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (+ 1 (/ (* x y) 2)) (+ (* 1/2 (* y x)) 1) (- x (/ y (+ 1 (/ (* x y) 2)))) (- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (- x (/ y (+ 1 (/ (* x y) 2)))) (+ (* (+ (* (* 1/2 y) x) -1) y) x) (+ (* (* 1/2 y) x) -1) (* 1/2 y) (* (neg y) (- (* -1/2 x) (/ 1 y))) (- (* -1/2 x) (/ 1 y)) (- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (* y x))

simplify175.0ms (3.6%)

Memory
15.6MiB live, 201.3MiB allocated; 74ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03741854
19631829
229901808
083631652
Stop Event
iter limit
node limit
Counts
87 → 87
Calls
Call 1
Inputs
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (* 1/2 (pow y 2)))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (+ (* -1/4 (* x (pow y 3))) (* 1/2 (pow y 2))))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (+ (* 1/2 (pow y 2)) (* x (+ (* -1/4 (pow y 3)) (* 1/8 (* x (pow y 4)))))))) y)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* -1/2 (* x (pow y 2))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* x (- (* 1/4 (* x (pow y 3))) (* 1/2 (pow y 2)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* x (- (* x (- (* -1/8 (* x (pow y 4))) (* -1/4 (pow y 3)))) (* 1/2 (pow y 2)))))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 1))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (+ 1 (* 1/2 (* x y)))))
#s(approx (+ (* 1/2 (* y x)) 1) #s(hole binary64 1))
#s(approx (+ (* 1/2 (* y x)) 1) #s(hole binary64 (+ 1 (* 1/2 (* x y)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* -1 y)))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (+ (* -1 y) (* x (+ 1 (* 1/2 (pow y 2)))))))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 -1))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (- (* 1/2 (* x y)) 1)))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 1))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (+ 1 (* 1/2 (* x y)))))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (/ -1 y)))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (- (* -1/2 x) (/ 1 y))))
#s(approx (* y x) #s(hole binary64 (* x y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- 1 (* 2 (/ 1 (pow x 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- (+ 1 (/ 4 (* (pow x 3) y))) (* 2 (/ 1 (pow x 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- (+ 1 (* 4 (/ 1 (* (pow x 3) y)))) (+ (* 8 (/ 1 (* (pow x 4) (pow y 2)))) (* 2 (/ 1 (pow x 2))))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ 2 x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- 2 (* 4 (/ 1 (* x y)))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- (+ 2 (/ 8 (* (pow x 2) (pow y 2)))) (/ 4 (* x y))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- (+ 2 (* 8 (/ 1 (* (pow x 2) (pow y 2))))) (+ (* 16 (/ 1 (* (pow x 3) (pow y 3)))) (/ 4 (* x y)))) x)))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* x (+ (* 1/2 y) (/ 1 x)))))
#s(approx (+ (* 1/2 (* y x)) 1) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (+ (* 1/2 (* y x)) 1) #s(hole binary64 (* x (+ (* 1/2 y) (/ 1 x)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* x (+ 1 (* 1/2 (pow y 2))))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* x (+ 1 (+ (* -1 (/ y x)) (* 1/2 (pow y 2)))))))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* x (- (* 1/2 y) (/ 1 x)))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* x (+ (* 1/2 y) (/ 1 x)))))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (* -1/2 x)))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (* -1 (* x (+ 1/2 (/ 1 (* x y)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) (+ 1 (/ 4 (* (pow x 3) y))))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (+ (* -1 (/ (- (* 4 (/ 1 y)) (* 8 (/ 1 (* x (pow y 2))))) (pow x 3))) (* 2 (/ 1 (pow x 2)))) 1)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* 4 (/ 1 (* x y))) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* -1 (/ (- (* 8 (/ 1 (* x (pow y 2)))) (* 4 (/ 1 y))) x)) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* -1 (/ (- (* -1 (/ (- (* 16 (/ 1 (* x (pow y 3)))) (* 8 (/ 1 (pow y 2)))) x)) (* 4 (/ 1 y))) x)) 2) x))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* -1 (* x (- (* -1/2 y) (/ 1 x))))))
#s(approx (+ (* 1/2 (* y x)) 1) #s(hole binary64 (* -1 (* x (- (* -1/2 y) (/ 1 x))))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* -1 (* x (- (* -1/2 (pow y 2)) 1)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* -1 (* x (- (+ (* -1/2 (pow y 2)) (/ y x)) 1)))))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* -1 (* x (+ (* -1/2 y) (/ 1 x))))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* -1 (* x (- (* -1/2 y) (/ 1 x))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* -1 y))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* y (- (* 1/2 (* x y)) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* y (- (* y (+ (* -1/4 (* (pow x 2) y)) (* 1/2 x))) 1)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* -1/2 (* x y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* y (- (* 1/4 (* (pow x 2) y)) (* 1/2 x)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* y (- (* y (- (* -1/8 (* (pow x 3) y)) (* -1/4 (pow x 2)))) (* 1/2 x)))))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 x))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (+ x (* -1 y))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (+ x (* y (- (* 1/2 (* x y)) 1)))))
#s(approx (* 1/2 y) #s(hole binary64 (* 1/2 y)))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (/ (- (* -1/2 (* x y)) 1) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- x (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* 4 (/ 1 (* (pow x 2) y)))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (/ 4 (* (pow x 2) y))) (+ (* 2 (/ 1 x)) (/ 8 (* (pow x 3) (pow y 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (+ (* 16 (/ 1 (* (pow x 4) (pow y 3)))) (/ 4 (* (pow x 2) y)))) (+ (* 2 (/ 1 x)) (* 8 (/ 1 (* (pow x 3) (pow y 2))))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (* 2 (/ 1 x)) (* 4 (/ 1 (* (pow x 2) y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (+ (* 2 (/ 1 x)) (/ 8 (* (pow x 3) (pow y 2)))) (/ 4 (* (pow x 2) y)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (+ (* 2 (/ 1 x)) (* 8 (/ 1 (* (pow x 3) (pow y 2))))) (+ (* 16 (/ 1 (* (pow x 4) (pow y 3)))) (/ 4 (* (pow x 2) y))))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* y (+ (* 1/2 x) (/ 1 y)))))
#s(approx (+ (* 1/2 (* y x)) 1) #s(hole binary64 (* y (+ (* 1/2 x) (/ 1 y)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* 1/2 (* x (pow y 2)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* (pow y 2) (- (* 1/2 x) (/ 1 y)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* (pow y 2) (- (+ (* 1/2 x) (/ x (pow y 2))) (/ 1 y)))))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* y (- (* 1/2 x) (/ 1 y)))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* y (+ (* 1/2 x) (/ 1 y)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* -1 (/ (- (* 8 (/ 1 (* (pow x 3) y))) (* 4 (/ 1 (pow x 2)))) y))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* -1 (/ (- (* -1 (/ (- (* 16 (/ 1 (* (pow x 4) y))) (* 8 (/ 1 (pow x 3)))) y)) (* 4 (/ 1 (pow x 2)))) y))) (* 2 (/ 1 x)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ (* -1 (/ (- (* 4 (/ 1 (pow x 2))) (* 8 (/ 1 (* (pow x 3) y)))) y)) (* 2 (/ 1 x)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ (- (* 8 (/ 1 (pow x 3))) (* 16 (/ 1 (* (pow x 4) y)))) y)) (* 4 (/ 1 (pow x 2)))) y)) (* 2 (/ 1 x)))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* -1 (* y (- (* -1/2 x) (/ 1 y))))))
#s(approx (+ (* 1/2 (* y x)) 1) #s(hole binary64 (* -1 (* y (- (* -1/2 x) (/ 1 y))))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* (pow y 2) (+ (* -1 (/ (+ 1 (* -1 (/ x y))) y)) (* 1/2 x)))))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* -1 (* y (+ (* -1/2 x) (/ 1 y))))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* -1 (* y (- (* -1/2 x) (/ 1 y))))))
Outputs
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (neg.f64 y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (* 1/2 (pow y 2)))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (+ (* -1/4 (* x (pow y 3))) (* 1/2 (pow y 2))))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (fma.f64 (*.f64 (pow.f64 y #s(literal 3 binary64)) x) #s(literal -1/4 binary64) (fma.f64 (*.f64 y y) #s(literal 1/2 binary64) #s(literal 1 binary64))) x (neg.f64 y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (+ (* 1/2 (pow y 2)) (* x (+ (* -1/4 (pow y 3)) (* 1/8 (* x (pow y 4)))))))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 (pow.f64 y #s(literal 4 binary64)) x) #s(literal 1/8 binary64) (*.f64 (pow.f64 y #s(literal 3 binary64)) #s(literal -1/4 binary64))) x (fma.f64 (*.f64 y y) #s(literal 1/2 binary64) #s(literal 1 binary64))) x (neg.f64 y)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) y)
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* -1/2 (* x (pow y 2))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (fma.f64 (*.f64 (*.f64 y y) x) #s(literal -1/2 binary64) y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* x (- (* 1/4 (* x (pow y 3))) (* 1/2 (pow y 2)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (fma.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 y y) (*.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 y #s(literal 3 binary64)) x))) x y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* x (- (* x (- (* -1/8 (* x (pow y 4))) (* -1/4 (pow y 3)))) (* 1/2 (pow y 2)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (pow.f64 y #s(literal 4 binary64)) x) (*.f64 #s(literal 1/4 binary64) (pow.f64 y #s(literal 3 binary64)))) x (*.f64 (*.f64 #s(literal -1/2 binary64) y) y)) x y))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 1))
#s(approx (+ 1 (/ (* x y) 2)) #s(literal 1 binary64))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (+ 1 (* 1/2 (* x y)))))
#s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))
#s(approx (+ (* 1/2 (* y x)) 1) #s(hole binary64 1))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(literal 1 binary64))
#s(approx (+ (* 1/2 (* y x)) 1) #s(hole binary64 (+ 1 (* 1/2 (* x y)))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* -1 y)))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (neg.f64 y))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (+ (* -1 y) (* x (+ 1 (* 1/2 (pow y 2)))))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y x))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 -1))
#s(approx (+ (* (* 1/2 y) x) -1) #s(literal -1 binary64))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (- (* 1/2 (* x y)) 1)))
#s(approx (+ (* (* 1/2 y) x) -1) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 1))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(literal 1 binary64))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (+ 1 (* 1/2 (* x y)))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (/ -1 y)))
#s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (- (* -1/2 x) (/ 1 y))))
#s(approx (- (* -1/2 x) (/ 1 y)) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal -1 binary64) y)))
#s(approx (* y x) #s(hole binary64 (* x y)))
#s(approx (* y x) (*.f64 y x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x)
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- 1 (* 2 (/ 1 (pow x 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- (+ 1 (/ 4 (* (pow x 3) y))) (* 2 (/ 1 (pow x 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 4 binary64) (*.f64 y x)) #s(literal 2 binary64)) (*.f64 x x)) x x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- (+ 1 (* 4 (/ 1 (* (pow x 3) y)))) (+ (* 8 (/ 1 (* (pow x 4) (pow y 2)))) (* 2 (/ 1 (pow x 2))))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal 4 binary64) (*.f64 y x)) #s(literal 2 binary64)) (*.f64 x x)) (/.f64 (/.f64 #s(literal 8 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 y y))) x x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ 2 x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- 2 (* 4 (/ 1 (* x y)))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 (/.f64 #s(literal -4 binary64) y) x) #s(literal -2 binary64)) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- (+ 2 (/ 8 (* (pow x 2) (pow y 2)))) (/ 4 (* x y))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) y) (/.f64 #s(literal -8 binary64) (*.f64 (*.f64 y y) x))) x) #s(literal -2 binary64)) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- (+ 2 (* 8 (/ 1 (* (pow x 2) (pow y 2))))) (+ (* 16 (/ 1 (* (pow x 3) (pow y 3)))) (/ 4 (* x y)))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) y) (/.f64 #s(literal -8 binary64) (*.f64 (*.f64 y y) x))) x) #s(literal -2 binary64)) (/.f64 #s(literal 16 binary64) (pow.f64 (*.f64 y x) #s(literal 3 binary64)))) x))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(literal 1/2 binary64) (*.f64 y x)))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* x (+ (* 1/2 y) (/ 1 x)))))
#s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))
#s(approx (+ (* 1/2 (* y x)) 1) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) (*.f64 #s(literal 1/2 binary64) (*.f64 y x)))
#s(approx (+ (* 1/2 (* y x)) 1) #s(hole binary64 (* x (+ (* 1/2 y) (/ 1 x)))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* x (+ 1 (* 1/2 (pow y 2))))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/2 binary64) #s(literal 1 binary64)) x))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* x (+ 1 (+ (* -1 (/ y x)) (* 1/2 (pow y 2)))))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) y (/.f64 (neg.f64 y) x)) x x))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (+ (* (* 1/2 y) x) -1) (*.f64 #s(literal 1/2 binary64) (*.f64 y x)))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* x (- (* 1/2 y) (/ 1 x)))))
#s(approx (+ (* (* 1/2 y) x) -1) (*.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) y) (/.f64 #s(literal 1 binary64) x)) x))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) (*.f64 #s(literal 1/2 binary64) (*.f64 y x)))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* x (+ (* 1/2 y) (/ 1 x)))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (* -1/2 x)))
#s(approx (- (* -1/2 x) (/ 1 y)) (*.f64 #s(literal -1/2 binary64) x))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (* -1 (* x (+ 1/2 (/ 1 (* x y)))))))
#s(approx (- (* -1/2 x) (/ 1 y)) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal -1 binary64) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) (+ 1 (/ 4 (* (pow x 3) y))))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 (+.f64 (-.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) #s(literal -1 binary64)) (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y))) x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (+ (* -1 (/ (- (* 4 (/ 1 y)) (* 8 (/ 1 (* x (pow y 2))))) (pow x 3))) (* 2 (/ 1 (pow x 2)))) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 (neg.f64 x) (-.f64 (/.f64 (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) y) (/.f64 #s(literal -8 binary64) (*.f64 (*.f64 y y) x))) x) #s(literal -2 binary64)) x) x) #s(literal 1 binary64))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* 4 (/ 1 (* x y))) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 (/.f64 #s(literal -4 binary64) y) x) #s(literal -2 binary64)) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* -1 (/ (- (* 8 (/ 1 (* x (pow y 2)))) (* 4 (/ 1 y))) x)) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) y) (/.f64 #s(literal -8 binary64) (*.f64 (*.f64 y y) x))) x) #s(literal -2 binary64)) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* -1 (/ (- (* -1 (/ (- (* 16 (/ 1 (* x (pow y 3)))) (* 8 (/ 1 (pow y 2)))) x)) (* 4 (/ 1 y))) x)) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (+.f64 (/.f64 (-.f64 (/.f64 (fma.f64 (/.f64 #s(literal 16 binary64) (*.f64 (pow.f64 y #s(literal 3 binary64)) x)) #s(literal -1 binary64) (/.f64 #s(literal 8 binary64) (*.f64 y y))) x) (/.f64 #s(literal 4 binary64) y)) x) #s(literal 2 binary64)) x))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* -1 (* x (- (* -1/2 y) (/ 1 x))))))
#s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 x) (-.f64 (*.f64 #s(literal -1/2 binary64) y) (/.f64 #s(literal 1 binary64) x))))
#s(approx (+ (* 1/2 (* y x)) 1) #s(hole binary64 (* -1 (* x (- (* -1/2 y) (/ 1 x))))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) (*.f64 (neg.f64 x) (-.f64 (*.f64 #s(literal -1/2 binary64) y) (/.f64 #s(literal 1 binary64) x))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* -1 (* x (- (* -1/2 (pow y 2)) 1)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/2 binary64) #s(literal 1 binary64)) x))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* -1 (* x (- (+ (* -1/2 (pow y 2)) (/ y x)) 1)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) y (/.f64 (neg.f64 y) x)) x x))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* -1 (* x (+ (* -1/2 y) (/ 1 x))))))
#s(approx (+ (* (* 1/2 y) x) -1) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* -1 (* x (- (* -1/2 y) (/ 1 x))))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) (*.f64 (neg.f64 x) (-.f64 (*.f64 #s(literal -1/2 binary64) y) (/.f64 #s(literal 1 binary64) x))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* -1 y))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 x y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* y (- (* 1/2 (* x y)) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* y (- (* y (+ (* -1/4 (* (pow x 2) y)) (* 1/2 x))) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 x x) #s(literal -1/4 binary64)) y (*.f64 #s(literal 1/2 binary64) x)) y #s(literal -1 binary64)) y x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* -1/2 (* x y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (fma.f64 (*.f64 (*.f64 y y) x) #s(literal -1/2 binary64) y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* y (- (* 1/4 (* (pow x 2) y)) (* 1/2 x)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/4 binary64) (*.f64 #s(literal -1/2 binary64) x)) y #s(literal 1 binary64)) y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* y (- (* y (- (* -1/8 (* (pow x 3) y)) (* -1/4 (pow x 2)))) (* 1/2 x)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 x x) #s(literal 1/4 binary64) (*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) #s(literal -1/8 binary64))) y (*.f64 #s(literal -1/2 binary64) x)) y #s(literal 1 binary64)) y))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 x))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) x)
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (+ x (* -1 y))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (-.f64 x y))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (+ x (* y (- (* 1/2 (* x y)) 1)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y x))
#s(approx (* 1/2 y) #s(hole binary64 (* 1/2 y)))
#s(approx (* 1/2 y) (*.f64 #s(literal 1/2 binary64) y))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (/ (- (* -1/2 (* x y)) 1) y)))
#s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) y) x #s(literal -1 binary64)) y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- x (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 x (/.f64 #s(literal 2 binary64) x)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* 4 (/ 1 (* (pow x 2) y)))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 x (/.f64 (-.f64 (/.f64 (/.f64 #s(literal -4 binary64) y) x) #s(literal -2 binary64)) x)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (/ 4 (* (pow x 2) y))) (+ (* 2 (/ 1 x)) (/ 8 (* (pow x 3) (pow y 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (-.f64 x (/.f64 (-.f64 (/.f64 (/.f64 #s(literal -4 binary64) y) x) #s(literal -2 binary64)) x)) (/.f64 #s(literal 8 binary64) (*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) y))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (+ (* 16 (/ 1 (* (pow x 4) (pow y 3)))) (/ 4 (* (pow x 2) y)))) (+ (* 2 (/ 1 x)) (* 8 (/ 1 (* (pow x 3) (pow y 2))))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (+.f64 (+.f64 (/.f64 (/.f64 #s(literal 16 binary64) (pow.f64 y #s(literal 3 binary64))) (pow.f64 x #s(literal 4 binary64))) (-.f64 (/.f64 (-.f64 (/.f64 #s(literal 4 binary64) (*.f64 y x)) #s(literal 2 binary64)) x) (/.f64 #s(literal 8 binary64) (*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) y)))) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (* 2 (/ 1 x)) (* 4 (/ 1 (* (pow x 2) y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 (/.f64 #s(literal -4 binary64) y) x) #s(literal -2 binary64)) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (+ (* 2 (/ 1 x)) (/ 8 (* (pow x 3) (pow y 2)))) (/ 4 (* (pow x 2) y)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (+.f64 (/.f64 #s(literal 8 binary64) (*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) y)) (/.f64 (-.f64 (/.f64 (/.f64 #s(literal -4 binary64) y) x) #s(literal -2 binary64)) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (+ (* 2 (/ 1 x)) (* 8 (/ 1 (* (pow x 3) (pow y 2))))) (+ (* 16 (/ 1 (* (pow x 4) (pow y 3)))) (/ 4 (* (pow x 2) y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (-.f64 (+.f64 (/.f64 #s(literal 8 binary64) (*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) y)) (/.f64 (-.f64 (/.f64 (/.f64 #s(literal -4 binary64) y) x) #s(literal -2 binary64)) x)) (/.f64 (/.f64 #s(literal 16 binary64) (pow.f64 y #s(literal 3 binary64))) (pow.f64 x #s(literal 4 binary64)))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* y (+ (* 1/2 x) (/ 1 y)))))
#s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))
#s(approx (+ (* 1/2 (* y x)) 1) #s(hole binary64 (* y (+ (* 1/2 x) (/ 1 y)))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* 1/2 (* x (pow y 2)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 y x)) y))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* (pow y 2) (- (* 1/2 x) (/ 1 y)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* (pow y 2) (- (+ (* 1/2 x) (/ x (pow y 2))) (/ 1 y)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 #s(literal 1/2 binary64) x (/.f64 (-.f64 (/.f64 x y) #s(literal 1 binary64)) y)) (*.f64 y y)))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* y (- (* 1/2 x) (/ 1 y)))))
#s(approx (+ (* (* 1/2 y) x) -1) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* y (+ (* 1/2 x) (/ 1 y)))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* -1 (/ (- (* 8 (/ 1 (* (pow x 3) y))) (* 4 (/ 1 (pow x 2)))) y))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (-.f64 x (/.f64 (-.f64 (/.f64 (/.f64 #s(literal -4 binary64) y) x) #s(literal -2 binary64)) x)) (/.f64 #s(literal 8 binary64) (*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) y))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* -1 (/ (- (* -1 (/ (- (* 16 (/ 1 (* (pow x 4) y))) (* 8 (/ 1 (pow x 3)))) y)) (* 4 (/ 1 (pow x 2)))) y))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (-.f64 x (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 x x)) (/.f64 (-.f64 (/.f64 #s(literal -8 binary64) (pow.f64 x #s(literal 3 binary64))) (/.f64 #s(literal -16 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) y))) y)) y)) (/.f64 #s(literal 2 binary64) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ (* -1 (/ (- (* 4 (/ 1 (pow x 2))) (* 8 (/ 1 (* (pow x 3) y)))) y)) (* 2 (/ 1 x)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (+.f64 (/.f64 #s(literal 8 binary64) (*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) y)) (/.f64 (-.f64 (/.f64 (/.f64 #s(literal -4 binary64) y) x) #s(literal -2 binary64)) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ (- (* 8 (/ 1 (pow x 3))) (* 16 (/ 1 (* (pow x 4) y)))) y)) (* 4 (/ 1 (pow x 2)))) y)) (* 2 (/ 1 x)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (-.f64 (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 x x)) (/.f64 (-.f64 (/.f64 #s(literal -8 binary64) (pow.f64 x #s(literal 3 binary64))) (/.f64 #s(literal -16 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) y))) y)) y) (/.f64 #s(literal -2 binary64) x)))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* -1 (* y (- (* -1/2 x) (/ 1 y))))))
#s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))
#s(approx (+ (* 1/2 (* y x)) 1) #s(hole binary64 (* -1 (* y (- (* -1/2 x) (/ 1 y))))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* (pow y 2) (+ (* -1 (/ (+ 1 (* -1 (/ x y))) y)) (* 1/2 x)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 #s(literal 1/2 binary64) x (/.f64 (-.f64 (/.f64 x y) #s(literal 1 binary64)) y)) (*.f64 y y)))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* -1 (* y (+ (* -1/2 x) (/ 1 y))))))
#s(approx (+ (* (* 1/2 y) x) -1) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* -1 (* y (- (* -1/2 x) (/ 1 y))))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))

rewrite70.0ms (1.5%)

Memory
-8.9MiB live, 84.1MiB allocated; 17ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
032192
050192
1188192
01360183
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
16 → 132
Calls
Call 1
Inputs
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))))
(/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64))))
#s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x)
(-.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)))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y x))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y x)
(fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64))
(*.f64 #s(literal 1/2 binary64) y)
(*.f64 (neg.f64 y) (-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y)))
(-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y))
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) (-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y))))))
(/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) (-.f64 (*.f64 #s(literal -1/2 binary64) x) (/.f64 #s(literal 1 binary64) y)))))
(*.f64 y x)
Outputs
(/.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))) #s(literal 2 binary64)))) (neg.f64 (+.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))) x)))
(/.f64 (neg.f64 (-.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))) (+.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))) x) (*.f64 x x))))
(/.f64 (-.f64 (*.f64 x x) (pow.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))) #s(literal 2 binary64))) (+.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))) x))
(/.f64 (-.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))) #s(literal 3 binary64))) (fma.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))) (+.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))) x) (*.f64 x x)))
(-.f64 (/.f64 (*.f64 x x) (+.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))) x)) (/.f64 (pow.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))) #s(literal 2 binary64)) (+.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))) x)))
(-.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))) (+.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))) x) (*.f64 x x))) (/.f64 (pow.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))) #s(literal 3 binary64)) (fma.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))) (+.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))) x) (*.f64 x x))))
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))))
(/.f64 (neg.f64 (neg.f64 y)) (neg.f64 (neg.f64 #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64))))))
(/.f64 (neg.f64 y) (neg.f64 #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))))
(/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64))))
(neg.f64 (/.f64 (neg.f64 y) #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))))
(neg.f64 (/.f64 y (neg.f64 #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64))))))
#s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))
(*.f64 #s(literal -1 binary64) (-.f64 #s(literal -1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) y) x)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64))) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 y x) #s(literal -1/2 binary64))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) y) x)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 y x) #s(literal -1/2 binary64)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 y x) #s(literal -1/2 binary64))))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 y x) #s(literal 3 binary64)) #s(literal 1/8 binary64) #s(literal 1 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) y) x))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)))
(/.f64 (fma.f64 (pow.f64 (*.f64 y x) #s(literal 3 binary64)) #s(literal 1/8 binary64) #s(literal 1 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 y x) #s(literal -1/2 binary64)))))
(/.f64 (fma.f64 (pow.f64 (*.f64 y x) #s(literal 3 binary64)) #s(literal 1/8 binary64) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) y) x))))
(/.f64 (fma.f64 (pow.f64 (*.f64 y x) #s(literal 3 binary64)) #s(literal 1/8 binary64) #s(literal 1 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) y) x)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) x) y #s(literal 1 binary64))
(fma.f64 (*.f64 x #s(literal 1/2 binary64)) y #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 y x) #s(literal -1/2 binary64)) #s(literal -1 binary64) #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal 1/2 binary64) y) (*.f64 x #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64))
(fma.f64 (*.f64 y x) #s(literal 1/2 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 y x) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 1 binary64))
(fma.f64 y (*.f64 #s(literal 1/2 binary64) x) #s(literal 1 binary64))
(fma.f64 y (*.f64 x #s(literal 1/2 binary64)) #s(literal 1 binary64))
(fma.f64 x (*.f64 (*.f64 #s(literal 1/2 binary64) y) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 x (*.f64 #s(literal 1/2 binary64) y) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64))))
(-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) y)) x))
(-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (neg.f64 y) x) #s(literal 1/2 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 y x)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 x) (*.f64 #s(literal 1/2 binary64) y)))
(-.f64 #s(literal 1 binary64) (*.f64 (*.f64 y x) #s(literal -1/2 binary64)))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) y) x))) (/.f64 #s(literal 1 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) y) x))))
(+.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) y) x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x)
(/.f64 (neg.f64 (*.f64 (+.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) y) x) (-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y)))) (neg.f64 (+.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) y) x)))
(/.f64 (neg.f64 (-.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) y) #s(literal 3 binary64)))) (neg.f64 (fma.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) y) (+.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) y) x) (*.f64 x x))))
(/.f64 (*.f64 (+.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) y) x) (-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y))) (+.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) y) x))
(/.f64 (-.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) y) #s(literal 3 binary64))) (fma.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) y) (+.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) y) x) (*.f64 x x)))
(-.f64 (/.f64 (*.f64 x x) (+.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) y) x)) (/.f64 (pow.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) y) #s(literal 2 binary64)) (+.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) y) x)))
(-.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) y) (+.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) y) x) (*.f64 x x))) (/.f64 (pow.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) y) #s(literal 3 binary64)) (fma.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) y) (+.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) y) x) (*.f64 x x))))
(-.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)))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y x))
(/.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y) #s(literal 2 binary64))) (-.f64 x (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y) #s(literal 2 binary64)) (*.f64 x x))) (neg.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y) x)))
(/.f64 (neg.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y) #s(literal 3 binary64)))) (neg.f64 (fma.f64 x (-.f64 x (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y)) (pow.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y) #s(literal 2 binary64)) (*.f64 x x)) (-.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y) x))
(/.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y) #s(literal 3 binary64))) (fma.f64 x x (-.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y) #s(literal 2 binary64)) (*.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y) x))))
(/.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y) #s(literal 3 binary64))) (fma.f64 x (-.f64 x (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y)) (pow.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y) #s(literal 2 binary64))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y x)
(fma.f64 y (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) x)
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y) #s(literal 2 binary64)) (-.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y) x)) (/.f64 (*.f64 x x) (-.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y) x)))
(-.f64 x (*.f64 (neg.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64))) y))
(-.f64 x (*.f64 (neg.f64 y) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y) #s(literal 3 binary64)) (fma.f64 x (-.f64 x (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y)) (pow.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y) #s(literal 2 binary64)))) (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 x (-.f64 x (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y)) (pow.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y) #s(literal 2 binary64)))))
(+.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y) x)
(+.f64 x (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64))) (-.f64 #s(literal -1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) y) x)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 3 binary64)) #s(literal 1 binary64)) (+.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 y x) #s(literal 3 binary64)) #s(literal 1/8 binary64) #s(literal -1 binary64))) (neg.f64 (+.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))
(/.f64 (fma.f64 (pow.f64 (*.f64 y x) #s(literal 3 binary64)) #s(literal 1/8 binary64) #s(literal -1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64)) (*.f64 (*.f64 y x) #s(literal -1/2 binary64)))))
(/.f64 (fma.f64 (pow.f64 (*.f64 y x) #s(literal 3 binary64)) #s(literal 1/8 binary64) #s(literal -1 binary64)) (+.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) x) y #s(literal -1 binary64))
(fma.f64 (*.f64 x #s(literal 1/2 binary64)) y #s(literal -1 binary64))
(fma.f64 (*.f64 (*.f64 y x) #s(literal -1/2 binary64)) #s(literal -1 binary64) #s(literal -1 binary64))
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 1 binary64) #s(literal -1 binary64))
(fma.f64 (*.f64 #s(literal 1/2 binary64) y) (*.f64 x #s(literal 1 binary64)) #s(literal -1 binary64))
(fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64))
(fma.f64 (*.f64 y x) #s(literal 1/2 binary64) #s(literal -1 binary64))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 y x) #s(literal 1 binary64)) #s(literal -1 binary64))
(fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal -1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal -1 binary64))
(fma.f64 y (*.f64 #s(literal 1/2 binary64) x) #s(literal -1 binary64))
(fma.f64 y (*.f64 x #s(literal 1/2 binary64)) #s(literal -1 binary64))
(fma.f64 x (*.f64 (*.f64 #s(literal 1/2 binary64) y) #s(literal 1 binary64)) #s(literal -1 binary64))
(fma.f64 x (*.f64 #s(literal 1/2 binary64) y) #s(literal -1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64))))
(-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 1 binary64))
(-.f64 #s(literal -1 binary64) (*.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) y)) x))
(-.f64 #s(literal -1 binary64) (*.f64 (*.f64 (neg.f64 y) x) #s(literal 1/2 binary64)))
(-.f64 #s(literal -1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 y x)))
(-.f64 #s(literal -1 binary64) (*.f64 (neg.f64 x) (*.f64 #s(literal 1/2 binary64) y)))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 3 binary64)) (+.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64)))) (/.f64 #s(literal -1 binary64) (+.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal -1 binary64))
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) y) x))
(*.f64 #s(literal 1/2 binary64) y)
(*.f64 y #s(literal 1/2 binary64))
(*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))) (neg.f64 y))
(*.f64 (neg.f64 y) (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))))
(*.f64 y (neg.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64)))))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 x x)) (pow.f64 y #s(literal -2 binary64))) (neg.f64 y)) (fma.f64 #s(literal -1/2 binary64) x (pow.f64 y #s(literal -1 binary64))))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 x #s(literal 3 binary64))) (pow.f64 y #s(literal -3 binary64))) (neg.f64 y)) (fma.f64 #s(literal 1/4 binary64) (*.f64 x x) (*.f64 (pow.f64 y #s(literal -1 binary64)) (fma.f64 #s(literal -1/2 binary64) x (pow.f64 y #s(literal -1 binary64))))))
(/.f64 (*.f64 (neg.f64 y) (-.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 x x)) (pow.f64 y #s(literal -2 binary64)))) (fma.f64 #s(literal -1/2 binary64) x (pow.f64 y #s(literal -1 binary64))))
(/.f64 (*.f64 (neg.f64 y) (-.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 x #s(literal 3 binary64))) (pow.f64 y #s(literal -3 binary64)))) (fma.f64 #s(literal 1/4 binary64) (*.f64 x x) (*.f64 (pow.f64 y #s(literal -1 binary64)) (fma.f64 #s(literal -1/2 binary64) x (pow.f64 y #s(literal -1 binary64))))))
(neg.f64 (*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))) y))
(/.f64 (neg.f64 (-.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 x x)) (pow.f64 y #s(literal -2 binary64)))) (neg.f64 (fma.f64 #s(literal -1/2 binary64) x (pow.f64 y #s(literal -1 binary64)))))
(/.f64 (neg.f64 (-.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 x #s(literal 3 binary64))) (pow.f64 y #s(literal -3 binary64)))) (neg.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 x x) (*.f64 (pow.f64 y #s(literal -1 binary64)) (fma.f64 #s(literal -1/2 binary64) x (pow.f64 y #s(literal -1 binary64)))))))
(/.f64 (-.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 x x)) (pow.f64 y #s(literal -2 binary64))) (fma.f64 #s(literal -1/2 binary64) x (pow.f64 y #s(literal -1 binary64))))
(/.f64 (-.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 x #s(literal 3 binary64))) (pow.f64 y #s(literal -3 binary64))) (fma.f64 #s(literal 1/4 binary64) (*.f64 x x) (*.f64 (pow.f64 y #s(literal -1 binary64)) (fma.f64 #s(literal -1/2 binary64) x (pow.f64 y #s(literal -1 binary64))))))
(-.f64 (/.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 x x)) (fma.f64 #s(literal -1/2 binary64) x (pow.f64 y #s(literal -1 binary64)))) (/.f64 (pow.f64 y #s(literal -2 binary64)) (fma.f64 #s(literal -1/2 binary64) x (pow.f64 y #s(literal -1 binary64)))))
(-.f64 (/.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 x #s(literal 3 binary64))) (fma.f64 #s(literal 1/4 binary64) (*.f64 x x) (*.f64 (pow.f64 y #s(literal -1 binary64)) (fma.f64 #s(literal -1/2 binary64) x (pow.f64 y #s(literal -1 binary64)))))) (/.f64 (pow.f64 y #s(literal -3 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 x x) (*.f64 (pow.f64 y #s(literal -1 binary64)) (fma.f64 #s(literal -1/2 binary64) x (pow.f64 y #s(literal -1 binary64)))))))
(-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64)))
(/.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))) (neg.f64 y)))) #s(literal 2 binary64)))) (neg.f64 (+.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))) (neg.f64 y)))) x)))
(/.f64 (neg.f64 (-.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))) (neg.f64 y)))) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))) (neg.f64 y)))) (+.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))) (neg.f64 y)))) x) (*.f64 x x))))
(/.f64 (-.f64 (*.f64 x x) (pow.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))) (neg.f64 y)))) #s(literal 2 binary64))) (+.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))) (neg.f64 y)))) x))
(/.f64 (-.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))) (neg.f64 y)))) #s(literal 3 binary64))) (fma.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))) (neg.f64 y)))) (+.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))) (neg.f64 y)))) x) (*.f64 x x)))
(-.f64 (/.f64 (*.f64 x x) (+.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))) (neg.f64 y)))) x)) (/.f64 (pow.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))) (neg.f64 y)))) #s(literal 2 binary64)) (+.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))) (neg.f64 y)))) x)))
(-.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))) (neg.f64 y)))) (+.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))) (neg.f64 y)))) x) (*.f64 x x))) (/.f64 (pow.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))) (neg.f64 y)))) #s(literal 3 binary64)) (fma.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))) (neg.f64 y)))) (+.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))) (neg.f64 y)))) x) (*.f64 x x))))
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))) (neg.f64 y)))))
(/.f64 (neg.f64 (neg.f64 y)) (neg.f64 (neg.f64 #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))) (neg.f64 y))))))
(/.f64 (neg.f64 y) (neg.f64 #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))) (neg.f64 y)))))
(/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))) (neg.f64 y))))
(neg.f64 (/.f64 (neg.f64 y) #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))) (neg.f64 y)))))
(neg.f64 (/.f64 y (neg.f64 #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) x) (pow.f64 y #s(literal -1 binary64))) (neg.f64 y))))))
(*.f64 y x)
(*.f64 x y)

eval25.0ms (0.5%)

Memory
10.6MiB live, 56.5MiB allocated; 7ms collecting garbage
Compiler

Compiled 5 721 to 806 computations (85.9% saved)

prune42.0ms (0.9%)

Memory
-27.7MiB live, 28.2MiB allocated; 7ms collecting garbage
Pruning

9 alts after pruning (6 fresh and 3 done)

PrunedKeptTotal
New1843187
Fresh033
Picked235
Done000
Total1869195
Accuracy
100.0%
Counts
195 → 9
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))))
75.4%
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y))))))
58.2%
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)))
62.6%
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)))
75.5%
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y))
60.7%
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x x))
24.0%
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (neg.f64 y))
24.6%
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y)))
64.6%
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x)
Compiler

Compiled 300 to 224 computations (25.3% saved)

simplify155.0ms (3.2%)

Memory
35.8MiB live, 173.4MiB allocated; 12ms collecting garbage
Localize:

Found 17 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 x x)
cost-diff0
(/.f64 #s(literal -2 binary64) (*.f64 x x))
cost-diff0
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x x))
cost-diff3
(fma.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x x)
cost-diff0
(fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64))
cost-diff0
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y)
cost-diff0
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y))
cost-diff0
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y)))
cost-diff0
(/.f64 #s(literal 2 binary64) x)
cost-diff0
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x))
cost-diff0
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)))
cost-diff0
(neg.f64 y)
cost-diff0
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (neg.f64 y))
cost-diff0
(*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)))
cost-diff0
#s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y))))
cost-diff0
(/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)))))
cost-diff0
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y))))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
041264
056264
186264
2172258
3443258
41526258
57945258
08013243
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y))))))
x
(/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)))))
y
#s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y))))
(*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)))
(neg.f64 y)
#s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y))
(/.f64 #s(literal -1 binary64) y)
#s(literal -1 binary64)
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (neg.f64 y))
(neg.f64 y)
y
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)))
x
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x))
(/.f64 #s(literal 2 binary64) x)
#s(literal 2 binary64)
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y)))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y)
(fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64))
(*.f64 #s(literal 1/2 binary64) y)
#s(literal 1/2 binary64)
y
x
#s(literal -1 binary64)
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x x))
(fma.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x x)
(/.f64 #s(literal -2 binary64) (*.f64 x x))
#s(literal -2 binary64)
(*.f64 x x)
x
Outputs
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y))))))
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y)))))
x
(/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)))))
(/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y))))
y
#s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y))))
#s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y)))
(*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)))
(*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y))
(neg.f64 y)
#s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y))
(/.f64 #s(literal -1 binary64) y)
#s(literal -1 binary64)
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (neg.f64 y))
(neg.f64 y)
y
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)))
x
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x))
(/.f64 #s(literal 2 binary64) x)
#s(literal 2 binary64)
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y)))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y)
(fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64))
(*.f64 #s(literal 1/2 binary64) y)
#s(literal 1/2 binary64)
y
x
#s(literal -1 binary64)
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 x (/.f64 #s(literal 2 binary64) x)))
(fma.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x x)
(-.f64 x (/.f64 #s(literal 2 binary64) x))
(/.f64 #s(literal -2 binary64) (*.f64 x x))
#s(literal -2 binary64)
(*.f64 x x)
x

localize228.0ms (4.7%)

Memory
-26.2MiB live, 174.6MiB allocated; 46ms collecting garbage
Localize:

Found 17 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(*.f64 x x)
accuracy0.18020083941691079
(/.f64 #s(literal -2 binary64) (*.f64 x x))
accuracy14.091432463374934
(fma.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x x)
accuracy23.899105104760054
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x x))
accuracy0.0
(*.f64 #s(literal 1/2 binary64) y)
accuracy0.0625
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y)
accuracy24.033237869414233
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y)))
accuracy24.498110487261926
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y))
accuracy0.0
(/.f64 #s(literal 2 binary64) x)
accuracy0.010097509768442016
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)))
accuracy31.706745507178127
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x))
accuracy0.0
(neg.f64 y)
accuracy48.65888058066062
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (neg.f64 y))
accuracy0.010097509768442016
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y))))))
accuracy0.10546875
(*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)))
accuracy7.399703634726763
(/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)))))
accuracy30.925631545246375
#s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y))
Samples
177.0ms255×0valid
1.0ms2valid
Compiler

Compiled 168 to 31 computations (81.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 162.0ms
ival-add: 80.0ms (49.2% of total)
ival-mult: 53.0ms (32.6% of total)
ival-div: 24.0ms (14.8% of total)
ival-sub: 2.0ms (1.2% of total)
exact: 1.0ms (0.6% of total)
ival-neg: 1.0ms (0.6% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series41.0ms (0.8%)

Memory
-20.5MiB live, 26.4MiB allocated; 7ms collecting garbage
Counts
19 → 95
Calls
Call 1
Inputs
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y))))))
(/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)))))
#s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y))))
(*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (neg.f64 y))
(neg.f64 y)
(-.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(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y)))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y)
(fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64))
(fma.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x x)
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x x))
(/.f64 #s(literal -2 binary64) (*.f64 x x))
(*.f64 x x)
#s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y))
(*.f64 #s(literal 1/2 binary64) y)
Outputs
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (* 1/2 (pow y 2)))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (+ (* -1/4 (* x (pow y 3))) (* 1/2 (pow y 2))))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (+ (* 1/2 (pow y 2)) (* x (+ (* -1/4 (pow y 3)) (* 1/8 (* x (pow y 4)))))))) y)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* -1/2 (* x (pow y 2))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* x (- (* 1/4 (* x (pow y 3))) (* 1/2 (pow y 2)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* x (- (* x (- (* -1/8 (* x (pow y 4))) (* -1/4 (pow y 3)))) (* 1/2 (pow y 2)))))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 1))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (+ 1 (* 1/2 (* x y)))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 1))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (+ 1 (* 1/2 (* x y)))))
#s(approx (/ 2 x) #s(hole binary64 (/ 2 x)))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* -1 y)))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (+ (* -1 y) (* x (+ 1 (* 1/2 (pow y 2)))))))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) #s(hole binary64 (* -1 y)))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) #s(hole binary64 (+ (* -1 y) (* 1/2 (* x (pow y 2))))))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 -1))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (- (* 1/2 (* x y)) 1)))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 (/ -2 x)))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 (/ (- (pow x 2) 2) x)))
#s(approx (/ -2 (* x x)) #s(hole binary64 (/ -2 (pow x 2))))
#s(approx (* x x) #s(hole binary64 (pow x 2)))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (/ -1 y)))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (- (* -1/2 x) (/ 1 y))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- 1 (* 2 (/ 1 (pow x 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- (+ 1 (/ 4 (* (pow x 3) y))) (* 2 (/ 1 (pow x 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- (+ 1 (* 4 (/ 1 (* (pow x 3) y)))) (+ (* 8 (/ 1 (* (pow x 4) (pow y 2)))) (* 2 (/ 1 (pow x 2))))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ 2 x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- 2 (* 4 (/ 1 (* x y)))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- (+ 2 (/ 8 (* (pow x 2) (pow y 2)))) (/ 4 (* x y))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- (+ 2 (* 8 (/ 1 (* (pow x 2) (pow y 2))))) (+ (* 16 (/ 1 (* (pow x 3) (pow y 3)))) (/ 4 (* x y)))) x)))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* x (+ (* 1/2 y) (/ 1 x)))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* x (+ (* 1/2 y) (/ 1 x)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* x (+ 1 (* 1/2 (pow y 2))))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* x (+ 1 (+ (* -1 (/ y x)) (* 1/2 (pow y 2)))))))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) #s(hole binary64 (* 1/2 (* x (pow y 2)))))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) #s(hole binary64 (* x (+ (* -1 (/ y x)) (* 1/2 (pow y 2))))))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* x (- (* 1/2 y) (/ 1 x)))))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 x))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 (* x (- 1 (* 2 (/ 1 (pow x 2)))))))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (* -1/2 x)))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (* -1 (* x (+ 1/2 (/ 1 (* x y)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) (+ 1 (/ 4 (* (pow x 3) y))))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (+ (* -1 (/ (- (* 4 (/ 1 y)) (* 8 (/ 1 (* x (pow y 2))))) (pow x 3))) (* 2 (/ 1 (pow x 2)))) 1)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* 4 (/ 1 (* x y))) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* -1 (/ (- (* 8 (/ 1 (* x (pow y 2)))) (* 4 (/ 1 y))) x)) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* -1 (/ (- (* -1 (/ (- (* 16 (/ 1 (* x (pow y 3)))) (* 8 (/ 1 (pow y 2)))) x)) (* 4 (/ 1 y))) x)) 2) x))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* -1 (* x (- (* -1/2 y) (/ 1 x))))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* -1 (* x (- (* -1/2 y) (/ 1 x))))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* -1 (* x (- (* -1/2 (pow y 2)) 1)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* -1 (* x (- (+ (* -1/2 (pow y 2)) (/ y x)) 1)))))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) #s(hole binary64 (* -1 (* x (+ (* -1/2 (pow y 2)) (/ y x))))))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* -1 (* x (+ (* -1/2 y) (/ 1 x))))))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* -1 y))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* y (- (* 1/2 (* x y)) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* y (- (* y (+ (* -1/4 (* (pow x 2) y)) (* 1/2 x))) 1)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* -1/2 (* x y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* y (- (* 1/4 (* (pow x 2) y)) (* 1/2 x)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* y (- (* y (- (* -1/8 (* (pow x 3) y)) (* -1/4 (pow x 2)))) (* 1/2 x)))))))
#s(approx (neg y) #s(hole binary64 (* -1 y)))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 x))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (+ x (* -1 y))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (+ x (* y (- (* 1/2 (* x y)) 1)))))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) #s(hole binary64 (* y (- (* 1/2 (* x y)) 1))))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (/ (- (* -1/2 (* x y)) 1) y)))
#s(approx (* 1/2 y) #s(hole binary64 (* 1/2 y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- x (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* 4 (/ 1 (* (pow x 2) y)))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (/ 4 (* (pow x 2) y))) (+ (* 2 (/ 1 x)) (/ 8 (* (pow x 3) (pow y 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (+ (* 16 (/ 1 (* (pow x 4) (pow y 3)))) (/ 4 (* (pow x 2) y)))) (+ (* 2 (/ 1 x)) (* 8 (/ 1 (* (pow x 3) (pow y 2))))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (* 2 (/ 1 x)) (* 4 (/ 1 (* (pow x 2) y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (+ (* 2 (/ 1 x)) (/ 8 (* (pow x 3) (pow y 2)))) (/ 4 (* (pow x 2) y)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (+ (* 2 (/ 1 x)) (* 8 (/ 1 (* (pow x 3) (pow y 2))))) (+ (* 16 (/ 1 (* (pow x 4) (pow y 3)))) (/ 4 (* (pow x 2) y))))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* y (+ (* 1/2 x) (/ 1 y)))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* y (+ (* 1/2 x) (/ 1 y)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* 1/2 (* x (pow y 2)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* (pow y 2) (- (* 1/2 x) (/ 1 y)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* (pow y 2) (- (+ (* 1/2 x) (/ x (pow y 2))) (/ 1 y)))))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) #s(hole binary64 (* (pow y 2) (- (* 1/2 x) (/ 1 y)))))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* y (- (* 1/2 x) (/ 1 y)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* -1 (/ (- (* 8 (/ 1 (* (pow x 3) y))) (* 4 (/ 1 (pow x 2)))) y))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* -1 (/ (- (* -1 (/ (- (* 16 (/ 1 (* (pow x 4) y))) (* 8 (/ 1 (pow x 3)))) y)) (* 4 (/ 1 (pow x 2)))) y))) (* 2 (/ 1 x)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ (* -1 (/ (- (* 4 (/ 1 (pow x 2))) (* 8 (/ 1 (* (pow x 3) y)))) y)) (* 2 (/ 1 x)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ (- (* 8 (/ 1 (pow x 3))) (* 16 (/ 1 (* (pow x 4) y)))) y)) (* 4 (/ 1 (pow x 2)))) y)) (* 2 (/ 1 x)))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* -1 (* y (- (* -1/2 x) (/ 1 y))))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* -1 (* y (- (* -1/2 x) (/ 1 y))))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* (pow y 2) (+ (* -1 (/ (+ 1 (* -1 (/ x y))) y)) (* 1/2 x)))))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* -1 (* y (+ (* -1/2 x) (/ 1 y))))))
Calls

6 calls:

TimeVariablePointExpression
2.0ms
x
@0
((- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (+ 1 (/ (* x y) 2)) (* (neg y) (- (* -1/2 x) (/ 1 y))) (- x (/ y (+ 1 (/ (* x y) 2)))) (neg y) (- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (/ 2 x) (- x (/ y (+ 1 (/ (* x y) 2)))) (+ (* (+ (* (* 1/2 y) x) -1) y) x) (* (+ (* (* 1/2 y) x) -1) y) (+ (* (* 1/2 y) x) -1) (+ (* (/ -2 (* x x)) x) x) (- x (/ y (+ 1 (/ (* x y) 2)))) (/ -2 (* x x)) (* x x) (- (* -1/2 x) (/ 1 y)) (* 1/2 y))
2.0ms
x
@inf
((- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (+ 1 (/ (* x y) 2)) (* (neg y) (- (* -1/2 x) (/ 1 y))) (- x (/ y (+ 1 (/ (* x y) 2)))) (neg y) (- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (/ 2 x) (- x (/ y (+ 1 (/ (* x y) 2)))) (+ (* (+ (* (* 1/2 y) x) -1) y) x) (* (+ (* (* 1/2 y) x) -1) y) (+ (* (* 1/2 y) x) -1) (+ (* (/ -2 (* x x)) x) x) (- x (/ y (+ 1 (/ (* x y) 2)))) (/ -2 (* x x)) (* x x) (- (* -1/2 x) (/ 1 y)) (* 1/2 y))
2.0ms
x
@-inf
((- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (+ 1 (/ (* x y) 2)) (* (neg y) (- (* -1/2 x) (/ 1 y))) (- x (/ y (+ 1 (/ (* x y) 2)))) (neg y) (- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (/ 2 x) (- x (/ y (+ 1 (/ (* x y) 2)))) (+ (* (+ (* (* 1/2 y) x) -1) y) x) (* (+ (* (* 1/2 y) x) -1) y) (+ (* (* 1/2 y) x) -1) (+ (* (/ -2 (* x x)) x) x) (- x (/ y (+ 1 (/ (* x y) 2)))) (/ -2 (* x x)) (* x x) (- (* -1/2 x) (/ 1 y)) (* 1/2 y))
2.0ms
y
@inf
((- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (+ 1 (/ (* x y) 2)) (* (neg y) (- (* -1/2 x) (/ 1 y))) (- x (/ y (+ 1 (/ (* x y) 2)))) (neg y) (- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (/ 2 x) (- x (/ y (+ 1 (/ (* x y) 2)))) (+ (* (+ (* (* 1/2 y) x) -1) y) x) (* (+ (* (* 1/2 y) x) -1) y) (+ (* (* 1/2 y) x) -1) (+ (* (/ -2 (* x x)) x) x) (- x (/ y (+ 1 (/ (* x y) 2)))) (/ -2 (* x x)) (* x x) (- (* -1/2 x) (/ 1 y)) (* 1/2 y))
1.0ms
y
@-inf
((- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (+ 1 (/ (* x y) 2)) (* (neg y) (- (* -1/2 x) (/ 1 y))) (- x (/ y (+ 1 (/ (* x y) 2)))) (neg y) (- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (/ 2 x) (- x (/ y (+ 1 (/ (* x y) 2)))) (+ (* (+ (* (* 1/2 y) x) -1) y) x) (* (+ (* (* 1/2 y) x) -1) y) (+ (* (* 1/2 y) x) -1) (+ (* (/ -2 (* x x)) x) x) (- x (/ y (+ 1 (/ (* x y) 2)))) (/ -2 (* x x)) (* x x) (- (* -1/2 x) (/ 1 y)) (* 1/2 y))

simplify135.0ms (2.8%)

Memory
47.7MiB live, 133.8MiB allocated; 18ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03922010
110071960
232221900
082231747
Stop Event
iter limit
node limit
Counts
95 → 95
Calls
Call 1
Inputs
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (* 1/2 (pow y 2)))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (+ (* -1/4 (* x (pow y 3))) (* 1/2 (pow y 2))))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (+ (* 1/2 (pow y 2)) (* x (+ (* -1/4 (pow y 3)) (* 1/8 (* x (pow y 4)))))))) y)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* -1/2 (* x (pow y 2))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* x (- (* 1/4 (* x (pow y 3))) (* 1/2 (pow y 2)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* x (- (* x (- (* -1/8 (* x (pow y 4))) (* -1/4 (pow y 3)))) (* 1/2 (pow y 2)))))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 1))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (+ 1 (* 1/2 (* x y)))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 1))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (+ 1 (* 1/2 (* x y)))))
#s(approx (/ 2 x) #s(hole binary64 (/ 2 x)))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* -1 y)))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (+ (* -1 y) (* x (+ 1 (* 1/2 (pow y 2)))))))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) #s(hole binary64 (* -1 y)))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) #s(hole binary64 (+ (* -1 y) (* 1/2 (* x (pow y 2))))))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 -1))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (- (* 1/2 (* x y)) 1)))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 (/ -2 x)))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 (/ (- (pow x 2) 2) x)))
#s(approx (/ -2 (* x x)) #s(hole binary64 (/ -2 (pow x 2))))
#s(approx (* x x) #s(hole binary64 (pow x 2)))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (/ -1 y)))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (- (* -1/2 x) (/ 1 y))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- 1 (* 2 (/ 1 (pow x 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- (+ 1 (/ 4 (* (pow x 3) y))) (* 2 (/ 1 (pow x 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- (+ 1 (* 4 (/ 1 (* (pow x 3) y)))) (+ (* 8 (/ 1 (* (pow x 4) (pow y 2)))) (* 2 (/ 1 (pow x 2))))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ 2 x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- 2 (* 4 (/ 1 (* x y)))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- (+ 2 (/ 8 (* (pow x 2) (pow y 2)))) (/ 4 (* x y))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- (+ 2 (* 8 (/ 1 (* (pow x 2) (pow y 2))))) (+ (* 16 (/ 1 (* (pow x 3) (pow y 3)))) (/ 4 (* x y)))) x)))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* x (+ (* 1/2 y) (/ 1 x)))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* x (+ (* 1/2 y) (/ 1 x)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* x (+ 1 (* 1/2 (pow y 2))))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* x (+ 1 (+ (* -1 (/ y x)) (* 1/2 (pow y 2)))))))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) #s(hole binary64 (* 1/2 (* x (pow y 2)))))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) #s(hole binary64 (* x (+ (* -1 (/ y x)) (* 1/2 (pow y 2))))))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* x (- (* 1/2 y) (/ 1 x)))))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 x))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 (* x (- 1 (* 2 (/ 1 (pow x 2)))))))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (* -1/2 x)))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (* -1 (* x (+ 1/2 (/ 1 (* x y)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) (+ 1 (/ 4 (* (pow x 3) y))))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (+ (* -1 (/ (- (* 4 (/ 1 y)) (* 8 (/ 1 (* x (pow y 2))))) (pow x 3))) (* 2 (/ 1 (pow x 2)))) 1)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* 4 (/ 1 (* x y))) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* -1 (/ (- (* 8 (/ 1 (* x (pow y 2)))) (* 4 (/ 1 y))) x)) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* -1 (/ (- (* -1 (/ (- (* 16 (/ 1 (* x (pow y 3)))) (* 8 (/ 1 (pow y 2)))) x)) (* 4 (/ 1 y))) x)) 2) x))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* -1 (* x (- (* -1/2 y) (/ 1 x))))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* -1 (* x (- (* -1/2 y) (/ 1 x))))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* -1 (* x (- (* -1/2 (pow y 2)) 1)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* -1 (* x (- (+ (* -1/2 (pow y 2)) (/ y x)) 1)))))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) #s(hole binary64 (* -1 (* x (+ (* -1/2 (pow y 2)) (/ y x))))))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* -1 (* x (+ (* -1/2 y) (/ 1 x))))))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* -1 y))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* y (- (* 1/2 (* x y)) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* y (- (* y (+ (* -1/4 (* (pow x 2) y)) (* 1/2 x))) 1)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* -1/2 (* x y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* y (- (* 1/4 (* (pow x 2) y)) (* 1/2 x)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* y (- (* y (- (* -1/8 (* (pow x 3) y)) (* -1/4 (pow x 2)))) (* 1/2 x)))))))
#s(approx (neg y) #s(hole binary64 (* -1 y)))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 x))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (+ x (* -1 y))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (+ x (* y (- (* 1/2 (* x y)) 1)))))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) #s(hole binary64 (* y (- (* 1/2 (* x y)) 1))))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (/ (- (* -1/2 (* x y)) 1) y)))
#s(approx (* 1/2 y) #s(hole binary64 (* 1/2 y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- x (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* 4 (/ 1 (* (pow x 2) y)))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (/ 4 (* (pow x 2) y))) (+ (* 2 (/ 1 x)) (/ 8 (* (pow x 3) (pow y 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (+ (* 16 (/ 1 (* (pow x 4) (pow y 3)))) (/ 4 (* (pow x 2) y)))) (+ (* 2 (/ 1 x)) (* 8 (/ 1 (* (pow x 3) (pow y 2))))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (* 2 (/ 1 x)) (* 4 (/ 1 (* (pow x 2) y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (+ (* 2 (/ 1 x)) (/ 8 (* (pow x 3) (pow y 2)))) (/ 4 (* (pow x 2) y)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (+ (* 2 (/ 1 x)) (* 8 (/ 1 (* (pow x 3) (pow y 2))))) (+ (* 16 (/ 1 (* (pow x 4) (pow y 3)))) (/ 4 (* (pow x 2) y))))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* y (+ (* 1/2 x) (/ 1 y)))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* y (+ (* 1/2 x) (/ 1 y)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* 1/2 (* x (pow y 2)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* (pow y 2) (- (* 1/2 x) (/ 1 y)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* (pow y 2) (- (+ (* 1/2 x) (/ x (pow y 2))) (/ 1 y)))))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) #s(hole binary64 (* (pow y 2) (- (* 1/2 x) (/ 1 y)))))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* y (- (* 1/2 x) (/ 1 y)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* -1 (/ (- (* 8 (/ 1 (* (pow x 3) y))) (* 4 (/ 1 (pow x 2)))) y))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* -1 (/ (- (* -1 (/ (- (* 16 (/ 1 (* (pow x 4) y))) (* 8 (/ 1 (pow x 3)))) y)) (* 4 (/ 1 (pow x 2)))) y))) (* 2 (/ 1 x)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ (* -1 (/ (- (* 4 (/ 1 (pow x 2))) (* 8 (/ 1 (* (pow x 3) y)))) y)) (* 2 (/ 1 x)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ (- (* 8 (/ 1 (pow x 3))) (* 16 (/ 1 (* (pow x 4) y)))) y)) (* 4 (/ 1 (pow x 2)))) y)) (* 2 (/ 1 x)))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* -1 (* y (- (* -1/2 x) (/ 1 y))))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* -1 (* y (- (* -1/2 x) (/ 1 y))))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* (pow y 2) (+ (* -1 (/ (+ 1 (* -1 (/ x y))) y)) (* 1/2 x)))))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* -1 (* y (+ (* -1/2 x) (/ 1 y))))))
Outputs
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (neg.f64 y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (* 1/2 (pow y 2)))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (+ (* -1/4 (* x (pow y 3))) (* 1/2 (pow y 2))))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (fma.f64 (*.f64 (pow.f64 y #s(literal 3 binary64)) x) #s(literal -1/4 binary64) (fma.f64 (*.f64 y y) #s(literal 1/2 binary64) #s(literal 1 binary64))) x (neg.f64 y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (+ (* 1/2 (pow y 2)) (* x (+ (* -1/4 (pow y 3)) (* 1/8 (* x (pow y 4)))))))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 (pow.f64 y #s(literal 4 binary64)) x) #s(literal 1/8 binary64) (*.f64 (pow.f64 y #s(literal 3 binary64)) #s(literal -1/4 binary64))) x (fma.f64 (*.f64 y y) #s(literal 1/2 binary64) #s(literal 1 binary64))) x (neg.f64 y)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) y)
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* -1/2 (* x (pow y 2))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) y) x #s(literal 1 binary64)) y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* x (- (* 1/4 (* x (pow y 3))) (* 1/2 (pow y 2)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) (*.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 y #s(literal 3 binary64)) x))) x y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* x (- (* x (- (* -1/8 (* x (pow y 4))) (* -1/4 (pow y 3)))) (* 1/2 (pow y 2)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (pow.f64 y #s(literal 4 binary64)) x) (*.f64 #s(literal 1/4 binary64) (pow.f64 y #s(literal 3 binary64)))) x (*.f64 (*.f64 #s(literal -1/2 binary64) y) y)) x y))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 1))
#s(approx (+ 1 (/ (* x y) 2)) #s(literal 1 binary64))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (+ 1 (* 1/2 (* x y)))))
#s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 1))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(literal 1 binary64))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (+ 1 (* 1/2 (* x y)))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))
#s(approx (/ 2 x) #s(hole binary64 (/ 2 x)))
#s(approx (/ 2 x) (/.f64 #s(literal 2 binary64) x))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* -1 y)))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (neg.f64 y))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (+ (* -1 y) (* x (+ 1 (* 1/2 (pow y 2)))))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y x))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) #s(hole binary64 (* -1 y)))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) (neg.f64 y))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) #s(hole binary64 (+ (* -1 y) (* 1/2 (* x (pow y 2))))))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 -1))
#s(approx (+ (* (* 1/2 y) x) -1) #s(literal -1 binary64))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (- (* 1/2 (* x y)) 1)))
#s(approx (+ (* (* 1/2 y) x) -1) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 (/ -2 x)))
#s(approx (+ (* (/ -2 (* x x)) x) x) (/.f64 #s(literal -2 binary64) x))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 (/ (- (pow x 2) 2) x)))
#s(approx (+ (* (/ -2 (* x x)) x) x) (-.f64 x (/.f64 #s(literal 2 binary64) x)))
#s(approx (/ -2 (* x x)) #s(hole binary64 (/ -2 (pow x 2))))
#s(approx (/ -2 (* x x)) (/.f64 (/.f64 #s(literal -2 binary64) x) x))
#s(approx (* x x) #s(hole binary64 (pow x 2)))
#s(approx (* x x) (*.f64 x x))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (/ -1 y)))
#s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (- (* -1/2 x) (/ 1 y))))
#s(approx (- (* -1/2 x) (/ 1 y)) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal -1 binary64) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x)
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- 1 (* 2 (/ 1 (pow x 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 x (/.f64 #s(literal 2 binary64) x)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- (+ 1 (/ 4 (* (pow x 3) y))) (* 2 (/ 1 (pow x 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (-.f64 (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y)) #s(literal -1 binary64)) x (/.f64 #s(literal -2 binary64) x)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- (+ 1 (* 4 (/ 1 (* (pow x 3) y)))) (+ (* 8 (/ 1 (* (pow x 4) (pow y 2)))) (* 2 (/ 1 (pow x 2))))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 (-.f64 (-.f64 (/.f64 (/.f64 (-.f64 (/.f64 #s(literal 4 binary64) (*.f64 y x)) #s(literal 2 binary64)) x) x) #s(literal -1 binary64)) (/.f64 (/.f64 #s(literal 8 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 y y))) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ 2 x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- 2 (* 4 (/ 1 (* x y)))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- (+ 2 (/ 8 (* (pow x 2) (pow y 2)))) (/ 4 (* x y))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) y) (/.f64 (/.f64 #s(literal -8 binary64) (*.f64 y y)) x)) x) #s(literal -2 binary64)) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- (+ 2 (* 8 (/ 1 (* (pow x 2) (pow y 2))))) (+ (* 16 (/ 1 (* (pow x 3) (pow y 3)))) (/ 4 (* x y)))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) y) (/.f64 (/.f64 #s(literal -8 binary64) (*.f64 y y)) x)) x) #s(literal -2 binary64)) (/.f64 #s(literal 16 binary64) (pow.f64 (*.f64 y x) #s(literal 3 binary64)))) x))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (+ 1 (/ (* x y) 2)) (*.f64 (*.f64 #s(literal 1/2 binary64) y) x))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* x (+ (* 1/2 y) (/ 1 x)))))
#s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) (*.f64 (*.f64 #s(literal 1/2 binary64) y) x))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* x (+ (* 1/2 y) (/ 1 x)))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* x (+ 1 (* 1/2 (pow y 2))))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/2 binary64) #s(literal 1 binary64)) x))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* x (+ 1 (+ (* -1 (/ y x)) (* 1/2 (pow y 2)))))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (fma.f64 (fma.f64 (*.f64 y y) #s(literal 1/2 binary64) (/.f64 (neg.f64 y) x)) x x))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) #s(hole binary64 (* 1/2 (* x (pow y 2)))))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) y))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) #s(hole binary64 (* x (+ (* -1 (/ y x)) (* 1/2 (pow y 2))))))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/2 binary64) (/.f64 (neg.f64 y) x)) x))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* 1/2 (* x y))))
#s(approx (+ (* (* 1/2 y) x) -1) (*.f64 (*.f64 #s(literal 1/2 binary64) y) x))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* x (- (* 1/2 y) (/ 1 x)))))
#s(approx (+ (* (* 1/2 y) x) -1) (*.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) y) (/.f64 #s(literal 1 binary64) x)) x))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 x))
#s(approx (+ (* (/ -2 (* x x)) x) x) x)
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 (* x (- 1 (* 2 (/ 1 (pow x 2)))))))
#s(approx (+ (* (/ -2 (* x x)) x) x) (-.f64 x (/.f64 #s(literal 2 binary64) x)))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (* -1/2 x)))
#s(approx (- (* -1/2 x) (/ 1 y)) (*.f64 #s(literal -1/2 binary64) x))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (* -1 (* x (+ 1/2 (/ 1 (* x y)))))))
#s(approx (- (* -1/2 x) (/ 1 y)) (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal -1 binary64) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 x (/.f64 #s(literal 2 binary64) x)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) (+ 1 (/ 4 (* (pow x 3) y))))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (*.f64 (+.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (*.f64 x x))) (/.f64 #s(literal 4 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) y))) x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (+ (* -1 (/ (- (* 4 (/ 1 y)) (* 8 (/ 1 (* x (pow y 2))))) (pow x 3))) (* 2 (/ 1 (pow x 2)))) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (neg.f64 x) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) y) (/.f64 (/.f64 #s(literal -8 binary64) (*.f64 y y)) x)) (pow.f64 x #s(literal 3 binary64))) (-.f64 x (/.f64 #s(literal 2 binary64) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* 4 (/ 1 (* x y))) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* -1 (/ (- (* 8 (/ 1 (* x (pow y 2)))) (* 4 (/ 1 y))) x)) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) y) (/.f64 (/.f64 #s(literal -8 binary64) (*.f64 y y)) x)) x) #s(literal -2 binary64)) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* -1 (/ (- (* -1 (/ (- (* 16 (/ 1 (* x (pow y 3)))) (* 8 (/ 1 (pow y 2)))) x)) (* 4 (/ 1 y))) x)) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (+.f64 (/.f64 (-.f64 (/.f64 (fma.f64 (/.f64 #s(literal 16 binary64) (*.f64 (pow.f64 y #s(literal 3 binary64)) x)) #s(literal -1 binary64) (/.f64 #s(literal 8 binary64) (*.f64 y y))) x) (/.f64 #s(literal 4 binary64) y)) x) #s(literal 2 binary64)) x))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* -1 (* x (- (* -1/2 y) (/ 1 x))))))
#s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 x) (-.f64 (*.f64 #s(literal -1/2 binary64) y) (/.f64 #s(literal 1 binary64) x))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* -1 (* x (- (* -1/2 y) (/ 1 x))))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) (*.f64 (neg.f64 x) (-.f64 (*.f64 #s(literal -1/2 binary64) y) (/.f64 #s(literal 1 binary64) x))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* -1 (* x (- (* -1/2 (pow y 2)) 1)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/2 binary64) #s(literal 1 binary64)) x))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* -1 (* x (- (+ (* -1/2 (pow y 2)) (/ y x)) 1)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (fma.f64 (fma.f64 (*.f64 y y) #s(literal 1/2 binary64) (/.f64 (neg.f64 y) x)) x x))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) #s(hole binary64 (* -1 (* x (+ (* -1/2 (pow y 2)) (/ y x))))))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/2 binary64) (/.f64 (neg.f64 y) x)) x))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* -1 (* x (+ (* -1/2 y) (/ 1 x))))))
#s(approx (+ (* (* 1/2 y) x) -1) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) 1)))))
#s(approx (+ (* (/ -2 (* x x)) x) x) (-.f64 x (/.f64 #s(literal 2 binary64) x)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* -1 y))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 x y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* y (- (* 1/2 (* x y)) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* y (- (* y (+ (* -1/4 (* (pow x 2) y)) (* 1/2 x))) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 x x) #s(literal -1/4 binary64)) y (*.f64 #s(literal 1/2 binary64) x)) y #s(literal -1 binary64)) y x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* -1/2 (* x y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) y) x #s(literal 1 binary64)) y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* y (- (* 1/4 (* (pow x 2) y)) (* 1/2 x)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/4 binary64) (*.f64 #s(literal -1/2 binary64) x)) y #s(literal 1 binary64)) y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* y (- (* y (- (* -1/8 (* (pow x 3) y)) (* -1/4 (pow x 2)))) (* 1/2 x)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 x x) #s(literal 1/4 binary64) (*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) #s(literal -1/8 binary64))) y (*.f64 #s(literal -1/2 binary64) x)) y #s(literal 1 binary64)) y))
#s(approx (neg y) #s(hole binary64 (* -1 y)))
#s(approx (neg y) (neg.f64 y))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 x))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) x)
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (+ x (* -1 y))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (-.f64 x y))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (+ x (* y (- (* 1/2 (* x y)) 1)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y x))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) #s(hole binary64 (* y (- (* 1/2 (* x y)) 1))))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y))
#s(approx (- (* -1/2 x) (/ 1 y)) #s(hole binary64 (/ (- (* -1/2 (* x y)) 1) y)))
#s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) y) x #s(literal -1 binary64)) y))
#s(approx (* 1/2 y) #s(hole binary64 (* 1/2 y)))
#s(approx (* 1/2 y) (*.f64 #s(literal 1/2 binary64) y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- x (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 x (/.f64 #s(literal 2 binary64) x)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* 4 (/ 1 (* (pow x 2) y)))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 x (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (/ 4 (* (pow x 2) y))) (+ (* 2 (/ 1 x)) (/ 8 (* (pow x 3) (pow y 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (-.f64 x (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)) (/.f64 #s(literal 8 binary64) (*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) y))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (+ (* 16 (/ 1 (* (pow x 4) (pow y 3)))) (/ 4 (* (pow x 2) y)))) (+ (* 2 (/ 1 x)) (* 8 (/ 1 (* (pow x 3) (pow y 2))))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (+.f64 (+.f64 (/.f64 (/.f64 #s(literal 16 binary64) (pow.f64 x #s(literal 4 binary64))) (pow.f64 y #s(literal 3 binary64))) x) (/.f64 (-.f64 (/.f64 #s(literal 4 binary64) (*.f64 y x)) #s(literal 2 binary64)) x)) (/.f64 #s(literal 8 binary64) (*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) y))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (* 2 (/ 1 x)) (* 4 (/ 1 (* (pow x 2) y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (+ (* 2 (/ 1 x)) (/ 8 (* (pow x 3) (pow y 2)))) (/ 4 (* (pow x 2) y)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (+.f64 (/.f64 #s(literal 8 binary64) (*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) y)) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (+ (* 2 (/ 1 x)) (* 8 (/ 1 (* (pow x 3) (pow y 2))))) (+ (* 16 (/ 1 (* (pow x 4) (pow y 3)))) (/ 4 (* (pow x 2) y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (-.f64 (+.f64 (/.f64 #s(literal 8 binary64) (*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) y)) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)) (/.f64 (/.f64 #s(literal 16 binary64) (pow.f64 x #s(literal 4 binary64))) (pow.f64 y #s(literal 3 binary64)))))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* y (+ (* 1/2 x) (/ 1 y)))))
#s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* y (+ (* 1/2 x) (/ 1 y)))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* 1/2 (* x (pow y 2)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) y))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* (pow y 2) (- (* 1/2 x) (/ 1 y)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* (pow y 2) (- (+ (* 1/2 x) (/ x (pow y 2))) (/ 1 y)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 #s(literal 1/2 binary64) x (/.f64 (-.f64 (/.f64 x y) #s(literal 1 binary64)) y)) (*.f64 y y)))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) #s(hole binary64 (* (pow y 2) (- (* 1/2 x) (/ 1 y)))))
#s(approx (* (+ (* (* 1/2 y) x) -1) y) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* y (- (* 1/2 x) (/ 1 y)))))
#s(approx (+ (* (* 1/2 y) x) -1) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* -1 (/ (- (* 8 (/ 1 (* (pow x 3) y))) (* 4 (/ 1 (pow x 2)))) y))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (-.f64 x (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)) (/.f64 #s(literal 8 binary64) (*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) y))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* -1 (/ (- (* -1 (/ (- (* 16 (/ 1 (* (pow x 4) y))) (* 8 (/ 1 (pow x 3)))) y)) (* 4 (/ 1 (pow x 2)))) y))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (-.f64 x (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal -16 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) y)) (/.f64 #s(literal -8 binary64) (pow.f64 x #s(literal 3 binary64)))) y) (/.f64 #s(literal 4 binary64) (*.f64 x x))) y)) (/.f64 #s(literal 2 binary64) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ (* -1 (/ (- (* 4 (/ 1 (pow x 2))) (* 8 (/ 1 (* (pow x 3) y)))) y)) (* 2 (/ 1 x)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (+.f64 (/.f64 #s(literal 8 binary64) (*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) y)) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ (- (* 8 (/ 1 (pow x 3))) (* 16 (/ 1 (* (pow x 4) y)))) y)) (* 4 (/ 1 (pow x 2)))) y)) (* 2 (/ 1 x)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (-.f64 (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal -16 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) y)) (/.f64 #s(literal -8 binary64) (pow.f64 x #s(literal 3 binary64)))) y) (/.f64 #s(literal 4 binary64) (*.f64 x x))) y) (/.f64 #s(literal -2 binary64) x)))
#s(approx (+ 1 (/ (* x y) 2)) #s(hole binary64 (* -1 (* y (- (* -1/2 x) (/ 1 y))))))
#s(approx (+ 1 (/ (* x y) 2)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) #s(hole binary64 (* -1 (* y (- (* -1/2 x) (/ 1 y))))))
#s(approx (* (neg y) (- (* -1/2 x) (/ 1 y))) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal 1 binary64)))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) #s(hole binary64 (* (pow y 2) (+ (* -1 (/ (+ 1 (* -1 (/ x y))) y)) (* 1/2 x)))))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 #s(literal 1/2 binary64) x (/.f64 (-.f64 (/.f64 x y) #s(literal 1 binary64)) y)) (*.f64 y y)))
#s(approx (+ (* (* 1/2 y) x) -1) #s(hole binary64 (* -1 (* y (+ (* -1/2 x) (/ 1 y))))))
#s(approx (+ (* (* 1/2 y) x) -1) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)))

rewrite74.0ms (1.5%)

Memory
-15.1MiB live, 84.1MiB allocated; 21ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
041247
056247
1192247
01372237
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
19 → 115
Calls
Call 1
Inputs
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y))))))
(/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)))))
#s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y))))
(*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (neg.f64 y))
(neg.f64 y)
(-.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(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y)))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y)
(fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64))
(fma.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x x)
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x x))
(/.f64 #s(literal -2 binary64) (*.f64 x x))
(*.f64 x x)
#s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y))
(*.f64 #s(literal 1/2 binary64) y)
Outputs
(/.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y)))) #s(literal 2 binary64)))) (neg.f64 (+.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y)))) x)))
(/.f64 (neg.f64 (-.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y)))) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y)))) (+.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y)))) x) (*.f64 x x))))
(/.f64 (-.f64 (*.f64 x x) (pow.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y)))) #s(literal 2 binary64))) (+.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y)))) x))
(/.f64 (-.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y)))) #s(literal 3 binary64))) (fma.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y)))) (+.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y)))) x) (*.f64 x x)))
(-.f64 (/.f64 (*.f64 x x) (+.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y)))) x)) (/.f64 (pow.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y)))) #s(literal 2 binary64)) (+.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y)))) x)))
(-.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y)))) (+.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y)))) x) (*.f64 x x))) (/.f64 (pow.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y)))) #s(literal 3 binary64)) (fma.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y)))) (+.f64 (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y)))) x) (*.f64 x x))))
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y)))))
(/.f64 (neg.f64 (neg.f64 y)) (neg.f64 (neg.f64 #s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y))))))
(/.f64 (neg.f64 y) (neg.f64 #s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y)))))
(/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y))))
(neg.f64 (/.f64 (neg.f64 y) #s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y)))))
(neg.f64 (/.f64 y (neg.f64 #s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y))))))
#s(approx (+ 1 (/ (* x y) 2)) (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y)))
(*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) (neg.f64 y))
(*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)))
(*.f64 y (neg.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y))))
(neg.f64 (*.f64 #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y)) y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (neg.f64 y))
(neg.f64 y)
(/.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)) #s(literal 2 binary64)))) (neg.f64 (+.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)) x)))
(/.f64 (neg.f64 (-.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)) (+.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)) x) (*.f64 x x))))
(/.f64 (-.f64 (*.f64 x x) (pow.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)) #s(literal 2 binary64))) (+.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)) x))
(/.f64 (-.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)) #s(literal 3 binary64))) (fma.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)) (+.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)) x) (*.f64 x x)))
(-.f64 (/.f64 (*.f64 x x) (+.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)) x)) (/.f64 (pow.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)) #s(literal 2 binary64)) (+.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)) x)))
(-.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)) (+.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)) x) (*.f64 x x))) (/.f64 (pow.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)) #s(literal 3 binary64)) (fma.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)) (+.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)) x) (*.f64 x x))))
(-.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) (neg.f64 x))
(/.f64 #s(literal 2 binary64) (neg.f64 (neg.f64 x)))
(/.f64 #s(literal 2 binary64) x)
(neg.f64 (/.f64 #s(literal -2 binary64) x))
(+.f64 (/.f64 #s(literal 1 binary64) x) (/.f64 #s(literal 1 binary64) x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y)))
#s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y)
(*.f64 y (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64)) #s(literal 1 binary64)) y) (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal -1 binary64)))
(/.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 y x) #s(literal 3 binary64)) #s(literal -1 binary64)) y) (fma.f64 #s(literal -1 binary64) (-.f64 #s(literal -1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) y) x)) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64))))
(/.f64 (*.f64 y (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64)) #s(literal 1 binary64))) (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal -1 binary64)))
(/.f64 (*.f64 y (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 y x) #s(literal 3 binary64)) #s(literal -1 binary64))) (fma.f64 #s(literal -1 binary64) (-.f64 #s(literal -1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) y) x)) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64))))
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) y (*.f64 #s(literal -1 binary64) y))
(fma.f64 #s(literal -1 binary64) y (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) y))
(fma.f64 y (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) (*.f64 y #s(literal -1 binary64)))
(fma.f64 y #s(literal -1 binary64) (*.f64 y (*.f64 (*.f64 #s(literal 1/2 binary64) y) x)))
(+.f64 (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) y) (*.f64 #s(literal -1 binary64) y))
(+.f64 (*.f64 #s(literal -1 binary64) y) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) y))
(+.f64 (*.f64 y (*.f64 (*.f64 #s(literal 1/2 binary64) y) x)) (*.f64 y #s(literal -1 binary64)))
(+.f64 (*.f64 y #s(literal -1 binary64)) (*.f64 y (*.f64 (*.f64 #s(literal 1/2 binary64) y) x)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64))) (-.f64 #s(literal -1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) y) x)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal -1 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 y x) #s(literal 3 binary64)) #s(literal -1 binary64))) (neg.f64 (fma.f64 #s(literal -1 binary64) (-.f64 #s(literal -1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) y) x)) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal -1 binary64)))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 y x) #s(literal 3 binary64)) #s(literal -1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal -1 binary64)))))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 y x) #s(literal 3 binary64)) #s(literal -1 binary64)) (fma.f64 #s(literal -1 binary64) (-.f64 #s(literal -1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) y) x)) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) x) y #s(literal -1 binary64))
(fma.f64 (*.f64 x #s(literal 1/2 binary64)) y #s(literal -1 binary64))
(fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64))
(fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal -1 binary64))
(fma.f64 (*.f64 y x) #s(literal 1/2 binary64) #s(literal -1 binary64))
(fma.f64 y (*.f64 #s(literal 1/2 binary64) x) #s(literal -1 binary64))
(fma.f64 x (*.f64 #s(literal 1/2 binary64) y) #s(literal -1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal -1 binary64))))
(-.f64 #s(literal -1 binary64) (*.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) y)) x))
(-.f64 #s(literal -1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 y x)))
(-.f64 #s(literal -1 binary64) (*.f64 (neg.f64 x) (*.f64 #s(literal 1/2 binary64) y)))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 3 binary64)) (fma.f64 #s(literal -1 binary64) (-.f64 #s(literal -1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) y) x)) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64)))) (/.f64 #s(literal -1 binary64) (fma.f64 #s(literal -1 binary64) (-.f64 #s(literal -1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) y) x)) (pow.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) x) #s(literal -1 binary64))
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) y) x))
(*.f64 (-.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) #s(literal -1 binary64)) x)
(*.f64 x (-.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) #s(literal -1 binary64)))
(/.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x) #s(literal 2 binary64))) (-.f64 x (*.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x) #s(literal 2 binary64)) (*.f64 x x))) (neg.f64 (-.f64 (*.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x) x)))
(/.f64 (neg.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x) #s(literal 3 binary64)))) (neg.f64 (fma.f64 x (-.f64 x (*.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x)) (pow.f64 (*.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x) #s(literal 2 binary64)) (*.f64 x x)) (-.f64 (*.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x) x))
(/.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x) #s(literal 3 binary64))) (fma.f64 x x (-.f64 (pow.f64 (*.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x) #s(literal 2 binary64)) (*.f64 (*.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x) x))))
(/.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x) #s(literal 3 binary64))) (fma.f64 x (-.f64 x (*.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x)) (pow.f64 (*.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x) #s(literal 2 binary64))))
(fma.f64 (/.f64 #s(literal -2 binary64) (fabs.f64 x)) (/.f64 x (fabs.f64 x)) x)
(fma.f64 (/.f64 #s(literal -2 binary64) x) (/.f64 x x) x)
(fma.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x x)
(fma.f64 #s(literal -2 binary64) (/.f64 x (*.f64 x x)) x)
(fma.f64 (/.f64 #s(literal 2 binary64) x) (/.f64 x (neg.f64 x)) x)
(fma.f64 x (/.f64 #s(literal -2 binary64) (*.f64 x x)) x)
(-.f64 (/.f64 (pow.f64 (*.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x) #s(literal 2 binary64)) (-.f64 (*.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x) x)) (/.f64 (*.f64 x x) (-.f64 (*.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x) x)))
(-.f64 x (*.f64 (neg.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x))) x))
(-.f64 x (*.f64 (neg.f64 x) (/.f64 #s(literal -2 binary64) (*.f64 x x))))
(+.f64 (/.f64 (pow.f64 (*.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x) #s(literal 3 binary64)) (fma.f64 x (-.f64 x (*.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x)) (pow.f64 (*.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x) #s(literal 2 binary64)))) (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 x (-.f64 x (*.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x)) (pow.f64 (*.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x) #s(literal 2 binary64)))))
(+.f64 (*.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x) x)
(+.f64 x (*.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x x))
(/.f64 (/.f64 #s(literal -2 binary64) (fabs.f64 x)) (fabs.f64 x))
(/.f64 (/.f64 #s(literal -2 binary64) x) x)
(/.f64 #s(literal -2 binary64) (*.f64 x x))
(/.f64 (/.f64 #s(literal 2 binary64) x) (neg.f64 x))
(/.f64 #s(literal 2 binary64) (*.f64 (neg.f64 x) x))
(neg.f64 (/.f64 #s(literal 2 binary64) (*.f64 x x)))
(neg.f64 (/.f64 #s(literal -2 binary64) (*.f64 (neg.f64 x) x)))
(+.f64 (/.f64 #s(literal 1 binary64) (*.f64 (neg.f64 x) x)) (/.f64 #s(literal 1 binary64) (*.f64 (neg.f64 x) x)))
(*.f64 (neg.f64 (neg.f64 x)) (neg.f64 (neg.f64 x)))
(*.f64 (neg.f64 (fabs.f64 x)) (neg.f64 (fabs.f64 x)))
(*.f64 (fabs.f64 (fabs.f64 x)) (fabs.f64 (fabs.f64 x)))
(*.f64 (pow.f64 x #s(literal 1 binary64)) (pow.f64 x #s(literal 1 binary64)))
(*.f64 (pow.f64 x #s(literal 1 binary64)) x)
(*.f64 (neg.f64 x) (neg.f64 x))
(*.f64 (fabs.f64 x) (fabs.f64 x))
(*.f64 x x)
(pow.f64 (neg.f64 x) #s(literal 2 binary64))
(pow.f64 (fabs.f64 x) #s(literal 2 binary64))
(pow.f64 x #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal -2 binary64)))
(neg.f64 (*.f64 (neg.f64 x) x))
(fabs.f64 (*.f64 x x))
(exp.f64 (*.f64 (log.f64 x) #s(literal 2 binary64)))
#s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y))
(*.f64 #s(literal 1/2 binary64) y)
(*.f64 y #s(literal 1/2 binary64))

eval23.0ms (0.5%)

Memory
9.7MiB live, 54.6MiB allocated; 6ms collecting garbage
Compiler

Compiled 5 789 to 736 computations (87.3% saved)

prune10.0ms (0.2%)

Memory
-19.7MiB live, 25.4MiB allocated; 4ms collecting garbage
Pruning

10 alts after pruning (2 fresh and 8 done)

PrunedKeptTotal
New1791180
Fresh011
Picked055
Done033
Total17910189
Accuracy
100.0%
Counts
189 → 10
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))))
75.4%
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y))))))
58.2%
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)))
62.6%
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)))
75.5%
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y))
60.7%
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x x))
24.0%
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (neg.f64 y))
13.8%
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(approx (+ (* (/ -2 (* x x)) x) x) (/.f64 #s(literal -2 binary64) x)))
24.6%
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y)))
64.6%
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x)
Compiler

Compiled 197 to 147 computations (25.4% saved)

simplify144.0ms (3%)

Memory
32.2MiB live, 179.1MiB allocated; 17ms collecting garbage
Localize:

Found 7 expressions of interest:

NewMetricScoreProgram
cost-diff0
(-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64))
cost-diff0
(/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)
cost-diff0
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x))
cost-diff0
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)))
cost-diff0
(/.f64 #s(literal -2 binary64) x)
cost-diff0
#s(approx (+ (* (/ -2 (* x x)) x) x) (/.f64 #s(literal -2 binary64) x))
cost-diff0
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(approx (+ (* (/ -2 (* x x)) x) x) (/.f64 #s(literal -2 binary64) x)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
024111
030111
152111
2110103
3279103
41146103
56860103
08068100
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(approx (+ (* (/ -2 (* x x)) x) x) (/.f64 #s(literal -2 binary64) x)))
#s(approx (+ (* (/ -2 (* x x)) x) x) (/.f64 #s(literal -2 binary64) x))
(/.f64 #s(literal -2 binary64) x)
#s(literal -2 binary64)
x
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)))
x
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x))
(/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)
(-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64))
(/.f64 #s(literal -4 binary64) (*.f64 y x))
#s(literal -4 binary64)
(*.f64 y x)
y
#s(literal -2 binary64)
Outputs
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(approx (+ (* (/ -2 (* x x)) x) x) (/.f64 #s(literal -2 binary64) x)))
#s(approx (+ (* (/ -2 (* x x)) x) x) (/.f64 #s(literal -2 binary64) x))
(/.f64 #s(literal -2 binary64) x)
#s(literal -2 binary64)
x
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)))
x
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x))
(/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)
(-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64))
(/.f64 #s(literal -4 binary64) (*.f64 y x))
#s(literal -4 binary64)
(*.f64 y x)
y
#s(literal -2 binary64)

localize146.0ms (3%)

Memory
-25.5MiB live, 190.9MiB allocated; 83ms collecting garbage
Localize:

Found 7 expressions of interest:

NewMetricScoreProgram
accuracy0.010097509768442016
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)))
accuracy0.0703125
(/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)
accuracy0.49913866106917315
(/.f64 #s(literal -4 binary64) (*.f64 y x))
accuracy32.02208499976421
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x))
accuracy0.0
(/.f64 #s(literal -2 binary64) x)
accuracy23.899105104760054
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(approx (+ (* (/ -2 (* x x)) x) x) (/.f64 #s(literal -2 binary64) x)))
accuracy31.547991380718766
#s(approx (+ (* (/ -2 (* x x)) x) x) (/.f64 #s(literal -2 binary64) x))
Samples
89.0ms255×0valid
46.0ms2valid
Compiler

Compiled 75 to 22 computations (70.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 121.0ms
ival-div: 56.0ms (46.2% of total)
ival-add: 55.0ms (45.4% of total)
ival-mult: 7.0ms (5.8% of total)
ival-sub: 2.0ms (1.7% of total)
exact: 1.0ms (0.8% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series15.0ms (0.3%)

Memory
-15.2MiB live, 30.9MiB allocated; 8ms collecting garbage
Counts
8 → 58
Calls
Call 1
Inputs
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(approx (+ (* (/ -2 (* x x)) x) x) (/.f64 #s(literal -2 binary64) x)))
#s(approx (+ (* (/ -2 (* x x)) x) x) (/.f64 #s(literal -2 binary64) x))
(/.f64 #s(literal -2 binary64) x)
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x))
(/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)
(-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64))
(/.f64 #s(literal -4 binary64) (*.f64 y x))
Outputs
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (* 1/2 (pow y 2)))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (+ (* -1/4 (* x (pow y 3))) (* 1/2 (pow y 2))))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (+ (* 1/2 (pow y 2)) (* x (+ (* -1/4 (pow y 3)) (* 1/8 (* x (pow y 4)))))))) y)))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 (/ -2 x)))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 (/ (- (pow x 2) 2) x)))
#s(approx (/ -2 x) #s(hole binary64 (/ -2 x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* -1/2 (* x (pow y 2))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* x (- (* 1/4 (* x (pow y 3))) (* 1/2 (pow y 2)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* x (- (* x (- (* -1/8 (* x (pow y 4))) (* -1/4 (pow y 3)))) (* 1/2 (pow y 2)))))))
#s(approx (/ (- (/ -4 (* y x)) -2) x) #s(hole binary64 (/ -4 (* (pow x 2) y))))
#s(approx (/ (- (/ -4 (* y x)) -2) x) #s(hole binary64 (/ (- (* 2 x) (* 4 (/ 1 y))) (pow x 2))))
#s(approx (- (/ -4 (* y x)) -2) #s(hole binary64 (/ -4 (* x y))))
#s(approx (- (/ -4 (* y x)) -2) #s(hole binary64 (/ (- (* 2 x) (* 4 (/ 1 y))) x)))
#s(approx (/ -4 (* y x)) #s(hole binary64 (/ -4 (* x y))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- 1 (* 2 (/ 1 (pow x 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- (+ 1 (/ 4 (* (pow x 3) y))) (* 2 (/ 1 (pow x 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- (+ 1 (* 4 (/ 1 (* (pow x 3) y)))) (+ (* 8 (/ 1 (* (pow x 4) (pow y 2)))) (* 2 (/ 1 (pow x 2))))))))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 x))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 (* x (- 1 (* 2 (/ 1 (pow x 2)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ 2 x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- 2 (* 4 (/ 1 (* x y)))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- (+ 2 (/ 8 (* (pow x 2) (pow y 2)))) (/ 4 (* x y))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- (+ 2 (* 8 (/ 1 (* (pow x 2) (pow y 2))))) (+ (* 16 (/ 1 (* (pow x 3) (pow y 3)))) (/ 4 (* x y)))) x)))
#s(approx (/ (- (/ -4 (* y x)) -2) x) #s(hole binary64 (/ 2 x)))
#s(approx (/ (- (/ -4 (* y x)) -2) x) #s(hole binary64 (/ (- 2 (* 4 (/ 1 (* x y)))) x)))
#s(approx (- (/ -4 (* y x)) -2) #s(hole binary64 2))
#s(approx (- (/ -4 (* y x)) -2) #s(hole binary64 (- 2 (* 4 (/ 1 (* x y))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) (+ 1 (/ 4 (* (pow x 3) y))))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (+ (* -1 (/ (- (* 4 (/ 1 y)) (* 8 (/ 1 (* x (pow y 2))))) (pow x 3))) (* 2 (/ 1 (pow x 2)))) 1)))))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) 1)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* 4 (/ 1 (* x y))) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* -1 (/ (- (* 8 (/ 1 (* x (pow y 2)))) (* 4 (/ 1 y))) x)) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* -1 (/ (- (* -1 (/ (- (* 16 (/ 1 (* x (pow y 3)))) (* 8 (/ 1 (pow y 2)))) x)) (* 4 (/ 1 y))) x)) 2) x))))
#s(approx (/ (- (/ -4 (* y x)) -2) x) #s(hole binary64 (* -1 (/ (- (* 4 (/ 1 (* x y))) 2) x))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* -1 y))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* y (- (* 1/2 (* x y)) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* y (- (* y (+ (* -1/4 (* (pow x 2) y)) (* 1/2 x))) 1)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* -1/2 (* x y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* y (- (* 1/4 (* (pow x 2) y)) (* 1/2 x)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* y (- (* y (- (* -1/8 (* (pow x 3) y)) (* -1/4 (pow x 2)))) (* 1/2 x)))))))
#s(approx (/ (- (/ -4 (* y x)) -2) x) #s(hole binary64 (/ (- (* 2 (/ y x)) (* 4 (/ 1 (pow x 2)))) y)))
#s(approx (- (/ -4 (* y x)) -2) #s(hole binary64 (/ (- (* 2 y) (* 4 (/ 1 x))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- x (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* 4 (/ 1 (* (pow x 2) y)))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (/ 4 (* (pow x 2) y))) (+ (* 2 (/ 1 x)) (/ 8 (* (pow x 3) (pow y 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (+ (* 16 (/ 1 (* (pow x 4) (pow y 3)))) (/ 4 (* (pow x 2) y)))) (+ (* 2 (/ 1 x)) (* 8 (/ 1 (* (pow x 3) (pow y 2))))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (* 2 (/ 1 x)) (* 4 (/ 1 (* (pow x 2) y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (+ (* 2 (/ 1 x)) (/ 8 (* (pow x 3) (pow y 2)))) (/ 4 (* (pow x 2) y)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (+ (* 2 (/ 1 x)) (* 8 (/ 1 (* (pow x 3) (pow y 2))))) (+ (* 16 (/ 1 (* (pow x 4) (pow y 3)))) (/ 4 (* (pow x 2) y))))))
#s(approx (/ (- (/ -4 (* y x)) -2) x) #s(hole binary64 (- (* 2 (/ 1 x)) (* 4 (/ 1 (* (pow x 2) y))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* -1 (/ (- (* 8 (/ 1 (* (pow x 3) y))) (* 4 (/ 1 (pow x 2)))) y))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* -1 (/ (- (* -1 (/ (- (* 16 (/ 1 (* (pow x 4) y))) (* 8 (/ 1 (pow x 3)))) y)) (* 4 (/ 1 (pow x 2)))) y))) (* 2 (/ 1 x)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ (* -1 (/ (- (* 4 (/ 1 (pow x 2))) (* 8 (/ 1 (* (pow x 3) y)))) y)) (* 2 (/ 1 x)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ (- (* 8 (/ 1 (pow x 3))) (* 16 (/ 1 (* (pow x 4) y)))) y)) (* 4 (/ 1 (pow x 2)))) y)) (* 2 (/ 1 x)))))
Calls

6 calls:

TimeVariablePointExpression
7.0ms
x
@0
((- x (/ y (+ 1 (/ (* x y) 2)))) (+ (* (/ -2 (* x x)) x) x) (/ -2 x) (- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (/ (- (/ -4 (* y x)) -2) x) (- (/ -4 (* y x)) -2) (/ -4 (* y x)))
3.0ms
x
@-inf
((- x (/ y (+ 1 (/ (* x y) 2)))) (+ (* (/ -2 (* x x)) x) x) (/ -2 x) (- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (/ (- (/ -4 (* y x)) -2) x) (- (/ -4 (* y x)) -2) (/ -4 (* y x)))
1.0ms
y
@0
((- x (/ y (+ 1 (/ (* x y) 2)))) (+ (* (/ -2 (* x x)) x) x) (/ -2 x) (- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (/ (- (/ -4 (* y x)) -2) x) (- (/ -4 (* y x)) -2) (/ -4 (* y x)))
1.0ms
x
@inf
((- x (/ y (+ 1 (/ (* x y) 2)))) (+ (* (/ -2 (* x x)) x) x) (/ -2 x) (- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (/ (- (/ -4 (* y x)) -2) x) (- (/ -4 (* y x)) -2) (/ -4 (* y x)))
1.0ms
y
@inf
((- x (/ y (+ 1 (/ (* x y) 2)))) (+ (* (/ -2 (* x x)) x) x) (/ -2 x) (- x (/ y (+ 1 (/ (* x y) 2)))) (/ y (+ 1 (/ (* x y) 2))) (/ (- (/ -4 (* y x)) -2) x) (- (/ -4 (* y x)) -2) (/ -4 (* y x)))

simplify154.0ms (3.2%)

Memory
-2.1MiB live, 221.3MiB allocated; 38ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03061393
18101371
226321299
083391232
Stop Event
iter limit
node limit
Counts
58 → 58
Calls
Call 1
Inputs
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (* 1/2 (pow y 2)))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (+ (* -1/4 (* x (pow y 3))) (* 1/2 (pow y 2))))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (+ (* 1/2 (pow y 2)) (* x (+ (* -1/4 (pow y 3)) (* 1/8 (* x (pow y 4)))))))) y)))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 (/ -2 x)))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 (/ (- (pow x 2) 2) x)))
#s(approx (/ -2 x) #s(hole binary64 (/ -2 x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* -1/2 (* x (pow y 2))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* x (- (* 1/4 (* x (pow y 3))) (* 1/2 (pow y 2)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* x (- (* x (- (* -1/8 (* x (pow y 4))) (* -1/4 (pow y 3)))) (* 1/2 (pow y 2)))))))
#s(approx (/ (- (/ -4 (* y x)) -2) x) #s(hole binary64 (/ -4 (* (pow x 2) y))))
#s(approx (/ (- (/ -4 (* y x)) -2) x) #s(hole binary64 (/ (- (* 2 x) (* 4 (/ 1 y))) (pow x 2))))
#s(approx (- (/ -4 (* y x)) -2) #s(hole binary64 (/ -4 (* x y))))
#s(approx (- (/ -4 (* y x)) -2) #s(hole binary64 (/ (- (* 2 x) (* 4 (/ 1 y))) x)))
#s(approx (/ -4 (* y x)) #s(hole binary64 (/ -4 (* x y))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- 1 (* 2 (/ 1 (pow x 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- (+ 1 (/ 4 (* (pow x 3) y))) (* 2 (/ 1 (pow x 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- (+ 1 (* 4 (/ 1 (* (pow x 3) y)))) (+ (* 8 (/ 1 (* (pow x 4) (pow y 2)))) (* 2 (/ 1 (pow x 2))))))))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 x))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 (* x (- 1 (* 2 (/ 1 (pow x 2)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ 2 x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- 2 (* 4 (/ 1 (* x y)))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- (+ 2 (/ 8 (* (pow x 2) (pow y 2)))) (/ 4 (* x y))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- (+ 2 (* 8 (/ 1 (* (pow x 2) (pow y 2))))) (+ (* 16 (/ 1 (* (pow x 3) (pow y 3)))) (/ 4 (* x y)))) x)))
#s(approx (/ (- (/ -4 (* y x)) -2) x) #s(hole binary64 (/ 2 x)))
#s(approx (/ (- (/ -4 (* y x)) -2) x) #s(hole binary64 (/ (- 2 (* 4 (/ 1 (* x y)))) x)))
#s(approx (- (/ -4 (* y x)) -2) #s(hole binary64 2))
#s(approx (- (/ -4 (* y x)) -2) #s(hole binary64 (- 2 (* 4 (/ 1 (* x y))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) (+ 1 (/ 4 (* (pow x 3) y))))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (+ (* -1 (/ (- (* 4 (/ 1 y)) (* 8 (/ 1 (* x (pow y 2))))) (pow x 3))) (* 2 (/ 1 (pow x 2)))) 1)))))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) 1)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* 4 (/ 1 (* x y))) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* -1 (/ (- (* 8 (/ 1 (* x (pow y 2)))) (* 4 (/ 1 y))) x)) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* -1 (/ (- (* -1 (/ (- (* 16 (/ 1 (* x (pow y 3)))) (* 8 (/ 1 (pow y 2)))) x)) (* 4 (/ 1 y))) x)) 2) x))))
#s(approx (/ (- (/ -4 (* y x)) -2) x) #s(hole binary64 (* -1 (/ (- (* 4 (/ 1 (* x y))) 2) x))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* -1 y))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* y (- (* 1/2 (* x y)) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* y (- (* y (+ (* -1/4 (* (pow x 2) y)) (* 1/2 x))) 1)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* -1/2 (* x y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* y (- (* 1/4 (* (pow x 2) y)) (* 1/2 x)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* y (- (* y (- (* -1/8 (* (pow x 3) y)) (* -1/4 (pow x 2)))) (* 1/2 x)))))))
#s(approx (/ (- (/ -4 (* y x)) -2) x) #s(hole binary64 (/ (- (* 2 (/ y x)) (* 4 (/ 1 (pow x 2)))) y)))
#s(approx (- (/ -4 (* y x)) -2) #s(hole binary64 (/ (- (* 2 y) (* 4 (/ 1 x))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- x (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* 4 (/ 1 (* (pow x 2) y)))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (/ 4 (* (pow x 2) y))) (+ (* 2 (/ 1 x)) (/ 8 (* (pow x 3) (pow y 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (+ (* 16 (/ 1 (* (pow x 4) (pow y 3)))) (/ 4 (* (pow x 2) y)))) (+ (* 2 (/ 1 x)) (* 8 (/ 1 (* (pow x 3) (pow y 2))))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (* 2 (/ 1 x)) (* 4 (/ 1 (* (pow x 2) y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (+ (* 2 (/ 1 x)) (/ 8 (* (pow x 3) (pow y 2)))) (/ 4 (* (pow x 2) y)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (+ (* 2 (/ 1 x)) (* 8 (/ 1 (* (pow x 3) (pow y 2))))) (+ (* 16 (/ 1 (* (pow x 4) (pow y 3)))) (/ 4 (* (pow x 2) y))))))
#s(approx (/ (- (/ -4 (* y x)) -2) x) #s(hole binary64 (- (* 2 (/ 1 x)) (* 4 (/ 1 (* (pow x 2) y))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* -1 (/ (- (* 8 (/ 1 (* (pow x 3) y))) (* 4 (/ 1 (pow x 2)))) y))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* -1 (/ (- (* -1 (/ (- (* 16 (/ 1 (* (pow x 4) y))) (* 8 (/ 1 (pow x 3)))) y)) (* 4 (/ 1 (pow x 2)))) y))) (* 2 (/ 1 x)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ (* -1 (/ (- (* 4 (/ 1 (pow x 2))) (* 8 (/ 1 (* (pow x 3) y)))) y)) (* 2 (/ 1 x)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ (- (* 8 (/ 1 (pow x 3))) (* 16 (/ 1 (* (pow x 4) y)))) y)) (* 4 (/ 1 (pow x 2)))) y)) (* 2 (/ 1 x)))))
Outputs
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (neg.f64 y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (* 1/2 (pow y 2)))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/2 binary64) #s(literal 1 binary64)) x) y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (+ (* -1/4 (* x (pow y 3))) (* 1/2 (pow y 2))))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (fma.f64 (*.f64 y y) (fma.f64 (*.f64 #s(literal -1/4 binary64) x) y #s(literal 1/2 binary64)) #s(literal 1 binary64)) x (neg.f64 y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (* x (+ 1 (+ (* 1/2 (pow y 2)) (* x (+ (* -1/4 (pow y 3)) (* 1/8 (* x (pow y 4)))))))) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 (pow.f64 y #s(literal 4 binary64)) x) #s(literal 1/8 binary64) (*.f64 (pow.f64 y #s(literal 3 binary64)) #s(literal -1/4 binary64))) x (fma.f64 (*.f64 y y) #s(literal 1/2 binary64) #s(literal 1 binary64))) x (neg.f64 y)))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 (/ -2 x)))
#s(approx (+ (* (/ -2 (* x x)) x) x) (/.f64 #s(literal -2 binary64) x))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 (/ (- (pow x 2) 2) x)))
#s(approx (+ (* (/ -2 (* x x)) x) x) (-.f64 x (/.f64 #s(literal 2 binary64) x)))
#s(approx (/ -2 x) #s(hole binary64 (/ -2 x)))
#s(approx (/ -2 x) (/.f64 #s(literal -2 binary64) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) y)
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* -1/2 (* x (pow y 2))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 y x)) y y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* x (- (* 1/4 (* x (pow y 3))) (* 1/2 (pow y 2)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (fma.f64 (*.f64 (*.f64 y y) (fma.f64 (*.f64 #s(literal 1/4 binary64) x) y #s(literal -1/2 binary64))) x y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ y (* x (- (* x (- (* -1/8 (* x (pow y 4))) (* -1/4 (pow y 3)))) (* 1/2 (pow y 2)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/8 binary64) (*.f64 (pow.f64 y #s(literal 4 binary64)) x) (*.f64 #s(literal 1/4 binary64) (pow.f64 y #s(literal 3 binary64)))) x (*.f64 #s(literal -1/2 binary64) (*.f64 y y))) x y))
#s(approx (/ (- (/ -4 (* y x)) -2) x) #s(hole binary64 (/ -4 (* (pow x 2) y))))
#s(approx (/ (- (/ -4 (* y x)) -2) x) (/.f64 #s(literal -4 binary64) (*.f64 (*.f64 x x) y)))
#s(approx (/ (- (/ -4 (* y x)) -2) x) #s(hole binary64 (/ (- (* 2 x) (* 4 (/ 1 y))) (pow x 2))))
#s(approx (/ (- (/ -4 (* y x)) -2) x) (/.f64 (-.f64 (/.f64 (/.f64 #s(literal -4 binary64) y) x) #s(literal -2 binary64)) x))
#s(approx (- (/ -4 (* y x)) -2) #s(hole binary64 (/ -4 (* x y))))
#s(approx (- (/ -4 (* y x)) -2) (/.f64 (/.f64 #s(literal -4 binary64) y) x))
#s(approx (- (/ -4 (* y x)) -2) #s(hole binary64 (/ (- (* 2 x) (* 4 (/ 1 y))) x)))
#s(approx (- (/ -4 (* y x)) -2) (-.f64 (/.f64 (/.f64 #s(literal -4 binary64) y) x) #s(literal -2 binary64)))
#s(approx (/ -4 (* y x)) #s(hole binary64 (/ -4 (* x y))))
#s(approx (/ -4 (* y x)) (/.f64 (/.f64 #s(literal -4 binary64) y) x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x)
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- 1 (* 2 (/ 1 (pow x 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 x (/.f64 #s(literal 2 binary64) x)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- (+ 1 (/ 4 (* (pow x 3) y))) (* 2 (/ 1 (pow x 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (/.f64 (/.f64 (-.f64 (/.f64 (/.f64 #s(literal 4 binary64) y) x) #s(literal 2 binary64)) x) x) x x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* x (- (+ 1 (* 4 (/ 1 (* (pow x 3) y)))) (+ (* 8 (/ 1 (* (pow x 4) (pow y 2)))) (* 2 (/ 1 (pow x 2))))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (-.f64 (/.f64 (/.f64 (-.f64 (/.f64 (/.f64 #s(literal 4 binary64) y) x) #s(literal 2 binary64)) x) x) (/.f64 (/.f64 #s(literal 8 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 y y))) x x))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 x))
#s(approx (+ (* (/ -2 (* x x)) x) x) x)
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 (* x (- 1 (* 2 (/ 1 (pow x 2)))))))
#s(approx (+ (* (/ -2 (* x x)) x) x) (-.f64 x (/.f64 #s(literal 2 binary64) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ 2 x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- 2 (* 4 (/ 1 (* x y)))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 (/.f64 #s(literal -4 binary64) y) x) #s(literal -2 binary64)) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- (+ 2 (/ 8 (* (pow x 2) (pow y 2)))) (/ 4 (* x y))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) y) (/.f64 (/.f64 #s(literal -8 binary64) (*.f64 y y)) x)) x) #s(literal -2 binary64)) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (/ (- (+ 2 (* 8 (/ 1 (* (pow x 2) (pow y 2))))) (+ (* 16 (/ 1 (* (pow x 3) (pow y 3)))) (/ 4 (* x y)))) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) y) (/.f64 (/.f64 #s(literal -8 binary64) (*.f64 y y)) x)) x) (-.f64 (/.f64 #s(literal 16 binary64) (pow.f64 (*.f64 y x) #s(literal 3 binary64))) #s(literal 2 binary64))) x))
#s(approx (/ (- (/ -4 (* y x)) -2) x) #s(hole binary64 (/ 2 x)))
#s(approx (/ (- (/ -4 (* y x)) -2) x) (/.f64 #s(literal 2 binary64) x))
#s(approx (/ (- (/ -4 (* y x)) -2) x) #s(hole binary64 (/ (- 2 (* 4 (/ 1 (* x y)))) x)))
#s(approx (/ (- (/ -4 (* y x)) -2) x) (/.f64 (-.f64 (/.f64 (/.f64 #s(literal -4 binary64) y) x) #s(literal -2 binary64)) x))
#s(approx (- (/ -4 (* y x)) -2) #s(hole binary64 2))
#s(approx (- (/ -4 (* y x)) -2) #s(literal 2 binary64))
#s(approx (- (/ -4 (* y x)) -2) #s(hole binary64 (- 2 (* 4 (/ 1 (* x y))))))
#s(approx (- (/ -4 (* y x)) -2) (-.f64 (/.f64 (/.f64 #s(literal -4 binary64) y) x) #s(literal -2 binary64)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 x (/.f64 #s(literal 2 binary64) x)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) (+ 1 (/ 4 (* (pow x 3) y))))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (/.f64 (/.f64 (-.f64 (/.f64 (/.f64 #s(literal 4 binary64) y) x) #s(literal 2 binary64)) x) x) x x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (* -1 (* x (- (+ (* -1 (/ (- (* 4 (/ 1 y)) (* 8 (/ 1 (* x (pow y 2))))) (pow x 3))) (* 2 (/ 1 (pow x 2)))) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (neg.f64 x) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) y) (/.f64 (/.f64 #s(literal -8 binary64) (*.f64 y y)) x)) (pow.f64 x #s(literal 3 binary64))) (-.f64 x (/.f64 #s(literal 2 binary64) x))))
#s(approx (+ (* (/ -2 (* x x)) x) x) #s(hole binary64 (* -1 (* x (- (* 2 (/ 1 (pow x 2))) 1)))))
#s(approx (+ (* (/ -2 (* x x)) x) x) (-.f64 x (/.f64 #s(literal 2 binary64) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* 4 (/ 1 (* x y))) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 (/.f64 #s(literal -4 binary64) y) x) #s(literal -2 binary64)) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* -1 (/ (- (* 8 (/ 1 (* x (pow y 2)))) (* 4 (/ 1 y))) x)) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) y) (/.f64 (/.f64 #s(literal -8 binary64) (*.f64 y y)) x)) x) #s(literal -2 binary64)) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* -1 (/ (- (* -1 (/ (- (* -1 (/ (- (* 16 (/ 1 (* x (pow y 3)))) (* 8 (/ 1 (pow y 2)))) x)) (* 4 (/ 1 y))) x)) 2) x))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (+.f64 (/.f64 (-.f64 (/.f64 (fma.f64 (/.f64 #s(literal 16 binary64) (*.f64 (pow.f64 y #s(literal 3 binary64)) x)) #s(literal -1 binary64) (/.f64 #s(literal 8 binary64) (*.f64 y y))) x) (/.f64 #s(literal 4 binary64) y)) x) #s(literal 2 binary64)) x))
#s(approx (/ (- (/ -4 (* y x)) -2) x) #s(hole binary64 (* -1 (/ (- (* 4 (/ 1 (* x y))) 2) x))))
#s(approx (/ (- (/ -4 (* y x)) -2) x) (/.f64 (-.f64 (/.f64 (/.f64 #s(literal -4 binary64) y) x) #s(literal -2 binary64)) x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* -1 y))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 x y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* y (- (* 1/2 (* x y)) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal -1 binary64)) y x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (+ x (* y (- (* y (+ (* -1/4 (* (pow x 2) y)) (* 1/2 x))) 1)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 x x) #s(literal -1/4 binary64)) y (*.f64 #s(literal 1/2 binary64) x)) y #s(literal -1 binary64)) y x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* -1/2 (* x y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 y x)) y y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* y (- (* 1/4 (* (pow x 2) y)) (* 1/2 x)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (fma.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) x (*.f64 (*.f64 (*.f64 x x) y) #s(literal 1/4 binary64))) y) y y))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (* y (+ 1 (* y (- (* y (- (* -1/8 (* (pow x 3) y)) (* -1/4 (pow x 2)))) (* 1/2 x)))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (*.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) x (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 x x) (*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) #s(literal -1/8 binary64))) y)) y #s(literal 1 binary64)) y))
#s(approx (/ (- (/ -4 (* y x)) -2) x) #s(hole binary64 (/ (- (* 2 (/ y x)) (* 4 (/ 1 (pow x 2)))) y)))
#s(approx (/ (- (/ -4 (* y x)) -2) x) (/.f64 (fma.f64 #s(literal 2 binary64) y (/.f64 #s(literal -4 binary64) x)) (*.f64 y x)))
#s(approx (- (/ -4 (* y x)) -2) #s(hole binary64 (/ (- (* 2 y) (* 4 (/ 1 x))) y)))
#s(approx (- (/ -4 (* y x)) -2) (-.f64 (/.f64 (/.f64 #s(literal -4 binary64) y) x) #s(literal -2 binary64)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- x (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 x (/.f64 #s(literal 2 binary64) x)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* 4 (/ 1 (* (pow x 2) y)))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (+.f64 (/.f64 (-.f64 (/.f64 (/.f64 #s(literal 4 binary64) y) x) #s(literal 2 binary64)) x) x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (/ 4 (* (pow x 2) y))) (+ (* 2 (/ 1 x)) (/ 8 (* (pow x 3) (pow y 2)))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (/.f64 (-.f64 (/.f64 (/.f64 #s(literal 4 binary64) y) x) #s(literal 2 binary64)) x) (-.f64 (/.f64 #s(literal 8 binary64) (*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) y)) x)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (+ (* 16 (/ 1 (* (pow x 4) (pow y 3)))) (/ 4 (* (pow x 2) y)))) (+ (* 2 (/ 1 x)) (* 8 (/ 1 (* (pow x 3) (pow y 2))))))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (+.f64 (/.f64 (/.f64 #s(literal 16 binary64) (pow.f64 y #s(literal 3 binary64))) (pow.f64 x #s(literal 4 binary64))) (+.f64 (/.f64 (-.f64 (/.f64 (/.f64 #s(literal 4 binary64) y) x) #s(literal 2 binary64)) x) x)) (/.f64 #s(literal 8 binary64) (*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) y))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (* 2 (/ 1 x)) (* 4 (/ 1 (* (pow x 2) y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 (/.f64 #s(literal -4 binary64) y) x) #s(literal -2 binary64)) x))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (+ (* 2 (/ 1 x)) (/ 8 (* (pow x 3) (pow y 2)))) (/ 4 (* (pow x 2) y)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (-.f64 (/.f64 #s(literal 8 binary64) (*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) y)) (/.f64 (-.f64 (/.f64 (/.f64 #s(literal 4 binary64) y) x) #s(literal 2 binary64)) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (- (+ (* 2 (/ 1 x)) (* 8 (/ 1 (* (pow x 3) (pow y 2))))) (+ (* 16 (/ 1 (* (pow x 4) (pow y 3)))) (/ 4 (* (pow x 2) y))))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (-.f64 (-.f64 (/.f64 #s(literal 8 binary64) (*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) y)) (/.f64 (-.f64 (/.f64 (/.f64 #s(literal 4 binary64) y) x) #s(literal 2 binary64)) x)) (/.f64 (/.f64 #s(literal 16 binary64) (pow.f64 y #s(literal 3 binary64))) (pow.f64 x #s(literal 4 binary64)))))
#s(approx (/ (- (/ -4 (* y x)) -2) x) #s(hole binary64 (- (* 2 (/ 1 x)) (* 4 (/ 1 (* (pow x 2) y))))))
#s(approx (/ (- (/ -4 (* y x)) -2) x) (/.f64 (-.f64 (/.f64 (/.f64 #s(literal -4 binary64) y) x) #s(literal -2 binary64)) x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* -1 (/ (- (* 8 (/ 1 (* (pow x 3) y))) (* 4 (/ 1 (pow x 2)))) y))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (/.f64 (-.f64 (/.f64 (/.f64 #s(literal 4 binary64) y) x) #s(literal 2 binary64)) x) (-.f64 (/.f64 #s(literal 8 binary64) (*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) y)) x)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(hole binary64 (- (+ x (* -1 (/ (- (* -1 (/ (- (* 16 (/ 1 (* (pow x 4) y))) (* 8 (/ 1 (pow x 3)))) y)) (* 4 (/ 1 (pow x 2)))) y))) (* 2 (/ 1 x)))))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (-.f64 (-.f64 x (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 x x)) (/.f64 (-.f64 (/.f64 #s(literal -8 binary64) (pow.f64 x #s(literal 3 binary64))) (/.f64 #s(literal -16 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) y))) y)) y)) (/.f64 #s(literal 2 binary64) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ (* -1 (/ (- (* 4 (/ 1 (pow x 2))) (* 8 (/ 1 (* (pow x 3) y)))) y)) (* 2 (/ 1 x)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (-.f64 (/.f64 #s(literal 8 binary64) (*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) y)) (/.f64 (-.f64 (/.f64 (/.f64 #s(literal 4 binary64) y) x) #s(literal 2 binary64)) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ (- (* 8 (/ 1 (pow x 3))) (* 16 (/ 1 (* (pow x 4) y)))) y)) (* 4 (/ 1 (pow x 2)))) y)) (* 2 (/ 1 x)))))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (-.f64 (/.f64 (-.f64 (/.f64 #s(literal -16 binary64) (*.f64 (pow.f64 x #s(literal 4 binary64)) y)) (/.f64 #s(literal -8 binary64) (pow.f64 x #s(literal 3 binary64)))) (*.f64 y y)) (/.f64 (-.f64 (/.f64 (/.f64 #s(literal 4 binary64) y) x) #s(literal 2 binary64)) x)))

rewrite104.0ms (2.2%)

Memory
11.1MiB live, 107.5MiB allocated; 32ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
024102
030102
1128102
094497
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
8 → 44
Calls
Call 1
Inputs
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(approx (+ (* (/ -2 (* x x)) x) x) (/.f64 #s(literal -2 binary64) x)))
#s(approx (+ (* (/ -2 (* x x)) x) x) (/.f64 #s(literal -2 binary64) x))
(/.f64 #s(literal -2 binary64) x)
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x))
(/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)
(-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64))
(/.f64 #s(literal -4 binary64) (*.f64 y x))
Outputs
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(approx (+ (* (/ -2 (* x x)) x) x) (/.f64 #s(literal -2 binary64) x)))
#s(approx (+ (* (/ -2 (* x x)) x) x) (/.f64 #s(literal -2 binary64) x))
(/.f64 #s(literal -2 binary64) (neg.f64 (neg.f64 x)))
(/.f64 #s(literal -2 binary64) x)
(/.f64 #s(literal 2 binary64) (neg.f64 x))
(neg.f64 (/.f64 #s(literal 2 binary64) x))
(neg.f64 (/.f64 #s(literal -2 binary64) (neg.f64 x)))
(+.f64 (/.f64 #s(literal 1 binary64) (neg.f64 x)) (/.f64 #s(literal 1 binary64) (neg.f64 x)))
(/.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)) #s(literal 2 binary64)))) (neg.f64 (+.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)) x)))
(/.f64 (neg.f64 (-.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)) (+.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)) x) (*.f64 x x))))
(/.f64 (-.f64 (*.f64 x x) (pow.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)) #s(literal 2 binary64))) (+.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)) x))
(/.f64 (-.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)) #s(literal 3 binary64))) (fma.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)) (+.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)) x) (*.f64 x x)))
(-.f64 (/.f64 (*.f64 x x) (+.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)) x)) (/.f64 (pow.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)) #s(literal 2 binary64)) (+.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)) x)))
(-.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)) (+.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)) x) (*.f64 x x))) (/.f64 (pow.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)) #s(literal 3 binary64)) (fma.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)) (+.f64 #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)) x) (*.f64 x x))))
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)))
#s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x))
(/.f64 (-.f64 (*.f64 (/.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) x) (/.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) x)) (*.f64 (/.f64 #s(literal -2 binary64) x) (/.f64 #s(literal -2 binary64) x))) (+.f64 (/.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) x) (/.f64 #s(literal -2 binary64) x)))
(/.f64 (-.f64 (pow.f64 (/.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) x) #s(literal 3 binary64)) (pow.f64 (/.f64 #s(literal -2 binary64) x) #s(literal 3 binary64))) (fma.f64 (/.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) x) (/.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) x) (fma.f64 (/.f64 #s(literal -2 binary64) x) (/.f64 #s(literal -2 binary64) x) (*.f64 (/.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) x) (/.f64 #s(literal -2 binary64) x)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)))) (neg.f64 (neg.f64 x)))
(/.f64 (-.f64 (*.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) x) (*.f64 #s(literal -2 binary64) x)) (*.f64 x x))
(/.f64 (-.f64 (*.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) (neg.f64 x)) (*.f64 x #s(literal 2 binary64))) (*.f64 (neg.f64 x) x))
(/.f64 (-.f64 (pow.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal 2 binary64)) #s(literal 4 binary64)) (*.f64 (+.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x))
(/.f64 (-.f64 (pow.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal 3 binary64)) #s(literal -8 binary64)) (*.f64 (+.f64 (+.f64 (pow.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal 2 binary64)) #s(literal 4 binary64)) (/.f64 #s(literal 8 binary64) (*.f64 y x))) x))
(/.f64 (neg.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64))) (neg.f64 x))
(/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)
(neg.f64 (/.f64 (neg.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64))) x))
(neg.f64 (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) (neg.f64 x)))
(-.f64 (/.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) x) (/.f64 #s(literal -2 binary64) x))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal 2 binary64)) #s(literal 4 binary64))) (neg.f64 (+.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal 3 binary64)) #s(literal -8 binary64))) (neg.f64 (+.f64 (+.f64 (pow.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal 2 binary64)) #s(literal 4 binary64)) (/.f64 #s(literal 8 binary64) (*.f64 y x)))))
(/.f64 (-.f64 (pow.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal 2 binary64)) #s(literal 4 binary64)) (+.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)))
(/.f64 (-.f64 (pow.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal 3 binary64)) #s(literal -8 binary64)) (+.f64 (+.f64 (pow.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal 2 binary64)) #s(literal 4 binary64)) (/.f64 #s(literal 8 binary64) (*.f64 y x))))
(-.f64 (/.f64 (pow.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal 2 binary64)) (+.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64))) (/.f64 #s(literal 4 binary64) (+.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64))))
(-.f64 (/.f64 (pow.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal 3 binary64)) (+.f64 (+.f64 (pow.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal 2 binary64)) #s(literal 4 binary64)) (/.f64 #s(literal 8 binary64) (*.f64 y x)))) (/.f64 #s(literal -8 binary64) (+.f64 (+.f64 (pow.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal 2 binary64)) #s(literal 4 binary64)) (/.f64 #s(literal 8 binary64) (*.f64 y x)))))
(-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64))
(*.f64 #s(literal -2 binary64) (/.f64 #s(literal -2 binary64) (*.f64 (neg.f64 x) y)))
(/.f64 (/.f64 #s(literal -4 binary64) x) y)
(/.f64 (neg.f64 (/.f64 #s(literal -4 binary64) y)) (neg.f64 x))
(/.f64 (/.f64 #s(literal -4 binary64) y) x)
(/.f64 #s(literal 4 binary64) (*.f64 (neg.f64 x) y))
(/.f64 #s(literal -4 binary64) (neg.f64 (*.f64 (neg.f64 x) y)))
(/.f64 #s(literal -4 binary64) (*.f64 y x))
(neg.f64 (/.f64 #s(literal 4 binary64) (*.f64 y x)))
(neg.f64 (/.f64 #s(literal -4 binary64) (*.f64 (neg.f64 x) y)))

eval10.0ms (0.2%)

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

Compiled 2 643 to 419 computations (84.1% saved)

prune40.0ms (0.8%)

Memory
-29.3MiB live, 14.2MiB allocated; 12ms collecting garbage
Pruning

10 alts after pruning (0 fresh and 10 done)

PrunedKeptTotal
New85085
Fresh000
Picked022
Done088
Total851095
Accuracy
100.0%
Counts
95 → 10
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))))
75.4%
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (*.f64 (neg.f64 y) #s(approx (- (* -1/2 x) (/ 1 y)) (/.f64 #s(literal -1 binary64) y))))))
58.2%
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 (-.f64 (/.f64 #s(literal -4 binary64) (*.f64 y x)) #s(literal -2 binary64)) x)))
62.6%
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)))
75.5%
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y))
60.7%
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x x))
24.0%
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (neg.f64 y))
13.8%
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(approx (+ (* (/ -2 (* x x)) x) x) (/.f64 #s(literal -2 binary64) x)))
24.6%
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y)))
64.6%
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x)
Compiler

Compiled 448 to 229 computations (48.9% saved)

regimes13.0ms (0.3%)

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

3 calls:

4.0ms
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
4.0ms
x
4.0ms
y
Results
AccuracySegmentsBranch
99.9%1(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
99.9%1x
99.9%1y
Compiler

Compiled 13 to 13 computations (0% saved)

regimes9.0ms (0.2%)

Memory
16.6MiB live, 16.6MiB allocated; 0ms collecting garbage
Counts
8 → 3
Calls
Call 1
Inputs
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x)
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (neg.f64 y))
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(approx (+ (* (/ -2 (* x x)) x) x) (/.f64 #s(literal -2 binary64) x)))
(-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(approx (+ (* (+ (* (* 1/2 y) x) -1) y) x) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) x #s(literal -1 binary64)) y x))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (fma.f64 (/.f64 #s(literal -2 binary64) (*.f64 x x)) x x))
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)))
Calls

3 calls:

3.0ms
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
3.0ms
x
3.0ms
y
Results
AccuracySegmentsBranch
88.7%3(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
89.3%3x
92.8%3y
Compiler

Compiled 13 to 13 computations (0% saved)

regimes30.0ms (0.6%)

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

3 calls:

26.0ms
y
2.0ms
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
2.0ms
x
Results
AccuracySegmentsBranch
75.5%1(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
88.7%4x
82.7%3y
Compiler

Compiled 13 to 13 computations (0% saved)

regimes2.0ms (0%)

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

1 calls:

2.0ms
x
Results
AccuracySegmentsBranch
86.9%3x
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes3.0ms (0.1%)

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

2 calls:

1.0ms
x
1.0ms
y
Results
AccuracySegmentsBranch
64.6%1y
79.5%3x
Compiler

Compiled 2 to 4 computations (-100% saved)

regimes2.0ms (0.1%)

Memory
6.6MiB live, 6.6MiB allocated; 0ms collecting garbage
Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

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

2 calls:

1.0ms
(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
1.0ms
x
Results
AccuracySegmentsBranch
64.6%1(-.f64 x (/.f64 y (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 x y) #s(literal 2 binary64)))))
64.6%1x
Compiler

Compiled 12 to 11 computations (8.3% saved)

bsearch61.0ms (1.3%)

Memory
-36.7MiB live, 63.9MiB allocated; 32ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
16.0ms
2.5040274191943033e+122
5.967053072401984e+152
37.0ms
-1.6845581932924367e+38
-3.8115077528701927e+31
Samples
18.0ms320×0valid
Compiler

Compiled 574 to 494 computations (13.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 11.0ms
ival-div: 4.0ms (37.1% of total)
ival-mult: 3.0ms (27.8% of total)
ival-sub: 2.0ms (18.5% of total)
ival-add: 2.0ms (18.5% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch39.0ms (0.8%)

Memory
6.5MiB live, 97.6MiB allocated; 6ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
12.0ms
3.2044878650974203e-24
1.5777390777240113e-19
13.0ms
9.075847357458217e-46
1.6088898643091539e-43
9.0ms
-3.2234666529680617e-10
-3.3669018836516555e-11
Samples
19.0ms336×0valid
Compiler

Compiled 740 to 596 computations (19.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 11.0ms
ival-div: 4.0ms (36.1% of total)
ival-mult: 3.0ms (27.1% of total)
ival-sub: 2.0ms (18% of total)
ival-add: 2.0ms (18% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch16.0ms (0.3%)

Memory
29.9MiB live, 29.9MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
13.0ms
0.011020750726970376
101007.5523362931
0.0ms
-3.2234666529680617e-10
-3.3669018836516555e-11
Samples
8.0ms144×0valid
Compiler

Compiled 404 to 344 computations (14.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 5.0ms
ival-div: 2.0ms (42.8% of total)
ival-sub: 1.0ms (21.4% of total)
ival-add: 1.0ms (21.4% of total)
ival-mult: 1.0ms (21.4% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch128.0ms (2.7%)

Memory
-25.7MiB live, 128.3MiB allocated; 48ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
42.0ms
8.385955646354505e-133
2.7059630877307637e-126
83.0ms
-7.261561772698291e-178
-1.0751854258327351e-182
Samples
112.0ms288×0valid
Compiler

Compiled 500 to 428 computations (14.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 41.0ms
ival-add: 27.0ms (66.1% of total)
ival-mult: 7.0ms (17.1% of total)
ival-div: 4.0ms (9.8% of total)
ival-sub: 2.0ms (4.9% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

simplify63.0ms (1.3%)

Memory
21.0MiB live, 120.7MiB allocated; 14ms collecting garbage
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
056215
194215
2160213
3325211
4872211
56441211
Stop Event
node limit
Calls
Call 1
Inputs
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))))
(if (<=.f64 y #s(literal -164999999999999995341062912128527106048 binary64)) (-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x))) (if (<=.f64 y #s(literal 920000000000000020592667351433880784519255997600725830275161262745089724996244697005295173639834781764709392038727545520128 binary64)) (-.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)))))
(if (<=.f64 x #s(literal -6189700196426901/19342813113834066795298816 binary64)) #s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x) (if (<=.f64 x #s(literal 8838159243424447/803469022129495137770981046170581301261101496891396417650688 binary64)) (-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y)) (if (<=.f64 x #s(literal 3147611894018681/170141183460469231731687303715884105728 binary64)) #s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(approx (+ (* (/ -2 (* x x)) x) x) (/.f64 #s(literal -2 binary64) x))) #s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x))))
(if (<=.f64 x #s(literal -6189700196426901/19342813113834066795298816 binary64)) #s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x) (if (<=.f64 x #s(literal 6530219459687219/4503599627370496 binary64)) (-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y)) #s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x)))
(if (<=.f64 x #s(literal -6569914489375961/9124881235244390437282343211400582649786457014497119861158385035798550334417354773011825622634742799557284619147188814621377409442750875996505322639444428376503989348720529900165748384493207552 binary64)) #s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x) (if (<=.f64 x #s(literal 2809573695284393/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176 binary64)) #s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (neg.f64 y)) #s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x)
Outputs
(-.f64 x (/.f64 y #s(approx (+ 1 (/ (* x y) 2)) (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) #s(literal 1 binary64)))))
(if (<=.f64 y #s(literal -164999999999999995341062912128527106048 binary64)) (-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) (/.f64 #s(literal 2 binary64) x))) (if (<=.f64 y #s(literal 920000000000000020592667351433880784519255997600725830275161262745089724996244697005295173639834781764709392038727545520128 binary64)) (-.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)))))
(if (or (<=.f64 y #s(literal -164999999999999995341062912128527106048 binary64)) (not (<=.f64 y #s(literal 920000000000000020592667351433880784519255997600725830275161262745089724996244697005295173639834781764709392038727545520128 binary64)))) (-.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)))
(if (<=.f64 x #s(literal -6189700196426901/19342813113834066795298816 binary64)) #s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x) (if (<=.f64 x #s(literal 8838159243424447/803469022129495137770981046170581301261101496891396417650688 binary64)) (-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y)) (if (<=.f64 x #s(literal 3147611894018681/170141183460469231731687303715884105728 binary64)) #s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) #s(approx (+ (* (/ -2 (* x x)) x) x) (/.f64 #s(literal -2 binary64) x))) #s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x))))
(if (<=.f64 x #s(literal -6189700196426901/19342813113834066795298816 binary64)) #s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x) (if (<=.f64 x #s(literal 6530219459687219/4503599627370496 binary64)) (-.f64 x #s(approx (/ y (+ 1 (/ (* x y) 2))) y)) #s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x)))
(if (<=.f64 x #s(literal -6569914489375961/9124881235244390437282343211400582649786457014497119861158385035798550334417354773011825622634742799557284619147188814621377409442750875996505322639444428376503989348720529900165748384493207552 binary64)) #s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x) (if (<=.f64 x #s(literal 2809573695284393/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176 binary64)) #s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) (neg.f64 y)) #s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x)))
#s(approx (- x (/ y (+ 1 (/ (* x y) 2)))) x)

derivations325.0ms (6.8%)

Memory
-29.0MiB live, 294.8MiB allocated; 35ms collecting garbage
Stop Event
done
Compiler

Compiled 239 to 60 computations (74.9% saved)

preprocess51.0ms (1.1%)

Memory
6.2MiB live, 53.6MiB allocated; 15ms collecting garbage
Compiler

Compiled 500 to 138 computations (72.4% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...