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

Time bar (total: 3.5s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze15.0ms (0.4%)

Memory
-13.1MiB live, 23.0MiB 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)

sample796.0ms (23%)

Memory
17.7MiB live, 921.9MiB allocated
Samples
522.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 325.0ms
ival-add: 256.0ms (78.8% of total)
ival-div: 59.0ms (18.2% of total)
ival-true: 6.0ms (1.8% of total)
ival-assert: 3.0ms (0.9% of total)
Bogosity

explain64.0ms (1.8%)

Memory
-0.4MiB live, 77.1MiB 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 (52.9% of total)
ival-div: 4.0ms (42.3% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess97.0ms (2.8%)

Memory
6.1MiB live, 51.0MiB 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.5MiB live, 0.5MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

Memory
1.2MiB live, 1.2MiB 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.0MiB live, 4.0MiB 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)

localize30.0ms (0.9%)

Memory
-9.7MiB live, 27.4MiB allocated
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy0
(+.f64 y y)
accuracy0
(+.f64 x y)
accuracy0.01171875
(/.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)

series6.0ms (0.2%)

Memory
11.3MiB live, 11.4MiB 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
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
y
@0
((+ x y) (+ y y) (/ (+ x y) (+ y y)))
1.0ms
y
@-inf
((+ x y) (+ y y) (/ (+ x y) (+ y y)))
0.0ms
x
@inf
((+ x y) (+ y y) (/ (+ x y) (+ y y)))

simplify118.0ms (3.4%)

Memory
11.7MiB live, 85.6MiB 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))

rewrite78.0ms (2.2%)

Memory
-33.2MiB live, 27.1MiB 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>

eval10.0ms (0.3%)

Memory
21.8MiB live, 21.8MiB allocated
Compiler

Compiled 1 133 to 170 computations (85% saved)

prune37.0ms (1.1%)

Memory
-23.4MiB live, 14.4MiB allocated
Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New1105115
Fresh000
Picked011
Done000
Total1106116
Accuracy
100.0%
Counts
116 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(/.f64 (+.f64 x y) (+.f64 y y))
1.2%
(*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y))
4.1%
(*.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)))
48.1%
#s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x))
51.7%
#s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64))
Compiler

Compiled 67 to 63 computations (6% saved)

simplify138.0ms (4%)

Memory
19.1MiB live, 93.9MiB 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

localize108.0ms (3.1%)

Memory
-20.8MiB live, 61.5MiB allocated
Localize:

Found 14 expressions of interest:

NewMetricScoreProgram
accuracy0
(/.f64 #s(literal 1/2 binary64) y)
accuracy0.1640625
(*.f64 (/.f64 #s(literal 1/2 binary64) y) x)
accuracy33.186314772346776
#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.0078125
(*.f64 (neg.f64 (+.f64 y x)) (*.f64 #s(literal -2 binary64) y))
accuracy0
(+.f64 y x)
accuracy0
(*.f64 #s(literal -2 binary64) y)
accuracy0.0078125
(*.f64 (+.f64 y x) (*.f64 #s(literal -2 binary64) y))
accuracy30.8976197396863
#s(approx (/ (+ x y) (+ y y)) #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)))
accuracy0.00390625
(fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
Samples
40.0ms256×0valid
Compiler

Compiled 85 to 19 computations (77.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 25.0ms
ival-mult: 9.0ms (36.3% of total)
ival-div: 7.0ms (28.2% of total)
ival-add: 6.0ms (24.2% of total)
ival-neg: 1.0ms (4% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series18.0ms (0.5%)

Memory
23.1MiB live, 23.1MiB 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
3.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))
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))

simplify161.0ms (4.7%)

Memory
2.6MiB live, 124.5MiB 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)

rewrite61.0ms (1.8%)

Memory
-7.4MiB live, 31.5MiB 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>

eval82.0ms (2.4%)

Memory
13.3MiB live, 88.8MiB allocated
Compiler

Compiled 6 476 to 694 computations (89.3% saved)

prune43.0ms (1.2%)

Memory
1.4MiB live, 43.5MiB allocated
Pruning

9 alts after pruning (5 fresh and 4 done)

PrunedKeptTotal
New6455650
Fresh000
Picked235
Done011
Total6479656
Accuracy
100.0%
Counts
656 → 9
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(/.f64 (+.f64 x y) (+.f64 y y))
100.0%
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))
29.2%
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (*.f64 #s(literal 2 binary64) y) x #s(literal 1/2 binary64)))
48.1%
#s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y))
48.1%
#s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x))
4.1%
#s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x))
51.7%
#s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64))
1.8%
#s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64)))
3.3%
#s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64)))
Compiler

Compiled 84 to 81 computations (3.6% saved)

simplify135.0ms (3.9%)

Memory
-12.1MiB live, 27.5MiB 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)

localize89.0ms (2.6%)

Memory
19.7MiB live, 59.0MiB 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)
accuracy45.29910027339528
#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.18716190133862
#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.18716190133862
#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.393774381983214
#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)
accuracy33.186314772346776
#s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y))
Samples
76.0ms256×0valid
Compiler

Compiled 93 to 24 computations (74.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 28.0ms
ival-mult: 14.0ms (49.3% of total)
ival-div: 7.0ms (24.6% of total)
ival-add: 5.0ms (17.6% of total)
ival-neg: 1.0ms (3.5% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series39.0ms (1.1%)

Memory
-13.6MiB live, 25.8MiB 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
23.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
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
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))
1.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))

simplify177.0ms (5.1%)

Memory
-21.3MiB live, 74.4MiB 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))

rewrite67.0ms (1.9%)

