Optimisation.CirclePacking:place from circle-packing-0.1.0.4, A

Time bar (total: 4.3s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze22.0ms (0.5%)

Memory
-8.0MiB live, 37.8MiB 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
25%25%74.9%0.1%0%0%0%3
28.6%25%62.4%0.1%0%12.5%0%4
46.2%37.5%43.7%0.1%0%18.7%0%5
52.2%37.5%34.3%0.1%0%28.1%0%6
65.1%43.7%23.4%0.1%0%32.8%0%7
70.9%43.7%18%0.1%0%38.2%0%8
79.5%46.8%12.1%0.1%0%41%0%9
83.6%46.8%9.2%0.1%0%43.9%0%10
88.7%48.4%6.1%0.1%0%45.4%0%11
91.3%48.4%4.6%0.1%0%46.9%0%12
Compiler

Compiled 6 to 6 computations (0% saved)

sample872.0ms (20.5%)

Memory
9.9MiB live, 867.6MiB allocated
Samples
632.0ms8 256×0valid
19.0ms502×0invalid
Precisions
Click to see histograms. Total time spent on operations: 141.0ms
ival-sqrt: 76.0ms (54% of total)
ival-add: 55.0ms (39.1% of total)
ival-true: 6.0ms (4.3% of total)
ival-assert: 3.0ms (2.1% of total)
Bogosity

explain46.0ms (1.1%)

Memory
-9.1MiB live, 82.6MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-(sqrt.f64 (+.f64 x 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
19.0ms512×0valid
Compiler

Compiled 35 to 20 computations (42.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 8.0ms
ival-sqrt: 4.0ms (50.4% of total)
ival-add: 3.0ms (37.8% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess16.0ms (0.4%)

Memory
23.0MiB live, 23.0MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01224
12622
24122
36322
411622
515522
619422
720522
820722
044
064
174
074
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 x y))
Outputs
(sqrt.f64 (+.f64 x y))
(sqrt.f64 (+.f64 y x))
Symmetry

(sort x y)

Compiler

Compiled 4 to 4 computations (0% saved)

eval0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

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

Compiled 4 to 4 computations (0% saved)

simplify2.0ms (0.1%)

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

Found 2 expressions of interest:

NewMetricScoreProgram
cost-diff0
(+.f64 x y)
cost-diff0
(sqrt.f64 (+.f64 x y))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
049
069
179
079
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 x y))
(+.f64 x y)
x
y
Outputs
(sqrt.f64 (+.f64 x y))
(sqrt.f64 (+.f64 y x))
(+.f64 x y)
(+.f64 y x)
x
y

localize51.0ms (1.2%)

Memory
-15.1MiB live, 21.2MiB allocated
Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
accuracy0
(+.f64 x y)
accuracy0.00390625
(sqrt.f64 (+.f64 x y))
Samples
47.0ms256×0valid
Compiler

Compiled 20 to 10 computations (50% saved)

Precisions
Click to see histograms. Total time spent on operations: 40.0ms
ival-sqrt: 38.0ms (94.1% of total)
ival-add: 2.0ms (5% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series6.0ms (0.1%)

Memory
8.6MiB live, 8.6MiB allocated
Counts
2 → 48
Calls
Call 1
Inputs
#s(alt (sqrt.f64 (+.f64 x y)) (patch (sqrt.f64 (+.f64 x y)) #<representation binary64>) () ())
#s(alt (+.f64 x y) (patch (+.f64 x y) #<representation binary64>) () ())
Outputs
#s(alt (sqrt x) (taylor 0 y) (#s(alt (sqrt.f64 (+.f64 x y)) (patch (sqrt.f64 (+.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt x) (* 1/2 (* (sqrt (/ 1 x)) y))) (taylor 0 y) (#s(alt (sqrt.f64 (+.f64 x y)) (patch (sqrt.f64 (+.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt x) (* y (+ (* -1/8 (* (sqrt (/ 1 (pow x 3))) y)) (* 1/2 (sqrt (/ 1 x)))))) (taylor 0 y) (#s(alt (sqrt.f64 (+.f64 x y)) (patch (sqrt.f64 (+.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt x) (* y (+ (* 1/2 (sqrt (/ 1 x))) (* y (+ (* -1/8 (sqrt (/ 1 (pow x 3)))) (* 1/16 (* (sqrt (/ 1 (pow x 5))) y))))))) (taylor 0 y) (#s(alt (sqrt.f64 (+.f64 x y)) (patch (sqrt.f64 (+.f64 x y)) #<representation binary64>) () ())) ())
#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 (sqrt y) (taylor inf y) (#s(alt (sqrt.f64 (+.f64 x y)) (patch (sqrt.f64 (+.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (sqrt (/ 1 y)) (* 1/2 (* x (sqrt (/ 1 (pow y 3))))))) (taylor inf y) (#s(alt (sqrt.f64 (+.f64 x y)) (patch (sqrt.f64 (+.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (sqrt (/ 1 y)) (+ (* -1/8 (* (pow x 2) (sqrt (/ 1 (pow y 5))))) (* 1/2 (* x (sqrt (/ 1 (pow y 3)))))))) (taylor inf y) (#s(alt (sqrt.f64 (+.f64 x y)) (patch (sqrt.f64 (+.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (sqrt (/ 1 y)) (+ (* -1/8 (* (pow x 2) (sqrt (/ 1 (pow y 5))))) (+ (* 1/16 (* (pow x 3) (sqrt (/ 1 (pow y 7))))) (* 1/2 (* x (sqrt (/ 1 (pow y 3))))))))) (taylor inf y) (#s(alt (sqrt.f64 (+.f64 x y)) (patch (sqrt.f64 (+.f64 x 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 (* -1 (* (sqrt y) (pow (sqrt -1) 2))) (taylor -inf y) (#s(alt (sqrt.f64 (+.f64 x y)) (patch (sqrt.f64 (+.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* 1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))) (taylor -inf y) (#s(alt (sqrt.f64 (+.f64 x y)) (patch (sqrt.f64 (+.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1/8 (* (/ (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (+ (* 1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))) (taylor -inf y) (#s(alt (sqrt.f64 (+.f64 x y)) (patch (sqrt.f64 (+.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1/8 (* (/ (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (+ (* 1/16 (* (/ (pow x 3) (pow (sqrt -1) 4)) (sqrt (/ 1 (pow y 7))))) (+ (* 1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))))) (taylor -inf y) (#s(alt (sqrt.f64 (+.f64 x y)) (patch (sqrt.f64 (+.f64 x 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 (sqrt y) (taylor 0 x) (#s(alt (sqrt.f64 (+.f64 x y)) (patch (sqrt.f64 (+.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt y) (* 1/2 (* x (sqrt (/ 1 y))))) (taylor 0 x) (#s(alt (sqrt.f64 (+.f64 x y)) (patch (sqrt.f64 (+.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt y) (* x (+ (* -1/8 (* x (sqrt (/ 1 (pow y 3))))) (* 1/2 (sqrt (/ 1 y)))))) (taylor 0 x) (#s(alt (sqrt.f64 (+.f64 x y)) (patch (sqrt.f64 (+.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt y) (* x (+ (* 1/2 (sqrt (/ 1 y))) (* x (+ (* -1/8 (sqrt (/ 1 (pow y 3)))) (* 1/16 (* x (sqrt (/ 1 (pow y 5)))))))))) (taylor 0 x) (#s(alt (sqrt.f64 (+.f64 x y)) (patch (sqrt.f64 (+.f64 x 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 (sqrt x) (taylor inf x) (#s(alt (sqrt.f64 (+.f64 x y)) (patch (sqrt.f64 (+.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (sqrt (/ 1 x)) (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)))) (taylor inf x) (#s(alt (sqrt.f64 (+.f64 x y)) (patch (sqrt.f64 (+.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (sqrt (/ 1 x)) (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (pow y 2))) (* 1/2 (* (sqrt (/ 1 (pow x 3))) y))))) (taylor inf x) (#s(alt (sqrt.f64 (+.f64 x y)) (patch (sqrt.f64 (+.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (sqrt (/ 1 x)) (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (pow y 2))) (+ (* 1/16 (* (sqrt (/ 1 (pow x 7))) (pow y 3))) (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)))))) (taylor inf x) (#s(alt (sqrt.f64 (+.f64 x y)) (patch (sqrt.f64 (+.f64 x 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 (* (sqrt x) (pow (sqrt -1) 2))) (taylor -inf x) (#s(alt (sqrt.f64 (+.f64 x y)) (patch (sqrt.f64 (+.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2))))) (taylor -inf x) (#s(alt (sqrt.f64 (+.f64 x y)) (patch (sqrt.f64 (+.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))))) (taylor -inf x) (#s(alt (sqrt.f64 (+.f64 x y)) (patch (sqrt.f64 (+.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* 1/16 (* (sqrt (/ 1 (pow x 7))) (/ (pow y 3) (pow (sqrt -1) 4)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2))))))) (taylor -inf x) (#s(alt (sqrt.f64 (+.f64 x y)) (patch (sqrt.f64 (+.f64 x 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>) () ())) ())
Calls

6 calls:

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

simplify218.0ms (5.1%)

Memory
-10.3MiB live, 341.2MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0156630
1454600
21426582
34628570
08167534
Stop Event
iter limit
node limit
Counts
48 → 42
Calls
Call 1
Inputs
(sqrt x)
(+ (sqrt x) (* 1/2 (* (sqrt (/ 1 x)) y)))
(+ (sqrt x) (* y (+ (* -1/8 (* (sqrt (/ 1 (pow x 3))) y)) (* 1/2 (sqrt (/ 1 x))))))
(+ (sqrt x) (* y (+ (* 1/2 (sqrt (/ 1 x))) (* y (+ (* -1/8 (sqrt (/ 1 (pow x 3)))) (* 1/16 (* (sqrt (/ 1 (pow x 5))) y)))))))
x
(+ x y)
(+ x y)
(+ x y)
(sqrt y)
(* y (+ (sqrt (/ 1 y)) (* 1/2 (* x (sqrt (/ 1 (pow y 3)))))))
(* y (+ (sqrt (/ 1 y)) (+ (* -1/8 (* (pow x 2) (sqrt (/ 1 (pow y 5))))) (* 1/2 (* x (sqrt (/ 1 (pow y 3))))))))
(* y (+ (sqrt (/ 1 y)) (+ (* -1/8 (* (pow x 2) (sqrt (/ 1 (pow y 5))))) (+ (* 1/16 (* (pow x 3) (sqrt (/ 1 (pow y 7))))) (* 1/2 (* x (sqrt (/ 1 (pow y 3)))))))))
y
(* y (+ 1 (/ x y)))
(* y (+ 1 (/ x y)))
(* y (+ 1 (/ x y)))
(* -1 (* (sqrt y) (pow (sqrt -1) 2)))
(* -1 (* y (+ (* 1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))
(* -1 (* y (+ (* -1/8 (* (/ (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (+ (* 1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))))
(* -1 (* y (+ (* -1/8 (* (/ (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (+ (* 1/16 (* (/ (pow x 3) (pow (sqrt -1) 4)) (sqrt (/ 1 (pow y 7))))) (+ (* 1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))))
y
(* -1 (* y (- (* -1 (/ x y)) 1)))
(* -1 (* y (- (* -1 (/ x y)) 1)))
(* -1 (* y (- (* -1 (/ x y)) 1)))
(sqrt y)
(+ (sqrt y) (* 1/2 (* x (sqrt (/ 1 y)))))
(+ (sqrt y) (* x (+ (* -1/8 (* x (sqrt (/ 1 (pow y 3))))) (* 1/2 (sqrt (/ 1 y))))))
(+ (sqrt y) (* x (+ (* 1/2 (sqrt (/ 1 y))) (* x (+ (* -1/8 (sqrt (/ 1 (pow y 3)))) (* 1/16 (* x (sqrt (/ 1 (pow y 5))))))))))
y
(+ x y)
(+ x y)
(+ x y)
(sqrt x)
(* x (+ (sqrt (/ 1 x)) (* 1/2 (* (sqrt (/ 1 (pow x 3))) y))))
(* x (+ (sqrt (/ 1 x)) (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (pow y 2))) (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)))))
(* x (+ (sqrt (/ 1 x)) (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (pow y 2))) (+ (* 1/16 (* (sqrt (/ 1 (pow x 7))) (pow y 3))) (* 1/2 (* (sqrt (/ 1 (pow x 3))) y))))))
x
(* x (+ 1 (/ y x)))
(* x (+ 1 (/ y x)))
(* x (+ 1 (/ y x)))
(* -1 (* (sqrt x) (pow (sqrt -1) 2)))
(* -1 (* x (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))))
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2))))))
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* 1/16 (* (sqrt (/ 1 (pow x 7))) (/ (pow y 3) (pow (sqrt -1) 4)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))))))
x
(* -1 (* x (- (* -1 (/ y x)) 1)))
(* -1 (* x (- (* -1 (/ y x)) 1)))
(* -1 (* x (- (* -1 (/ y x)) 1)))
Outputs
(sqrt x)
(sqrt.f64 x)
(+ (sqrt x) (* 1/2 (* (sqrt (/ 1 x)) y)))
(fma.f64 (*.f64 y #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) x)) (sqrt.f64 x))
(+ (sqrt x) (* y (+ (* -1/8 (* (sqrt (/ 1 (pow x 3))) y)) (* 1/2 (sqrt (/ 1 x))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x)) #s(literal 1/2 binary64))) y (sqrt.f64 x))
(+ (sqrt x) (* y (+ (* 1/2 (sqrt (/ 1 x))) (* y (+ (* -1/8 (sqrt (/ 1 (pow x 3)))) (* 1/16 (* (sqrt (/ 1 (pow x 5))) y)))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) #s(literal -1/8 binary64))) y (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x)) #s(literal 1/2 binary64))) y (sqrt.f64 x))
x
(+ x y)
(+.f64 y x)
(+ x y)
(+.f64 y x)
(+ x y)
(+.f64 y x)
(sqrt y)
(sqrt.f64 y)
(* y (+ (sqrt (/ 1 y)) (* 1/2 (* x (sqrt (/ 1 (pow y 3)))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) y))) y)
(* y (+ (sqrt (/ 1 y)) (+ (* -1/8 (* (pow x 2) (sqrt (/ 1 (pow y 5))))) (* 1/2 (* x (sqrt (/ 1 (pow y 3))))))))
(*.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/8 binary64) x) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))) y)
(* y (+ (sqrt (/ 1 y)) (+ (* -1/8 (* (pow x 2) (sqrt (/ 1 (pow y 5))))) (+ (* 1/16 (* (pow x 3) (sqrt (/ 1 (pow y 7))))) (* 1/2 (* x (sqrt (/ 1 (pow y 3)))))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 x #s(literal 3 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 7 binary64)))) (fma.f64 (*.f64 (*.f64 #s(literal -1/8 binary64) x) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))) y)
y
(* y (+ 1 (/ x y)))
(+.f64 y x)
(* y (+ 1 (/ x y)))
(+.f64 y x)
(* y (+ 1 (/ x y)))
(+.f64 y x)
(* -1 (* (sqrt y) (pow (sqrt -1) 2)))
(sqrt.f64 y)
(* -1 (* y (+ (* 1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) y))) y)
(* -1 (* y (+ (* -1/8 (* (/ (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (+ (* 1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (fma.f64 (*.f64 (*.f64 #s(literal -1/8 binary64) x) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))) y)
(* -1 (* y (+ (* -1/8 (* (/ (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (+ (* 1/16 (* (/ (pow x 3) (pow (sqrt -1) 4)) (sqrt (/ 1 (pow y 7))))) (+ (* 1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))))
(*.f64 (fma.f64 #s(literal -1/16 binary64) (/.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 7 binary64)))) (pow.f64 x #s(literal 3 binary64))) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64))) (fma.f64 (*.f64 #s(literal -1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (fma.f64 (*.f64 (*.f64 #s(literal -1/8 binary64) x) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))) 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)
(sqrt y)
(sqrt.f64 y)
(+ (sqrt y) (* 1/2 (* x (sqrt (/ 1 y)))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (sqrt.f64 y))
(+ (sqrt y) (* x (+ (* -1/8 (* x (sqrt (/ 1 (pow y 3))))) (* 1/2 (sqrt (/ 1 y))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) #s(literal 1/2 binary64))) x (sqrt.f64 y))
(+ (sqrt y) (* x (+ (* 1/2 (sqrt (/ 1 y))) (* x (+ (* -1/8 (sqrt (/ 1 (pow y 3)))) (* 1/16 (* x (sqrt (/ 1 (pow y 5))))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) #s(literal -1/8 binary64))) x (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) #s(literal 1/2 binary64))) x (sqrt.f64 y))
y
(+ x y)
(+.f64 y x)
(+ x y)
(+.f64 y x)
(+ x y)
(+.f64 y x)
(sqrt x)
(sqrt.f64 x)
(* x (+ (sqrt (/ 1 x)) (* 1/2 (* (sqrt (/ 1 (pow x 3))) y))))
(*.f64 (fma.f64 (*.f64 y #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) x))) x)
(* x (+ (sqrt (/ 1 x)) (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (pow y 2))) (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)))))
(*.f64 (fma.f64 y (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))) (*.f64 #s(literal -1/8 binary64) y) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) x))) x)
(* x (+ (sqrt (/ 1 x)) (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (pow y 2))) (+ (* 1/16 (* (sqrt (/ 1 (pow x 7))) (pow y 3))) (* 1/2 (* (sqrt (/ 1 (pow x 3))) y))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 7 binary64)))) #s(literal 1/16 binary64)) (pow.f64 y #s(literal 3 binary64)) (fma.f64 y (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))) (*.f64 #s(literal -1/8 binary64) y) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) #s(literal 1/2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) x)))) x)
x
(* x (+ 1 (/ y x)))
(+.f64 y x)
(* x (+ 1 (/ y x)))
(+.f64 y x)
(* x (+ 1 (/ y x)))
(+.f64 y x)
(* -1 (* (sqrt x) (pow (sqrt -1) 2)))
(sqrt.f64 x)
(* -1 (* x (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) x))) x)
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (fma.f64 (*.f64 (*.f64 y y) #s(literal -1/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) x)))) x)
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* 1/16 (* (sqrt (/ 1 (pow x 7))) (/ (pow y 3) (pow (sqrt -1) 4)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))))))
(*.f64 (fma.f64 #s(literal -1/16 binary64) (/.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 7 binary64)))) (pow.f64 y #s(literal 3 binary64))) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64))) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (fma.f64 (*.f64 (*.f64 y y) #s(literal -1/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) x))))) x)
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)

rewrite194.0ms (4.6%)

Memory
28.0MiB live, 222.6MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
047
067
1227
21457
313667
083107
Stop Event
iter limit
node limit
iter limit
Counts
2 → 226
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 x y))
(+.f64 x 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>

eval43.0ms (1%)

Memory
-9.3MiB live, 76.0MiB allocated
Compiler

Compiled 5 681 to 881 computations (84.5% saved)

prune5.0ms (0.1%)

Memory
-22.1MiB live, 16.8MiB allocated
Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New2662268
Fresh000
Picked011
Done000
Total2663269
Accuracy
100.0%
Counts
269 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
49.7%
(*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))))
100.0%
(sqrt.f64 (+.f64 x y))
96.8%
#s(approx (sqrt (+ x y)) (sqrt.f64 y))
Compiler

Compiled 23 to 19 computations (17.4% saved)

simplify211.0ms (5%)

Memory
9.7MiB live, 164.9MiB allocated
Algorithm
egg-herbie
Localize:

Found 6 expressions of interest:

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

Useful iterations: 1 (0.0ms)

IterNodesCost
01566
02566
13463
24463
35763
47863
516763
647363
791463
8151863
9234863
10315663
11362263
12372663
13377263
14379063
15605263
16675763
17740163
18798263
19799063
20799063
0825263
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
#s(approx (sqrt (+ x y)) (sqrt.f64 y))
(sqrt.f64 y)
y
(*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))))
(sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)))
(fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))
#s(literal -1 binary64)
(*.f64 x x)
x
(*.f64 y y)
y
(sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))
(/.f64 #s(literal -1 binary64) (-.f64 x y))
(-.f64 x y)
Outputs
#s(approx (sqrt (+ x y)) (sqrt.f64 y))
(sqrt.f64 y)
y
(*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))))
(*.f64 (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (sqrt.f64 (*.f64 (-.f64 y x) (+.f64 x y))))
(sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)))
(sqrt.f64 (*.f64 (-.f64 y x) (+.f64 x y)))
(fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))
(*.f64 (-.f64 y x) (+.f64 x y))
#s(literal -1 binary64)
(*.f64 x x)
x
(*.f64 y y)
y
(sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))
(/.f64 #s(literal -1 binary64) (-.f64 x y))
(-.f64 x y)

localize52.0ms (1.2%)

Memory
6.0MiB live, 44.2MiB allocated
Localize:

Found 6 expressions of interest:

NewMetricScoreProgram
accuracy0.15234375
(sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))
accuracy0.2578125
(*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))))
accuracy4.394531250000001
(fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))
accuracy30.72837467124487
(sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)))
accuracy0
(sqrt.f64 y)
accuracy2.0785205846703634
#s(approx (sqrt (+ x y)) (sqrt.f64 y))
Samples
29.0ms256×0valid
Compiler

Compiled 130 to 30 computations (76.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 20.0ms
ival-sqrt: 7.0ms (34.9% of total)
ival-mult: 6.0ms (30% of total)
ival-add: 3.0ms (15% of total)
ival-div: 2.0ms (10% of total)
ival-sub: 1.0ms (5% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series84.0ms (2%)

Memory
-32.9MiB live, 76.3MiB allocated
Counts
7 → 144
Calls
Call 1
Inputs
#s(alt #s(approx (sqrt (+ x y)) (sqrt.f64 y)) (patch #s(approx (sqrt (+ x y)) (sqrt.f64 y)) #<representation binary64>) () ())
#s(alt (sqrt.f64 y) (patch (sqrt.f64 y) #<representation binary64>) () ())
#s(alt (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) (patch (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) #<representation binary64>) () ())
#s(alt (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())
#s(alt (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (patch (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) #<representation binary64>) () ())
#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())
#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())
Outputs
#s(alt (sqrt x) (taylor 0 y) (#s(alt #s(approx (sqrt (+ x y)) (sqrt.f64 y)) (patch #s(approx (sqrt (+ x y)) (sqrt.f64 y)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt x) (* 1/2 (* (sqrt (/ 1 x)) y))) (taylor 0 y) (#s(alt #s(approx (sqrt (+ x y)) (sqrt.f64 y)) (patch #s(approx (sqrt (+ x y)) (sqrt.f64 y)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt x) (* y (+ (* -1/8 (* (sqrt (/ 1 (pow x 3))) y)) (* 1/2 (sqrt (/ 1 x)))))) (taylor 0 y) (#s(alt #s(approx (sqrt (+ x y)) (sqrt.f64 y)) (patch #s(approx (sqrt (+ x y)) (sqrt.f64 y)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt x) (* y (+ (* 1/2 (sqrt (/ 1 x))) (* y (+ (* -1/8 (sqrt (/ 1 (pow x 3)))) (* 1/16 (* (sqrt (/ 1 (pow x 5))) y))))))) (taylor 0 y) (#s(alt #s(approx (sqrt (+ x y)) (sqrt.f64 y)) (patch #s(approx (sqrt (+ x y)) (sqrt.f64 y)) #<representation binary64>) () ())) ())
#s(alt (sqrt y) (taylor 0 y) (#s(alt (sqrt.f64 y) (patch (sqrt.f64 y) #<representation binary64>) () ())) ())
#s(alt (sqrt y) (taylor 0 y) (#s(alt (sqrt.f64 y) (patch (sqrt.f64 y) #<representation binary64>) () ())) ())
#s(alt (sqrt y) (taylor 0 y) (#s(alt (sqrt.f64 y) (patch (sqrt.f64 y) #<representation binary64>) () ())) ())
#s(alt (sqrt y) (taylor 0 y) (#s(alt (sqrt.f64 y) (patch (sqrt.f64 y) #<representation binary64>) () ())) ())
#s(alt (* -1 (pow x 2)) (taylor 0 y) (#s(alt (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) (patch (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (pow x 2)) (pow y 2)) (taylor 0 y) (#s(alt (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) (patch (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (pow x 2)) (pow y 2)) (taylor 0 y) (#s(alt (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) (patch (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (pow x 2)) (pow y 2)) (taylor 0 y) (#s(alt (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) (patch (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (sqrt x) (pow (sqrt -1) 2)) (taylor 0 y) (#s(alt (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/2 (* (sqrt (/ 1 x)) y)) (* (sqrt x) (pow (sqrt -1) 2))) (taylor 0 y) (#s(alt (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (+ (* y (+ (* -1/2 (sqrt (/ 1 x))) (* -1/8 (* (sqrt (/ 1 (pow x 3))) (/ y (pow (sqrt -1) 2)))))) (* (sqrt x) (pow (sqrt -1) 2))) (taylor 0 y) (#s(alt (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (+ (* y (+ (* -1/2 (sqrt (/ 1 x))) (* y (+ (* -1/8 (* (sqrt (/ 1 (pow x 3))) (/ 1 (pow (sqrt -1) 2)))) (* -1/16 (* (sqrt (/ 1 (pow x 5))) (/ y (pow (sqrt -1) 4)))))))) (* (sqrt x) (pow (sqrt -1) 2))) (taylor 0 y) (#s(alt (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt -1)) (taylor 0 y) (#s(alt (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (patch (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (/ (pow y 2) (* x (sqrt -1)))) (* x (sqrt -1))) (taylor 0 y) (#s(alt (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (patch (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (+ (* x (sqrt -1)) (* (pow y 2) (+ (* -1/8 (/ (pow y 2) (* (pow x 3) (pow (sqrt -1) 3)))) (* 1/2 (/ 1 (* x (sqrt -1))))))) (taylor 0 y) (#s(alt (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (patch (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (+ (* x (sqrt -1)) (* (pow y 2) (+ (* (pow y 2) (- (* 1/16 (/ (pow y 2) (* (pow x 5) (pow (sqrt -1) 5)))) (* 1/8 (/ 1 (* (pow x 3) (pow (sqrt -1) 3)))))) (* 1/2 (/ 1 (* x (sqrt -1))))))) (taylor 0 y) (#s(alt (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (patch (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* (sqrt (/ 1 x)) (sqrt -1)) (taylor 0 y) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1))) (taylor 0 y) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* y (+ (* 3/8 (* (sqrt (/ 1 (pow x 5))) (* y (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 (pow x 3))) (sqrt -1))))) (* (sqrt (/ 1 x)) (sqrt -1))) (taylor 0 y) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* y (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (sqrt -1))) (* y (+ (* 5/16 (* (sqrt (/ 1 (pow x 7))) (* y (sqrt -1)))) (* 3/8 (* (sqrt (/ 1 (pow x 5))) (sqrt -1))))))) (* (sqrt (/ 1 x)) (sqrt -1))) (taylor 0 y) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (sqrt y) (taylor inf y) (#s(alt #s(approx (sqrt (+ x y)) (sqrt.f64 y)) (patch #s(approx (sqrt (+ x y)) (sqrt.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (sqrt (/ 1 y)) (* 1/2 (* x (sqrt (/ 1 (pow y 3))))))) (taylor inf y) (#s(alt #s(approx (sqrt (+ x y)) (sqrt.f64 y)) (patch #s(approx (sqrt (+ x y)) (sqrt.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (sqrt (/ 1 y)) (+ (* -1/8 (* (pow x 2) (sqrt (/ 1 (pow y 5))))) (* 1/2 (* x (sqrt (/ 1 (pow y 3)))))))) (taylor inf y) (#s(alt #s(approx (sqrt (+ x y)) (sqrt.f64 y)) (patch #s(approx (sqrt (+ x y)) (sqrt.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* y (+ (sqrt (/ 1 y)) (+ (* -1/8 (* (pow x 2) (sqrt (/ 1 (pow y 5))))) (+ (* 1/16 (* (pow x 3) (sqrt (/ 1 (pow y 7))))) (* 1/2 (* x (sqrt (/ 1 (pow y 3))))))))) (taylor inf y) (#s(alt #s(approx (sqrt (+ x y)) (sqrt.f64 y)) (patch #s(approx (sqrt (+ x y)) (sqrt.f64 y)) #<representation binary64>) () ())) ())
#s(alt (sqrt y) (taylor inf y) (#s(alt (sqrt.f64 y) (patch (sqrt.f64 y) #<representation binary64>) () ())) ())
#s(alt (sqrt y) (taylor inf y) (#s(alt (sqrt.f64 y) (patch (sqrt.f64 y) #<representation binary64>) () ())) ())
#s(alt (sqrt y) (taylor inf y) (#s(alt (sqrt.f64 y) (patch (sqrt.f64 y) #<representation binary64>) () ())) ())
#s(alt (sqrt y) (taylor inf y) (#s(alt (sqrt.f64 y) (patch (sqrt.f64 y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor inf y) (#s(alt (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) (patch (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2))))) (taylor inf y) (#s(alt (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) (patch (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2))))) (taylor inf y) (#s(alt (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) (patch (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2))))) (taylor inf y) (#s(alt (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) (patch (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (sqrt y) (pow (sqrt -1) 2)) (taylor inf y) (#s(alt (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))) (taylor inf y) (#s(alt (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (+ (* -1/8 (* (/ (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))) (taylor inf y) (#s(alt (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (+ (* -1/8 (* (/ (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (+ (* -1/16 (* (/ (pow x 3) (pow (sqrt -1) 4)) (sqrt (/ 1 (pow y 7))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))) (taylor inf y) (#s(alt (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt y (taylor inf y) (#s(alt (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (patch (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* -1/2 (/ (pow x 2) (pow y 2))))) (taylor inf y) (#s(alt (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (patch (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (+ (* -1/2 (/ (pow x 2) (pow y 2))) (* -1/8 (/ (pow x 4) (pow y 4)))))) (taylor inf y) (#s(alt (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (patch (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (+ (* -1/2 (/ (pow x 2) (pow y 2))) (+ (* -1/8 (/ (pow x 4) (pow y 4))) (* -1/16 (/ (pow x 6) (pow y 6))))))) (taylor inf y) (#s(alt (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (patch (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)) (taylor inf y) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))) (taylor inf y) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (+ (* -1/2 (* (pow x 2) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))) (taylor inf y) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow y 7))) (+ (* 1/4 (/ (* (pow x 2) y) (pow (sqrt -1) 2))) (pow x 3)))) (+ (* -1/2 (* (pow x 2) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))) (taylor inf y) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt y) (pow (sqrt -1) 2))) (taylor -inf y) (#s(alt #s(approx (sqrt (+ x y)) (sqrt.f64 y)) (patch #s(approx (sqrt (+ x y)) (sqrt.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* 1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))) (taylor -inf y) (#s(alt #s(approx (sqrt (+ x y)) (sqrt.f64 y)) (patch #s(approx (sqrt (+ x y)) (sqrt.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1/8 (* (/ (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (+ (* 1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))) (taylor -inf y) (#s(alt #s(approx (sqrt (+ x y)) (sqrt.f64 y)) (patch #s(approx (sqrt (+ x y)) (sqrt.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1/8 (* (/ (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (+ (* 1/16 (* (/ (pow x 3) (pow (sqrt -1) 4)) (sqrt (/ 1 (pow y 7))))) (+ (* 1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))))) (taylor -inf y) (#s(alt #s(approx (sqrt (+ x y)) (sqrt.f64 y)) (patch #s(approx (sqrt (+ x y)) (sqrt.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt y) (pow (sqrt -1) 2))) (taylor -inf y) (#s(alt (sqrt.f64 y) (patch (sqrt.f64 y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt y) (pow (sqrt -1) 2))) (taylor -inf y) (#s(alt (sqrt.f64 y) (patch (sqrt.f64 y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt y) (pow (sqrt -1) 2))) (taylor -inf y) (#s(alt (sqrt.f64 y) (patch (sqrt.f64 y) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt y) (pow (sqrt -1) 2))) (taylor -inf y) (#s(alt (sqrt.f64 y) (patch (sqrt.f64 y) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor -inf y) (#s(alt (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) (patch (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2))))) (taylor -inf y) (#s(alt (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) (patch (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2))))) (taylor -inf y) (#s(alt (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) (patch (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2))))) (taylor -inf y) (#s(alt (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) (patch (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt y) (pow (sqrt -1) 2))) (taylor -inf y) (#s(alt (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))) (taylor -inf y) (#s(alt (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (+ (* -1/8 (* (* (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))) (taylor -inf y) (#s(alt (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (+ (* -1/8 (* (* (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (+ (* -1/16 (* (* (pow x 3) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 7))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))))) (taylor -inf y) (#s(alt (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor -inf y) (#s(alt (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (patch (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (* -1/2 (/ (pow x 2) (pow y 2)))))) (taylor -inf y) (#s(alt (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (patch (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (+ (* -1/2 (/ (pow x 2) (pow y 2))) (* -1/8 (/ (pow x 4) (pow y 4))))))) (taylor -inf y) (#s(alt (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (patch (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (+ (* -1/2 (/ (pow x 2) (pow y 2))) (+ (* -1/8 (/ (pow x 4) (pow y 4))) (* -1/16 (/ (pow x 6) (pow y 6)))))))) (taylor -inf y) (#s(alt (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (patch (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)) (taylor -inf y) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))) (taylor -inf y) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (+ (* -1/2 (* (* (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))) (taylor -inf y) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (/ (+ (* 1/2 (* (sqrt (/ 1 y)) (* (pow (sqrt -1) 2) (+ (* -1/4 (* (pow x 2) y)) (pow x 3))))) (* 1/2 (* (* (pow x 2) (pow (sqrt -1) 2)) (sqrt y)))) (pow y 3))) (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))) (taylor -inf y) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (sqrt y) (taylor 0 x) (#s(alt #s(approx (sqrt (+ x y)) (sqrt.f64 y)) (patch #s(approx (sqrt (+ x y)) (sqrt.f64 y)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt y) (* 1/2 (* x (sqrt (/ 1 y))))) (taylor 0 x) (#s(alt #s(approx (sqrt (+ x y)) (sqrt.f64 y)) (patch #s(approx (sqrt (+ x y)) (sqrt.f64 y)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt y) (* x (+ (* -1/8 (* x (sqrt (/ 1 (pow y 3))))) (* 1/2 (sqrt (/ 1 y)))))) (taylor 0 x) (#s(alt #s(approx (sqrt (+ x y)) (sqrt.f64 y)) (patch #s(approx (sqrt (+ x y)) (sqrt.f64 y)) #<representation binary64>) () ())) ())
#s(alt (+ (sqrt y) (* x (+ (* 1/2 (sqrt (/ 1 y))) (* x (+ (* -1/8 (sqrt (/ 1 (pow y 3)))) (* 1/16 (* x (sqrt (/ 1 (pow y 5)))))))))) (taylor 0 x) (#s(alt #s(approx (sqrt (+ x y)) (sqrt.f64 y)) (patch #s(approx (sqrt (+ x y)) (sqrt.f64 y)) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor 0 x) (#s(alt (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) (patch (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (pow x 2)) (pow y 2)) (taylor 0 x) (#s(alt (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) (patch (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (pow x 2)) (pow y 2)) (taylor 0 x) (#s(alt (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) (patch (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (pow x 2)) (pow y 2)) (taylor 0 x) (#s(alt (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) (patch (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (sqrt y) (pow (sqrt -1) 2)) (taylor 0 x) (#s(alt (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/2 (* x (sqrt (/ 1 y)))) (* (sqrt y) (pow (sqrt -1) 2))) (taylor 0 x) (#s(alt (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (+ (* x (+ (* -1/2 (sqrt (/ 1 y))) (* -1/8 (* (/ x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))))) (* (sqrt y) (pow (sqrt -1) 2))) (taylor 0 x) (#s(alt (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (+ (* x (+ (* -1/2 (sqrt (/ 1 y))) (* x (+ (* -1/8 (* (sqrt (/ 1 (pow y 3))) (/ 1 (pow (sqrt -1) 2)))) (* -1/16 (* (/ x (pow (sqrt -1) 4)) (sqrt (/ 1 (pow y 5))))))))) (* (sqrt y) (pow (sqrt -1) 2))) (taylor 0 x) (#s(alt (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt y (taylor 0 x) (#s(alt (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (patch (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (+ y (* -1/2 (/ (pow x 2) y))) (taylor 0 x) (#s(alt (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (patch (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (+ y (* (pow x 2) (- (* -1/8 (/ (pow x 2) (pow y 3))) (* 1/2 (/ 1 y))))) (taylor 0 x) (#s(alt (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (patch (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (+ y (* (pow x 2) (- (* (pow x 2) (- (* -1/16 (/ (pow x 2) (pow y 5))) (* 1/8 (/ 1 (pow y 3))))) (* 1/2 (/ 1 y))))) (taylor 0 x) (#s(alt (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (patch (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)) (taylor 0 x) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))) (taylor 0 x) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* x (+ (* -1/2 (sqrt (/ 1 (pow y 3)))) (* -1/2 (* (* x (+ (* 1/4 (/ 1 (* (pow y 3) (pow (sqrt -1) 2)))) (/ 1 (pow y 3)))) (sqrt y))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))) (taylor 0 x) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* x (+ (* -1/2 (sqrt (/ 1 (pow y 3)))) (* x (+ (* -1/2 (* (sqrt y) (+ (* 1/4 (/ 1 (* (pow y 3) (pow (sqrt -1) 2)))) (/ 1 (pow y 3))))) (* -1/2 (* (* x (+ (* 1/2 (/ (+ (* 1/4 (/ 1 (* (pow y 3) (pow (sqrt -1) 2)))) (/ 1 (pow y 3))) (* y (pow (sqrt -1) 2)))) (/ 1 (pow y 4)))) (sqrt y))))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))) (taylor 0 x) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (sqrt x) (taylor inf x) (#s(alt #s(approx (sqrt (+ x y)) (sqrt.f64 y)) (patch #s(approx (sqrt (+ x y)) (sqrt.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (sqrt (/ 1 x)) (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)))) (taylor inf x) (#s(alt #s(approx (sqrt (+ x y)) (sqrt.f64 y)) (patch #s(approx (sqrt (+ x y)) (sqrt.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (sqrt (/ 1 x)) (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (pow y 2))) (* 1/2 (* (sqrt (/ 1 (pow x 3))) y))))) (taylor inf x) (#s(alt #s(approx (sqrt (+ x y)) (sqrt.f64 y)) (patch #s(approx (sqrt (+ x y)) (sqrt.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (sqrt (/ 1 x)) (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (pow y 2))) (+ (* 1/16 (* (sqrt (/ 1 (pow x 7))) (pow y 3))) (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)))))) (taylor inf x) (#s(alt #s(approx (sqrt (+ x y)) (sqrt.f64 y)) (patch #s(approx (sqrt (+ x y)) (sqrt.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (pow x 2)) (taylor inf x) (#s(alt (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) (patch (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1)) (taylor inf x) (#s(alt (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) (patch (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1)) (taylor inf x) (#s(alt (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) (patch (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1)) (taylor inf x) (#s(alt (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) (patch (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (sqrt x) (pow (sqrt -1) 2)) (taylor inf x) (#s(alt (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))) (taylor inf x) (#s(alt (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) y)) (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2))))) (taylor inf x) (#s(alt (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) y)) (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow x 7))) (/ (pow y 3) (pow (sqrt -1) 4)))) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))))) (taylor inf x) (#s(alt (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt -1)) (taylor inf x) (#s(alt (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (patch (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (sqrt -1) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1)))))) (taylor inf x) (#s(alt (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (patch (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (sqrt -1) (+ (* -1/8 (/ (pow y 4) (* (pow x 4) (pow (sqrt -1) 3)))) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1))))))) (taylor inf x) (#s(alt (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (patch (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (sqrt -1) (+ (* -1/8 (/ (pow y 4) (* (pow x 4) (pow (sqrt -1) 3)))) (+ (* 1/16 (/ (pow y 6) (* (pow x 6) (pow (sqrt -1) 5)))) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1)))))))) (taylor inf x) (#s(alt (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (patch (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (* (sqrt (/ 1 x)) (sqrt -1)) (taylor inf x) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1))) (taylor inf x) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 5))) (* (pow y 2) (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1)))) (taylor inf x) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/2 (* (sqrt (/ 1 (pow x 7))) (* (sqrt -1) (+ (* -1 (pow y 3)) (* 1/4 (* x (pow y 2))))))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 5))) (* (pow y 2) (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1))))) (taylor inf x) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt x) (pow (sqrt -1) 2))) (taylor -inf x) (#s(alt #s(approx (sqrt (+ x y)) (sqrt.f64 y)) (patch #s(approx (sqrt (+ x y)) (sqrt.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2))))) (taylor -inf x) (#s(alt #s(approx (sqrt (+ x y)) (sqrt.f64 y)) (patch #s(approx (sqrt (+ x y)) (sqrt.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))))) (taylor -inf x) (#s(alt #s(approx (sqrt (+ x y)) (sqrt.f64 y)) (patch #s(approx (sqrt (+ x y)) (sqrt.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* 1/16 (* (sqrt (/ 1 (pow x 7))) (/ (pow y 3) (pow (sqrt -1) 4)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2))))))) (taylor -inf x) (#s(alt #s(approx (sqrt (+ x y)) (sqrt.f64 y)) (patch #s(approx (sqrt (+ x y)) (sqrt.f64 y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (pow x 2)) (taylor -inf x) (#s(alt (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) (patch (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1)) (taylor -inf x) (#s(alt (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) (patch (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1)) (taylor -inf x) (#s(alt (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) (patch (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1)) (taylor -inf x) (#s(alt (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) (patch (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt x) (pow (sqrt -1) 2))) (taylor -inf x) (#s(alt (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2))))) (taylor -inf x) (#s(alt (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))))) (taylor -inf x) (#s(alt (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* 1/16 (* (sqrt (/ 1 (pow x 7))) (/ (pow y 3) (pow (sqrt -1) 4)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2))))))) (taylor -inf x) (#s(alt (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (sqrt -1))) (taylor -inf x) (#s(alt (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (patch (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (sqrt -1) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1))))))) (taylor -inf x) (#s(alt (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (patch (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (sqrt -1) (+ (* -1/8 (/ (pow y 4) (* (pow x 4) (pow (sqrt -1) 3)))) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1)))))))) (taylor -inf x) (#s(alt (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (patch (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (sqrt -1) (+ (* -1/8 (/ (pow y 4) (* (pow x 4) (pow (sqrt -1) 3)))) (+ (* 1/16 (/ (pow y 6) (* (pow x 6) (pow (sqrt -1) 5)))) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1))))))))) (taylor -inf x) (#s(alt (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (patch (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (* (sqrt (/ 1 x)) (sqrt -1)) (taylor -inf x) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1))) (taylor -inf x) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (+ (* -1/2 (* (sqrt (/ 1 (pow x 5))) (* (pow y 2) (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1)))) (taylor -inf x) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (/ (+ (* 1/2 (* (sqrt x) (* (pow y 2) (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 x)) (* (sqrt -1) (+ (* -1/4 (* x (pow y 2))) (pow y 3)))))) (pow x 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1)))) (taylor -inf x) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
Calls

6 calls:

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

simplify205.0ms (4.8%)

Memory
35.7MiB live, 153.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04262863
113572574
249412526
084162382
Stop Event
iter limit
node limit
Counts
144 → 142
Calls
Call 1
Inputs
(sqrt x)
(+ (sqrt x) (* 1/2 (* (sqrt (/ 1 x)) y)))
(+ (sqrt x) (* y (+ (* -1/8 (* (sqrt (/ 1 (pow x 3))) y)) (* 1/2 (sqrt (/ 1 x))))))
(+ (sqrt x) (* y (+ (* 1/2 (sqrt (/ 1 x))) (* y (+ (* -1/8 (sqrt (/ 1 (pow x 3)))) (* 1/16 (* (sqrt (/ 1 (pow x 5))) y)))))))
(sqrt y)
(sqrt y)
(sqrt y)
(sqrt y)
(* -1 (pow x 2))
(+ (* -1 (pow x 2)) (pow y 2))
(+ (* -1 (pow x 2)) (pow y 2))
(+ (* -1 (pow x 2)) (pow y 2))
(* (sqrt x) (pow (sqrt -1) 2))
(+ (* -1/2 (* (sqrt (/ 1 x)) y)) (* (sqrt x) (pow (sqrt -1) 2)))
(+ (* y (+ (* -1/2 (sqrt (/ 1 x))) (* -1/8 (* (sqrt (/ 1 (pow x 3))) (/ y (pow (sqrt -1) 2)))))) (* (sqrt x) (pow (sqrt -1) 2)))
(+ (* y (+ (* -1/2 (sqrt (/ 1 x))) (* y (+ (* -1/8 (* (sqrt (/ 1 (pow x 3))) (/ 1 (pow (sqrt -1) 2)))) (* -1/16 (* (sqrt (/ 1 (pow x 5))) (/ y (pow (sqrt -1) 4)))))))) (* (sqrt x) (pow (sqrt -1) 2)))
(* x (sqrt -1))
(+ (* 1/2 (/ (pow y 2) (* x (sqrt -1)))) (* x (sqrt -1)))
(+ (* x (sqrt -1)) (* (pow y 2) (+ (* -1/8 (/ (pow y 2) (* (pow x 3) (pow (sqrt -1) 3)))) (* 1/2 (/ 1 (* x (sqrt -1)))))))
(+ (* x (sqrt -1)) (* (pow y 2) (+ (* (pow y 2) (- (* 1/16 (/ (pow y 2) (* (pow x 5) (pow (sqrt -1) 5)))) (* 1/8 (/ 1 (* (pow x 3) (pow (sqrt -1) 3)))))) (* 1/2 (/ 1 (* x (sqrt -1)))))))
(* (sqrt (/ 1 x)) (sqrt -1))
(+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1)))
(+ (* y (+ (* 3/8 (* (sqrt (/ 1 (pow x 5))) (* y (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 (pow x 3))) (sqrt -1))))) (* (sqrt (/ 1 x)) (sqrt -1)))
(+ (* y (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (sqrt -1))) (* y (+ (* 5/16 (* (sqrt (/ 1 (pow x 7))) (* y (sqrt -1)))) (* 3/8 (* (sqrt (/ 1 (pow x 5))) (sqrt -1))))))) (* (sqrt (/ 1 x)) (sqrt -1)))
(sqrt y)
(* y (+ (sqrt (/ 1 y)) (* 1/2 (* x (sqrt (/ 1 (pow y 3)))))))
(* y (+ (sqrt (/ 1 y)) (+ (* -1/8 (* (pow x 2) (sqrt (/ 1 (pow y 5))))) (* 1/2 (* x (sqrt (/ 1 (pow y 3))))))))
(* y (+ (sqrt (/ 1 y)) (+ (* -1/8 (* (pow x 2) (sqrt (/ 1 (pow y 5))))) (+ (* 1/16 (* (pow x 3) (sqrt (/ 1 (pow y 7))))) (* 1/2 (* x (sqrt (/ 1 (pow y 3)))))))))
(sqrt y)
(sqrt y)
(sqrt y)
(sqrt y)
(pow y 2)
(* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2)))))
(* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2)))))
(* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2)))))
(* (sqrt y) (pow (sqrt -1) 2))
(* y (+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))
(* y (+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (+ (* -1/8 (* (/ (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))
(* y (+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (+ (* -1/8 (* (/ (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (+ (* -1/16 (* (/ (pow x 3) (pow (sqrt -1) 4)) (sqrt (/ 1 (pow y 7))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))))
y
(* y (+ 1 (* -1/2 (/ (pow x 2) (pow y 2)))))
(* y (+ 1 (+ (* -1/2 (/ (pow x 2) (pow y 2))) (* -1/8 (/ (pow x 4) (pow y 4))))))
(* y (+ 1 (+ (* -1/2 (/ (pow x 2) (pow y 2))) (+ (* -1/8 (/ (pow x 4) (pow y 4))) (* -1/16 (/ (pow x 6) (pow y 6)))))))
(* (sqrt (/ 1 y)) (pow (sqrt -1) 2))
(+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))
(+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (+ (* -1/2 (* (pow x 2) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))
(+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow y 7))) (+ (* 1/4 (/ (* (pow x 2) y) (pow (sqrt -1) 2))) (pow x 3)))) (+ (* -1/2 (* (pow x 2) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))
(* -1 (* (sqrt y) (pow (sqrt -1) 2)))
(* -1 (* y (+ (* 1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))
(* -1 (* y (+ (* -1/8 (* (/ (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (+ (* 1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))))
(* -1 (* y (+ (* -1/8 (* (/ (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (+ (* 1/16 (* (/ (pow x 3) (pow (sqrt -1) 4)) (sqrt (/ 1 (pow y 7))))) (+ (* 1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))))
(* -1 (* (sqrt y) (pow (sqrt -1) 2)))
(* -1 (* (sqrt y) (pow (sqrt -1) 2)))
(* -1 (* (sqrt y) (pow (sqrt -1) 2)))
(* -1 (* (sqrt y) (pow (sqrt -1) 2)))
(pow y 2)
(* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2)))))
(* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2)))))
(* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2)))))
(* -1 (* (sqrt y) (pow (sqrt -1) 2)))
(* -1 (* y (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))
(* -1 (* y (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (+ (* -1/8 (* (* (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))))
(* -1 (* y (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (+ (* -1/8 (* (* (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (+ (* -1/16 (* (* (pow x 3) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 7))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))))
(* -1 y)
(* -1 (* y (+ 1 (* -1/2 (/ (pow x 2) (pow y 2))))))
(* -1 (* y (+ 1 (+ (* -1/2 (/ (pow x 2) (pow y 2))) (* -1/8 (/ (pow x 4) (pow y 4)))))))
(* -1 (* y (+ 1 (+ (* -1/2 (/ (pow x 2) (pow y 2))) (+ (* -1/8 (/ (pow x 4) (pow y 4))) (* -1/16 (/ (pow x 6) (pow y 6))))))))
(* (sqrt (/ 1 y)) (pow (sqrt -1) 2))
(+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))
(+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (+ (* -1/2 (* (* (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))
(+ (* -1 (/ (+ (* 1/2 (* (sqrt (/ 1 y)) (* (pow (sqrt -1) 2) (+ (* -1/4 (* (pow x 2) y)) (pow x 3))))) (* 1/2 (* (* (pow x 2) (pow (sqrt -1) 2)) (sqrt y)))) (pow y 3))) (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))
(sqrt y)
(+ (sqrt y) (* 1/2 (* x (sqrt (/ 1 y)))))
(+ (sqrt y) (* x (+ (* -1/8 (* x (sqrt (/ 1 (pow y 3))))) (* 1/2 (sqrt (/ 1 y))))))
(+ (sqrt y) (* x (+ (* 1/2 (sqrt (/ 1 y))) (* x (+ (* -1/8 (sqrt (/ 1 (pow y 3)))) (* 1/16 (* x (sqrt (/ 1 (pow y 5))))))))))
(pow y 2)
(+ (* -1 (pow x 2)) (pow y 2))
(+ (* -1 (pow x 2)) (pow y 2))
(+ (* -1 (pow x 2)) (pow y 2))
(* (sqrt y) (pow (sqrt -1) 2))
(+ (* -1/2 (* x (sqrt (/ 1 y)))) (* (sqrt y) (pow (sqrt -1) 2)))
(+ (* x (+ (* -1/2 (sqrt (/ 1 y))) (* -1/8 (* (/ x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))))) (* (sqrt y) (pow (sqrt -1) 2)))
(+ (* x (+ (* -1/2 (sqrt (/ 1 y))) (* x (+ (* -1/8 (* (sqrt (/ 1 (pow y 3))) (/ 1 (pow (sqrt -1) 2)))) (* -1/16 (* (/ x (pow (sqrt -1) 4)) (sqrt (/ 1 (pow y 5))))))))) (* (sqrt y) (pow (sqrt -1) 2)))
y
(+ y (* -1/2 (/ (pow x 2) y)))
(+ y (* (pow x 2) (- (* -1/8 (/ (pow x 2) (pow y 3))) (* 1/2 (/ 1 y)))))
(+ y (* (pow x 2) (- (* (pow x 2) (- (* -1/16 (/ (pow x 2) (pow y 5))) (* 1/8 (/ 1 (pow y 3))))) (* 1/2 (/ 1 y)))))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(* (sqrt (/ 1 y)) (pow (sqrt -1) 2))
(+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))
(+ (* x (+ (* -1/2 (sqrt (/ 1 (pow y 3)))) (* -1/2 (* (* x (+ (* 1/4 (/ 1 (* (pow y 3) (pow (sqrt -1) 2)))) (/ 1 (pow y 3)))) (sqrt y))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))
(+ (* x (+ (* -1/2 (sqrt (/ 1 (pow y 3)))) (* x (+ (* -1/2 (* (sqrt y) (+ (* 1/4 (/ 1 (* (pow y 3) (pow (sqrt -1) 2)))) (/ 1 (pow y 3))))) (* -1/2 (* (* x (+ (* 1/2 (/ (+ (* 1/4 (/ 1 (* (pow y 3) (pow (sqrt -1) 2)))) (/ 1 (pow y 3))) (* y (pow (sqrt -1) 2)))) (/ 1 (pow y 4)))) (sqrt y))))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))
(sqrt x)
(* x (+ (sqrt (/ 1 x)) (* 1/2 (* (sqrt (/ 1 (pow x 3))) y))))
(* x (+ (sqrt (/ 1 x)) (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (pow y 2))) (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)))))
(* x (+ (sqrt (/ 1 x)) (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (pow y 2))) (+ (* 1/16 (* (sqrt (/ 1 (pow x 7))) (pow y 3))) (* 1/2 (* (sqrt (/ 1 (pow x 3))) y))))))
(* -1 (pow x 2))
(* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1))
(* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1))
(* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1))
(* (sqrt x) (pow (sqrt -1) 2))
(* x (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2))))
(* x (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) y)) (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))))
(* x (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) y)) (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow x 7))) (/ (pow y 3) (pow (sqrt -1) 4)))) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2))))))
(* x (sqrt -1))
(* x (+ (sqrt -1) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1))))))
(* x (+ (sqrt -1) (+ (* -1/8 (/ (pow y 4) (* (pow x 4) (pow (sqrt -1) 3)))) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1)))))))
(* x (+ (sqrt -1) (+ (* -1/8 (/ (pow y 4) (* (pow x 4) (pow (sqrt -1) 3)))) (+ (* 1/16 (/ (pow y 6) (* (pow x 6) (pow (sqrt -1) 5)))) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1))))))))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(* (sqrt (/ 1 x)) (sqrt -1))
(+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1)))
(+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 5))) (* (pow y 2) (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1))))
(+ (* -1/2 (* (sqrt (/ 1 (pow x 7))) (* (sqrt -1) (+ (* -1 (pow y 3)) (* 1/4 (* x (pow y 2))))))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 5))) (* (pow y 2) (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1)))))
(* -1 (* (sqrt x) (pow (sqrt -1) 2)))
(* -1 (* x (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))))
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2))))))
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* 1/16 (* (sqrt (/ 1 (pow x 7))) (/ (pow y 3) (pow (sqrt -1) 4)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))))))
(* -1 (pow x 2))
(* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1))
(* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1))
(* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1))
(* -1 (* (sqrt x) (pow (sqrt -1) 2)))
(* -1 (* x (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))))
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2))))))
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* 1/16 (* (sqrt (/ 1 (pow x 7))) (/ (pow y 3) (pow (sqrt -1) 4)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))))))
(* -1 (* x (sqrt -1)))
(* -1 (* x (+ (sqrt -1) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1)))))))
(* -1 (* x (+ (sqrt -1) (+ (* -1/8 (/ (pow y 4) (* (pow x 4) (pow (sqrt -1) 3)))) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1))))))))
(* -1 (* x (+ (sqrt -1) (+ (* -1/8 (/ (pow y 4) (* (pow x 4) (pow (sqrt -1) 3)))) (+ (* 1/16 (/ (pow y 6) (* (pow x 6) (pow (sqrt -1) 5)))) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1)))))))))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(* (sqrt (/ 1 x)) (sqrt -1))
(+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1)))
(+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (+ (* -1/2 (* (sqrt (/ 1 (pow x 5))) (* (pow y 2) (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1))))
(+ (* -1 (/ (+ (* 1/2 (* (sqrt x) (* (pow y 2) (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 x)) (* (sqrt -1) (+ (* -1/4 (* x (pow y 2))) (pow y 3)))))) (pow x 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1))))
Outputs
(sqrt x)
(sqrt.f64 x)
(+ (sqrt x) (* 1/2 (* (sqrt (/ 1 x)) y)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) x)) (sqrt.f64 x))
(+ (sqrt x) (* y (+ (* -1/8 (* (sqrt (/ 1 (pow x 3))) y)) (* 1/2 (sqrt (/ 1 x))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x)) #s(literal 1/2 binary64))) y (sqrt.f64 x))
(+ (sqrt x) (* y (+ (* 1/2 (sqrt (/ 1 x))) (* y (+ (* -1/8 (sqrt (/ 1 (pow x 3)))) (* 1/16 (* (sqrt (/ 1 (pow x 5))) y)))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) #s(literal -1/8 binary64))) y (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x)) #s(literal 1/2 binary64))) y (sqrt.f64 x))
(sqrt y)
(sqrt.f64 y)
(sqrt y)
(sqrt.f64 y)
(sqrt y)
(sqrt.f64 y)
(sqrt y)
(sqrt.f64 y)
(* -1 (pow x 2))
(*.f64 (neg.f64 x) x)
(+ (* -1 (pow x 2)) (pow y 2))
(*.f64 (+.f64 y x) (-.f64 y x))
(+ (* -1 (pow x 2)) (pow y 2))
(*.f64 (+.f64 y x) (-.f64 y x))
(+ (* -1 (pow x 2)) (pow y 2))
(*.f64 (+.f64 y x) (-.f64 y x))
(* (sqrt x) (pow (sqrt -1) 2))
(neg.f64 (sqrt.f64 x))
(+ (* -1/2 (* (sqrt (/ 1 x)) y)) (* (sqrt x) (pow (sqrt -1) 2)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) x)) (neg.f64 (sqrt.f64 x)))
(+ (* y (+ (* -1/2 (sqrt (/ 1 x))) (* -1/8 (* (sqrt (/ 1 (pow x 3))) (/ y (pow (sqrt -1) 2)))))) (* (sqrt x) (pow (sqrt -1) 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64))))) y (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) x)))) y (neg.f64 (sqrt.f64 x)))
(+ (* y (+ (* -1/2 (sqrt (/ 1 x))) (* y (+ (* -1/8 (* (sqrt (/ 1 (pow x 3))) (/ 1 (pow (sqrt -1) 2)))) (* -1/16 (* (sqrt (/ 1 (pow x 5))) (/ y (pow (sqrt -1) 4)))))))) (* (sqrt x) (pow (sqrt -1) 2)))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (/.f64 y (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))) (*.f64 #s(literal 1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))))) y (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) x)))) y (neg.f64 (sqrt.f64 x)))
(* x (sqrt -1))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) x)
(+ (* 1/2 (/ (pow y 2) (* x (sqrt -1)))) (* x (sqrt -1)))
(fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x) (/.f64 y (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))
(+ (* x (sqrt -1)) (* (pow y 2) (+ (* -1/8 (/ (pow y 2) (* (pow x 3) (pow (sqrt -1) 3)))) (* 1/2 (/ 1 (* x (sqrt -1)))))))
(fma.f64 (fma.f64 (/.f64 (*.f64 y y) (*.f64 (pow.f64 x #s(literal 3 binary64)) (sqrt.f64 #s(literal -1 binary64)))) #s(literal 1/8 binary64) (/.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))) (*.f64 y y) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))
(+ (* x (sqrt -1)) (* (pow y 2) (+ (* (pow y 2) (- (* 1/16 (/ (pow y 2) (* (pow x 5) (pow (sqrt -1) 5)))) (* 1/8 (/ 1 (* (pow x 3) (pow (sqrt -1) 3)))))) (* 1/2 (/ 1 (* x (sqrt -1)))))))
(fma.f64 (pow.f64 y #s(literal 4 binary64)) (fma.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) y) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 5 binary64))) (/.f64 y (pow.f64 x #s(literal 5 binary64))) (/.f64 #s(literal -1/8 binary64) (*.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64))))) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x) (/.f64 y (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)))
(* (sqrt (/ 1 x)) (sqrt -1))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) x)))
(+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) y)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) x))))
(+ (* y (+ (* 3/8 (* (sqrt (/ 1 (pow x 5))) (* y (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 (pow x 3))) (sqrt -1))))) (* (sqrt (/ 1 x)) (sqrt -1)))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (*.f64 (*.f64 y #s(literal 3/8 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64))))))) y (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) x))))
(+ (* y (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (sqrt -1))) (* y (+ (* 5/16 (* (sqrt (/ 1 (pow x 7))) (* y (sqrt -1)))) (* 3/8 (* (sqrt (/ 1 (pow x 5))) (sqrt -1))))))) (* (sqrt (/ 1 x)) (sqrt -1)))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (*.f64 (fma.f64 (*.f64 #s(literal 5/16 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) y)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 7 binary64)))) (*.f64 (*.f64 #s(literal 3/8 binary64) (sqrt.f64 #s(literal -1 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))))) y)) y (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) x))))
(sqrt y)
(sqrt.f64 y)
(* y (+ (sqrt (/ 1 y)) (* 1/2 (* x (sqrt (/ 1 (pow y 3)))))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) y))) y)
(* y (+ (sqrt (/ 1 y)) (+ (* -1/8 (* (pow x 2) (sqrt (/ 1 (pow y 5))))) (* 1/2 (* x (sqrt (/ 1 (pow y 3))))))))
(*.f64 (fma.f64 (*.f64 (*.f64 x x) #s(literal -1/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))) y)
(* y (+ (sqrt (/ 1 y)) (+ (* -1/8 (* (pow x 2) (sqrt (/ 1 (pow y 5))))) (+ (* 1/16 (* (pow x 3) (sqrt (/ 1 (pow y 7))))) (* 1/2 (* x (sqrt (/ 1 (pow y 3)))))))))
(*.f64 (+.f64 (fma.f64 (*.f64 (*.f64 x x) #s(literal -1/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) y))) (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 x #s(literal 3 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 7 binary64))))))) y)
(sqrt y)
(sqrt.f64 y)
(sqrt y)
(sqrt.f64 y)
(sqrt y)
(sqrt.f64 y)
(sqrt y)
(sqrt.f64 y)
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2)))))
(*.f64 (fma.f64 (/.f64 (neg.f64 x) y) (/.f64 x y) #s(literal 1 binary64)) (*.f64 y y))
(* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2)))))
(*.f64 (fma.f64 (/.f64 (neg.f64 x) y) (/.f64 x y) #s(literal 1 binary64)) (*.f64 y y))
(* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2)))))
(*.f64 (fma.f64 (/.f64 (neg.f64 x) y) (/.f64 x y) #s(literal 1 binary64)) (*.f64 y y))
(* (sqrt y) (pow (sqrt -1) 2))
(neg.f64 (sqrt.f64 y))
(* y (+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))) y)
(* y (+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (+ (* -1/8 (* (/ (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (fma.f64 (*.f64 (/.f64 (*.f64 x x) #s(literal -1 binary64)) #s(literal -1/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))) y)
(* y (+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (+ (* -1/8 (* (/ (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (+ (* -1/16 (* (/ (pow x 3) (pow (sqrt -1) 4)) (sqrt (/ 1 (pow y 7))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (fma.f64 (/.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 x #s(literal 3 binary64))) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 7 binary64)))) (fma.f64 (*.f64 (/.f64 (*.f64 x x) #s(literal -1 binary64)) #s(literal -1/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))))) y)
y
(* y (+ 1 (* -1/2 (/ (pow x 2) (pow y 2)))))
(fma.f64 (/.f64 y y) (*.f64 (/.f64 (*.f64 x x) y) #s(literal -1/2 binary64)) y)
(* y (+ 1 (+ (* -1/2 (/ (pow x 2) (pow y 2))) (* -1/8 (/ (pow x 4) (pow y 4))))))
(fma.f64 (fma.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) x) y) (/.f64 x y) (/.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 y #s(literal 4 binary64)))) y y)
(* y (+ 1 (+ (* -1/2 (/ (pow x 2) (pow y 2))) (+ (* -1/8 (/ (pow x 4) (pow y 4))) (* -1/16 (/ (pow x 6) (pow y 6)))))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 x #s(literal 6 binary64)) (pow.f64 y #s(literal 6 binary64))) #s(literal -1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) x) y) (/.f64 x y) (/.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 y #s(literal 4 binary64))))) y y)
(* (sqrt (/ 1 y)) (pow (sqrt -1) 2))
(neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))
(+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))
(+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (+ (* -1/2 (* (pow x 2) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))
(fma.f64 #s(literal -1/2 binary64) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) x (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (*.f64 x x))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))
(+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow y 7))) (+ (* 1/4 (/ (* (pow x 2) y) (pow (sqrt -1) 2))) (pow x 3)))) (+ (* -1/2 (* (pow x 2) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (fma.f64 #s(literal -1/2 binary64) (fma.f64 (fma.f64 (*.f64 y (/.f64 (*.f64 x x) #s(literal -1 binary64))) #s(literal 1/4 binary64) (pow.f64 x #s(literal 3 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 7 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (*.f64 x x))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))))
(* -1 (* (sqrt y) (pow (sqrt -1) 2)))
(sqrt.f64 y)
(* -1 (* y (+ (* 1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))
(*.f64 (neg.f64 y) (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))))
(* -1 (* y (+ (* -1/8 (* (/ (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (+ (* 1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))))
(*.f64 (neg.f64 y) (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (fma.f64 (*.f64 (/.f64 (*.f64 x x) #s(literal -1 binary64)) #s(literal -1/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))))
(* -1 (* y (+ (* -1/8 (* (/ (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (+ (* 1/16 (* (/ (pow x 3) (pow (sqrt -1) 4)) (sqrt (/ 1 (pow y 7))))) (+ (* 1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))))
(*.f64 (neg.f64 y) (fma.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 x #s(literal 3 binary64))) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 7 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (fma.f64 (*.f64 (/.f64 (*.f64 x x) #s(literal -1 binary64)) #s(literal -1/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))))))
(* -1 (* (sqrt y) (pow (sqrt -1) 2)))
(sqrt.f64 y)
(* -1 (* (sqrt y) (pow (sqrt -1) 2)))
(sqrt.f64 y)
(* -1 (* (sqrt y) (pow (sqrt -1) 2)))
(sqrt.f64 y)
(* -1 (* (sqrt y) (pow (sqrt -1) 2)))
(sqrt.f64 y)
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2)))))
(*.f64 (fma.f64 (/.f64 (neg.f64 x) y) (/.f64 x y) #s(literal 1 binary64)) (*.f64 y y))
(* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2)))))
(*.f64 (fma.f64 (/.f64 (neg.f64 x) y) (/.f64 x y) #s(literal 1 binary64)) (*.f64 y y))
(* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2)))))
(*.f64 (fma.f64 (/.f64 (neg.f64 x) y) (/.f64 x y) #s(literal 1 binary64)) (*.f64 y y))
(* -1 (* (sqrt y) (pow (sqrt -1) 2)))
(sqrt.f64 y)
(* -1 (* y (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))
(*.f64 (neg.f64 y) (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))))
(* -1 (* y (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (+ (* -1/8 (* (* (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))))
(*.f64 (neg.f64 y) (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 x x)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))))
(* -1 (* y (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (+ (* -1/8 (* (* (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (+ (* -1/16 (* (* (pow x 3) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 7))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))))
(*.f64 (neg.f64 y) (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 x x)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 x #s(literal 3 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 7 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))))))
(* -1 y)
(neg.f64 y)
(* -1 (* y (+ 1 (* -1/2 (/ (pow x 2) (pow y 2))))))
(*.f64 (neg.f64 y) (fma.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) x) y) (/.f64 x y) #s(literal 1 binary64)))
(* -1 (* y (+ 1 (+ (* -1/2 (/ (pow x 2) (pow y 2))) (* -1/8 (/ (pow x 4) (pow y 4)))))))
(*.f64 (neg.f64 y) (fma.f64 (/.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) x) y) (/.f64 x y) #s(literal 1 binary64))))
(* -1 (* y (+ 1 (+ (* -1/2 (/ (pow x 2) (pow y 2))) (+ (* -1/8 (/ (pow x 4) (pow y 4))) (* -1/16 (/ (pow x 6) (pow y 6))))))))
(neg.f64 (fma.f64 (fma.f64 (/.f64 (pow.f64 x #s(literal 6 binary64)) (pow.f64 y #s(literal 6 binary64))) #s(literal -1/16 binary64) (fma.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) x) y) (/.f64 x y) (/.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 y #s(literal 4 binary64))))) y y))
(* (sqrt (/ 1 y)) (pow (sqrt -1) 2))
(neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))
(+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))
(+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (+ (* -1/2 (* (* (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 x x)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))))
(+ (* -1 (/ (+ (* 1/2 (* (sqrt (/ 1 y)) (* (pow (sqrt -1) 2) (+ (* -1/4 (* (pow x 2) y)) (pow x 3))))) (* 1/2 (* (* (pow x 2) (pow (sqrt -1) 2)) (sqrt y)))) (pow y 3))) (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))
(fma.f64 (/.f64 (fma.f64 (neg.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 (*.f64 x x) y) (pow.f64 x #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (*.f64 (neg.f64 (sqrt.f64 y)) (*.f64 x x))) (pow.f64 y #s(literal 3 binary64))) #s(literal -1/2 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))))
(sqrt y)
(sqrt.f64 y)
(+ (sqrt y) (* 1/2 (* x (sqrt (/ 1 y)))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (sqrt.f64 y))
(+ (sqrt y) (* x (+ (* -1/8 (* x (sqrt (/ 1 (pow y 3))))) (* 1/2 (sqrt (/ 1 y))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) #s(literal 1/2 binary64))) x (sqrt.f64 y))
(+ (sqrt y) (* x (+ (* 1/2 (sqrt (/ 1 y))) (* x (+ (* -1/8 (sqrt (/ 1 (pow y 3)))) (* 1/16 (* x (sqrt (/ 1 (pow y 5))))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) #s(literal -1/8 binary64))) x (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) #s(literal 1/2 binary64))) x (sqrt.f64 y))
(pow y 2)
(*.f64 y y)
(+ (* -1 (pow x 2)) (pow y 2))
(*.f64 (+.f64 y x) (-.f64 y x))
(+ (* -1 (pow x 2)) (pow y 2))
(*.f64 (+.f64 y x) (-.f64 y x))
(+ (* -1 (pow x 2)) (pow y 2))
(*.f64 (+.f64 y x) (-.f64 y x))
(* (sqrt y) (pow (sqrt -1) 2))
(neg.f64 (sqrt.f64 y))
(+ (* -1/2 (* x (sqrt (/ 1 y)))) (* (sqrt y) (pow (sqrt -1) 2)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (neg.f64 (sqrt.f64 y)))
(+ (* x (+ (* -1/2 (sqrt (/ 1 y))) (* -1/8 (* (/ x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))))) (* (sqrt y) (pow (sqrt -1) 2)))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) #s(literal 1/8 binary64)) x (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) #s(literal -1/2 binary64))) x (neg.f64 (sqrt.f64 y)))
(+ (* x (+ (* -1/2 (sqrt (/ 1 y))) (* x (+ (* -1/8 (* (sqrt (/ 1 (pow y 3))) (/ 1 (pow (sqrt -1) 2)))) (* -1/16 (* (/ x (pow (sqrt -1) 4)) (sqrt (/ 1 (pow y 5))))))))) (* (sqrt y) (pow (sqrt -1) 2)))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (/.f64 x (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64))) #s(literal -1/16 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) #s(literal 1/8 binary64))) x (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) #s(literal -1/2 binary64))) x (neg.f64 (sqrt.f64 y)))
y
(+ y (* -1/2 (/ (pow x 2) y)))
(fma.f64 (/.f64 (*.f64 x x) y) #s(literal -1/2 binary64) y)
(+ y (* (pow x 2) (- (* -1/8 (/ (pow x 2) (pow y 3))) (* 1/2 (/ 1 y)))))
(fma.f64 (fma.f64 (*.f64 x (/.f64 x (pow.f64 y #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.f64 #s(literal -1/2 binary64) y)) (*.f64 x x) y)
(+ y (* (pow x 2) (- (* (pow x 2) (- (* -1/16 (/ (pow x 2) (pow y 5))) (* 1/8 (/ 1 (pow y 3))))) (* 1/2 (/ 1 y)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 x (/.f64 x (pow.f64 y #s(literal 5 binary64)))) #s(literal -1/16 binary64) (/.f64 #s(literal -1/8 binary64) (pow.f64 y #s(literal 3 binary64)))) (*.f64 x x) (/.f64 #s(literal -1/2 binary64) y)) (*.f64 x x) y)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(* (sqrt (/ 1 y)) (pow (sqrt -1) 2))
(neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))
(+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))
(+ (* x (+ (* -1/2 (sqrt (/ 1 (pow y 3)))) (* -1/2 (* (* x (+ (* 1/4 (/ 1 (* (pow y 3) (pow (sqrt -1) 2)))) (/ 1 (pow y 3)))) (sqrt y))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) x) (fma.f64 (fma.f64 (/.f64 x (pow.f64 y #s(literal 3 binary64))) #s(literal -1/4 binary64) (/.f64 x (pow.f64 y #s(literal 3 binary64)))) (sqrt.f64 y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))
(+ (* x (+ (* -1/2 (sqrt (/ 1 (pow y 3)))) (* x (+ (* -1/2 (* (sqrt y) (+ (* 1/4 (/ 1 (* (pow y 3) (pow (sqrt -1) 2)))) (/ 1 (pow y 3))))) (* -1/2 (* (* x (+ (* 1/2 (/ (+ (* 1/4 (/ 1 (* (pow y 3) (pow (sqrt -1) 2)))) (/ 1 (pow y 3))) (* y (pow (sqrt -1) 2)))) (/ 1 (pow y 4)))) (sqrt y))))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) x) (*.f64 (sqrt.f64 y) (+.f64 (+.f64 (/.f64 #s(literal -1/4 binary64) (pow.f64 y #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal -1/4 binary64) (pow.f64 y #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) y) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 4 binary64)))) x))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) #s(literal -1/2 binary64))) x (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))
(sqrt x)
(sqrt.f64 x)
(* x (+ (sqrt (/ 1 x)) (* 1/2 (* (sqrt (/ 1 (pow x 3))) y))))
(*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) x))) x)
(* x (+ (sqrt (/ 1 x)) (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (pow y 2))) (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)))))
(*.f64 (fma.f64 (*.f64 (*.f64 y y) #s(literal -1/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) x)))) x)
(* x (+ (sqrt (/ 1 x)) (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (pow y 2))) (+ (* 1/16 (* (sqrt (/ 1 (pow x 7))) (pow y 3))) (* 1/2 (* (sqrt (/ 1 (pow x 3))) y))))))
(*.f64 (+.f64 (fma.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 y #s(literal 3 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 7 binary64)))) (*.f64 (*.f64 (*.f64 y y) #s(literal -1/8 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))))) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) x)))) x)
(* -1 (pow x 2))
(*.f64 (neg.f64 x) x)
(* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1))
(*.f64 (fma.f64 (/.f64 y x) (/.f64 y x) #s(literal -1 binary64)) (*.f64 x x))
(* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1))
(*.f64 (fma.f64 (/.f64 y x) (/.f64 y x) #s(literal -1 binary64)) (*.f64 x x))
(* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1))
(*.f64 (fma.f64 (/.f64 y x) (/.f64 y x) #s(literal -1 binary64)) (*.f64 x x))
(* (sqrt x) (pow (sqrt -1) 2))
(neg.f64 (sqrt.f64 x))
(* x (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x)))) x)
(* x (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) y)) (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 y (/.f64 y #s(literal -1 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x))))) x)
(* x (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) y)) (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow x 7))) (/ (pow y 3) (pow (sqrt -1) 4)))) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 y (/.f64 y #s(literal -1 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))) (fma.f64 (/.f64 (*.f64 (pow.f64 y #s(literal 3 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 7 binary64))))) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64))) #s(literal -1/16 binary64) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x)))))) x)
(* x (sqrt -1))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) x)
(* x (+ (sqrt -1) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1))))))
(*.f64 (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x) (/.f64 y (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) (sqrt.f64 #s(literal -1 binary64))) x)
(* x (+ (sqrt -1) (+ (* -1/8 (/ (pow y 4) (* (pow x 4) (pow (sqrt -1) 3)))) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1)))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 y #s(literal 4 binary64)) (*.f64 (pow.f64 x #s(literal 4 binary64)) (sqrt.f64 #s(literal -1 binary64)))) #s(literal 1/8 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x) (/.f64 y (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) (sqrt.f64 #s(literal -1 binary64)))) x)
(* x (+ (sqrt -1) (+ (* -1/8 (/ (pow y 4) (* (pow x 4) (pow (sqrt -1) 3)))) (+ (* 1/16 (/ (pow y 6) (* (pow x 6) (pow (sqrt -1) 5)))) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1))))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 y #s(literal 4 binary64)) (*.f64 (pow.f64 x #s(literal 4 binary64)) (sqrt.f64 #s(literal -1 binary64)))) #s(literal 1/8 binary64) (+.f64 (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x) (/.f64 y (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) (/.f64 (*.f64 (pow.f64 y #s(literal 6 binary64)) #s(literal 1/16 binary64)) (*.f64 (pow.f64 x #s(literal 6 binary64)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 5 binary64))))) (sqrt.f64 #s(literal -1 binary64)))) x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(* (sqrt (/ 1 x)) (sqrt -1))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) x)))
(+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) y)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) x))))
(+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 5))) (* (pow y 2) (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1))))
(fma.f64 #s(literal 1/2 binary64) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) y) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) x))))
(+ (* -1/2 (* (sqrt (/ 1 (pow x 7))) (* (sqrt -1) (+ (* -1 (pow y 3)) (* 1/4 (* x (pow y 2))))))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 5))) (* (pow y 2) (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1)))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 7 binary64)))) (sqrt.f64 #s(literal -1 binary64))) (*.f64 (fma.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) x) y) y (neg.f64 (pow.f64 y #s(literal 3 binary64)))) #s(literal -1/2 binary64)) (fma.f64 #s(literal 1/2 binary64) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) y) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) x)))))
(* -1 (* (sqrt x) (pow (sqrt -1) 2)))
(sqrt.f64 x)
(* -1 (* x (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))))
(*.f64 (neg.f64 x) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x)))))
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2))))))
(*.f64 (neg.f64 x) (fma.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 y (/.f64 y #s(literal -1 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x))))))
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* 1/16 (* (sqrt (/ 1 (pow x 7))) (/ (pow y 3) (pow (sqrt -1) 4)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))))))
(*.f64 (neg.f64 x) (fma.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 y (/.f64 y #s(literal -1 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))) (fma.f64 (/.f64 (*.f64 (pow.f64 y #s(literal 3 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 7 binary64))))) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64))) #s(literal 1/16 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x)))))))
(* -1 (pow x 2))
(*.f64 (neg.f64 x) x)
(* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1))
(*.f64 (fma.f64 (/.f64 y x) (/.f64 y x) #s(literal -1 binary64)) (*.f64 x x))
(* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1))
(*.f64 (fma.f64 (/.f64 y x) (/.f64 y x) #s(literal -1 binary64)) (*.f64 x x))
(* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1))
(*.f64 (fma.f64 (/.f64 y x) (/.f64 y x) #s(literal -1 binary64)) (*.f64 x x))
(* -1 (* (sqrt x) (pow (sqrt -1) 2)))
(sqrt.f64 x)
(* -1 (* x (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))))
(*.f64 (neg.f64 x) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x)))))
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2))))))
(*.f64 (neg.f64 x) (fma.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 y (/.f64 y #s(literal -1 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x))))))
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* 1/16 (* (sqrt (/ 1 (pow x 7))) (/ (pow y 3) (pow (sqrt -1) 4)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))))))
(*.f64 (neg.f64 x) (fma.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 y (/.f64 y #s(literal -1 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))) (fma.f64 (/.f64 (*.f64 (pow.f64 y #s(literal 3 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 7 binary64))))) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64))) #s(literal 1/16 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x)))))))
(* -1 (* x (sqrt -1)))
(*.f64 (neg.f64 x) (sqrt.f64 #s(literal -1 binary64)))
(* -1 (* x (+ (sqrt -1) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1)))))))
(*.f64 (neg.f64 x) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x) (/.f64 y (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) (sqrt.f64 #s(literal -1 binary64))))
(* -1 (* x (+ (sqrt -1) (+ (* -1/8 (/ (pow y 4) (* (pow x 4) (pow (sqrt -1) 3)))) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1))))))))
(*.f64 (neg.f64 x) (fma.f64 (/.f64 (pow.f64 y #s(literal 4 binary64)) (*.f64 (pow.f64 x #s(literal 4 binary64)) (sqrt.f64 #s(literal -1 binary64)))) #s(literal 1/8 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x) (/.f64 y (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) (sqrt.f64 #s(literal -1 binary64)))))
(* -1 (* x (+ (sqrt -1) (+ (* -1/8 (/ (pow y 4) (* (pow x 4) (pow (sqrt -1) 3)))) (+ (* 1/16 (/ (pow y 6) (* (pow x 6) (pow (sqrt -1) 5)))) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1)))))))))
(*.f64 (neg.f64 x) (fma.f64 (/.f64 (pow.f64 y #s(literal 4 binary64)) (*.f64 (pow.f64 x #s(literal 4 binary64)) (sqrt.f64 #s(literal -1 binary64)))) #s(literal 1/8 binary64) (+.f64 (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x) (/.f64 y (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) (/.f64 (*.f64 (pow.f64 y #s(literal 6 binary64)) #s(literal 1/16 binary64)) (*.f64 (pow.f64 x #s(literal 6 binary64)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 5 binary64))))) (sqrt.f64 #s(literal -1 binary64)))))
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(* (sqrt (/ 1 x)) (sqrt -1))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) x)))
(+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) y)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) x))))
(+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (+ (* -1/2 (* (sqrt (/ 1 (pow x 5))) (* (pow y 2) (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1))))
(fma.f64 #s(literal -1/2 binary64) (fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) y) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) x))))
(+ (* -1 (/ (+ (* 1/2 (* (sqrt x) (* (pow y 2) (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 x)) (* (sqrt -1) (+ (* -1/4 (* x (pow y 2))) (pow y 3)))))) (pow x 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1))))
(fma.f64 #s(literal -1/2 binary64) (/.f64 (fma.f64 (*.f64 (*.f64 y y) (fma.f64 #s(literal -1/4 binary64) x y)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) x))) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) y) y) (sqrt.f64 x))) (pow.f64 x #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) y)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) x)))))

rewrite424.0ms (10%)

Memory
-6.8MiB live, 182.0MiB allocated
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01551
02550
18246
254236
3658536
0832536
Stop Event
iter limit
node limit
iter limit
Counts
7 → 223
Calls
Call 1
Inputs
#s(approx (sqrt (+ x y)) (sqrt.f64 y))
(sqrt.f64 y)
(fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))
(*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))))
(sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y)))
(*.f64 x x)
(sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x 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>

eval63.0ms (1.5%)

Memory
7.9MiB live, 80.8MiB allocated
Compiler

Compiled 8 522 to 1 211 computations (85.8% saved)

prune43.0ms (1%)

Memory
-17.4MiB live, 27.1MiB allocated
Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New3641365
Fresh000
Picked112
Done011
Total3653368
Accuracy
100.0%
Counts
368 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
49.3%
(*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))))
100.0%
(sqrt.f64 (+.f64 x y))
96.8%
#s(approx (sqrt (+ x y)) (sqrt.f64 y))
Compiler

Compiled 19 to 18 computations (5.3% saved)

simplify412.0ms (9.7%)

Memory
16.3MiB live, 131.9MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

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

Useful iterations: 1 (0.0ms)

IterNodesCost
01468
02065
12862
23862
35262
47562
516462
647662
791662
8153062
9235062
10316562
11363162
12373762
13378362
14380162
15606362
16676862
17741262
18799362
0800162
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))))
(sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)))
#s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))
(*.f64 y y)
y
(sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))
(/.f64 #s(literal -1 binary64) (-.f64 x y))
#s(literal -1 binary64)
(-.f64 x y)
x
Outputs
(*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))))
(*.f64 (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))))
(sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)))
#s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))
(*.f64 y y)
y
(sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))
(/.f64 #s(literal -1 binary64) (-.f64 x y))
#s(literal -1 binary64)
(-.f64 x y)
x

localize99.0ms (2.3%)

Memory
-5.5MiB live, 51.3MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.15234375
(sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))
accuracy0.2578125
(*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))))
accuracy0.5046446110198298
#s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))
accuracy30.72837467124487
(sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)))
Samples
49.0ms256×0valid
Compiler

Compiled 99 to 24 computations (75.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 15.0ms
ival-mult: 6.0ms (38.8% of total)
ival-sqrt: 4.0ms (25.9% of total)
ival-div: 2.0ms (12.9% of total)
ival-sub: 1.0ms (6.5% of total)
ival-add: 1.0ms (6.5% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series22.0ms (0.5%)

Memory
-26.7MiB live, 10.0MiB allocated
Counts
5 → 108
Calls
Call 1
Inputs
#s(alt (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())
#s(alt (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (patch (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) #<representation binary64>) () ())
#s(alt #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())
#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())
#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())
Outputs
#s(alt (* (sqrt x) (pow (sqrt -1) 2)) (taylor 0 y) (#s(alt (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/2 (* (sqrt (/ 1 x)) y)) (* (sqrt x) (pow (sqrt -1) 2))) (taylor 0 y) (#s(alt (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (+ (* y (+ (* -1/2 (sqrt (/ 1 x))) (* -1/8 (* (sqrt (/ 1 (pow x 3))) (/ y (pow (sqrt -1) 2)))))) (* (sqrt x) (pow (sqrt -1) 2))) (taylor 0 y) (#s(alt (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (+ (* y (+ (* -1/2 (sqrt (/ 1 x))) (* y (+ (* -1/8 (* (sqrt (/ 1 (pow x 3))) (/ 1 (pow (sqrt -1) 2)))) (* -1/16 (* (sqrt (/ 1 (pow x 5))) (/ y (pow (sqrt -1) 4)))))))) (* (sqrt x) (pow (sqrt -1) 2))) (taylor 0 y) (#s(alt (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt -1)) (taylor 0 y) (#s(alt (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (patch (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (/ (pow y 2) (* x (sqrt -1)))) (* x (sqrt -1))) (taylor 0 y) (#s(alt (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (patch (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (+ (* x (sqrt -1)) (* (pow y 2) (+ (* -1/8 (/ (pow y 2) (* (pow x 3) (pow (sqrt -1) 3)))) (* 1/2 (/ 1 (* x (sqrt -1))))))) (taylor 0 y) (#s(alt (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (patch (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (+ (* x (sqrt -1)) (* (pow y 2) (+ (* (pow y 2) (- (* 1/16 (/ (pow y 2) (* (pow x 5) (pow (sqrt -1) 5)))) (* 1/8 (/ 1 (* (pow x 3) (pow (sqrt -1) 3)))))) (* 1/2 (/ 1 (* x (sqrt -1))))))) (taylor 0 y) (#s(alt (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (patch (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* -1 (pow x 2)) (taylor 0 y) (#s(alt #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (pow x 2)) (pow y 2)) (taylor 0 y) (#s(alt #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (pow x 2)) (pow y 2)) (taylor 0 y) (#s(alt #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (pow x 2)) (pow y 2)) (taylor 0 y) (#s(alt #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (* -1 (* x x)) (* y y)) (*.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 (pow y 2) (taylor 0 y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* (sqrt (/ 1 x)) (sqrt -1)) (taylor 0 y) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1))) (taylor 0 y) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* y (+ (* 3/8 (* (sqrt (/ 1 (pow x 5))) (* y (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 (pow x 3))) (sqrt -1))))) (* (sqrt (/ 1 x)) (sqrt -1))) (taylor 0 y) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* y (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (sqrt -1))) (* y (+ (* 5/16 (* (sqrt (/ 1 (pow x 7))) (* y (sqrt -1)))) (* 3/8 (* (sqrt (/ 1 (pow x 5))) (sqrt -1))))))) (* (sqrt (/ 1 x)) (sqrt -1))) (taylor 0 y) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (* (sqrt y) (pow (sqrt -1) 2)) (taylor inf y) (#s(alt (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))) (taylor inf y) (#s(alt (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (+ (* -1/8 (* (/ (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))) (taylor inf y) (#s(alt (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (+ (* -1/8 (* (/ (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (+ (* -1/16 (* (/ (pow x 3) (pow (sqrt -1) 4)) (sqrt (/ 1 (pow y 7))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))) (taylor inf y) (#s(alt (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt y (taylor inf y) (#s(alt (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (patch (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (* -1/2 (/ (pow x 2) (pow y 2))))) (taylor inf y) (#s(alt (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (patch (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (+ (* -1/2 (/ (pow x 2) (pow y 2))) (* -1/8 (/ (pow x 4) (pow y 4)))))) (taylor inf y) (#s(alt (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (patch (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (+ (* -1/2 (/ (pow x 2) (pow y 2))) (+ (* -1/8 (/ (pow x 4) (pow y 4))) (* -1/16 (/ (pow x 6) (pow y 6))))))) (taylor inf y) (#s(alt (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (patch (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor inf y) (#s(alt #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2))))) (taylor inf y) (#s(alt #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2))))) (taylor inf y) (#s(alt #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2))))) (taylor inf y) (#s(alt #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (* -1 (* x x)) (* y y)) (*.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 (pow y 2) (taylor inf y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)) (taylor inf y) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))) (taylor inf y) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (+ (* -1/2 (* (pow x 2) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))) (taylor inf y) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow y 7))) (+ (* 1/4 (/ (* (pow x 2) y) (pow (sqrt -1) 2))) (pow x 3)))) (+ (* -1/2 (* (pow x 2) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))) (taylor inf y) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt y) (pow (sqrt -1) 2))) (taylor -inf y) (#s(alt (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))) (taylor -inf y) (#s(alt (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (+ (* -1/8 (* (* (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))) (taylor -inf y) (#s(alt (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (+ (* -1/8 (* (* (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (+ (* -1/16 (* (* (pow x 3) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 7))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))))) (taylor -inf y) (#s(alt (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* -1 y) (taylor -inf y) (#s(alt (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (patch (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (* -1/2 (/ (pow x 2) (pow y 2)))))) (taylor -inf y) (#s(alt (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (patch (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (+ (* -1/2 (/ (pow x 2) (pow y 2))) (* -1/8 (/ (pow x 4) (pow y 4))))))) (taylor -inf y) (#s(alt (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (patch (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ 1 (+ (* -1/2 (/ (pow x 2) (pow y 2))) (+ (* -1/8 (/ (pow x 4) (pow y 4))) (* -1/16 (/ (pow x 6) (pow y 6)))))))) (taylor -inf y) (#s(alt (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (patch (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor -inf y) (#s(alt #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2))))) (taylor -inf y) (#s(alt #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2))))) (taylor -inf y) (#s(alt #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2))))) (taylor -inf y) (#s(alt #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (* -1 (* x x)) (* y y)) (*.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 (pow y 2) (taylor -inf y) (#s(alt (*.f64 y y) (patch (*.f64 y y) #<representation binary64>) () ())) ())
#s(alt (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)) (taylor -inf y) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))) (taylor -inf y) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (+ (* -1/2 (* (* (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))) (taylor -inf y) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (/ (+ (* 1/2 (* (sqrt (/ 1 y)) (* (pow (sqrt -1) 2) (+ (* -1/4 (* (pow x 2) y)) (pow x 3))))) (* 1/2 (* (* (pow x 2) (pow (sqrt -1) 2)) (sqrt y)))) (pow y 3))) (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))) (taylor -inf y) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (* (sqrt y) (pow (sqrt -1) 2)) (taylor 0 x) (#s(alt (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/2 (* x (sqrt (/ 1 y)))) (* (sqrt y) (pow (sqrt -1) 2))) (taylor 0 x) (#s(alt (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (+ (* x (+ (* -1/2 (sqrt (/ 1 y))) (* -1/8 (* (/ x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))))) (* (sqrt y) (pow (sqrt -1) 2))) (taylor 0 x) (#s(alt (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (+ (* x (+ (* -1/2 (sqrt (/ 1 y))) (* x (+ (* -1/8 (* (sqrt (/ 1 (pow y 3))) (/ 1 (pow (sqrt -1) 2)))) (* -1/16 (* (/ x (pow (sqrt -1) 4)) (sqrt (/ 1 (pow y 5))))))))) (* (sqrt y) (pow (sqrt -1) 2))) (taylor 0 x) (#s(alt (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt y (taylor 0 x) (#s(alt (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (patch (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (+ y (* -1/2 (/ (pow x 2) y))) (taylor 0 x) (#s(alt (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (patch (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (+ y (* (pow x 2) (- (* -1/8 (/ (pow x 2) (pow y 3))) (* 1/2 (/ 1 y))))) (taylor 0 x) (#s(alt (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (patch (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (+ y (* (pow x 2) (- (* (pow x 2) (- (* -1/16 (/ (pow x 2) (pow y 5))) (* 1/8 (/ 1 (pow y 3))))) (* 1/2 (/ 1 y))))) (taylor 0 x) (#s(alt (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (patch (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (pow y 2) (taylor 0 x) (#s(alt #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (pow x 2)) (pow y 2)) (taylor 0 x) (#s(alt #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (pow x 2)) (pow y 2)) (taylor 0 x) (#s(alt #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (pow x 2)) (pow y 2)) (taylor 0 x) (#s(alt #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)) (taylor 0 x) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))) (taylor 0 x) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* x (+ (* -1/2 (sqrt (/ 1 (pow y 3)))) (* -1/2 (* (* x (+ (* 1/4 (/ 1 (* (pow y 3) (pow (sqrt -1) 2)))) (/ 1 (pow y 3)))) (sqrt y))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))) (taylor 0 x) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* x (+ (* -1/2 (sqrt (/ 1 (pow y 3)))) (* x (+ (* -1/2 (* (sqrt y) (+ (* 1/4 (/ 1 (* (pow y 3) (pow (sqrt -1) 2)))) (/ 1 (pow y 3))))) (* -1/2 (* (* x (+ (* 1/2 (/ (+ (* 1/4 (/ 1 (* (pow y 3) (pow (sqrt -1) 2)))) (/ 1 (pow y 3))) (* y (pow (sqrt -1) 2)))) (/ 1 (pow y 4)))) (sqrt y))))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))) (taylor 0 x) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (* (sqrt x) (pow (sqrt -1) 2)) (taylor inf x) (#s(alt (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))) (taylor inf x) (#s(alt (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) y)) (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2))))) (taylor inf x) (#s(alt (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) y)) (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow x 7))) (/ (pow y 3) (pow (sqrt -1) 4)))) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))))) (taylor inf x) (#s(alt (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* x (sqrt -1)) (taylor inf x) (#s(alt (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (patch (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (sqrt -1) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1)))))) (taylor inf x) (#s(alt (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (patch (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (sqrt -1) (+ (* -1/8 (/ (pow y 4) (* (pow x 4) (pow (sqrt -1) 3)))) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1))))))) (taylor inf x) (#s(alt (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (patch (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* x (+ (sqrt -1) (+ (* -1/8 (/ (pow y 4) (* (pow x 4) (pow (sqrt -1) 3)))) (+ (* 1/16 (/ (pow y 6) (* (pow x 6) (pow (sqrt -1) 5)))) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1)))))))) (taylor inf x) (#s(alt (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (patch (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* -1 (pow x 2)) (taylor inf x) (#s(alt #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1)) (taylor inf x) (#s(alt #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1)) (taylor inf x) (#s(alt #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1)) (taylor inf x) (#s(alt #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (sqrt (/ 1 x)) (sqrt -1)) (taylor inf x) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1))) (taylor inf x) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 5))) (* (pow y 2) (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1)))) (taylor inf x) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/2 (* (sqrt (/ 1 (pow x 7))) (* (sqrt -1) (+ (* -1 (pow y 3)) (* 1/4 (* x (pow y 2))))))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 5))) (* (pow y 2) (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1))))) (taylor inf x) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (sqrt x) (pow (sqrt -1) 2))) (taylor -inf x) (#s(alt (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2))))) (taylor -inf x) (#s(alt (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))))) (taylor -inf x) (#s(alt (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* 1/16 (* (sqrt (/ 1 (pow x 7))) (/ (pow y 3) (pow (sqrt -1) 4)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2))))))) (taylor -inf x) (#s(alt (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) (patch (*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y)))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (sqrt -1))) (taylor -inf x) (#s(alt (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (patch (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (sqrt -1) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1))))))) (taylor -inf x) (#s(alt (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (patch (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (sqrt -1) (+ (* -1/8 (/ (pow y 4) (* (pow x 4) (pow (sqrt -1) 3)))) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1)))))))) (taylor -inf x) (#s(alt (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (patch (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (+ (sqrt -1) (+ (* -1/8 (/ (pow y 4) (* (pow x 4) (pow (sqrt -1) 3)))) (+ (* 1/16 (/ (pow y 6) (* (pow x 6) (pow (sqrt -1) 5)))) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1))))))))) (taylor -inf x) (#s(alt (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (patch (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) #<representation binary64>) () ())) ())
#s(alt (* -1 (pow x 2)) (taylor -inf x) (#s(alt #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1)) (taylor -inf x) (#s(alt #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1)) (taylor -inf x) (#s(alt #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1)) (taylor -inf x) (#s(alt #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) (patch #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)) #<representation binary64>) () ())) ())
#s(alt (* (sqrt (/ 1 x)) (sqrt -1)) (taylor -inf x) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1))) (taylor -inf x) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (+ (* -1/2 (* (sqrt (/ 1 (pow x 5))) (* (pow y 2) (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1)))) (taylor -inf x) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
#s(alt (+ (* -1 (/ (+ (* 1/2 (* (sqrt x) (* (pow y 2) (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 x)) (* (sqrt -1) (+ (* -1/4 (* x (pow y 2))) (pow y 3)))))) (pow x 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1)))) (taylor -inf x) (#s(alt (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) (patch (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))) #<representation binary64>) () ())) ())
Calls

6 calls:

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

simplify496.0ms (11.7%)

Memory
11.3MiB live, 167.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03592286
111232014
241941920
082651810
Stop Event
iter limit
node limit
Counts
108 → 106
Calls
Call 1
Inputs
(* (sqrt x) (pow (sqrt -1) 2))
(+ (* -1/2 (* (sqrt (/ 1 x)) y)) (* (sqrt x) (pow (sqrt -1) 2)))
(+ (* y (+ (* -1/2 (sqrt (/ 1 x))) (* -1/8 (* (sqrt (/ 1 (pow x 3))) (/ y (pow (sqrt -1) 2)))))) (* (sqrt x) (pow (sqrt -1) 2)))
(+ (* y (+ (* -1/2 (sqrt (/ 1 x))) (* y (+ (* -1/8 (* (sqrt (/ 1 (pow x 3))) (/ 1 (pow (sqrt -1) 2)))) (* -1/16 (* (sqrt (/ 1 (pow x 5))) (/ y (pow (sqrt -1) 4)))))))) (* (sqrt x) (pow (sqrt -1) 2)))
(* x (sqrt -1))
(+ (* 1/2 (/ (pow y 2) (* x (sqrt -1)))) (* x (sqrt -1)))
(+ (* x (sqrt -1)) (* (pow y 2) (+ (* -1/8 (/ (pow y 2) (* (pow x 3) (pow (sqrt -1) 3)))) (* 1/2 (/ 1 (* x (sqrt -1)))))))
(+ (* x (sqrt -1)) (* (pow y 2) (+ (* (pow y 2) (- (* 1/16 (/ (pow y 2) (* (pow x 5) (pow (sqrt -1) 5)))) (* 1/8 (/ 1 (* (pow x 3) (pow (sqrt -1) 3)))))) (* 1/2 (/ 1 (* x (sqrt -1)))))))
(* -1 (pow x 2))
(+ (* -1 (pow x 2)) (pow y 2))
(+ (* -1 (pow x 2)) (pow y 2))
(+ (* -1 (pow x 2)) (pow y 2))
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(* (sqrt (/ 1 x)) (sqrt -1))
(+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1)))
(+ (* y (+ (* 3/8 (* (sqrt (/ 1 (pow x 5))) (* y (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 (pow x 3))) (sqrt -1))))) (* (sqrt (/ 1 x)) (sqrt -1)))
(+ (* y (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (sqrt -1))) (* y (+ (* 5/16 (* (sqrt (/ 1 (pow x 7))) (* y (sqrt -1)))) (* 3/8 (* (sqrt (/ 1 (pow x 5))) (sqrt -1))))))) (* (sqrt (/ 1 x)) (sqrt -1)))
(* (sqrt y) (pow (sqrt -1) 2))
(* y (+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))
(* y (+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (+ (* -1/8 (* (/ (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))
(* y (+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (+ (* -1/8 (* (/ (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (+ (* -1/16 (* (/ (pow x 3) (pow (sqrt -1) 4)) (sqrt (/ 1 (pow y 7))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))))
y
(* y (+ 1 (* -1/2 (/ (pow x 2) (pow y 2)))))
(* y (+ 1 (+ (* -1/2 (/ (pow x 2) (pow y 2))) (* -1/8 (/ (pow x 4) (pow y 4))))))
(* y (+ 1 (+ (* -1/2 (/ (pow x 2) (pow y 2))) (+ (* -1/8 (/ (pow x 4) (pow y 4))) (* -1/16 (/ (pow x 6) (pow y 6)))))))
(pow y 2)
(* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2)))))
(* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2)))))
(* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2)))))
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(* (sqrt (/ 1 y)) (pow (sqrt -1) 2))
(+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))
(+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (+ (* -1/2 (* (pow x 2) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))
(+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow y 7))) (+ (* 1/4 (/ (* (pow x 2) y) (pow (sqrt -1) 2))) (pow x 3)))) (+ (* -1/2 (* (pow x 2) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))
(* -1 (* (sqrt y) (pow (sqrt -1) 2)))
(* -1 (* y (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))
(* -1 (* y (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (+ (* -1/8 (* (* (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))))
(* -1 (* y (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (+ (* -1/8 (* (* (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (+ (* -1/16 (* (* (pow x 3) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 7))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))))
(* -1 y)
(* -1 (* y (+ 1 (* -1/2 (/ (pow x 2) (pow y 2))))))
(* -1 (* y (+ 1 (+ (* -1/2 (/ (pow x 2) (pow y 2))) (* -1/8 (/ (pow x 4) (pow y 4)))))))
(* -1 (* y (+ 1 (+ (* -1/2 (/ (pow x 2) (pow y 2))) (+ (* -1/8 (/ (pow x 4) (pow y 4))) (* -1/16 (/ (pow x 6) (pow y 6))))))))
(pow y 2)
(* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2)))))
(* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2)))))
(* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2)))))
(pow y 2)
(pow y 2)
(pow y 2)
(pow y 2)
(* (sqrt (/ 1 y)) (pow (sqrt -1) 2))
(+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))
(+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (+ (* -1/2 (* (* (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))
(+ (* -1 (/ (+ (* 1/2 (* (sqrt (/ 1 y)) (* (pow (sqrt -1) 2) (+ (* -1/4 (* (pow x 2) y)) (pow x 3))))) (* 1/2 (* (* (pow x 2) (pow (sqrt -1) 2)) (sqrt y)))) (pow y 3))) (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))
(* (sqrt y) (pow (sqrt -1) 2))
(+ (* -1/2 (* x (sqrt (/ 1 y)))) (* (sqrt y) (pow (sqrt -1) 2)))
(+ (* x (+ (* -1/2 (sqrt (/ 1 y))) (* -1/8 (* (/ x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))))) (* (sqrt y) (pow (sqrt -1) 2)))
(+ (* x (+ (* -1/2 (sqrt (/ 1 y))) (* x (+ (* -1/8 (* (sqrt (/ 1 (pow y 3))) (/ 1 (pow (sqrt -1) 2)))) (* -1/16 (* (/ x (pow (sqrt -1) 4)) (sqrt (/ 1 (pow y 5))))))))) (* (sqrt y) (pow (sqrt -1) 2)))
y
(+ y (* -1/2 (/ (pow x 2) y)))
(+ y (* (pow x 2) (- (* -1/8 (/ (pow x 2) (pow y 3))) (* 1/2 (/ 1 y)))))
(+ y (* (pow x 2) (- (* (pow x 2) (- (* -1/16 (/ (pow x 2) (pow y 5))) (* 1/8 (/ 1 (pow y 3))))) (* 1/2 (/ 1 y)))))
(pow y 2)
(+ (* -1 (pow x 2)) (pow y 2))
(+ (* -1 (pow x 2)) (pow y 2))
(+ (* -1 (pow x 2)) (pow y 2))
(* (sqrt (/ 1 y)) (pow (sqrt -1) 2))
(+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))
(+ (* x (+ (* -1/2 (sqrt (/ 1 (pow y 3)))) (* -1/2 (* (* x (+ (* 1/4 (/ 1 (* (pow y 3) (pow (sqrt -1) 2)))) (/ 1 (pow y 3)))) (sqrt y))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))
(+ (* x (+ (* -1/2 (sqrt (/ 1 (pow y 3)))) (* x (+ (* -1/2 (* (sqrt y) (+ (* 1/4 (/ 1 (* (pow y 3) (pow (sqrt -1) 2)))) (/ 1 (pow y 3))))) (* -1/2 (* (* x (+ (* 1/2 (/ (+ (* 1/4 (/ 1 (* (pow y 3) (pow (sqrt -1) 2)))) (/ 1 (pow y 3))) (* y (pow (sqrt -1) 2)))) (/ 1 (pow y 4)))) (sqrt y))))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))
(* (sqrt x) (pow (sqrt -1) 2))
(* x (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2))))
(* x (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) y)) (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))))
(* x (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) y)) (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow x 7))) (/ (pow y 3) (pow (sqrt -1) 4)))) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2))))))
(* x (sqrt -1))
(* x (+ (sqrt -1) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1))))))
(* x (+ (sqrt -1) (+ (* -1/8 (/ (pow y 4) (* (pow x 4) (pow (sqrt -1) 3)))) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1)))))))
(* x (+ (sqrt -1) (+ (* -1/8 (/ (pow y 4) (* (pow x 4) (pow (sqrt -1) 3)))) (+ (* 1/16 (/ (pow y 6) (* (pow x 6) (pow (sqrt -1) 5)))) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1))))))))
(* -1 (pow x 2))
(* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1))
(* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1))
(* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1))
(* (sqrt (/ 1 x)) (sqrt -1))
(+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1)))
(+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 5))) (* (pow y 2) (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1))))
(+ (* -1/2 (* (sqrt (/ 1 (pow x 7))) (* (sqrt -1) (+ (* -1 (pow y 3)) (* 1/4 (* x (pow y 2))))))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 5))) (* (pow y 2) (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1)))))
(* -1 (* (sqrt x) (pow (sqrt -1) 2)))
(* -1 (* x (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))))
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2))))))
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* 1/16 (* (sqrt (/ 1 (pow x 7))) (/ (pow y 3) (pow (sqrt -1) 4)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))))))
(* -1 (* x (sqrt -1)))
(* -1 (* x (+ (sqrt -1) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1)))))))
(* -1 (* x (+ (sqrt -1) (+ (* -1/8 (/ (pow y 4) (* (pow x 4) (pow (sqrt -1) 3)))) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1))))))))
(* -1 (* x (+ (sqrt -1) (+ (* -1/8 (/ (pow y 4) (* (pow x 4) (pow (sqrt -1) 3)))) (+ (* 1/16 (/ (pow y 6) (* (pow x 6) (pow (sqrt -1) 5)))) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1)))))))))
(* -1 (pow x 2))
(* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1))
(* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1))
(* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1))
(* (sqrt (/ 1 x)) (sqrt -1))
(+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1)))
(+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (+ (* -1/2 (* (sqrt (/ 1 (pow x 5))) (* (pow y 2) (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1))))
(+ (* -1 (/ (+ (* 1/2 (* (sqrt x) (* (pow y 2) (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 x)) (* (sqrt -1) (+ (* -1/4 (* x (pow y 2))) (pow y 3)))))) (pow x 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1))))
Outputs
(* (sqrt x) (pow (sqrt -1) 2))
(neg.f64 (sqrt.f64 x))
(+ (* -1/2 (* (sqrt (/ 1 x)) y)) (* (sqrt x) (pow (sqrt -1) 2)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) x)) (neg.f64 (sqrt.f64 x)))
(+ (* y (+ (* -1/2 (sqrt (/ 1 x))) (* -1/8 (* (sqrt (/ 1 (pow x 3))) (/ y (pow (sqrt -1) 2)))))) (* (sqrt x) (pow (sqrt -1) 2)))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64))))) y (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x)) #s(literal -1/2 binary64))) y (neg.f64 (sqrt.f64 x)))
(+ (* y (+ (* -1/2 (sqrt (/ 1 x))) (* y (+ (* -1/8 (* (sqrt (/ 1 (pow x 3))) (/ 1 (pow (sqrt -1) 2)))) (* -1/16 (* (sqrt (/ 1 (pow x 5))) (/ y (pow (sqrt -1) 4)))))))) (* (sqrt x) (pow (sqrt -1) 2)))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/16 binary64) (/.f64 y (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))) (*.f64 #s(literal 1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))))) y (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x)) #s(literal -1/2 binary64))) y (neg.f64 (sqrt.f64 x)))
(* x (sqrt -1))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) x)
(+ (* 1/2 (/ (pow y 2) (* x (sqrt -1)))) (* x (sqrt -1)))
(fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x) (/.f64 y (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))
(+ (* x (sqrt -1)) (* (pow y 2) (+ (* -1/8 (/ (pow y 2) (* (pow x 3) (pow (sqrt -1) 3)))) (* 1/2 (/ 1 (* x (sqrt -1)))))))
(fma.f64 (fma.f64 (/.f64 (*.f64 y y) (*.f64 (pow.f64 x #s(literal 3 binary64)) (sqrt.f64 #s(literal -1 binary64)))) #s(literal 1/8 binary64) (/.f64 #s(literal 1/2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))) (*.f64 y y) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x))
(+ (* x (sqrt -1)) (* (pow y 2) (+ (* (pow y 2) (- (* 1/16 (/ (pow y 2) (* (pow x 5) (pow (sqrt -1) 5)))) (* 1/8 (/ 1 (* (pow x 3) (pow (sqrt -1) 3)))))) (* 1/2 (/ 1 (* x (sqrt -1)))))))
(fma.f64 (pow.f64 y #s(literal 4 binary64)) (fma.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) y) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 5 binary64))) (/.f64 y (pow.f64 x #s(literal 5 binary64))) (/.f64 #s(literal -1/8 binary64) (*.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64))) (pow.f64 x #s(literal 3 binary64))))) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x) (/.f64 y (sqrt.f64 #s(literal -1 binary64))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)))
(* -1 (pow x 2))
(*.f64 (neg.f64 x) x)
(+ (* -1 (pow x 2)) (pow y 2))
(*.f64 (+.f64 y x) (-.f64 y x))
(+ (* -1 (pow x 2)) (pow y 2))
(*.f64 (+.f64 y x) (-.f64 y x))
(+ (* -1 (pow x 2)) (pow y 2))
(*.f64 (+.f64 y x) (-.f64 y x))
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(* (sqrt (/ 1 x)) (sqrt -1))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x)) (sqrt.f64 #s(literal -1 binary64)))
(+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1)))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) x))))
(+ (* y (+ (* 3/8 (* (sqrt (/ 1 (pow x 5))) (* y (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 (pow x 3))) (sqrt -1))))) (* (sqrt (/ 1 x)) (sqrt -1)))
(fma.f64 (*.f64 y (sqrt.f64 #s(literal -1 binary64))) (fma.f64 y (*.f64 #s(literal 3/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64))))) (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x)) (sqrt.f64 #s(literal -1 binary64))))
(+ (* y (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (sqrt -1))) (* y (+ (* 5/16 (* (sqrt (/ 1 (pow x 7))) (* y (sqrt -1)))) (* 3/8 (* (sqrt (/ 1 (pow x 5))) (sqrt -1))))))) (* (sqrt (/ 1 x)) (sqrt -1)))
(fma.f64 (*.f64 (*.f64 y (sqrt.f64 #s(literal -1 binary64))) (fma.f64 y (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 7 binary64)))) #s(literal 5/16 binary64)) (*.f64 #s(literal 3/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64))))))) y (*.f64 (sqrt.f64 #s(literal -1 binary64)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) x)))))
(* (sqrt y) (pow (sqrt -1) 2))
(neg.f64 (sqrt.f64 y))
(* y (+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))) y)
(* y (+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (+ (* -1/8 (* (/ (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (/.f64 (*.f64 x x) #s(literal -1 binary64))) #s(literal -1/8 binary64) (fma.f64 (*.f64 #s(literal -1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))) y)
(* y (+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (+ (* -1/8 (* (/ (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (+ (* -1/16 (* (/ (pow x 3) (pow (sqrt -1) 4)) (sqrt (/ 1 (pow y 7))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (/.f64 (*.f64 x x) #s(literal -1 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 #s(literal -1/16 binary64) (pow.f64 x #s(literal 3 binary64))) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 7 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))))) y)
y
(* y (+ 1 (* -1/2 (/ (pow x 2) (pow y 2)))))
(fma.f64 (/.f64 y y) (*.f64 (/.f64 (*.f64 x x) y) #s(literal -1/2 binary64)) y)
(* y (+ 1 (+ (* -1/2 (/ (pow x 2) (pow y 2))) (* -1/8 (/ (pow x 4) (pow y 4))))))
(fma.f64 (fma.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) x) y) (/.f64 x y) (/.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -1/8 binary64)) (pow.f64 y #s(literal 4 binary64)))) y y)
(* y (+ 1 (+ (* -1/2 (/ (pow x 2) (pow y 2))) (+ (* -1/8 (/ (pow x 4) (pow y 4))) (* -1/16 (/ (pow x 6) (pow y 6)))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 x #s(literal 6 binary64)) (pow.f64 y #s(literal 6 binary64))) #s(literal -1/16 binary64) (fma.f64 (/.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) x) y) (/.f64 x y) #s(literal 1 binary64)))) y)
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2)))))
(*.f64 (fma.f64 (/.f64 (neg.f64 x) y) (/.f64 x y) #s(literal 1 binary64)) (*.f64 y y))
(* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2)))))
(*.f64 (fma.f64 (/.f64 (neg.f64 x) y) (/.f64 x y) #s(literal 1 binary64)) (*.f64 y y))
(* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2)))))
(*.f64 (fma.f64 (/.f64 (neg.f64 x) y) (/.f64 x y) #s(literal 1 binary64)) (*.f64 y y))
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(* (sqrt (/ 1 y)) (pow (sqrt -1) 2))
(neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))
(+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))
(+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (+ (* -1/2 (* (pow x 2) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))
(fma.f64 #s(literal -1/2 binary64) (*.f64 x (+.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) x))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))
(+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (+ (* -1/2 (* (sqrt (/ 1 (pow y 7))) (+ (* 1/4 (/ (* (pow x 2) y) (pow (sqrt -1) 2))) (pow x 3)))) (+ (* -1/2 (* (pow x 2) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))
(fma.f64 #s(literal -1/2 binary64) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) x (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (/.f64 y #s(literal -1 binary64)) #s(literal 1/4 binary64) x)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 7 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (*.f64 x x)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))
(* -1 (* (sqrt y) (pow (sqrt -1) 2)))
(sqrt.f64 y)
(* -1 (* y (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))
(*.f64 (neg.f64 y) (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))))
(* -1 (* y (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (+ (* -1/8 (* (* (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))))
(*.f64 (neg.f64 y) (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 x x)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))))
(* -1 (* y (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (+ (* -1/8 (* (* (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (+ (* -1/16 (* (* (pow x 3) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 7))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))))))
(*.f64 (neg.f64 y) (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 x #s(literal 3 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 7 binary64)))) (fma.f64 (*.f64 #s(literal 1/8 binary64) (*.f64 x x)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))))))
(* -1 y)
(neg.f64 y)
(* -1 (* y (+ 1 (* -1/2 (/ (pow x 2) (pow y 2))))))
(*.f64 (neg.f64 y) (fma.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) x) y) (/.f64 x y) #s(literal 1 binary64)))
(* -1 (* y (+ 1 (+ (* -1/2 (/ (pow x 2) (pow y 2))) (* -1/8 (/ (pow x 4) (pow y 4)))))))
(*.f64 (neg.f64 y) (fma.f64 (/.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) x) y) (/.f64 x y) #s(literal 1 binary64))))
(* -1 (* y (+ 1 (+ (* -1/2 (/ (pow x 2) (pow y 2))) (+ (* -1/8 (/ (pow x 4) (pow y 4))) (* -1/16 (/ (pow x 6) (pow y 6))))))))
(*.f64 (neg.f64 y) (fma.f64 (/.f64 (pow.f64 x #s(literal 6 binary64)) (pow.f64 y #s(literal 6 binary64))) #s(literal -1/16 binary64) (fma.f64 (/.f64 (pow.f64 x #s(literal 4 binary64)) (pow.f64 y #s(literal 4 binary64))) #s(literal -1/8 binary64) (fma.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) x) y) (/.f64 x y) #s(literal 1 binary64)))))
(pow y 2)
(*.f64 y y)
(* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2)))))
(*.f64 (fma.f64 (/.f64 (neg.f64 x) y) (/.f64 x y) #s(literal 1 binary64)) (*.f64 y y))
(* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2)))))
(*.f64 (fma.f64 (/.f64 (neg.f64 x) y) (/.f64 x y) #s(literal 1 binary64)) (*.f64 y y))
(* (pow y 2) (+ 1 (* -1 (/ (pow x 2) (pow y 2)))))
(*.f64 (fma.f64 (/.f64 (neg.f64 x) y) (/.f64 x y) #s(literal 1 binary64)) (*.f64 y y))
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(pow y 2)
(*.f64 y y)
(* (sqrt (/ 1 y)) (pow (sqrt -1) 2))
(neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))
(+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))
(+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (+ (* -1/2 (* (* (pow x 2) (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 5))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))
(fma.f64 #s(literal -1/2 binary64) (*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) x)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))
(+ (* -1 (/ (+ (* 1/2 (* (sqrt (/ 1 y)) (* (pow (sqrt -1) 2) (+ (* -1/4 (* (pow x 2) y)) (pow x 3))))) (* 1/2 (* (* (pow x 2) (pow (sqrt -1) 2)) (sqrt y)))) (pow y 3))) (+ (* -1/2 (* (* x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2))))
(fma.f64 (/.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 #s(literal 1/4 binary64) y (neg.f64 x))) (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (*.f64 (neg.f64 (sqrt.f64 y)) (*.f64 x x))) (pow.f64 y #s(literal 3 binary64))) #s(literal -1/2 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))))
(* (sqrt y) (pow (sqrt -1) 2))
(neg.f64 (sqrt.f64 y))
(+ (* -1/2 (* x (sqrt (/ 1 y)))) (* (sqrt y) (pow (sqrt -1) 2)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) (neg.f64 (sqrt.f64 y)))
(+ (* x (+ (* -1/2 (sqrt (/ 1 y))) (* -1/8 (* (/ x (pow (sqrt -1) 2)) (sqrt (/ 1 (pow y 3))))))) (* (sqrt y) (pow (sqrt -1) 2)))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) #s(literal 1/8 binary64)) x (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) #s(literal -1/2 binary64))) x (neg.f64 (sqrt.f64 y)))
(+ (* x (+ (* -1/2 (sqrt (/ 1 y))) (* x (+ (* -1/8 (* (sqrt (/ 1 (pow y 3))) (/ 1 (pow (sqrt -1) 2)))) (* -1/16 (* (/ x (pow (sqrt -1) 4)) (sqrt (/ 1 (pow y 5))))))))) (* (sqrt y) (pow (sqrt -1) 2)))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (/.f64 x (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64))) #s(literal -1/16 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) #s(literal 1/8 binary64))) x (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)) #s(literal -1/2 binary64))) x (neg.f64 (sqrt.f64 y)))
y
(+ y (* -1/2 (/ (pow x 2) y)))
(fma.f64 (/.f64 (*.f64 x x) y) #s(literal -1/2 binary64) y)
(+ y (* (pow x 2) (- (* -1/8 (/ (pow x 2) (pow y 3))) (* 1/2 (/ 1 y)))))
(fma.f64 (fma.f64 (*.f64 x (/.f64 x (pow.f64 y #s(literal 3 binary64)))) #s(literal -1/8 binary64) (/.f64 #s(literal -1/2 binary64) y)) (*.f64 x x) y)
(+ y (* (pow x 2) (- (* (pow x 2) (- (* -1/16 (/ (pow x 2) (pow y 5))) (* 1/8 (/ 1 (pow y 3))))) (* 1/2 (/ 1 y)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 x (/.f64 x (pow.f64 y #s(literal 5 binary64)))) #s(literal -1/16 binary64) (/.f64 #s(literal -1/8 binary64) (pow.f64 y #s(literal 3 binary64)))) (*.f64 x x) (/.f64 #s(literal -1/2 binary64) y)) (*.f64 x x) y)
(pow y 2)
(*.f64 y y)
(+ (* -1 (pow x 2)) (pow y 2))
(*.f64 (+.f64 y x) (-.f64 y x))
(+ (* -1 (pow x 2)) (pow y 2))
(*.f64 (+.f64 y x) (-.f64 y x))
(+ (* -1 (pow x 2)) (pow y 2))
(*.f64 (+.f64 y x) (-.f64 y x))
(* (sqrt (/ 1 y)) (pow (sqrt -1) 2))
(neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y)))
(+ (* -1/2 (* x (sqrt (/ 1 (pow y 3))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) x) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))
(+ (* x (+ (* -1/2 (sqrt (/ 1 (pow y 3)))) (* -1/2 (* (* x (+ (* 1/4 (/ 1 (* (pow y 3) (pow (sqrt -1) 2)))) (/ 1 (pow y 3)))) (sqrt y))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) x) (fma.f64 (fma.f64 (/.f64 x (pow.f64 y #s(literal 3 binary64))) #s(literal -1/4 binary64) (/.f64 x (pow.f64 y #s(literal 3 binary64)))) (sqrt.f64 y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))
(+ (* x (+ (* -1/2 (sqrt (/ 1 (pow y 3)))) (* x (+ (* -1/2 (* (sqrt y) (+ (* 1/4 (/ 1 (* (pow y 3) (pow (sqrt -1) 2)))) (/ 1 (pow y 3))))) (* -1/2 (* (* x (+ (* 1/2 (/ (+ (* 1/4 (/ 1 (* (pow y 3) (pow (sqrt -1) 2)))) (/ 1 (pow y 3))) (* y (pow (sqrt -1) 2)))) (/ 1 (pow y 4)))) (sqrt y))))))) (* (sqrt (/ 1 y)) (pow (sqrt -1) 2)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (fma.f64 (*.f64 (sqrt.f64 y) (fma.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal -1/4 binary64) (pow.f64 y #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))) y) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 4 binary64)))) x (+.f64 (/.f64 #s(literal -1/4 binary64) (pow.f64 y #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))))) x (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64)))))) x (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) y))))
(* (sqrt x) (pow (sqrt -1) 2))
(neg.f64 (sqrt.f64 x))
(* x (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x)))) x)
(* x (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) y)) (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 y (/.f64 y #s(literal -1 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x))))) x)
(* x (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) y)) (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* -1/16 (* (sqrt (/ 1 (pow x 7))) (/ (pow y 3) (pow (sqrt -1) 4)))) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2))))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 y (/.f64 y #s(literal -1 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))) (fma.f64 (*.f64 (/.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 7 binary64))))) #s(literal -1/16 binary64) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x)))))) x)
(* x (sqrt -1))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) x)
(* x (+ (sqrt -1) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1))))))
(*.f64 (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x) (/.f64 y (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) (sqrt.f64 #s(literal -1 binary64))) x)
(* x (+ (sqrt -1) (+ (* -1/8 (/ (pow y 4) (* (pow x 4) (pow (sqrt -1) 3)))) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1)))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 y #s(literal 4 binary64)) (*.f64 (pow.f64 x #s(literal 4 binary64)) (sqrt.f64 #s(literal -1 binary64)))) #s(literal 1/8 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x) (/.f64 y (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) (sqrt.f64 #s(literal -1 binary64)))) x)
(* x (+ (sqrt -1) (+ (* -1/8 (/ (pow y 4) (* (pow x 4) (pow (sqrt -1) 3)))) (+ (* 1/16 (/ (pow y 6) (* (pow x 6) (pow (sqrt -1) 5)))) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1))))))))
(*.f64 (fma.f64 (/.f64 (pow.f64 y #s(literal 4 binary64)) (*.f64 (pow.f64 x #s(literal 4 binary64)) (sqrt.f64 #s(literal -1 binary64)))) #s(literal 1/8 binary64) (fma.f64 (/.f64 (pow.f64 y #s(literal 6 binary64)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 5 binary64))) (/.f64 #s(literal 1/16 binary64) (pow.f64 x #s(literal 6 binary64))) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x) (/.f64 y (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) (sqrt.f64 #s(literal -1 binary64))))) x)
(* -1 (pow x 2))
(*.f64 (neg.f64 x) x)
(* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1))
(*.f64 (fma.f64 (/.f64 y x) (/.f64 y x) #s(literal -1 binary64)) (*.f64 x x))
(* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1))
(*.f64 (fma.f64 (/.f64 y x) (/.f64 y x) #s(literal -1 binary64)) (*.f64 x x))
(* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1))
(*.f64 (fma.f64 (/.f64 y x) (/.f64 y x) #s(literal -1 binary64)) (*.f64 x x))
(* (sqrt (/ 1 x)) (sqrt -1))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x)) (sqrt.f64 #s(literal -1 binary64)))
(+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1)))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) x))))
(+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 5))) (* (pow y 2) (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1))))
(fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 1/2 binary64)) (fma.f64 (*.f64 y y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) y)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x)) (sqrt.f64 #s(literal -1 binary64))))
(+ (* -1/2 (* (sqrt (/ 1 (pow x 7))) (* (sqrt -1) (+ (* -1 (pow y 3)) (* 1/4 (* x (pow y 2))))))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 5))) (* (pow y 2) (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1)))))
(fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 1/2 binary64)) (fma.f64 (*.f64 y y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) y)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (+.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 7 binary64)))) #s(literal -1/2 binary64)) (*.f64 (*.f64 y y) (-.f64 (*.f64 #s(literal 1/4 binary64) x) y))))))
(* -1 (* (sqrt x) (pow (sqrt -1) 2)))
(sqrt.f64 x)
(* -1 (* x (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))))
(*.f64 (neg.f64 x) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x)))))
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2))))))
(*.f64 (neg.f64 x) (fma.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 y (/.f64 y #s(literal -1 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x))))))
(* -1 (* x (+ (* -1/8 (* (sqrt (/ 1 (pow x 5))) (/ (pow y 2) (pow (sqrt -1) 2)))) (+ (* 1/16 (* (sqrt (/ 1 (pow x 7))) (/ (pow y 3) (pow (sqrt -1) 4)))) (+ (* 1/2 (* (sqrt (/ 1 (pow x 3))) y)) (* (sqrt (/ 1 x)) (pow (sqrt -1) 2)))))))
(*.f64 (neg.f64 x) (fma.f64 (*.f64 #s(literal -1/8 binary64) (*.f64 y (/.f64 y #s(literal -1 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))) (fma.f64 (*.f64 (/.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 4 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 7 binary64))))) #s(literal 1/16 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x)))))))
(* -1 (* x (sqrt -1)))
(*.f64 (neg.f64 x) (sqrt.f64 #s(literal -1 binary64)))
(* -1 (* x (+ (sqrt -1) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1)))))))
(*.f64 (neg.f64 x) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x) (/.f64 y (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) (sqrt.f64 #s(literal -1 binary64))))
(* -1 (* x (+ (sqrt -1) (+ (* -1/8 (/ (pow y 4) (* (pow x 4) (pow (sqrt -1) 3)))) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1))))))))
(*.f64 (neg.f64 x) (fma.f64 (/.f64 (pow.f64 y #s(literal 4 binary64)) (*.f64 (pow.f64 x #s(literal 4 binary64)) (sqrt.f64 #s(literal -1 binary64)))) #s(literal 1/8 binary64) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x) (/.f64 y (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) (sqrt.f64 #s(literal -1 binary64)))))
(* -1 (* x (+ (sqrt -1) (+ (* -1/8 (/ (pow y 4) (* (pow x 4) (pow (sqrt -1) 3)))) (+ (* 1/16 (/ (pow y 6) (* (pow x 6) (pow (sqrt -1) 5)))) (* 1/2 (/ (pow y 2) (* (pow x 2) (sqrt -1)))))))))
(*.f64 (neg.f64 x) (fma.f64 (/.f64 (pow.f64 y #s(literal 4 binary64)) (*.f64 (pow.f64 x #s(literal 4 binary64)) (sqrt.f64 #s(literal -1 binary64)))) #s(literal 1/8 binary64) (fma.f64 (/.f64 (pow.f64 y #s(literal 6 binary64)) (pow.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal 5 binary64))) (/.f64 #s(literal 1/16 binary64) (pow.f64 x #s(literal 6 binary64))) (fma.f64 (/.f64 (*.f64 #s(literal 1/2 binary64) y) x) (/.f64 y (*.f64 (sqrt.f64 #s(literal -1 binary64)) x)) (sqrt.f64 #s(literal -1 binary64))))))
(* -1 (pow x 2))
(*.f64 (neg.f64 x) x)
(* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1))
(*.f64 (fma.f64 (/.f64 y x) (/.f64 y x) #s(literal -1 binary64)) (*.f64 x x))
(* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1))
(*.f64 (fma.f64 (/.f64 y x) (/.f64 y x) #s(literal -1 binary64)) (*.f64 x x))
(* (pow x 2) (- (/ (pow y 2) (pow x 2)) 1))
(*.f64 (fma.f64 (/.f64 y x) (/.f64 y x) #s(literal -1 binary64)) (*.f64 x x))
(* (sqrt (/ 1 x)) (sqrt -1))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x)) (sqrt.f64 #s(literal -1 binary64)))
(+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1)))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) x))))
(+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (+ (* -1/2 (* (sqrt (/ 1 (pow x 5))) (* (pow y 2) (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1))))
(fma.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) #s(literal -1/2 binary64)) (fma.f64 (*.f64 y y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 5 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) y)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) x)) (sqrt.f64 #s(literal -1 binary64))))
(+ (* -1 (/ (+ (* 1/2 (* (sqrt x) (* (pow y 2) (sqrt -1)))) (* 1/2 (* (sqrt (/ 1 x)) (* (sqrt -1) (+ (* -1/4 (* x (pow y 2))) (pow y 3)))))) (pow x 3))) (+ (* -1/2 (* (sqrt (/ 1 (pow x 3))) (* y (sqrt -1)))) (* (sqrt (/ 1 x)) (sqrt -1))))
(fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (fma.f64 (*.f64 (*.f64 y y) (fma.f64 #s(literal -1/4 binary64) x y)) (sqrt.f64 (/.f64 #s(literal 1 binary64) x)) (*.f64 (*.f64 (sqrt.f64 x) y) y))) (pow.f64 x #s(literal 3 binary64))) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) x)))))

rewrite144.0ms (3.4%)

Memory
33.7MiB live, 188.1MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01457
02053
17049
244247
3412447
0882444
Stop Event
iter limit
node limit
iter limit
Counts
5 → 88
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))))
(sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y)))
#s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))
(*.f64 y y)
(sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x 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>

eval90.0ms (2.1%)

Memory
-7.9MiB live, 29.9MiB allocated
Compiler

Compiled 3 800 to 641 computations (83.1% saved)

prune22.0ms (0.5%)

Memory
-23.1MiB live, 16.1MiB allocated
Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New1940194
Fresh000
Picked011
Done022
Total1943197
Accuracy
100.0%
Counts
197 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
49.3%
(*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))))
100.0%
(sqrt.f64 (+.f64 x y))
96.8%
#s(approx (sqrt (+ x y)) (sqrt.f64 y))
Compiler

Compiled 54 to 36 computations (33.3% saved)

regimes9.0ms (0.2%)

Memory
23.7MiB live, 23.7MiB allocated
Counts
4 → 1
Calls
Call 1
Inputs
#s(approx (sqrt (+ x y)) (sqrt.f64 y))
(sqrt.f64 (+.f64 x y))
(*.f64 (sqrt.f64 #s(approx (+ (* -1 (* x x)) (* y y)) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))))
(*.f64 (sqrt.f64 (fma.f64 #s(literal -1 binary64) (*.f64 x x) (*.f64 y y))) (sqrt.f64 (/.f64 #s(literal -1 binary64) (-.f64 x y))))
Outputs
(sqrt.f64 (+.f64 x y))
Calls

4 calls:

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

Compiled 9 to 11 computations (-22.2% saved)

regimes5.0ms (0.1%)

Memory
14.2MiB live, 14.2MiB allocated
Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (sqrt (+ x y)) (sqrt.f64 y))
Outputs
#s(approx (sqrt (+ x y)) (sqrt.f64 y))
Calls

4 calls:

1.0ms
(sqrt.f64 (+.f64 x y))
1.0ms
(+.f64 x y)
1.0ms
y
1.0ms
x
Results
AccuracySegmentsBranch
96.8%1x
96.8%1y
96.8%1(sqrt.f64 (+.f64 x y))
96.8%1(+.f64 x y)
Compiler

Compiled 9 to 11 computations (-22.2% saved)

simplify107.0ms (2.5%)

Memory
-43.1MiB live, 42.2MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0811
1911
Stop Event
saturated
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 x y))
#s(approx (sqrt (+ x y)) (sqrt.f64 y))
Outputs
(sqrt.f64 (+.f64 x y))
(sqrt.f64 (+.f64 y x))
#s(approx (sqrt (+ x y)) (sqrt.f64 y))

soundness237.0ms (5.6%)

Memory
13.1MiB live, 139.5MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0156630
1454600
21426582
34628570
08167534
Stop Event
done
iter limit
node limit
Compiler

Compiled 9 to 9 computations (0% saved)

preprocess52.0ms (1.2%)

Memory
-11.7MiB live, 65.5MiB allocated
Remove

(sort x y)

Compiler

Compiled 38 to 36 computations (5.3% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...