Data.Random.Distribution.T:$ccdf from random-fu-0.2.6.2

Time bar (total: 3.1s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze11.0ms (0.3%)

Memory
22.9MiB live, 22.9MiB allocated
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
75%74.9%25%0.1%0%0%0%5
75%74.9%25%0.1%0%0%0%6
87.5%87.4%12.5%0.1%0%0%0%7
87.5%87.4%12.5%0.1%0%0%0%8
93.8%93.7%6.2%0.1%0%0%0%9
93.8%93.7%6.2%0.1%0%0%0%10
96.9%96.8%3.1%0.1%0%0%0%11
96.9%96.8%3.1%0.1%0%0%0%12
Compiler

Compiled 9 to 7 computations (22.2% saved)

sample713.0ms (23%)

Memory
-10.3MiB live, 667.5MiB allocated
Samples
445.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 225.0ms
ival-add: 128.0ms (56.9% of total)
ival-div: 86.0ms (38.3% of total)
ival-true: 7.0ms (3.1% of total)
ival-assert: 4.0ms (1.8% of total)
Bogosity

explain78.0ms (2.5%)

Memory
-8.0MiB live, 29.5MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-(+.f64 y y)
00-0-(/.f64 (+.f64 x y) (+.f64 y y))
00-0-y
00-0-(+.f64 x 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
21.0ms512×0valid
Compiler

Compiled 41 to 19 computations (53.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 9.0ms
ival-add: 5.0ms (53.4% of total)
ival-div: 4.0ms (42.7% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess97.0ms (3.1%)

Memory
-1.2MiB live, 38.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01541
14235
210635
331035
4126235
5238835
6325235
7380135
8425335
9430335
10433535
11441135
12459535
057
087
1117
2147
3167
0167
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(/.f64 (+.f64 x y) (+.f64 y y))
Outputs
(/.f64 (+.f64 x y) (+.f64 y y))
(/.f64 (/.f64 (+.f64 y x) y) #s(literal 2 binary64))
Compiler

Compiled 7 to 5 computations (28.6% saved)

eval0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

Memory
1.3MiB live, 1.3MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(/.f64 (+.f64 x y) (+.f64 y y))
Compiler

Compiled 7 to 5 computations (28.6% saved)

simplify3.0ms (0.1%)

Memory
4.5MiB live, 4.5MiB allocated
Algorithm
egg-herbie
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
cost-diff-384
(/.f64 (+.f64 x y) (+.f64 y y))
cost-diff-128
(+.f64 y y)
cost-diff0
(+.f64 x y)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0515
0815
11115
21415
31615
01615
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(/.f64 (+.f64 x y) (+.f64 y y))
(+.f64 x y)
x
y
(+.f64 y y)
Outputs
(/.f64 (+.f64 x y) (+.f64 y y))
(/.f64 (/.f64 (+.f64 y x) y) #s(literal 2 binary64))
(+.f64 x y)
(+.f64 y x)
x
y
(+.f64 y y)
(*.f64 #s(literal 2 binary64) y)

localize15.0ms (0.5%)

Memory
18.2MiB live, 18.2MiB allocated
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy0
(+.f64 y y)
accuracy0
(+.f64 x y)
accuracy0.0078125
(/.f64 (+.f64 x y) (+.f64 y y))
Samples
10.0ms256×0valid
Compiler

Compiled 17 to 7 computations (58.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 5.0ms
ival-add: 3.0ms (64.5% of total)
ival-div: 2.0ms (43% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series13.0ms (0.4%)

Memory
-30.4MiB live, 8.2MiB allocated
Counts
3 → 60
Calls
Call 1
Inputs
#s(alt (+.f64 x y) (patch (+.f64 x y) #<representation binary64>) () ())
#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())
#s(alt (/.f64 (+.f64 x y) (+.f64 y y)) (patch (/.f64 (+.f64 x y) (+.f64 y y)) #<representation binary64>) () ())
Outputs
#s(alt x (taylor 0 y) (#s(alt (+.f64 x y) (patch (+.f64 x y) #<representation binary64>) () ())) ())
#s(alt (+ x y) (taylor 0 y) (#s(alt (+.f64 x y) (patch (+.f64 x y) #<representation binary64>) () ())) ())
#s(alt (+ x y) (taylor 0 y) (#s(alt (+.f64 x y) (patch (+.f64 x y) #<representation binary64>) () ())) ())
#s(alt (+ x y) (taylor 0 y) (#s(alt (+.f64 x y) (patch (+.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor 0 y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor 0 y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor 0 y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor 0 y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor 0 y) (#s(alt (/.f64 (+.f64 x y) (+.f64 y y)) (patch (/.f64 (+.f64 x y) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt (/.f64 (+.f64 x y) (+.f64 y y)) (patch (/.f64 (+.f64 x y) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt (/.f64 (+.f64 x y) (+.f64 y y)) (patch (/.f64 (+.f64 x y) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt (/.f64 (+.f64 x y) (+.f64 y y)) (patch (/.f64 (+.f64 x y) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt y (taylor inf y) (#s(alt (+.f64 x y) (patch (+.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (/ x y))) (taylor inf y) (#s(alt (+.f64 x y) (patch (+.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (/ x y))) (taylor inf y) (#s(alt (+.f64 x y) (patch (+.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (/ x y))) (taylor inf y) (#s(alt (+.f64 x y) (patch (+.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor inf y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor inf y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor inf y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor inf y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor inf y) (#s(alt (/.f64 (+.f64 x y) (+.f64 y y)) (patch (/.f64 (+.f64 x y) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt (/.f64 (+.f64 x y) (+.f64 y y)) (patch (/.f64 (+.f64 x y) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt (/.f64 (+.f64 x y) (+.f64 y y)) (patch (/.f64 (+.f64 x y) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt (/.f64 (+.f64 x y) (+.f64 y y)) (patch (/.f64 (+.f64 x y) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt y (taylor -inf y) (#s(alt (+.f64 x y) (patch (+.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ x y)) 1))) (taylor -inf y) (#s(alt (+.f64 x y) (patch (+.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ x y)) 1))) (taylor -inf y) (#s(alt (+.f64 x y) (patch (+.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ x y)) 1))) (taylor -inf y) (#s(alt (+.f64 x y) (patch (+.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor -inf y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor -inf y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor -inf y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor -inf y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor -inf y) (#s(alt (/.f64 (+.f64 x y) (+.f64 y y)) (patch (/.f64 (+.f64 x y) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt (/.f64 (+.f64 x y) (+.f64 y y)) (patch (/.f64 (+.f64 x y) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt (/.f64 (+.f64 x y) (+.f64 y y)) (patch (/.f64 (+.f64 x y) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt (/.f64 (+.f64 x y) (+.f64 y y)) (patch (/.f64 (+.f64 x y) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt y (taylor 0 x) (#s(alt (+.f64 x y) (patch (+.f64 x y) #<representation binary64>) () ())) ())
#s(alt (+ x y) (taylor 0 x) (#s(alt (+.f64 x y) (patch (+.f64 x y) #<representation binary64>) () ())) ())
#s(alt (+ x y) (taylor 0 x) (#s(alt (+.f64 x y) (patch (+.f64 x y) #<representation binary64>) () ())) ())
#s(alt (+ x y) (taylor 0 x) (#s(alt (+.f64 x y) (patch (+.f64 x y) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor 0 x) (#s(alt (/.f64 (+.f64 x y) (+.f64 y y)) (patch (/.f64 (+.f64 x y) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt (/.f64 (+.f64 x y) (+.f64 y y)) (patch (/.f64 (+.f64 x y) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt (/.f64 (+.f64 x y) (+.f64 y y)) (patch (/.f64 (+.f64 x y) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt (/.f64 (+.f64 x y) (+.f64 y y)) (patch (/.f64 (+.f64 x y) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt x (taylor inf x) (#s(alt (+.f64 x y) (patch (+.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (/ y x))) (taylor inf x) (#s(alt (+.f64 x y) (patch (+.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (/ y x))) (taylor inf x) (#s(alt (+.f64 x y) (patch (+.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (/ y x))) (taylor inf x) (#s(alt (+.f64 x y) (patch (+.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor inf x) (#s(alt (/.f64 (+.f64 x y) (+.f64 y y)) (patch (/.f64 (+.f64 x y) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt (/.f64 (+.f64 x y) (+.f64 y y)) (patch (/.f64 (+.f64 x y) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt (/.f64 (+.f64 x y) (+.f64 y y)) (patch (/.f64 (+.f64 x y) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt (/.f64 (+.f64 x y) (+.f64 y y)) (patch (/.f64 (+.f64 x y) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt x (taylor -inf x) (#s(alt (+.f64 x y) (patch (+.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ y x)) 1))) (taylor -inf x) (#s(alt (+.f64 x y) (patch (+.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ y x)) 1))) (taylor -inf x) (#s(alt (+.f64 x y) (patch (+.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ y x)) 1))) (taylor -inf x) (#s(alt (+.f64 x y) (patch (+.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor -inf x) (#s(alt (/.f64 (+.f64 x y) (+.f64 y y)) (patch (/.f64 (+.f64 x y) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor -inf x) (#s(alt (/.f64 (+.f64 x y) (+.f64 y y)) (patch (/.f64 (+.f64 x y) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor -inf x) (#s(alt (/.f64 (+.f64 x y) (+.f64 y y)) (patch (/.f64 (+.f64 x y) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor -inf x) (#s(alt (/.f64 (+.f64 x y) (+.f64 y y)) (patch (/.f64 (+.f64 x y) (+.f64 y y)) #<representation binary64>) () ())) ())
Calls

6 calls:

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

simplify126.0ms (4.1%)

Memory
20.8MiB live, 73.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
034240
195240
2195240
3532240
42484240
54892240
66155240
77112240
87634240
08014222
Stop Event
iter limit
node limit
Counts
60 → 54
Calls
Call 1
Inputs
x
(+ x y)
(+ x y)
(+ x y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 1/2 (/ x y))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
y
(* y (+ 1 (/ x y)))
(* y (+ 1 (/ x y)))
(* y (+ 1 (/ x y)))
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
y
(* -1 (* y (- (* -1 (/ x y)) 1)))
(* -1 (* y (- (* -1 (/ x y)) 1)))
(* -1 (* y (- (* -1 (/ x y)) 1)))
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
y
(+ x y)
(+ x y)
(+ x y)
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
x
(* x (+ 1 (/ y x)))
(* x (+ 1 (/ y x)))
(* x (+ 1 (/ y x)))
(* 1/2 (/ x y))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
x
(* -1 (* x (- (* -1 (/ y x)) 1)))
(* -1 (* x (- (* -1 (/ y x)) 1)))
(* -1 (* x (- (* -1 (/ y x)) 1)))
(* 1/2 (/ x y))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
Outputs
x
(+ x y)
(+.f64 y x)
(+ x y)
(+.f64 y x)
(+ x y)
(+.f64 y x)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
y
(* y (+ 1 (/ x y)))
(+.f64 y x)
(* y (+ 1 (/ x y)))
(+.f64 y x)
(* y (+ 1 (/ x y)))
(+.f64 y x)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
y
(* -1 (* y (- (* -1 (/ x y)) 1)))
(+.f64 y x)
(* -1 (* y (- (* -1 (/ x y)) 1)))
(+.f64 y x)
(* -1 (* y (- (* -1 (/ x y)) 1)))
(+.f64 y x)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
y
(+ x y)
(+.f64 y x)
(+ x y)
(+.f64 y x)
(+ x y)
(+.f64 y x)
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
x
(* x (+ 1 (/ y x)))
(+.f64 y x)
(* x (+ 1 (/ y x)))
(+.f64 y x)
(* x (+ 1 (/ y x)))
(+.f64 y x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
x
(* -1 (* x (- (* -1 (/ y x)) 1)))
(+.f64 y x)
(* -1 (* x (- (* -1 (/ y x)) 1)))
(+.f64 y x)
(* -1 (* x (- (* -1 (/ y x)) 1)))
(+.f64 y x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))

rewrite75.0ms (2.4%)

Memory
-2.3MiB live, 37.7MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0513
0813
13813
030513
Stop Event
iter limit
iter limit
iter limit
unsound
iter limit
Counts
3 → 61
Calls
Call 1
Inputs
(+.f64 x y)
(+.f64 y y)
(/.f64 (+.f64 x y) (+.f64 y y))
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval20.0ms (0.6%)

Memory
-21.7MiB live, 17.7MiB allocated
Compiler

Compiled 1 133 to 170 computations (85% saved)

prune6.0ms (0.2%)

Memory
15.9MiB live, 15.9MiB allocated
Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New1105115
Fresh000
Picked101
Done000
Total1115116
Accuracy
100.0%
Counts
116 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
1.2%
(*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y))
4.2%
(*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y))
100.0%
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))
52.0%
#s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x))
48.2%
#s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64))
Compiler

Compiled 60 to 58 computations (3.3% saved)

simplify104.0ms (3.4%)

Memory
9.3MiB live, 48.8MiB allocated
Algorithm
egg-herbie
Localize:

Found 14 expressions of interest:

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

Useful iterations: 6 (0.0ms)

IterNodesCost
01997
02997
15797
211696
331996
453996
572596
6133893
7305393
8362193
9371993
10377493
11380793
12380793
13380793
0380793
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(/.f64 x y)
x
y
#s(literal 1/2 binary64)
#s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y))
(+.f64 y x)
y
x
(*.f64 #s(literal -2 binary64) y)
#s(literal -2 binary64)
(*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y))
(neg.f64 (+.f64 y x))
(+.f64 y x)
y
x
(*.f64 #s(literal -2 binary64) y)
#s(literal -2 binary64)
#s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(/.f64 #s(literal 1/2 binary64) y)
#s(literal 1/2 binary64)
y
x
Outputs
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(/.f64 x y)
x
y
#s(literal 1/2 binary64)
#s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal -2 binary64))
(+.f64 y x)
y
x
(*.f64 #s(literal -2 binary64) y)
#s(literal -2 binary64)
(*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal 2 binary64))
(neg.f64 (+.f64 y x))
(+.f64 y x)
y
x
(*.f64 #s(literal -2 binary64) y)
#s(literal -2 binary64)
#s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(/.f64 #s(literal 1/2 binary64) y)
#s(literal 1/2 binary64)
y
x

localize74.0ms (2.4%)

Memory
-17.0MiB live, 100.3MiB allocated
Localize:

Found 14 expressions of interest:

NewMetricScoreProgram
accuracy0
(/.f64 #s(literal 1/2 binary64) y)
accuracy0.203125
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
accuracy30.646357933358715
#s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x))
accuracy0
(+.f64 y x)
accuracy0
(*.f64 #s(literal -2 binary64) y)
accuracy0
(neg.f64 (+.f64 y x))
accuracy0.01171875
(*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y))
accuracy0
(+.f64 y x)
accuracy0
(*.f64 #s(literal -2 binary64) y)
accuracy0.01171875
(*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y))
accuracy33.12451823192508
#s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64))
accuracy0
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
accuracy0
(/.f64 x y)
accuracy0
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))
Samples
62.0ms256×0valid
Compiler

Compiled 85 to 19 computations (77.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 20.0ms
ival-mult: 8.0ms (40.6% of total)
ival-div: 5.0ms (25.4% of total)
ival-add: 5.0ms (25.4% of total)
ival-neg: 1.0ms (5.1% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series47.0ms (1.5%)

Memory
-0.6MiB live, 38.0MiB allocated
Counts
12 → 264
Calls
Call 1
Inputs
#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #<representation binary64>) () ())
#s(alt (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (patch (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) #<representation binary64>) () ())
#s(alt (/.f64 x y) (patch (/.f64 x y) #<representation binary64>) () ())
#s(alt #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) (patch #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #<representation binary64>) () ())
#s(alt (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())
#s(alt (+.f64 y x) (patch (+.f64 y x) #<representation binary64>) () ())
#s(alt (*.f64 #s(literal -2 binary64) y) (patch (*.f64 #s(literal -2 binary64) y) #<representation binary64>) () ())
#s(alt (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())
#s(alt (neg.f64 (+.f64 y x)) (patch (neg.f64 (+.f64 y x)) #<representation binary64>) () ())
#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) #<representation binary64>) () ())
#s(alt (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) (patch (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) #<representation binary64>) () ())
#s(alt (/.f64 #s(literal 1/2 binary64) y) (patch (/.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())
Outputs
#s(alt (* 1/2 (/ x y)) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor 0 y) (#s(alt (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (patch (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (patch (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (patch (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (patch (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ x y) (taylor 0 y) (#s(alt (/.f64 x y) (patch (/.f64 x y) #<representation binary64>) () ())) ())
#s(alt (/ x y) (taylor 0 y) (#s(alt (/.f64 x y) (patch (/.f64 x y) #<representation binary64>) () ())) ())
#s(alt (/ x y) (taylor 0 y) (#s(alt (/.f64 x y) (patch (/.f64 x y) #<representation binary64>) () ())) ())
#s(alt (/ x y) (taylor 0 y) (#s(alt (/.f64 x y) (patch (/.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) (patch #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) (patch #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) (patch #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) (patch #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 (* x y)) (taylor 0 y) (#s(alt (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -2 x) (* -2 y))) (taylor 0 y) (#s(alt (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -2 x) (* -2 y))) (taylor 0 y) (#s(alt (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -2 x) (* -2 y))) (taylor 0 y) (#s(alt (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt x (taylor 0 y) (#s(alt (+.f64 y x) (patch (+.f64 y x) #<representation binary64>) () ())) ())
#s(alt (+ x y) (taylor 0 y) (#s(alt (+.f64 y x) (patch (+.f64 y x) #<representation binary64>) () ())) ())
#s(alt (+ x y) (taylor 0 y) (#s(alt (+.f64 y x) (patch (+.f64 y x) #<representation binary64>) () ())) ())
#s(alt (+ x y) (taylor 0 y) (#s(alt (+.f64 y x) (patch (+.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* -2 y) (taylor 0 y) (#s(alt (*.f64 #s(literal -2 binary64) y) (patch (*.f64 #s(literal -2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* -2 y) (taylor 0 y) (#s(alt (*.f64 #s(literal -2 binary64) y) (patch (*.f64 #s(literal -2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* -2 y) (taylor 0 y) (#s(alt (*.f64 #s(literal -2 binary64) y) (patch (*.f64 #s(literal -2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* -2 y) (taylor 0 y) (#s(alt (*.f64 #s(literal -2 binary64) y) (patch (*.f64 #s(literal -2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor 0 y) (#s(alt (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* 2 x) (* 2 y))) (taylor 0 y) (#s(alt (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* 2 x) (* 2 y))) (taylor 0 y) (#s(alt (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* 2 x) (* 2 y))) (taylor 0 y) (#s(alt (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor 0 y) (#s(alt (neg.f64 (+.f64 y x)) (patch (neg.f64 (+.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (- (* -1 y) x) (taylor 0 y) (#s(alt (neg.f64 (+.f64 y x)) (patch (neg.f64 (+.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (- (* -1 y) x) (taylor 0 y) (#s(alt (neg.f64 (+.f64 y x)) (patch (neg.f64 (+.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (- (* -1 y) x) (taylor 0 y) (#s(alt (neg.f64 (+.f64 y x)) (patch (neg.f64 (+.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor 0 y) (#s(alt (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) (patch (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor 0 y) (#s(alt (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) (patch (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor 0 y) (#s(alt (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) (patch (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor 0 y) (#s(alt (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) (patch (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 y) (taylor 0 y) (#s(alt (/.f64 #s(literal 1/2 binary64) y) (patch (/.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 y) (taylor 0 y) (#s(alt (/.f64 #s(literal 1/2 binary64) y) (patch (/.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 y) (taylor 0 y) (#s(alt (/.f64 #s(literal 1/2 binary64) y) (patch (/.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 y) (taylor 0 y) (#s(alt (/.f64 #s(literal 1/2 binary64) y) (patch (/.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor inf y) (#s(alt (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (patch (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (patch (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (patch (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (patch (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ x y) (taylor inf y) (#s(alt (/.f64 x y) (patch (/.f64 x y) #<representation binary64>) () ())) ())
#s(alt (/ x y) (taylor inf y) (#s(alt (/.f64 x y) (patch (/.f64 x y) #<representation binary64>) () ())) ())
#s(alt (/ x y) (taylor inf y) (#s(alt (/.f64 x y) (patch (/.f64 x y) #<representation binary64>) () ())) ())
#s(alt (/ x y) (taylor inf y) (#s(alt (/.f64 x y) (patch (/.f64 x y) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) (patch #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) (patch #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) (patch #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) (patch #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor inf y) (#s(alt (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor inf y) (#s(alt (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor inf y) (#s(alt (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor inf y) (#s(alt (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt y (taylor inf y) (#s(alt (+.f64 y x) (patch (+.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (/ x y))) (taylor inf y) (#s(alt (+.f64 y x) (patch (+.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (/ x y))) (taylor inf y) (#s(alt (+.f64 y x) (patch (+.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (/ x y))) (taylor inf y) (#s(alt (+.f64 y x) (patch (+.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* -2 y) (taylor inf y) (#s(alt (*.f64 #s(literal -2 binary64) y) (patch (*.f64 #s(literal -2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* -2 y) (taylor inf y) (#s(alt (*.f64 #s(literal -2 binary64) y) (patch (*.f64 #s(literal -2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* -2 y) (taylor inf y) (#s(alt (*.f64 #s(literal -2 binary64) y) (patch (*.f64 #s(literal -2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* -2 y) (taylor inf y) (#s(alt (*.f64 #s(literal -2 binary64) y) (patch (*.f64 #s(literal -2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow y 2)) (taylor inf y) (#s(alt (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 2 (* 2 (/ x y)))) (taylor inf y) (#s(alt (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 2 (* 2 (/ x y)))) (taylor inf y) (#s(alt (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 2 (* 2 (/ x y)))) (taylor inf y) (#s(alt (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor inf y) (#s(alt (neg.f64 (+.f64 y x)) (patch (neg.f64 (+.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (- (* -1 (/ x y)) 1)) (taylor inf y) (#s(alt (neg.f64 (+.f64 y x)) (patch (neg.f64 (+.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (- (* -1 (/ x y)) 1)) (taylor inf y) (#s(alt (neg.f64 (+.f64 y x)) (patch (neg.f64 (+.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* y (- (* -1 (/ x y)) 1)) (taylor inf y) (#s(alt (neg.f64 (+.f64 y x)) (patch (neg.f64 (+.f64 y x)) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor inf y) (#s(alt (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) (patch (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor inf y) (#s(alt (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) (patch (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor inf y) (#s(alt (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) (patch (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor inf y) (#s(alt (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) (patch (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 y) (taylor inf y) (#s(alt (/.f64 #s(literal 1/2 binary64) y) (patch (/.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 y) (taylor inf y) (#s(alt (/.f64 #s(literal 1/2 binary64) y) (patch (/.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 y) (taylor inf y) (#s(alt (/.f64 #s(literal 1/2 binary64) y) (patch (/.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 y) (taylor inf y) (#s(alt (/.f64 #s(literal 1/2 binary64) y) (patch (/.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor -inf y) (#s(alt (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (patch (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (patch (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (patch (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (patch (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ x y) (taylor -inf y) (#s(alt (/.f64 x y) (patch (/.f64 x y) #<representation binary64>) () ())) ())
#s(alt (/ x y) (taylor -inf y) (#s(alt (/.f64 x y) (patch (/.f64 x y) #<representation binary64>) () ())) ())
#s(alt (/ x y) (taylor -inf y) (#s(alt (/.f64 x y) (patch (/.f64 x y) #<representation binary64>) () ())) ())
#s(alt (/ x y) (taylor -inf y) (#s(alt (/.f64 x y) (patch (/.f64 x y) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) (patch #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) (patch #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) (patch #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) (patch #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor -inf y) (#s(alt (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor -inf y) (#s(alt (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor -inf y) (#s(alt (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor -inf y) (#s(alt (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt y (taylor -inf y) (#s(alt (+.f64 y x) (patch (+.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ x y)) 1))) (taylor -inf y) (#s(alt (+.f64 y x) (patch (+.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ x y)) 1))) (taylor -inf y) (#s(alt (+.f64 y x) (patch (+.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 (/ x y)) 1))) (taylor -inf y) (#s(alt (+.f64 y x) (patch (+.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* -2 y) (taylor -inf y) (#s(alt (*.f64 #s(literal -2 binary64) y) (patch (*.f64 #s(literal -2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* -2 y) (taylor -inf y) (#s(alt (*.f64 #s(literal -2 binary64) y) (patch (*.f64 #s(literal -2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* -2 y) (taylor -inf y) (#s(alt (*.f64 #s(literal -2 binary64) y) (patch (*.f64 #s(literal -2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* -2 y) (taylor -inf y) (#s(alt (*.f64 #s(literal -2 binary64) y) (patch (*.f64 #s(literal -2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow y 2)) (taylor -inf y) (#s(alt (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 2 (* 2 (/ x y)))) (taylor -inf y) (#s(alt (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 2 (* 2 (/ x y)))) (taylor -inf y) (#s(alt (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 2 (* 2 (/ x y)))) (taylor -inf y) (#s(alt (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor -inf y) (#s(alt (neg.f64 (+.f64 y x)) (patch (neg.f64 (+.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (/ x y)))) (taylor -inf y) (#s(alt (neg.f64 (+.f64 y x)) (patch (neg.f64 (+.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (/ x y)))) (taylor -inf y) (#s(alt (neg.f64 (+.f64 y x)) (patch (neg.f64 (+.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (/ x y)))) (taylor -inf y) (#s(alt (neg.f64 (+.f64 y x)) (patch (neg.f64 (+.f64 y x)) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor -inf y) (#s(alt (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) (patch (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor -inf y) (#s(alt (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) (patch (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor -inf y) (#s(alt (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) (patch (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor -inf y) (#s(alt (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) (patch (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 y) (taylor -inf y) (#s(alt (/.f64 #s(literal 1/2 binary64) y) (patch (/.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 y) (taylor -inf y) (#s(alt (/.f64 #s(literal 1/2 binary64) y) (patch (/.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 y) (taylor -inf y) (#s(alt (/.f64 #s(literal 1/2 binary64) y) (patch (/.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 y) (taylor -inf y) (#s(alt (/.f64 #s(literal 1/2 binary64) y) (patch (/.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor 0 x) (#s(alt (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (patch (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (patch (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (patch (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (patch (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ x y) (taylor 0 x) (#s(alt (/.f64 x y) (patch (/.f64 x y) #<representation binary64>) () ())) ())
#s(alt (/ x y) (taylor 0 x) (#s(alt (/.f64 x y) (patch (/.f64 x y) #<representation binary64>) () ())) ())
#s(alt (/ x y) (taylor 0 x) (#s(alt (/.f64 x y) (patch (/.f64 x y) #<representation binary64>) () ())) ())
#s(alt (/ x y) (taylor 0 x) (#s(alt (/.f64 x y) (patch (/.f64 x y) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) (patch #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) (patch #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) (patch #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) (patch #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor 0 x) (#s(alt (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -2 (* x y)) (* -2 (pow y 2))) (taylor 0 x) (#s(alt (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -2 (* x y)) (* -2 (pow y 2))) (taylor 0 x) (#s(alt (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -2 (* x y)) (* -2 (pow y 2))) (taylor 0 x) (#s(alt (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt y (taylor 0 x) (#s(alt (+.f64 y x) (patch (+.f64 y x) #<representation binary64>) () ())) ())
#s(alt (+ x y) (taylor 0 x) (#s(alt (+.f64 y x) (patch (+.f64 y x) #<representation binary64>) () ())) ())
#s(alt (+ x y) (taylor 0 x) (#s(alt (+.f64 y x) (patch (+.f64 y x) #<representation binary64>) () ())) ())
#s(alt (+ x y) (taylor 0 x) (#s(alt (+.f64 y x) (patch (+.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow y 2)) (taylor 0 x) (#s(alt (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (* 2 (pow y 2))) (taylor 0 x) (#s(alt (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (* 2 (pow y 2))) (taylor 0 x) (#s(alt (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (* 2 (pow y 2))) (taylor 0 x) (#s(alt (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor 0 x) (#s(alt (neg.f64 (+.f64 y x)) (patch (neg.f64 (+.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (- (* -1 x) y) (taylor 0 x) (#s(alt (neg.f64 (+.f64 y x)) (patch (neg.f64 (+.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (- (* -1 x) y) (taylor 0 x) (#s(alt (neg.f64 (+.f64 y x)) (patch (neg.f64 (+.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (- (* -1 x) y) (taylor 0 x) (#s(alt (neg.f64 (+.f64 y x)) (patch (neg.f64 (+.f64 y x)) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor 0 x) (#s(alt (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) (patch (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor 0 x) (#s(alt (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) (patch (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor 0 x) (#s(alt (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) (patch (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor 0 x) (#s(alt (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) (patch (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor inf x) (#s(alt (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (patch (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (patch (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (patch (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (patch (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ x y) (taylor inf x) (#s(alt (/.f64 x y) (patch (/.f64 x y) #<representation binary64>) () ())) ())
#s(alt (/ x y) (taylor inf x) (#s(alt (/.f64 x y) (patch (/.f64 x y) #<representation binary64>) () ())) ())
#s(alt (/ x y) (taylor inf x) (#s(alt (/.f64 x y) (patch (/.f64 x y) #<representation binary64>) () ())) ())
#s(alt (/ x y) (taylor inf x) (#s(alt (/.f64 x y) (patch (/.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) (patch #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) (patch #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) (patch #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) (patch #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 (* x y)) (taylor inf x) (#s(alt (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))) (taylor inf x) (#s(alt (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))) (taylor inf x) (#s(alt (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))) (taylor inf x) (#s(alt (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt x (taylor inf x) (#s(alt (+.f64 y x) (patch (+.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (/ y x))) (taylor inf x) (#s(alt (+.f64 y x) (patch (+.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (/ y x))) (taylor inf x) (#s(alt (+.f64 y x) (patch (+.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (/ y x))) (taylor inf x) (#s(alt (+.f64 y x) (patch (+.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor inf x) (#s(alt (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))) (taylor inf x) (#s(alt (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))) (taylor inf x) (#s(alt (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))) (taylor inf x) (#s(alt (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor inf x) (#s(alt (neg.f64 (+.f64 y x)) (patch (neg.f64 (+.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (- (* -1 (/ y x)) 1)) (taylor inf x) (#s(alt (neg.f64 (+.f64 y x)) (patch (neg.f64 (+.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (- (* -1 (/ y x)) 1)) (taylor inf x) (#s(alt (neg.f64 (+.f64 y x)) (patch (neg.f64 (+.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* x (- (* -1 (/ y x)) 1)) (taylor inf x) (#s(alt (neg.f64 (+.f64 y x)) (patch (neg.f64 (+.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor inf x) (#s(alt (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) (patch (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor inf x) (#s(alt (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) (patch (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor inf x) (#s(alt (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) (patch (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor inf x) (#s(alt (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) (patch (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor -inf x) (#s(alt (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (patch (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 y)) (* 1/2 (/ 1 x)))) (taylor -inf x) (#s(alt (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (patch (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 y)) (* 1/2 (/ 1 x)))) (taylor -inf x) (#s(alt (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (patch (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 y)) (* 1/2 (/ 1 x)))) (taylor -inf x) (#s(alt (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) (patch (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (/ x y) (taylor -inf x) (#s(alt (/.f64 x y) (patch (/.f64 x y) #<representation binary64>) () ())) ())
#s(alt (/ x y) (taylor -inf x) (#s(alt (/.f64 x y) (patch (/.f64 x y) #<representation binary64>) () ())) ())
#s(alt (/ x y) (taylor -inf x) (#s(alt (/.f64 x y) (patch (/.f64 x y) #<representation binary64>) () ())) ())
#s(alt (/ x y) (taylor -inf x) (#s(alt (/.f64 x y) (patch (/.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) (patch #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) (patch #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) (patch #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) (patch #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 (* x y)) (taylor -inf x) (#s(alt (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt x (taylor -inf x) (#s(alt (+.f64 y x) (patch (+.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ y x)) 1))) (taylor -inf x) (#s(alt (+.f64 y x) (patch (+.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ y x)) 1))) (taylor -inf x) (#s(alt (+.f64 y x) (patch (+.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (/ y x)) 1))) (taylor -inf x) (#s(alt (+.f64 y x) (patch (+.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor -inf x) (#s(alt (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) (patch (*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 x) (taylor -inf x) (#s(alt (neg.f64 (+.f64 y x)) (patch (neg.f64 (+.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ 1 (/ y x)))) (taylor -inf x) (#s(alt (neg.f64 (+.f64 y x)) (patch (neg.f64 (+.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ 1 (/ y x)))) (taylor -inf x) (#s(alt (neg.f64 (+.f64 y x)) (patch (neg.f64 (+.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ 1 (/ y x)))) (taylor -inf x) (#s(alt (neg.f64 (+.f64 y x)) (patch (neg.f64 (+.f64 y x)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor -inf x) (#s(alt (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) (patch (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor -inf x) (#s(alt (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) (patch (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor -inf x) (#s(alt (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) (patch (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor -inf x) (#s(alt (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) (patch (*.f64 (/.f64 #s(literal 1/2 binary64) y) x) #<representation binary64>) () ())) ())
Calls

6 calls:

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

simplify109.0ms (3.5%)

Memory
10.0MiB live, 130.6MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0741296
12261296
25701296
315811296
440211296
561671296
080321224
Stop Event
iter limit
node limit
Counts
264 → 258
Calls
Call 1
Inputs
(* 1/2 (/ x y))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(* 1/2 (/ x y))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(/ x y)
(/ x y)
(/ x y)
(/ x y)
(* 1/2 (/ x y))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(* -2 (* x y))
(* y (+ (* -2 x) (* -2 y)))
(* y (+ (* -2 x) (* -2 y)))
(* y (+ (* -2 x) (* -2 y)))
x
(+ x y)
(+ x y)
(+ x y)
(* -2 y)
(* -2 y)
(* -2 y)
(* -2 y)
(* 2 (* x y))
(* y (+ (* 2 x) (* 2 y)))
(* y (+ (* 2 x) (* 2 y)))
(* y (+ (* 2 x) (* 2 y)))
(* -1 x)
(- (* -1 y) x)
(- (* -1 y) x)
(- (* -1 y) x)
(* 1/2 (/ x y))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(/ 1/2 y)
(/ 1/2 y)
(/ 1/2 y)
(/ 1/2 y)
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(/ x y)
(/ x y)
(/ x y)
(/ x y)
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(* -2 (pow y 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
y
(* y (+ 1 (/ x y)))
(* y (+ 1 (/ x y)))
(* y (+ 1 (/ x y)))
(* -2 y)
(* -2 y)
(* -2 y)
(* -2 y)
(* 2 (pow y 2))
(* (pow y 2) (+ 2 (* 2 (/ x y))))
(* (pow y 2) (+ 2 (* 2 (/ x y))))
(* (pow y 2) (+ 2 (* 2 (/ x y))))
(* -1 y)
(* y (- (* -1 (/ x y)) 1))
(* y (- (* -1 (/ x y)) 1))
(* y (- (* -1 (/ x y)) 1))
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(/ 1/2 y)
(/ 1/2 y)
(/ 1/2 y)
(/ 1/2 y)
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(/ x y)
(/ x y)
(/ x y)
(/ x y)
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(* -2 (pow y 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
y
(* -1 (* y (- (* -1 (/ x y)) 1)))
(* -1 (* y (- (* -1 (/ x y)) 1)))
(* -1 (* y (- (* -1 (/ x y)) 1)))
(* -2 y)
(* -2 y)
(* -2 y)
(* -2 y)
(* 2 (pow y 2))
(* (pow y 2) (+ 2 (* 2 (/ x y))))
(* (pow y 2) (+ 2 (* 2 (/ x y))))
(* (pow y 2) (+ 2 (* 2 (/ x y))))
(* -1 y)
(* -1 (* y (+ 1 (/ x y))))
(* -1 (* y (+ 1 (/ x y))))
(* -1 (* y (+ 1 (/ x y))))
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(/ 1/2 y)
(/ 1/2 y)
(/ 1/2 y)
(/ 1/2 y)
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(/ x y)
(/ x y)
(/ x y)
(/ x y)
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(* -2 (pow y 2))
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(+ (* -2 (* x y)) (* -2 (pow y 2)))
y
(+ x y)
(+ x y)
(+ x y)
(* 2 (pow y 2))
(+ (* 2 (* x y)) (* 2 (pow y 2)))
(+ (* 2 (* x y)) (* 2 (pow y 2)))
(+ (* 2 (* x y)) (* 2 (pow y 2)))
(* -1 y)
(- (* -1 x) y)
(- (* -1 x) y)
(- (* -1 x) y)
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* 1/2 (/ x y))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(/ x y)
(/ x y)
(/ x y)
(/ x y)
(* 1/2 (/ x y))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* -2 (* x y))
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
x
(* x (+ 1 (/ y x)))
(* x (+ 1 (/ y x)))
(* x (+ 1 (/ y x)))
(* 2 (* x y))
(* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))
(* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))
(* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))
(* -1 x)
(* x (- (* -1 (/ y x)) 1))
(* x (- (* -1 (/ y x)) 1))
(* x (- (* -1 (/ y x)) 1))
(* 1/2 (/ x y))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* 1/2 (/ x y))
(* x (+ (* 1/2 (/ 1 y)) (* 1/2 (/ 1 x))))
(* x (+ (* 1/2 (/ 1 y)) (* 1/2 (/ 1 x))))
(* x (+ (* 1/2 (/ 1 y)) (* 1/2 (/ 1 x))))
(/ x y)
(/ x y)
(/ x y)
(/ x y)
(* 1/2 (/ x y))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* -2 (* x y))
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
x
(* -1 (* x (- (* -1 (/ y x)) 1)))
(* -1 (* x (- (* -1 (/ y x)) 1)))
(* -1 (* x (- (* -1 (/ y x)) 1)))
(* 2 (* x y))
(* -1 (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))))
(* -1 (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))))
(* -1 (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))))
(* -1 x)
(* -1 (* x (+ 1 (/ y x))))
(* -1 (* x (+ 1 (/ y x))))
(* -1 (* x (+ 1 (/ y x))))
(* 1/2 (/ x y))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
Outputs
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(/ x y)
(/.f64 x y)
(/ x y)
(/.f64 x y)
(/ x y)
(/.f64 x y)
(/ x y)
(/.f64 x y)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* -2 (* x y))
(*.f64 (*.f64 y x) #s(literal -2 binary64))
(* y (+ (* -2 x) (* -2 y)))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* y (+ (* -2 x) (* -2 y)))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* y (+ (* -2 x) (* -2 y)))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
x
(+ x y)
(+.f64 y x)
(+ x y)
(+.f64 y x)
(+ x y)
(+.f64 y x)
(* -2 y)
(*.f64 #s(literal -2 binary64) y)
(* -2 y)
(*.f64 #s(literal -2 binary64) y)
(* -2 y)
(*.f64 #s(literal -2 binary64) y)
(* -2 y)
(*.f64 #s(literal -2 binary64) y)
(* 2 (* x y))
(*.f64 #s(literal 2 binary64) (*.f64 y x))
(* y (+ (* 2 x) (* 2 y)))
(*.f64 (*.f64 #s(literal 2 binary64) (+.f64 y x)) y)
(* y (+ (* 2 x) (* 2 y)))
(*.f64 (*.f64 #s(literal 2 binary64) (+.f64 y x)) y)
(* y (+ (* 2 x) (* 2 y)))
(*.f64 (*.f64 #s(literal 2 binary64) (+.f64 y x)) y)
(* -1 x)
(neg.f64 x)
(- (* -1 y) x)
(-.f64 (neg.f64 y) x)
(- (* -1 y) x)
(-.f64 (neg.f64 y) x)
(- (* -1 y) x)
(-.f64 (neg.f64 y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(/ 1/2 y)
(/.f64 #s(literal 1/2 binary64) y)
(/ 1/2 y)
(/.f64 #s(literal 1/2 binary64) y)
(/ 1/2 y)
(/.f64 #s(literal 1/2 binary64) y)
(/ 1/2 y)
(/.f64 #s(literal 1/2 binary64) y)
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(/ x y)
(/.f64 x y)
(/ x y)
(/.f64 x y)
(/ x y)
(/.f64 x y)
(/ x y)
(/.f64 x y)
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* -2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal -2 binary64))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
y
(* y (+ 1 (/ x y)))
(+.f64 y x)
(* y (+ 1 (/ x y)))
(+.f64 y x)
(* y (+ 1 (/ x y)))
(+.f64 y x)
(* -2 y)
(*.f64 #s(literal -2 binary64) y)
(* -2 y)
(*.f64 #s(literal -2 binary64) y)
(* -2 y)
(*.f64 #s(literal -2 binary64) y)
(* -2 y)
(*.f64 #s(literal -2 binary64) y)
(* 2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal 2 binary64))
(* (pow y 2) (+ 2 (* 2 (/ x y))))
(*.f64 (*.f64 #s(literal 2 binary64) (+.f64 y x)) y)
(* (pow y 2) (+ 2 (* 2 (/ x y))))
(*.f64 (*.f64 #s(literal 2 binary64) (+.f64 y x)) y)
(* (pow y 2) (+ 2 (* 2 (/ x y))))
(*.f64 (*.f64 #s(literal 2 binary64) (+.f64 y x)) y)
(* -1 y)
(neg.f64 y)
(* y (- (* -1 (/ x y)) 1))
(-.f64 (neg.f64 y) x)
(* y (- (* -1 (/ x y)) 1))
(-.f64 (neg.f64 y) x)
(* y (- (* -1 (/ x y)) 1))
(-.f64 (neg.f64 y) x)
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(/ 1/2 y)
(/.f64 #s(literal 1/2 binary64) y)
(/ 1/2 y)
(/.f64 #s(literal 1/2 binary64) y)
(/ 1/2 y)
(/.f64 #s(literal 1/2 binary64) y)
(/ 1/2 y)
(/.f64 #s(literal 1/2 binary64) y)
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(/ x y)
(/.f64 x y)
(/ x y)
(/.f64 x y)
(/ x y)
(/.f64 x y)
(/ x y)
(/.f64 x y)
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* -2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal -2 binary64))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
y
(* -1 (* y (- (* -1 (/ x y)) 1)))
(+.f64 y x)
(* -1 (* y (- (* -1 (/ x y)) 1)))
(+.f64 y x)
(* -1 (* y (- (* -1 (/ x y)) 1)))
(+.f64 y x)
(* -2 y)
(*.f64 #s(literal -2 binary64) y)
(* -2 y)
(*.f64 #s(literal -2 binary64) y)
(* -2 y)
(*.f64 #s(literal -2 binary64) y)
(* -2 y)
(*.f64 #s(literal -2 binary64) y)
(* 2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal 2 binary64))
(* (pow y 2) (+ 2 (* 2 (/ x y))))
(*.f64 (*.f64 #s(literal 2 binary64) (+.f64 y x)) y)
(* (pow y 2) (+ 2 (* 2 (/ x y))))
(*.f64 (*.f64 #s(literal 2 binary64) (+.f64 y x)) y)
(* (pow y 2) (+ 2 (* 2 (/ x y))))
(*.f64 (*.f64 #s(literal 2 binary64) (+.f64 y x)) y)
(* -1 y)
(neg.f64 y)
(* -1 (* y (+ 1 (/ x y))))
(-.f64 (neg.f64 y) x)
(* -1 (* y (+ 1 (/ x y))))
(-.f64 (neg.f64 y) x)
(* -1 (* y (+ 1 (/ x y))))
(-.f64 (neg.f64 y) x)
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(/ 1/2 y)
(/.f64 #s(literal 1/2 binary64) y)
(/ 1/2 y)
(/.f64 #s(literal 1/2 binary64) y)
(/ 1/2 y)
(/.f64 #s(literal 1/2 binary64) y)
(/ 1/2 y)
(/.f64 #s(literal 1/2 binary64) y)
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(/ x y)
(/.f64 x y)
(/ x y)
(/.f64 x y)
(/ x y)
(/.f64 x y)
(/ x y)
(/.f64 x y)
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* -2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal -2 binary64))
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
y
(+ x y)
(+.f64 y x)
(+ x y)
(+.f64 y x)
(+ x y)
(+.f64 y x)
(* 2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal 2 binary64))
(+ (* 2 (* x y)) (* 2 (pow y 2)))
(*.f64 (*.f64 #s(literal 2 binary64) (+.f64 y x)) y)
(+ (* 2 (* x y)) (* 2 (pow y 2)))
(*.f64 (*.f64 #s(literal 2 binary64) (+.f64 y x)) y)
(+ (* 2 (* x y)) (* 2 (pow y 2)))
(*.f64 (*.f64 #s(literal 2 binary64) (+.f64 y x)) y)
(* -1 y)
(neg.f64 y)
(- (* -1 x) y)
(-.f64 (neg.f64 y) x)
(- (* -1 x) y)
(-.f64 (neg.f64 y) x)
(- (* -1 x) y)
(-.f64 (neg.f64 y) x)
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(/ x y)
(/.f64 x y)
(/ x y)
(/.f64 x y)
(/ x y)
(/.f64 x y)
(/ x y)
(/.f64 x y)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* -2 (* x y))
(*.f64 (*.f64 y x) #s(literal -2 binary64))
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
x
(* x (+ 1 (/ y x)))
(+.f64 y x)
(* x (+ 1 (/ y x)))
(+.f64 y x)
(* x (+ 1 (/ y x)))
(+.f64 y x)
(* 2 (* x y))
(*.f64 #s(literal 2 binary64) (*.f64 y x))
(* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))
(*.f64 (*.f64 #s(literal 2 binary64) (+.f64 y x)) y)
(* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))
(*.f64 (*.f64 #s(literal 2 binary64) (+.f64 y x)) y)
(* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))
(*.f64 (*.f64 #s(literal 2 binary64) (+.f64 y x)) y)
(* -1 x)
(neg.f64 x)
(* x (- (* -1 (/ y x)) 1))
(-.f64 (neg.f64 y) x)
(* x (- (* -1 (/ y x)) 1))
(-.f64 (neg.f64 y) x)
(* x (- (* -1 (/ y x)) 1))
(-.f64 (neg.f64 y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* x (+ (* 1/2 (/ 1 y)) (* 1/2 (/ 1 x))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 y)) (* 1/2 (/ 1 x))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 y)) (* 1/2 (/ 1 x))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(/ x y)
(/.f64 x y)
(/ x y)
(/.f64 x y)
(/ x y)
(/.f64 x y)
(/ x y)
(/.f64 x y)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* -2 (* x y))
(*.f64 (*.f64 y x) #s(literal -2 binary64))
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
x
(* -1 (* x (- (* -1 (/ y x)) 1)))
(+.f64 y x)
(* -1 (* x (- (* -1 (/ y x)) 1)))
(+.f64 y x)
(* -1 (* x (- (* -1 (/ y x)) 1)))
(+.f64 y x)
(* 2 (* x y))
(*.f64 #s(literal 2 binary64) (*.f64 y x))
(* -1 (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))))
(*.f64 (*.f64 #s(literal 2 binary64) (+.f64 y x)) y)
(* -1 (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))))
(*.f64 (*.f64 #s(literal 2 binary64) (+.f64 y x)) y)
(* -1 (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))))
(*.f64 (*.f64 #s(literal 2 binary64) (+.f64 y x)) y)
(* -1 x)
(neg.f64 x)
(* -1 (* x (+ 1 (/ y x))))
(-.f64 (neg.f64 y) x)
(* -1 (* x (+ 1 (/ y x))))
(-.f64 (neg.f64 y) x)
(* -1 (* x (+ 1 (/ y x))))
(-.f64 (neg.f64 y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) y) x #s(literal 1/2 binary64))
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)

rewrite62.0ms (2%)

Memory
-8.1MiB live, 73.1MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01978
02977
111977
082377
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
12 → 306
Calls
Call 1
Inputs
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(/.f64 x y)
#s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64))
(*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y))
(+.f64 y x)
(*.f64 #s(literal -2 binary64) y)
(*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y))
(neg.f64 (+.f64 y x))
#s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(/.f64 #s(literal 1/2 binary64) y)
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval116.0ms (3.7%)

Memory
8.0MiB live, 164.2MiB allocated
Compiler

Compiled 6 476 to 694 computations (89.3% saved)

prune58.0ms (1.9%)

Memory
-4.6MiB live, 72.7MiB allocated
Pruning

8 alts after pruning (5 fresh and 3 done)

PrunedKeptTotal
New6455650
Fresh000
Picked235
Done000
Total6478655
Accuracy
100.0%
Counts
655 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))
25.0%
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)))
52.1%
#s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y))
52.0%
#s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x))
3.9%
#s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x))
48.2%
#s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64))
1.9%
#s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64)))
3.2%
#s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64)))
Compiler

Compiled 77 to 76 computations (1.3% saved)

simplify140.0ms (4.5%)

Memory
14.3MiB live, 97.8MiB allocated
Algorithm
egg-herbie
Localize:

Found 15 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
027121
037121
169121
2140120
3329120
4522120
5738120
61408120
73028120
83465120
93611120
103665120
113677120
123679120
133679120
143719120
153747120
163747120
03747117
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y))
(/.f64 (*.f64 #s(literal 1/2 binary64) x) y)
(*.f64 #s(literal 1/2 binary64) x)
#s(literal 1/2 binary64)
x
y
#s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x))
(*.f64 (+.f64 y y) x)
(+.f64 y y)
y
x
#s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64)))
(*.f64 (*.f64 y y) #s(literal 2 binary64))
(*.f64 y y)
y
#s(literal 2 binary64)
#s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64)))
(*.f64 (*.f64 y y) #s(literal -2 binary64))
(*.f64 y y)
y
#s(literal -2 binary64)
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)))
(fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))
(*.f64 #s(literal 2 binary64) y)
#s(literal 2 binary64)
y
x
#s(literal 1/2 binary64)
Outputs
#s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y))
#s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x))
(/.f64 (*.f64 #s(literal 1/2 binary64) x) y)
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(*.f64 #s(literal 1/2 binary64) x)
#s(literal 1/2 binary64)
x
y
#s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x))
#s(approx (/ (+ x y) (+ y y)) (*.f64 (*.f64 y x) #s(literal 2 binary64)))
(*.f64 (+.f64 y y) x)
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(+.f64 y y)
(*.f64 #s(literal 2 binary64) y)
y
x
#s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64)))
#s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 #s(literal 2 binary64) (*.f64 y y)))
(*.f64 (*.f64 y y) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (*.f64 y y))
(*.f64 y y)
y
#s(literal 2 binary64)
#s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64)))
(*.f64 (*.f64 y y) #s(literal -2 binary64))
(*.f64 y y)
y
#s(literal -2 binary64)
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)))
(fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))
(*.f64 #s(literal 2 binary64) y)
#s(literal 2 binary64)
y
x
#s(literal 1/2 binary64)

localize62.0ms (2%)

Memory
-7.1MiB live, 190.1MiB allocated
Localize:

Found 15 expressions of interest:

NewMetricScoreProgram
accuracy0
(fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))
accuracy0
(*.f64 #s(literal 2 binary64) y)
accuracy47.97097550708422
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)))
accuracy0
(*.f64 y y)
accuracy0.00390625
(*.f64 (*.f64 y y) #s(literal -2 binary64))
accuracy26.18077948772842
#s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64)))
accuracy0
(*.f64 y y)
accuracy0.00390625
(*.f64 (*.f64 y y) #s(literal 2 binary64))
accuracy26.18077948772842
#s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64)))
accuracy0
(+.f64 y y)
accuracy0
(*.f64 (+.f64 y y) x)
accuracy61.499982640786016
#s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x))
accuracy0
(/.f64 (*.f64 #s(literal 1/2 binary64) x) y)
accuracy0
(*.f64 #s(literal 1/2 binary64) x)
accuracy30.646357933358715
#s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y))
Samples
49.0ms256×0valid
Compiler

Compiled 93 to 24 computations (74.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 34.0ms
ival-mult: 19.0ms (56.5% of total)
ival-add: 8.0ms (23.8% of total)
ival-div: 5.0ms (14.9% of total)
ival-neg: 1.0ms (3% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series21.0ms (0.7%)

Memory
-10.5MiB live, 67.5MiB allocated
Counts
14 → 264
Calls
Call 1
Inputs
#s(alt #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (patch #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) #<representation binary64>) () ())
#s(alt (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) (patch (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) #<representation binary64>) () ())
#s(alt (*.f64 #s(literal 1/2 binary64) x) (patch (*.f64 #s(literal 1/2 binary64) x) #<representation binary64>) () ())
#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) #<representation binary64>) () ())
#s(alt (*.f64 (+.f64 y y) x) (patch (*.f64 (+.f64 y y) x) #<representation binary64>) () ())
#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())
#s(alt #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) (patch #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) #<representation binary64>) () ())
#s(alt (*.f64 (*.f64 y y) #s(literal 2 binary64)) (patch (*.f64 (*.f64 y y) #s(literal 2 binary64)) #<representation binary64>) () ())
#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())
#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) #<representation binary64>) () ())
#s(alt (*.f64 (*.f64 y y) #s(literal -2 binary64)) (patch (*.f64 (*.f64 y y) #s(literal -2 binary64)) #<representation binary64>) () ())
#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())
#s(alt (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) (patch (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())
#s(alt (*.f64 #s(literal 2 binary64) y) (patch (*.f64 #s(literal 2 binary64) y) #<representation binary64>) () ())
Outputs
#s(alt (* 1/2 (/ x y)) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (patch #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (patch #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (patch #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (patch #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor 0 y) (#s(alt (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) (patch (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor 0 y) (#s(alt (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) (patch (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor 0 y) (#s(alt (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) (patch (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor 0 y) (#s(alt (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) (patch (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor 0 y) (#s(alt (*.f64 (+.f64 y y) x) (patch (*.f64 (+.f64 y y) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor 0 y) (#s(alt (*.f64 (+.f64 y y) x) (patch (*.f64 (+.f64 y y) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor 0 y) (#s(alt (*.f64 (+.f64 y y) x) (patch (*.f64 (+.f64 y y) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor 0 y) (#s(alt (*.f64 (+.f64 y y) x) (patch (*.f64 (+.f64 y y) x) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor 0 y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor 0 y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor 0 y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor 0 y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor 0 y) (#s(alt #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) (patch #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* 2 x) (* 2 y))) (taylor 0 y) (#s(alt #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) (patch #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* 2 x) (* 2 y))) (taylor 0 y) (#s(alt #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) (patch #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* 2 x) (* 2 y))) (taylor 0 y) (#s(alt #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) (patch #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow y 2)) (taylor 0 y) (#s(alt (*.f64 (*.f64 y y) #s(literal 2 binary64)) (patch (*.f64 (*.f64 y y) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow y 2)) (taylor 0 y) (#s(alt (*.f64 (*.f64 y y) #s(literal 2 binary64)) (patch (*.f64 (*.f64 y y) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow y 2)) (taylor 0 y) (#s(alt (*.f64 (*.f64 y y) #s(literal 2 binary64)) (patch (*.f64 (*.f64 y y) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow y 2)) (taylor 0 y) (#s(alt (*.f64 (*.f64 y y) #s(literal 2 binary64)) (patch (*.f64 (*.f64 y y) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor 0 y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor 0 y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor 0 y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor 0 y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* -2 (* x y)) (taylor 0 y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -2 x) (* -2 y))) (taylor 0 y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -2 x) (* -2 y))) (taylor 0 y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -2 x) (* -2 y))) (taylor 0 y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor 0 y) (#s(alt (*.f64 (*.f64 y y) #s(literal -2 binary64)) (patch (*.f64 (*.f64 y y) #s(literal -2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor 0 y) (#s(alt (*.f64 (*.f64 y y) #s(literal -2 binary64)) (patch (*.f64 (*.f64 y y) #s(literal -2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor 0 y) (#s(alt (*.f64 (*.f64 y y) #s(literal -2 binary64)) (patch (*.f64 (*.f64 y y) #s(literal -2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor 0 y) (#s(alt (*.f64 (*.f64 y y) #s(literal -2 binary64)) (patch (*.f64 (*.f64 y y) #s(literal -2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor 0 y) (#s(alt (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) (patch (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 2 (* x y))) (taylor 0 y) (#s(alt (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) (patch (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 2 (* x y))) (taylor 0 y) (#s(alt (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) (patch (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 2 (* x y))) (taylor 0 y) (#s(alt (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) (patch (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor 0 y) (#s(alt (*.f64 #s(literal 2 binary64) y) (patch (*.f64 #s(literal 2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor 0 y) (#s(alt (*.f64 #s(literal 2 binary64) y) (patch (*.f64 #s(literal 2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor 0 y) (#s(alt (*.f64 #s(literal 2 binary64) y) (patch (*.f64 #s(literal 2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor 0 y) (#s(alt (*.f64 #s(literal 2 binary64) y) (patch (*.f64 #s(literal 2 binary64) y) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (patch #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (patch #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (patch #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (patch #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor inf y) (#s(alt (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) (patch (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor inf y) (#s(alt (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) (patch (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor inf y) (#s(alt (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) (patch (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor inf y) (#s(alt (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) (patch (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor inf y) (#s(alt (*.f64 (+.f64 y y) x) (patch (*.f64 (+.f64 y y) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor inf y) (#s(alt (*.f64 (+.f64 y y) x) (patch (*.f64 (+.f64 y y) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor inf y) (#s(alt (*.f64 (+.f64 y y) x) (patch (*.f64 (+.f64 y y) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor inf y) (#s(alt (*.f64 (+.f64 y y) x) (patch (*.f64 (+.f64 y y) x) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor inf y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor inf y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor inf y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor inf y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow y 2)) (taylor inf y) (#s(alt #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) (patch #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 2 (* 2 (/ x y)))) (taylor inf y) (#s(alt #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) (patch #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 2 (* 2 (/ x y)))) (taylor inf y) (#s(alt #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) (patch #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 2 (* 2 (/ x y)))) (taylor inf y) (#s(alt #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) (patch #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow y 2)) (taylor inf y) (#s(alt (*.f64 (*.f64 y y) #s(literal 2 binary64)) (patch (*.f64 (*.f64 y y) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow y 2)) (taylor inf y) (#s(alt (*.f64 (*.f64 y y) #s(literal 2 binary64)) (patch (*.f64 (*.f64 y y) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow y 2)) (taylor inf y) (#s(alt (*.f64 (*.f64 y y) #s(literal 2 binary64)) (patch (*.f64 (*.f64 y y) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow y 2)) (taylor inf y) (#s(alt (*.f64 (*.f64 y y) #s(literal 2 binary64)) (patch (*.f64 (*.f64 y y) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor inf y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor inf y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor inf y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor inf y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor inf y) (#s(alt (*.f64 (*.f64 y y) #s(literal -2 binary64)) (patch (*.f64 (*.f64 y y) #s(literal -2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor inf y) (#s(alt (*.f64 (*.f64 y y) #s(literal -2 binary64)) (patch (*.f64 (*.f64 y y) #s(literal -2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor inf y) (#s(alt (*.f64 (*.f64 y y) #s(literal -2 binary64)) (patch (*.f64 (*.f64 y y) #s(literal -2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor inf y) (#s(alt (*.f64 (*.f64 y y) #s(literal -2 binary64)) (patch (*.f64 (*.f64 y y) #s(literal -2 binary64)) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor inf y) (#s(alt (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) (patch (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* 2 x) (* 1/2 (/ 1 y)))) (taylor inf y) (#s(alt (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) (patch (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* 2 x) (* 1/2 (/ 1 y)))) (taylor inf y) (#s(alt (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) (patch (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* 2 x) (* 1/2 (/ 1 y)))) (taylor inf y) (#s(alt (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) (patch (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor inf y) (#s(alt (*.f64 #s(literal 2 binary64) y) (patch (*.f64 #s(literal 2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor inf y) (#s(alt (*.f64 #s(literal 2 binary64) y) (patch (*.f64 #s(literal 2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor inf y) (#s(alt (*.f64 #s(literal 2 binary64) y) (patch (*.f64 #s(literal 2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor inf y) (#s(alt (*.f64 #s(literal 2 binary64) y) (patch (*.f64 #s(literal 2 binary64) y) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (patch #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (patch #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (patch #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (patch #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor -inf y) (#s(alt (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) (patch (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor -inf y) (#s(alt (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) (patch (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor -inf y) (#s(alt (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) (patch (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor -inf y) (#s(alt (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) (patch (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor -inf y) (#s(alt (*.f64 (+.f64 y y) x) (patch (*.f64 (+.f64 y y) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor -inf y) (#s(alt (*.f64 (+.f64 y y) x) (patch (*.f64 (+.f64 y y) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor -inf y) (#s(alt (*.f64 (+.f64 y y) x) (patch (*.f64 (+.f64 y y) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor -inf y) (#s(alt (*.f64 (+.f64 y y) x) (patch (*.f64 (+.f64 y y) x) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor -inf y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor -inf y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor -inf y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor -inf y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow y 2)) (taylor -inf y) (#s(alt #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) (patch #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 2 (* 2 (/ x y)))) (taylor -inf y) (#s(alt #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) (patch #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 2 (* 2 (/ x y)))) (taylor -inf y) (#s(alt #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) (patch #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 2 (* 2 (/ x y)))) (taylor -inf y) (#s(alt #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) (patch #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow y 2)) (taylor -inf y) (#s(alt (*.f64 (*.f64 y y) #s(literal 2 binary64)) (patch (*.f64 (*.f64 y y) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow y 2)) (taylor -inf y) (#s(alt (*.f64 (*.f64 y y) #s(literal 2 binary64)) (patch (*.f64 (*.f64 y y) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow y 2)) (taylor -inf y) (#s(alt (*.f64 (*.f64 y y) #s(literal 2 binary64)) (patch (*.f64 (*.f64 y y) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow y 2)) (taylor -inf y) (#s(alt (*.f64 (*.f64 y y) #s(literal 2 binary64)) (patch (*.f64 (*.f64 y y) #s(literal 2 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor -inf y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor -inf y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor -inf y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor -inf y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor -inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor -inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor -inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor -inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor -inf y) (#s(alt (*.f64 (*.f64 y y) #s(literal -2 binary64)) (patch (*.f64 (*.f64 y y) #s(literal -2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor -inf y) (#s(alt (*.f64 (*.f64 y y) #s(literal -2 binary64)) (patch (*.f64 (*.f64 y y) #s(literal -2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor -inf y) (#s(alt (*.f64 (*.f64 y y) #s(literal -2 binary64)) (patch (*.f64 (*.f64 y y) #s(literal -2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor -inf y) (#s(alt (*.f64 (*.f64 y y) #s(literal -2 binary64)) (patch (*.f64 (*.f64 y y) #s(literal -2 binary64)) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor -inf y) (#s(alt (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) (patch (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -2 x) (* 1/2 (/ 1 y))))) (taylor -inf y) (#s(alt (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) (patch (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -2 x) (* 1/2 (/ 1 y))))) (taylor -inf y) (#s(alt (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) (patch (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -2 x) (* 1/2 (/ 1 y))))) (taylor -inf y) (#s(alt (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) (patch (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor -inf y) (#s(alt (*.f64 #s(literal 2 binary64) y) (patch (*.f64 #s(literal 2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor -inf y) (#s(alt (*.f64 #s(literal 2 binary64) y) (patch (*.f64 #s(literal 2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor -inf y) (#s(alt (*.f64 #s(literal 2 binary64) y) (patch (*.f64 #s(literal 2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor -inf y) (#s(alt (*.f64 #s(literal 2 binary64) y) (patch (*.f64 #s(literal 2 binary64) y) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (patch #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (patch #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (patch #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (patch #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor 0 x) (#s(alt (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) (patch (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor 0 x) (#s(alt (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) (patch (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor 0 x) (#s(alt (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) (patch (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor 0 x) (#s(alt (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) (patch (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor 0 x) (#s(alt (*.f64 #s(literal 1/2 binary64) x) (patch (*.f64 #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor 0 x) (#s(alt (*.f64 #s(literal 1/2 binary64) x) (patch (*.f64 #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor 0 x) (#s(alt (*.f64 #s(literal 1/2 binary64) x) (patch (*.f64 #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor 0 x) (#s(alt (*.f64 #s(literal 1/2 binary64) x) (patch (*.f64 #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor 0 x) (#s(alt (*.f64 (+.f64 y y) x) (patch (*.f64 (+.f64 y y) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor 0 x) (#s(alt (*.f64 (+.f64 y y) x) (patch (*.f64 (+.f64 y y) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor 0 x) (#s(alt (*.f64 (+.f64 y y) x) (patch (*.f64 (+.f64 y y) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor 0 x) (#s(alt (*.f64 (+.f64 y y) x) (patch (*.f64 (+.f64 y y) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (pow y 2)) (taylor 0 x) (#s(alt #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) (patch #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (* 2 (pow y 2))) (taylor 0 x) (#s(alt #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) (patch #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (* 2 (pow y 2))) (taylor 0 x) (#s(alt #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) (patch #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (* 2 (* x y)) (* 2 (pow y 2))) (taylor 0 x) (#s(alt #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) (patch #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor 0 x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (* -2 (* x y)) (* -2 (pow y 2))) (taylor 0 x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (* -2 (* x y)) (* -2 (pow y 2))) (taylor 0 x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (* -2 (* x y)) (* -2 (pow y 2))) (taylor 0 x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor 0 x) (#s(alt (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) (patch (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 2 (* x y))) (taylor 0 x) (#s(alt (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) (patch (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 2 (* x y))) (taylor 0 x) (#s(alt (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) (patch (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 2 (* x y))) (taylor 0 x) (#s(alt (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) (patch (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (patch #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (patch #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (patch #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (patch #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor inf x) (#s(alt (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) (patch (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor inf x) (#s(alt (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) (patch (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor inf x) (#s(alt (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) (patch (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor inf x) (#s(alt (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) (patch (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor inf x) (#s(alt (*.f64 #s(literal 1/2 binary64) x) (patch (*.f64 #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor inf x) (#s(alt (*.f64 #s(literal 1/2 binary64) x) (patch (*.f64 #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor inf x) (#s(alt (*.f64 #s(literal 1/2 binary64) x) (patch (*.f64 #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor inf x) (#s(alt (*.f64 #s(literal 1/2 binary64) x) (patch (*.f64 #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor inf x) (#s(alt (*.f64 (+.f64 y y) x) (patch (*.f64 (+.f64 y y) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor inf x) (#s(alt (*.f64 (+.f64 y y) x) (patch (*.f64 (+.f64 y y) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor inf x) (#s(alt (*.f64 (+.f64 y y) x) (patch (*.f64 (+.f64 y y) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor inf x) (#s(alt (*.f64 (+.f64 y y) x) (patch (*.f64 (+.f64 y y) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor inf x) (#s(alt #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) (patch #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))) (taylor inf x) (#s(alt #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) (patch #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))) (taylor inf x) (#s(alt #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) (patch #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))) (taylor inf x) (#s(alt #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) (patch #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -2 (* x y)) (taylor inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))) (taylor inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))) (taylor inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))) (taylor inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor inf x) (#s(alt (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) (patch (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 2 y) (* 1/2 (/ 1 x)))) (taylor inf x) (#s(alt (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) (patch (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 2 y) (* 1/2 (/ 1 x)))) (taylor inf x) (#s(alt (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) (patch (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 2 y) (* 1/2 (/ 1 x)))) (taylor inf x) (#s(alt (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) (patch (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (patch #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (patch #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (patch #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (patch #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor -inf x) (#s(alt (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) (patch (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor -inf x) (#s(alt (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) (patch (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor -inf x) (#s(alt (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) (patch (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor -inf x) (#s(alt (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) (patch (/.f64 (*.f64 #s(literal 1/2 binary64) x) y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor -inf x) (#s(alt (*.f64 #s(literal 1/2 binary64) x) (patch (*.f64 #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor -inf x) (#s(alt (*.f64 #s(literal 1/2 binary64) x) (patch (*.f64 #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor -inf x) (#s(alt (*.f64 #s(literal 1/2 binary64) x) (patch (*.f64 #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor -inf x) (#s(alt (*.f64 #s(literal 1/2 binary64) x) (patch (*.f64 #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) (patch #s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x)) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor -inf x) (#s(alt (*.f64 (+.f64 y y) x) (patch (*.f64 (+.f64 y y) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor -inf x) (#s(alt (*.f64 (+.f64 y y) x) (patch (*.f64 (+.f64 y y) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor -inf x) (#s(alt (*.f64 (+.f64 y y) x) (patch (*.f64 (+.f64 y y) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor -inf x) (#s(alt (*.f64 (+.f64 y y) x) (patch (*.f64 (+.f64 y y) x) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor -inf x) (#s(alt #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) (patch #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) (patch #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) (patch #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) (patch #s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -2 (* x y)) (taylor -inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor -inf x) (#s(alt (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) (patch (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -2 y) (* 1/2 (/ 1 x))))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) (patch (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -2 y) (* 1/2 (/ 1 x))))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) (patch (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -2 y) (* 1/2 (/ 1 x))))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) (patch (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
Calls

6 calls:

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

simplify105.0ms (3.4%)

Memory
-3.6MiB live, 152.7MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0621396
11971396
24971396
311101396
426331396
550081396
668281396
081131324
Stop Event
iter limit
node limit
Counts
264 → 264
Calls
Call 1
Inputs
(* 1/2 (/ x y))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 (* x y))
(* y (+ (* 2 x) (* 2 y)))
(* y (+ (* 2 x) (* 2 y)))
(* y (+ (* 2 x) (* 2 y)))
(* 2 (pow y 2))
(* 2 (pow y 2))
(* 2 (pow y 2))
(* 2 (pow y 2))
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(* -2 (* x y))
(* y (+ (* -2 x) (* -2 y)))
(* y (+ (* -2 x) (* -2 y)))
(* y (+ (* -2 x) (* -2 y)))
(* -2 (pow y 2))
(* -2 (pow y 2))
(* -2 (pow y 2))
(* -2 (pow y 2))
(* 1/2 (/ x y))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
1/2
(+ 1/2 (* 2 (* x y)))
(+ 1/2 (* 2 (* x y)))
(+ 1/2 (* 2 (* x y)))
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 (pow y 2))
(* (pow y 2) (+ 2 (* 2 (/ x y))))
(* (pow y 2) (+ 2 (* 2 (/ x y))))
(* (pow y 2) (+ 2 (* 2 (/ x y))))
(* 2 (pow y 2))
(* 2 (pow y 2))
(* 2 (pow y 2))
(* 2 (pow y 2))
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(* -2 (pow y 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(* -2 (pow y 2))
(* -2 (pow y 2))
(* -2 (pow y 2))
(* -2 (pow y 2))
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(* 2 (* x y))
(* y (+ (* 2 x) (* 1/2 (/ 1 y))))
(* y (+ (* 2 x) (* 1/2 (/ 1 y))))
(* y (+ (* 2 x) (* 1/2 (/ 1 y))))
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 (pow y 2))
(* (pow y 2) (+ 2 (* 2 (/ x y))))
(* (pow y 2) (+ 2 (* 2 (/ x y))))
(* (pow y 2) (+ 2 (* 2 (/ x y))))
(* 2 (pow y 2))
(* 2 (pow y 2))
(* 2 (pow y 2))
(* 2 (pow y 2))
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(* -2 (pow y 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(* -2 (pow y 2))
(* -2 (pow y 2))
(* -2 (pow y 2))
(* -2 (pow y 2))
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(* 2 (* x y))
(* -1 (* y (- (* -2 x) (* 1/2 (/ 1 y)))))
(* -1 (* y (- (* -2 x) (* 1/2 (/ 1 y)))))
(* -1 (* y (- (* -2 x) (* 1/2 (/ 1 y)))))
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 x)
(* 1/2 x)
(* 1/2 x)
(* 1/2 x)
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* 2 (pow y 2))
(+ (* 2 (* x y)) (* 2 (pow y 2)))
(+ (* 2 (* x y)) (* 2 (pow y 2)))
(+ (* 2 (* x y)) (* 2 (pow y 2)))
(* -2 (pow y 2))
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(+ (* -2 (* x y)) (* -2 (pow y 2)))
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
1/2
(+ 1/2 (* 2 (* x y)))
(+ 1/2 (* 2 (* x y)))
(+ 1/2 (* 2 (* x y)))
(* 1/2 (/ x y))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 x)
(* 1/2 x)
(* 1/2 x)
(* 1/2 x)
(* 1/2 (/ x y))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))
(* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))
(* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))
(* -2 (* x y))
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(* 1/2 (/ x y))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* 2 (* x y))
(* x (+ (* 2 y) (* 1/2 (/ 1 x))))
(* x (+ (* 2 y) (* 1/2 (/ 1 x))))
(* x (+ (* 2 y) (* 1/2 (/ 1 x))))
(* 1/2 (/ x y))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 (/ x y))
(* 1/2 x)
(* 1/2 x)
(* 1/2 x)
(* 1/2 x)
(* 1/2 (/ x y))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* 2 (* x y))
(* -1 (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))))
(* -1 (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))))
(* -1 (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))))
(* -2 (* x y))
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(* 1/2 (/ x y))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* 2 (* x y))
(* -1 (* x (- (* -2 y) (* 1/2 (/ 1 x)))))
(* -1 (* x (- (* -2 y) (* 1/2 (/ 1 x)))))
(* -1 (* x (- (* -2 y) (* 1/2 (/ 1 x)))))
Outputs
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* y (+ (* 2 x) (* 2 y)))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal 2 binary64))
(* y (+ (* 2 x) (* 2 y)))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal 2 binary64))
(* y (+ (* 2 x) (* 2 y)))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal 2 binary64))
(* 2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal 2 binary64))
(* 2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal 2 binary64))
(* 2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal 2 binary64))
(* 2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal 2 binary64))
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(* -2 (* x y))
(*.f64 #s(literal -2 binary64) (*.f64 y x))
(* y (+ (* -2 x) (* -2 y)))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal -2 binary64))
(* y (+ (* -2 x) (* -2 y)))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal -2 binary64))
(* y (+ (* -2 x) (* -2 y)))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal -2 binary64))
(* -2 (pow y 2))
(*.f64 (*.f64 #s(literal -2 binary64) y) y)
(* -2 (pow y 2))
(*.f64 (*.f64 #s(literal -2 binary64) y) y)
(* -2 (pow y 2))
(*.f64 (*.f64 #s(literal -2 binary64) y) y)
(* -2 (pow y 2))
(*.f64 (*.f64 #s(literal -2 binary64) y) y)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 2 (* x y)))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(+ 1/2 (* 2 (* x y)))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(+ 1/2 (* 2 (* x y)))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal 2 binary64))
(* (pow y 2) (+ 2 (* 2 (/ x y))))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal 2 binary64))
(* (pow y 2) (+ 2 (* 2 (/ x y))))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal 2 binary64))
(* (pow y 2) (+ 2 (* 2 (/ x y))))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal 2 binary64))
(* 2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal 2 binary64))
(* 2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal 2 binary64))
(* 2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal 2 binary64))
(* 2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal 2 binary64))
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(* -2 (pow y 2))
(*.f64 (*.f64 #s(literal -2 binary64) y) y)
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal -2 binary64))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal -2 binary64))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal -2 binary64))
(* -2 (pow y 2))
(*.f64 (*.f64 #s(literal -2 binary64) y) y)
(* -2 (pow y 2))
(*.f64 (*.f64 #s(literal -2 binary64) y) y)
(* -2 (pow y 2))
(*.f64 (*.f64 #s(literal -2 binary64) y) y)
(* -2 (pow y 2))
(*.f64 (*.f64 #s(literal -2 binary64) y) y)
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* y (+ (* 2 x) (* 1/2 (/ 1 y))))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(* y (+ (* 2 x) (* 1/2 (/ 1 y))))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(* y (+ (* 2 x) (* 1/2 (/ 1 y))))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal 2 binary64))
(* (pow y 2) (+ 2 (* 2 (/ x y))))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal 2 binary64))
(* (pow y 2) (+ 2 (* 2 (/ x y))))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal 2 binary64))
(* (pow y 2) (+ 2 (* 2 (/ x y))))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal 2 binary64))
(* 2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal 2 binary64))
(* 2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal 2 binary64))
(* 2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal 2 binary64))
(* 2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal 2 binary64))
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(* -2 (pow y 2))
(*.f64 (*.f64 #s(literal -2 binary64) y) y)
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal -2 binary64))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal -2 binary64))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal -2 binary64))
(* -2 (pow y 2))
(*.f64 (*.f64 #s(literal -2 binary64) y) y)
(* -2 (pow y 2))
(*.f64 (*.f64 #s(literal -2 binary64) y) y)
(* -2 (pow y 2))
(*.f64 (*.f64 #s(literal -2 binary64) y) y)
(* -2 (pow y 2))
(*.f64 (*.f64 #s(literal -2 binary64) y) y)
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* -1 (* y (- (* -2 x) (* 1/2 (/ 1 y)))))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(* -1 (* y (- (* -2 x) (* 1/2 (/ 1 y)))))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(* -1 (* y (- (* -2 x) (* 1/2 (/ 1 y)))))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 x)
(*.f64 x #s(literal 1/2 binary64))
(* 1/2 x)
(*.f64 x #s(literal 1/2 binary64))
(* 1/2 x)
(*.f64 x #s(literal 1/2 binary64))
(* 1/2 x)
(*.f64 x #s(literal 1/2 binary64))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal 2 binary64))
(+ (* 2 (* x y)) (* 2 (pow y 2)))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal 2 binary64))
(+ (* 2 (* x y)) (* 2 (pow y 2)))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal 2 binary64))
(+ (* 2 (* x y)) (* 2 (pow y 2)))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal 2 binary64))
(* -2 (pow y 2))
(*.f64 (*.f64 #s(literal -2 binary64) y) y)
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal -2 binary64))
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal -2 binary64))
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal -2 binary64))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 2 (* x y)))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(+ 1/2 (* 2 (* x y)))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(+ 1/2 (* 2 (* x y)))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 x)
(*.f64 x #s(literal 1/2 binary64))
(* 1/2 x)
(*.f64 x #s(literal 1/2 binary64))
(* 1/2 x)
(*.f64 x #s(literal 1/2 binary64))
(* 1/2 x)
(*.f64 x #s(literal 1/2 binary64))
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal 2 binary64))
(* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal 2 binary64))
(* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal 2 binary64))
(* -2 (* x y))
(*.f64 #s(literal -2 binary64) (*.f64 y x))
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal -2 binary64))
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal -2 binary64))
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal -2 binary64))
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* x (+ (* 2 y) (* 1/2 (/ 1 x))))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(* x (+ (* 2 y) (* 1/2 (/ 1 x))))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(* x (+ (* 2 y) (* 1/2 (/ 1 x))))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* 1/2 x)
(*.f64 x #s(literal 1/2 binary64))
(* 1/2 x)
(*.f64 x #s(literal 1/2 binary64))
(* 1/2 x)
(*.f64 x #s(literal 1/2 binary64))
(* 1/2 x)
(*.f64 x #s(literal 1/2 binary64))
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* -1 (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal 2 binary64))
(* -1 (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal 2 binary64))
(* -1 (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal 2 binary64))
(* -2 (* x y))
(*.f64 #s(literal -2 binary64) (*.f64 y x))
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal -2 binary64))
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal -2 binary64))
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(*.f64 (*.f64 (+.f64 y x) y) #s(literal -2 binary64))
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 y x) #s(literal 2 binary64))
(* -1 (* x (- (* -2 y) (* 1/2 (/ 1 x)))))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(* -1 (* x (- (* -2 y) (* 1/2 (/ 1 x)))))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(* -1 (* x (- (* -2 y) (* 1/2 (/ 1 x)))))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))