Memory
8.6MiB live, 47.4MiB 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>

eval93.0ms (2.7%)

Memory
11.7MiB live, 87.0MiB allocated
Compiler

Compiled 4 220 to 522 computations (87.6% saved)

prune39.0ms (1.1%)

Memory
5.4MiB live, 40.5MiB allocated
Pruning

12 alts after pruning (4 fresh and 8 done)

PrunedKeptTotal
New5334537
Fresh000
Picked145
Done044
Total53412546
Accuracy
100.0%
Counts
546 → 12
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(/.f64 (+.f64 x y) (+.f64 y y))
100.0%
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))
29.2%
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)))
48.1%
#s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y))
48.1%
#s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x))
4.1%
#s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x))
51.7%
#s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64))
3.5%
#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.8%
#s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64)))
3.0%
#s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64)))
3.3%
#s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64)))
Compiler

Compiled 65 to 64 computations (1.5% saved)

simplify5.0ms (0.2%)

Memory
4.3MiB live, 4.3MiB 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)

localize57.0ms (1.7%)

Memory
-19.9MiB live, 58.8MiB allocated
Localize:

Found 9 expressions of interest:

NewMetricScoreProgram
accuracy0
(fma.f64 (+.f64 y y) x #s(literal 1/2 binary64))
accuracy0
(+.f64 y y)
accuracy45.29910027339528
#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.42167177427395
#s(approx (* (+ y x) (* -2 y)) (/.f64 #s(literal 1/2 binary64) y))
accuracy0
(+.f64 y y)
accuracy61.18675187208013
#s(approx (* (+ y x) (* -2 y)) (+.f64 y y))
accuracy0
(*.f64 y #s(literal -2 binary64))
accuracy61.436335969905116
#s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64)))
Samples
48.0ms256×0valid
Compiler

Compiled 57 to 16 computations (71.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 15.0ms
ival-mult: 6.0ms (39.4% of total)
ival-add: 5.0ms (32.8% of total)
ival-div: 3.0ms (19.7% 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
13.0MiB live, 13.0MiB 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))

simplify125.0ms (3.6%)

Memory
5.7MiB live, 87.6MiB 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))

rewrite66.0ms (1.9%)

Memory
-20.9MiB live, 56.8MiB 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>

eval69.0ms (2%)

Memory
-1.9MiB live, 115.7MiB allocated
Compiler

Compiled 2 573 to 263 computations (89.8% saved)

prune14.0ms (0.4%)

Memory
6.7MiB live, 46.0MiB allocated
Pruning

12 alts after pruning (0 fresh and 12 done)

PrunedKeptTotal
New3330333
Fresh000
Picked044
Done088
Total33312345
Accuracy
100.0%
Counts
345 → 12
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(/.f64 (+.f64 x y) (+.f64 y y))
100.0%
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))
29.2%
#s(approx (/ (+ x y) (+ y y)) (fma.f64 (+.f64 y y) x #s(literal 1/2 binary64)))
48.1%
#s(approx (/ (+ x y) (+ y y)) (/.f64 (*.f64 #s(literal 1/2 binary64) x) y))
48.1%
#s(approx (/ (+ x y) (+ y y)) (*.f64 (/.f64 #s(literal 1/2 binary64) y) x))
4.1%
#s(approx (/ (+ x y) (+ y y)) (*.f64 (+.f64 y y) x))
51.7%
#s(approx (/ (+ x y) (+ y y)) #s(literal 1/2 binary64))
3.5%
#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.8%
#s(approx (* (+ y x) (* -2 y)) (*.f64 (*.f64 y y) #s(literal -2 binary64)))
3.0%
#s(approx (* (+ y x) (* -2 y)) (*.f64 y #s(literal -2 binary64)))
3.3%
#s(approx (* (neg (+ y x)) (* -2 y)) (*.f64 (*.f64 y y) #s(literal 2 binary64)))
Compiler

Compiled 152 to 103 computations (32.2% saved)

regimes22.0ms (0.6%)

Memory
-14.7MiB live, 31.6MiB 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:

12.0ms
x
5.0ms
y
4.0ms
(/.f64 (+.f64 x y) (+.f64 y y))
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)

regimes14.0ms (0.4%)

Memory
15.3MiB live, 15.3MiB 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:

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

Compiled 9 to 9 computations (0% saved)

regimes4.0ms (0.1%)

Memory
10.9MiB live, 10.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)

regimes13.0ms (0.4%)

Memory
-7.8MiB live, 30.7MiB allocated
Accuracy

Total -32.5b remaining (-105.3%)

Threshold costs -32.5b (-105.3%)

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
(/.f64 (+.f64 x y) (+.f64 y y))
4.0ms
x
4.0ms
y
Results
AccuracySegmentsBranch
51.7%1y
51.7%1x
51.7%1(/.f64 (+.f64 x y) (+.f64 y y))
Compiler

Compiled 9 to 9 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.4MiB live, 1.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.5000141883760071
564.1865073298446
0.0ms
-3760.5302772070218
0.2084934160652218
Compiler

Compiled 10 to 10 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.3MiB live, 1.3MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.5000141883760071
564.1865073298446
0.0ms
-3760.5302772070218
0.2084934160652218
Compiler

Compiled 10 to 10 computations (0% saved)

simplify23.0ms (0.7%)

Memory
-24.5MiB live, 54.8MiB 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 -2000 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 -2000 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 -2000 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 -2000 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 -2000 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 -2000 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))

soundness493.0ms (14.2%)

Memory
10.2MiB live, 250.0MiB 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.2%)

Memory
27.7MiB live, 148.2MiB allocated
Compiler

Compiled 182 to 70 computations (61.5% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...