rewrite59.0ms (1.9%)

Memory
21.1MiB live, 108.7MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
027105
037102
112696
080996
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
14 → 257
Calls
Call 1
Inputs
#s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y))
(/.f64 (*.f64 #s(literal 1/2 binary64) x) y)
(*.f64 #s(literal 1/2 binary64) x)
#s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x))
(*.f64 (+.f64 y y) x)
(+.f64 y y)
#s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64)))
(*.f64 (*.f64 y y) #s(literal 2 binary64))
(*.f64 y y)
#s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64)))
(*.f64 (*.f64 y y) #s(literal -2 binary64))
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)))
(fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))
(*.f64 #s(literal 2 binary64) y)
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval60.0ms (1.9%)

Memory
-2.1MiB live, 153.0MiB allocated
Compiler

Compiled 4 220 to 522 computations (87.6% saved)

prune21.0ms (0.7%)

Memory
-16.2MiB live, 61.6MiB allocated
Pruning

11 alts after pruning (4 fresh and 7 done)

PrunedKeptTotal
New5334537
Fresh000
Picked145
Done033
Total53411545
Accuracy
100.0%
Counts
545 → 11
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))
25.0%
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)))
52.1%
#s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y))
52.0%
#s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x))
3.9%
#s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x))
48.2%
#s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64))
3.4%
#s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y))
2.8%
#s(approx (* (+ y x) (* -2 y)) (+.f64 y y))
1.9%
#s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64)))
3.1%
#s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64)))
3.2%
#s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64)))
Compiler

Compiled 58 to 59 computations (-1.7% saved)

simplify5.0ms (0.2%)

Memory
10.5MiB live, 10.5MiB allocated
Algorithm
egg-herbie
Localize:

Found 9 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01873
02373
13273
25773
39973
410773
010773
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64)))
(*.f64 y #s(literal -2 binary64))
y
#s(literal -2 binary64)
#s(approx (* (+ y x) (* -2 y)) (+.f64 y y))
(+.f64 y y)
y
#s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y))
(/.f64 #s(literal 1/2 binary64) y)
#s(literal 1/2 binary64)
y
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)))
(fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))
(+.f64 y y)
y
x
#s(literal 1/2 binary64)
Outputs
#s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64)))
#s(approx (* (+ y x) (* -2 y)) (*.f64 #s(literal -2 binary64) y))
(*.f64 y #s(literal -2 binary64))
(*.f64 #s(literal -2 binary64) y)
y
#s(literal -2 binary64)
#s(approx (* (+ y x) (* -2 y)) (+.f64 y y))
#s(approx (* (+ y x) (* -2 y)) (*.f64 #s(literal 2 binary64) y))
(+.f64 y y)
(*.f64 #s(literal 2 binary64) y)
y
#s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y))
(/.f64 #s(literal 1/2 binary64) y)
#s(literal 1/2 binary64)
y
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)))
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)))
(fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))
(fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64))
(+.f64 y y)
(*.f64 #s(literal 2 binary64) y)
y
x
#s(literal 1/2 binary64)

localize37.0ms (1.2%)

Memory
-3.5MiB live, 80.3MiB allocated
Localize:

Found 9 expressions of interest:

NewMetricScoreProgram
accuracy0
(fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))
accuracy0
(+.f64 y y)
accuracy47.97097550708422
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)))
accuracy0
(/.f64 #s(literal 1/2 binary64) y)
accuracy62.38422524191084
#s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y))
accuracy0
(+.f64 y y)
accuracy61.219122206351486
#s(approx (* (+ y x) (* -2 y)) (+.f64 y y))
accuracy0
(*.f64 y #s(literal -2 binary64))
accuracy61.32538325957817
#s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64)))
Samples
28.0ms256×0valid
Compiler

Compiled 57 to 16 computations (71.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 16.0ms
ival-add: 6.0ms (38% of total)
ival-mult: 6.0ms (38% of total)
ival-div: 3.0ms (19% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series9.0ms (0.3%)

Memory
15.2MiB live, 15.2MiB allocated
Counts
8 → 156
Calls
Call 1
Inputs
#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) #<representation binary64>) () ())
#s(alt (*.f64 y #s(literal -2 binary64)) (patch (*.f64 y #s(literal -2 binary64)) #<representation binary64>) () ())
#s(alt #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) (patch #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) #<representation binary64>) () ())
#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())
#s(alt #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) (patch #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) #<representation binary64>) () ())
#s(alt (/.f64 #s(literal 1/2 binary64) y) (patch (/.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())
#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())
#s(alt (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) (patch (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())
Outputs
#s(alt (* -2 (* x y)) (taylor 0 y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -2 x) (* -2 y))) (taylor 0 y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -2 x) (* -2 y))) (taylor 0 y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -2 x) (* -2 y))) (taylor 0 y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -2 y) (taylor 0 y) (#s(alt (*.f64 y #s(literal -2 binary64)) (patch (*.f64 y #s(literal -2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 y) (taylor 0 y) (#s(alt (*.f64 y #s(literal -2 binary64)) (patch (*.f64 y #s(literal -2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 y) (taylor 0 y) (#s(alt (*.f64 y #s(literal -2 binary64)) (patch (*.f64 y #s(literal -2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 y) (taylor 0 y) (#s(alt (*.f64 y #s(literal -2 binary64)) (patch (*.f64 y #s(literal -2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 (* x y)) (taylor 0 y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) (patch #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -2 x) (* -2 y))) (taylor 0 y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) (patch #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -2 x) (* -2 y))) (taylor 0 y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) (patch #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -2 x) (* -2 y))) (taylor 0 y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) (patch #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor 0 y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor 0 y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor 0 y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor 0 y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* -2 (* x y)) (taylor 0 y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) (patch #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -2 x) (* -2 y))) (taylor 0 y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) (patch #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -2 x) (* -2 y))) (taylor 0 y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) (patch #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -2 x) (* -2 y))) (taylor 0 y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) (patch #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 y) (taylor 0 y) (#s(alt (/.f64 #s(literal 1/2 binary64) y) (patch (/.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 y) (taylor 0 y) (#s(alt (/.f64 #s(literal 1/2 binary64) y) (patch (/.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 y) (taylor 0 y) (#s(alt (/.f64 #s(literal 1/2 binary64) y) (patch (/.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 y) (taylor 0 y) (#s(alt (/.f64 #s(literal 1/2 binary64) y) (patch (/.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (/ (+ (* 1/2 x) (* 1/2 y)) y) (taylor 0 y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor 0 y) (#s(alt (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) (patch (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 2 (* x y))) (taylor 0 y) (#s(alt (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) (patch (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 2 (* x y))) (taylor 0 y) (#s(alt (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) (patch (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 2 (* x y))) (taylor 0 y) (#s(alt (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) (patch (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -2 y) (taylor inf y) (#s(alt (*.f64 y #s(literal -2 binary64)) (patch (*.f64 y #s(literal -2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 y) (taylor inf y) (#s(alt (*.f64 y #s(literal -2 binary64)) (patch (*.f64 y #s(literal -2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 y) (taylor inf y) (#s(alt (*.f64 y #s(literal -2 binary64)) (patch (*.f64 y #s(literal -2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 y) (taylor inf y) (#s(alt (*.f64 y #s(literal -2 binary64)) (patch (*.f64 y #s(literal -2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) (patch #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) (patch #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) (patch #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) (patch #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor inf y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor inf y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor inf y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor inf y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) (patch #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) (patch #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) (patch #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) (patch #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 y) (taylor inf y) (#s(alt (/.f64 #s(literal 1/2 binary64) y) (patch (/.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 y) (taylor inf y) (#s(alt (/.f64 #s(literal 1/2 binary64) y) (patch (/.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 y) (taylor inf y) (#s(alt (/.f64 #s(literal 1/2 binary64) y) (patch (/.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 y) (taylor inf y) (#s(alt (/.f64 #s(literal 1/2 binary64) y) (patch (/.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor inf y) (#s(alt (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) (patch (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* 2 x) (* 1/2 (/ 1 y)))) (taylor inf y) (#s(alt (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) (patch (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* 2 x) (* 1/2 (/ 1 y)))) (taylor inf y) (#s(alt (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) (patch (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* 2 x) (* 1/2 (/ 1 y)))) (taylor inf y) (#s(alt (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) (patch (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor -inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor -inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor -inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor -inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -2 y) (taylor -inf y) (#s(alt (*.f64 y #s(literal -2 binary64)) (patch (*.f64 y #s(literal -2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 y) (taylor -inf y) (#s(alt (*.f64 y #s(literal -2 binary64)) (patch (*.f64 y #s(literal -2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 y) (taylor -inf y) (#s(alt (*.f64 y #s(literal -2 binary64)) (patch (*.f64 y #s(literal -2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 y) (taylor -inf y) (#s(alt (*.f64 y #s(literal -2 binary64)) (patch (*.f64 y #s(literal -2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor -inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) (patch #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor -inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) (patch #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor -inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) (patch #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor -inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) (patch #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor -inf y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor -inf y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor -inf y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* 2 y) (taylor -inf y) (#s(alt (+.f64 y y) (patch (+.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor -inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) (patch #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor -inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) (patch #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor -inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) (patch #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (- (* -2 (/ x y)) 2)) (taylor -inf y) (#s(alt #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) (patch #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 y) (taylor -inf y) (#s(alt (/.f64 #s(literal 1/2 binary64) y) (patch (/.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 y) (taylor -inf y) (#s(alt (/.f64 #s(literal 1/2 binary64) y) (patch (/.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 y) (taylor -inf y) (#s(alt (/.f64 #s(literal 1/2 binary64) y) (patch (/.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt (/ 1/2 y) (taylor -inf y) (#s(alt (/.f64 #s(literal 1/2 binary64) y) (patch (/.f64 #s(literal 1/2 binary64) y) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor -inf y) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor -inf y) (#s(alt (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) (patch (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -2 x) (* 1/2 (/ 1 y))))) (taylor -inf y) (#s(alt (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) (patch (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -2 x) (* 1/2 (/ 1 y))))) (taylor -inf y) (#s(alt (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) (patch (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -2 x) (* 1/2 (/ 1 y))))) (taylor -inf y) (#s(alt (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) (patch (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor 0 x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (* -2 (* x y)) (* -2 (pow y 2))) (taylor 0 x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (* -2 (* x y)) (* -2 (pow y 2))) (taylor 0 x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (* -2 (* x y)) (* -2 (pow y 2))) (taylor 0 x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor 0 x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) (patch #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -2 (* x y)) (* -2 (pow y 2))) (taylor 0 x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) (patch #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -2 (* x y)) (* -2 (pow y 2))) (taylor 0 x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) (patch #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -2 (* x y)) (* -2 (pow y 2))) (taylor 0 x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) (patch #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* -2 (pow y 2)) (taylor 0 x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) (patch #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -2 (* x y)) (* -2 (pow y 2))) (taylor 0 x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) (patch #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -2 (* x y)) (* -2 (pow y 2))) (taylor 0 x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) (patch #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -2 (* x y)) (* -2 (pow y 2))) (taylor 0 x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) (patch #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/2 (/ x y))) (taylor 0 x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor 0 x) (#s(alt (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) (patch (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 2 (* x y))) (taylor 0 x) (#s(alt (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) (patch (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 2 (* x y))) (taylor 0 x) (#s(alt (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) (patch (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 2 (* x y))) (taylor 0 x) (#s(alt (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) (patch (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 (* x y)) (taylor inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))) (taylor inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))) (taylor inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))) (taylor inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -2 (* x y)) (taylor inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) (patch #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))) (taylor inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) (patch #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))) (taylor inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) (patch #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))) (taylor inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) (patch #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* -2 (* x y)) (taylor inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) (patch #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))) (taylor inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) (patch #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))) (taylor inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) (patch #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -2 y) (* -2 (/ (pow y 2) x)))) (taylor inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) (patch #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor inf x) (#s(alt (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) (patch (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 2 y) (* 1/2 (/ 1 x)))) (taylor inf x) (#s(alt (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) (patch (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 2 y) (* 1/2 (/ 1 x)))) (taylor inf x) (#s(alt (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) (patch (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 2 y) (* 1/2 (/ 1 x)))) (taylor inf x) (#s(alt (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) (patch (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -2 (* x y)) (taylor -inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) (patch #s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -2 (* x y)) (taylor -inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) (patch #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) (patch #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) (patch #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) (patch #s(approx (* (+ y x) (* -2 y)) (+.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* -2 (* x y)) (taylor -inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) (patch #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) (patch #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) (patch #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x))))) (taylor -inf x) (#s(alt #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) (patch #s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (/ x y)) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y)))) (taylor -inf x) (#s(alt #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) (patch #s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 2 (* x y)) (taylor -inf x) (#s(alt (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) (patch (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -2 y) (* 1/2 (/ 1 x))))) (taylor -inf x) (#s(alt (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) (patch (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -2 y) (* 1/2 (/ 1 x))))) (taylor -inf x) (#s(alt (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) (patch (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -2 y) (* 1/2 (/ 1 x))))) (taylor -inf x) (#s(alt (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) (patch (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
Calls

6 calls:

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

simplify107.0ms (3.4%)

Memory
-8.7MiB live, 108.1MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
055868
1167868
2392868
3862868
41625868
53521868
66460868
08557832
Stop Event
iter limit
node limit
Counts
156 → 156
Calls
Call 1
Inputs
(* -2 (* x y))
(* y (+ (* -2 x) (* -2 y)))
(* y (+ (* -2 x) (* -2 y)))
(* y (+ (* -2 x) (* -2 y)))
(* -2 y)
(* -2 y)
(* -2 y)
(* -2 y)
(* -2 (* x y))
(* y (+ (* -2 x) (* -2 y)))
(* y (+ (* -2 x) (* -2 y)))
(* y (+ (* -2 x) (* -2 y)))
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* -2 (* x y))
(* y (+ (* -2 x) (* -2 y)))
(* y (+ (* -2 x) (* -2 y)))
(* y (+ (* -2 x) (* -2 y)))
(/ 1/2 y)
(/ 1/2 y)
(/ 1/2 y)
(/ 1/2 y)
(* 1/2 (/ x y))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
1/2
(+ 1/2 (* 2 (* x y)))
(+ 1/2 (* 2 (* x y)))
(+ 1/2 (* 2 (* x y)))
(* -2 (pow y 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(* -2 y)
(* -2 y)
(* -2 y)
(* -2 y)
(* -2 (pow y 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* -2 (pow y 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(/ 1/2 y)
(/ 1/2 y)
(/ 1/2 y)
(/ 1/2 y)
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(* 2 (* x y))
(* y (+ (* 2 x) (* 1/2 (/ 1 y))))
(* y (+ (* 2 x) (* 1/2 (/ 1 y))))
(* y (+ (* 2 x) (* 1/2 (/ 1 y))))
(* -2 (pow y 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(* -2 y)
(* -2 y)
(* -2 y)
(* -2 y)
(* -2 (pow y 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(* 2 y)
(* 2 y)
(* 2 y)
(* 2 y)
(* -2 (pow y 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(/ 1/2 y)
(/ 1/2 y)
(/ 1/2 y)
(/ 1/2 y)
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(* 2 (* x y))
(* -1 (* y (- (* -2 x) (* 1/2 (/ 1 y)))))
(* -1 (* y (- (* -2 x) (* 1/2 (/ 1 y)))))
(* -1 (* y (- (* -2 x) (* 1/2 (/ 1 y)))))
(* -2 (pow y 2))
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(* -2 (pow y 2))
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(* -2 (pow y 2))
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(+ (* -2 (* x y)) (* -2 (pow y 2)))
1/2
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
(+ 1/2 (* 1/2 (/ x y)))
1/2
(+ 1/2 (* 2 (* x y)))
(+ 1/2 (* 2 (* x y)))
(+ 1/2 (* 2 (* x y)))
(* -2 (* x y))
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(* -2 (* x y))
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(* -2 (* x y))
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(* 1/2 (/ x y))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* 2 (* x y))
(* x (+ (* 2 y) (* 1/2 (/ 1 x))))
(* x (+ (* 2 y) (* 1/2 (/ 1 x))))
(* x (+ (* 2 y) (* 1/2 (/ 1 x))))
(* -2 (* x y))
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(* -2 (* x y))
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(* -2 (* x y))
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(* 1/2 (/ x y))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(* 2 (* x y))
(* -1 (* x (- (* -2 y) (* 1/2 (/ 1 x)))))
(* -1 (* x (- (* -2 y) (* 1/2 (/ 1 x)))))
(* -1 (* x (- (* -2 y) (* 1/2 (/ 1 x)))))
Outputs
(* -2 (* x y))
(*.f64 (*.f64 y x) #s(literal -2 binary64))
(* y (+ (* -2 x) (* -2 y)))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* y (+ (* -2 x) (* -2 y)))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* y (+ (* -2 x) (* -2 y)))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* -2 y)
(*.f64 y #s(literal -2 binary64))
(* -2 y)
(*.f64 y #s(literal -2 binary64))
(* -2 y)
(*.f64 y #s(literal -2 binary64))
(* -2 y)
(*.f64 y #s(literal -2 binary64))
(* -2 (* x y))
(*.f64 (*.f64 y x) #s(literal -2 binary64))
(* y (+ (* -2 x) (* -2 y)))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* y (+ (* -2 x) (* -2 y)))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* y (+ (* -2 x) (* -2 y)))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* -2 (* x y))
(*.f64 (*.f64 y x) #s(literal -2 binary64))
(* y (+ (* -2 x) (* -2 y)))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* y (+ (* -2 x) (* -2 y)))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* y (+ (* -2 x) (* -2 y)))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(/ 1/2 y)
(/.f64 #s(literal 1/2 binary64) y)
(/ 1/2 y)
(/.f64 #s(literal 1/2 binary64) y)
(/ 1/2 y)
(/.f64 #s(literal 1/2 binary64) y)
(/ 1/2 y)
(/.f64 #s(literal 1/2 binary64) y)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(/ (+ (* 1/2 x) (* 1/2 y)) y)
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 2 (* x y)))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(+ 1/2 (* 2 (* x y)))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(+ 1/2 (* 2 (* x y)))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(* -2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal -2 binary64))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* -2 y)
(*.f64 y #s(literal -2 binary64))
(* -2 y)
(*.f64 y #s(literal -2 binary64))
(* -2 y)
(*.f64 y #s(literal -2 binary64))
(* -2 y)
(*.f64 y #s(literal -2 binary64))
(* -2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal -2 binary64))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* -2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal -2 binary64))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(/ 1/2 y)
(/.f64 #s(literal 1/2 binary64) y)
(/ 1/2 y)
(/.f64 #s(literal 1/2 binary64) y)
(/ 1/2 y)
(/.f64 #s(literal 1/2 binary64) y)
(/ 1/2 y)
(/.f64 #s(literal 1/2 binary64) y)
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 #s(literal 2 binary64) x) y)
(* y (+ (* 2 x) (* 1/2 (/ 1 y))))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(* y (+ (* 2 x) (* 1/2 (/ 1 y))))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(* y (+ (* 2 x) (* 1/2 (/ 1 y))))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(* -2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal -2 binary64))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* -2 y)
(*.f64 y #s(literal -2 binary64))
(* -2 y)
(*.f64 y #s(literal -2 binary64))
(* -2 y)
(*.f64 y #s(literal -2 binary64))
(* -2 y)
(*.f64 y #s(literal -2 binary64))
(* -2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal -2 binary64))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* 2 y)
(*.f64 #s(literal 2 binary64) y)
(* -2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal -2 binary64))
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* (pow y 2) (- (* -2 (/ x y)) 2))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(/ 1/2 y)
(/.f64 #s(literal 1/2 binary64) y)
(/ 1/2 y)
(/.f64 #s(literal 1/2 binary64) y)
(/ 1/2 y)
(/.f64 #s(literal 1/2 binary64) y)
(/ 1/2 y)
(/.f64 #s(literal 1/2 binary64) y)
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 #s(literal 2 binary64) x) y)
(* -1 (* y (- (* -2 x) (* 1/2 (/ 1 y)))))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(* -1 (* y (- (* -2 x) (* 1/2 (/ 1 y)))))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(* -1 (* y (- (* -2 x) (* 1/2 (/ 1 y)))))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(* -2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal -2 binary64))
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* -2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal -2 binary64))
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* -2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal -2 binary64))
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(+ (* -2 (* x y)) (* -2 (pow y 2)))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(+ 1/2 (* 1/2 (/ x y)))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 2 (* x y)))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(+ 1/2 (* 2 (* x y)))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(+ 1/2 (* 2 (* x y)))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(* -2 (* x y))
(*.f64 (*.f64 y x) #s(literal -2 binary64))
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* -2 (* x y))
(*.f64 (*.f64 y x) #s(literal -2 binary64))
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* -2 (* x y))
(*.f64 (*.f64 y x) #s(literal -2 binary64))
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* x (+ (* -2 y) (* -2 (/ (pow y 2) x))))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 #s(literal 2 binary64) x) y)
(* x (+ (* 2 y) (* 1/2 (/ 1 x))))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(* x (+ (* 2 y) (* 1/2 (/ 1 x))))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(* x (+ (* 2 y) (* 1/2 (/ 1 x))))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(* -2 (* x y))
(*.f64 (*.f64 y x) #s(literal -2 binary64))
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* -2 (* x y))
(*.f64 (*.f64 y x) #s(literal -2 binary64))
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* -2 (* x y))
(*.f64 (*.f64 y x) #s(literal -2 binary64))
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* -1 (* x (+ (* 2 y) (* 2 (/ (pow y 2) x)))))
(*.f64 (*.f64 (+.f64 y x) #s(literal -2 binary64)) y)
(* 1/2 (/ x y))
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* x (+ (* 1/2 (/ 1 x)) (* 1/2 (/ 1 y))))
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(* 2 (* x y))
(*.f64 (*.f64 #s(literal 2 binary64) x) y)
(* -1 (* x (- (* -2 y) (* 1/2 (/ 1 x)))))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(* -1 (* x (- (* -2 y) (* 1/2 (/ 1 x)))))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))
(* -1 (* x (- (* -2 y) (* 1/2 (/ 1 x)))))
(fma.f64 (*.f64 #s(literal 2 binary64) x) y #s(literal 1/2 binary64))

rewrite63.0ms (2%)

Memory
-4.4MiB live, 71.6MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01862
02362
19062
066362
Stop Event
iter limit
iter limit
iter limit
unsound
iter limit
Counts
8 → 129
Calls
Call 1
Inputs
#s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64)))
(*.f64 y #s(literal -2 binary64))
#s(approx (* (+ y x) (* -2 y)) (+.f64 y y))
(+.f64 y y)
#s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y))
(/.f64 #s(literal 1/2 binary64) y)
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)))
(fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval35.0ms (1.1%)

Memory
25.3MiB live, 61.2MiB allocated
Compiler

Compiled 2 573 to 263 computations (89.8% saved)

prune29.0ms (0.9%)

Memory
-5.0MiB live, 41.6MiB allocated
Pruning

11 alts after pruning (0 fresh and 11 done)

PrunedKeptTotal
New3330333
Fresh000
Picked044
Done077
Total33311344
Accuracy
100.0%
Counts
344 → 11
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))
25.0%
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)))
52.1%
#s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y))
52.0%
#s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x))
3.9%
#s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x))
48.2%
#s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64))
3.4%
#s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y))
2.8%
#s(approx (* (+ y x) (* -2 y)) (+.f64 y y))
1.9%
#s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64)))
3.1%
#s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64)))
3.2%
#s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64)))
Compiler

Compiled 145 to 98 computations (32.4% saved)

regimes19.0ms (0.6%)

Memory
-13.0MiB live, 24.4MiB allocated
Counts
15 → 1
Calls
Call 1
Inputs
#s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64))
#s(approx (* (+ y x) (* -2 y)) (+.f64 y y))
#s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64)))
#s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x))
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)))
#s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64)))
#s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64)))
#s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y))
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)))
(*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y))
(*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y))
#s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x))
#s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y))
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))
(/.f64 (+.f64 x y) (+.f64 y y))
Outputs
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))
Calls

3 calls:

9.0ms
(/.f64 (+.f64 x y) (+.f64 y y))
5.0ms
y
5.0ms
x
Results
AccuracySegmentsBranch
100.0%1x
100.0%1y
100.0%1(/.f64 (+.f64 x y) (+.f64 y y))
Compiler

Compiled 9 to 9 computations (0% saved)

regimes18.0ms (0.6%)

Memory
-15.4MiB live, 21.9MiB allocated
Counts
13 → 3
Calls
Call 1
Inputs
#s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64))
#s(approx (* (+ y x) (* -2 y)) (+.f64 y y))
#s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64)))
#s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x))
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)))
#s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64)))
#s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64)))
#s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y))
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)))
(*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y))
(*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y))
#s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x))
#s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y))
Outputs
#s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y))
#s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64))
#s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y))
Calls

3 calls:

9.0ms
x
4.0ms
y
4.0ms
(/.f64 (+.f64 x y) (+.f64 y y))
Results
AccuracySegmentsBranch
73.8%3x
78.7%3y
96.7%3(/.f64 (+.f64 x y) (+.f64 y y))
Compiler

Compiled 9 to 9 computations (0% saved)

regimes4.0ms (0.1%)

Memory
7.9MiB live, 7.9MiB allocated
Counts
12 → 3
Calls
Call 1
Inputs
#s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64))
#s(approx (* (+ y x) (* -2 y)) (+.f64 y y))
#s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64)))
#s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x))
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)))
#s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64)))
#s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64)))
#s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y))
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)))
(*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y))
(*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y))
#s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x))
Outputs
#s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x))
#s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64))
#s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x))
Calls

1 calls:

4.0ms
(/.f64 (+.f64 x y) (+.f64 y y))
Results
AccuracySegmentsBranch
96.6%3(/.f64 (+.f64 x y) (+.f64 y y))
Compiler

Compiled 7 to 5 computations (28.6% saved)

regimes12.0ms (0.4%)

Memory
19.6MiB live, 19.6MiB allocated
Accuracy

Total -30.3b remaining (-91.5%)

Threshold costs -30.3b (-91.5%)

Counts
11 → 1
Calls
Call 1
Inputs
#s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64))
#s(approx (* (+ y x) (* -2 y)) (+.f64 y y))
#s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64)))
#s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x))
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)))
#s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64)))
#s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64)))
#s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y))
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)))
(*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y))
(*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y))
Outputs
#s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64))
Calls

3 calls:

4.0ms
y
4.0ms
x
3.0ms
(/.f64 (+.f64 x y) (+.f64 y y))
Results
AccuracySegmentsBranch
48.2%1x
48.2%1y
48.2%1(/.f64 (+.f64 x y) (+.f64 y y))
Compiler

Compiled 9 to 9 computations (0% saved)

bsearch1.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.5084189821418822
12639.48030530516
0.0ms
-151.8165676402753
0.4390144164222253
Compiler

Compiled 10 to 10 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.5084189821418822
12639.48030530516
0.0ms
-151.8165676402753
0.4390144164222253
Compiler

Compiled 10 to 10 computations (0% saved)

simplify28.0ms (0.9%)

Memory
5.9MiB live, 43.7MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
027133
133133
Stop Event
saturated
Calls
Call 1
Inputs
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))
(if (<=.f64 (/.f64 (+.f64 x y) (+.f64 y y)) #s(literal -100 binary64)) #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (if (<=.f64 (/.f64 (+.f64 x y) (+.f64 y y)) #s(literal 1 binary64)) #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y))))
(if (<=.f64 (/.f64 (+.f64 x y) (+.f64 y y)) #s(literal -100 binary64)) #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (if (<=.f64 (/.f64 (+.f64 x y) (+.f64 y y)) #s(literal 1 binary64)) #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x))))
#s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64))
Outputs
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))
(if (<=.f64 (/.f64 (+.f64 x y) (+.f64 y y)) #s(literal -100 binary64)) #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (if (<=.f64 (/.f64 (+.f64 x y) (+.f64 y y)) #s(literal 1 binary64)) #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y))))
(if (<=.f64 (/.f64 (+.f64 y x) (+.f64 y y)) #s(literal -100 binary64)) #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y)) (if (<=.f64 (/.f64 (+.f64 y x) (+.f64 y y)) #s(literal 1 binary64)) #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y))))
(if (<=.f64 (/.f64 (+.f64 x y) (+.f64 y y)) #s(literal -100 binary64)) #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (if (<=.f64 (/.f64 (+.f64 x y) (+.f64 y y)) #s(literal 1 binary64)) #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x))))
(if (<=.f64 (/.f64 (+.f64 y x) (+.f64 y y)) #s(literal -100 binary64)) #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x)) (if (<=.f64 (/.f64 (+.f64 y x) (+.f64 y y)) #s(literal 1 binary64)) #s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64)) #s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x))))
#s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64))

soundness492.0ms (15.9%)

Memory
-19.2MiB live, 224.2MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
034240
195240
2195240
3532240
42484240
54892240
66155240
77112240
87634240
08014222
01978
02977
111977
082377
Stop Event
done
iter limit
iter limit
node limit
iter limit
iter limit
node limit
Compiler

Compiled 102 to 54 computations (47.1% saved)

preprocess42.0ms (1.3%)

Memory
-3.2MiB live, 116.8MiB allocated
Compiler

Compiled 182 to 70 computations (61.5% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...